nixos/xen-dom0: add related packages, make it play well with them
This is a custom attribute set example of `relatedPackages` option usage.
This commit is contained in:
parent
06adc17455
commit
0d1a643210
@ -210,6 +210,7 @@ with lib;
|
|||||||
"Set the option `services.xserver.displayManager.sddm.package' instead.")
|
"Set the option `services.xserver.displayManager.sddm.package' instead.")
|
||||||
(mkRemovedOptionModule [ "fonts" "fontconfig" "forceAutohint" ] "")
|
(mkRemovedOptionModule [ "fonts" "fontconfig" "forceAutohint" ] "")
|
||||||
(mkRemovedOptionModule [ "fonts" "fontconfig" "renderMonoTTFAsBitmap" ] "")
|
(mkRemovedOptionModule [ "fonts" "fontconfig" "renderMonoTTFAsBitmap" ] "")
|
||||||
|
(mkRemovedOptionModule [ "virtualisation" "xen" "qemu" ] "You don't need this option anymore, it will work without it.")
|
||||||
|
|
||||||
# ZSH
|
# ZSH
|
||||||
(mkRenamedOptionModule [ "programs" "zsh" "enableSyntaxHighlighting" ] [ "programs" "zsh" "syntaxHighlighting" "enable" ])
|
(mkRenamedOptionModule [ "programs" "zsh" "enableSyntaxHighlighting" ] [ "programs" "zsh" "syntaxHighlighting" "enable" ])
|
||||||
@ -220,5 +221,8 @@ with lib;
|
|||||||
(mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "theme" ] [ "programs" "zsh" "ohMyZsh" "theme" ])
|
(mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "theme" ] [ "programs" "zsh" "ohMyZsh" "theme" ])
|
||||||
(mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "custom" ] [ "programs" "zsh" "ohMyZsh" "custom" ])
|
(mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "custom" ] [ "programs" "zsh" "ohMyZsh" "custom" ])
|
||||||
(mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "plugins" ] [ "programs" "zsh" "ohMyZsh" "plugins" ])
|
(mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "plugins" ] [ "programs" "zsh" "ohMyZsh" "plugins" ])
|
||||||
|
|
||||||
|
# Xen
|
||||||
|
(mkRenamedOptionModule [ "virtualisation" "xen" "qemu-package" ] [ "virtualisation" "xen" "package-qemu" ])
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -35,24 +35,19 @@ in
|
|||||||
description = ''
|
description = ''
|
||||||
The package used for Xen binary.
|
The package used for Xen binary.
|
||||||
'';
|
'';
|
||||||
|
relatedPackages = [ "xen" "xen-light" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
virtualisation.xen.qemu = mkOption {
|
virtualisation.xen.package-qemu = mkOption {
|
||||||
type = types.path;
|
|
||||||
defaultText = "\${pkgs.xen}/lib/xen/bin/qemu-system-i386";
|
|
||||||
example = literalExample "''${pkgs.qemu_xen-light}/bin/qemu-system-i386";
|
|
||||||
description = ''
|
|
||||||
The qemu binary to use for Dom-0 backend.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
virtualisation.xen.qemu-package = mkOption {
|
|
||||||
type = types.package;
|
type = types.package;
|
||||||
defaultText = "pkgs.xen";
|
defaultText = "pkgs.xen";
|
||||||
example = literalExample "pkgs.qemu_xen-light";
|
example = literalExample "pkgs.qemu_xen-light";
|
||||||
description = ''
|
description = ''
|
||||||
The package with qemu binaries for xendomains.
|
The package with qemu binaries for dom0 qemu and xendomains.
|
||||||
'';
|
'';
|
||||||
|
relatedPackages = [ "xen"
|
||||||
|
{ name = "qemu_xen-light"; comment = "For use with pkgs.xen-light."; }
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
virtualisation.xen.bootParams =
|
virtualisation.xen.bootParams =
|
||||||
@ -158,8 +153,7 @@ in
|
|||||||
} ];
|
} ];
|
||||||
|
|
||||||
virtualisation.xen.package = mkDefault pkgs.xen;
|
virtualisation.xen.package = mkDefault pkgs.xen;
|
||||||
virtualisation.xen.qemu = mkDefault "${pkgs.xen}/lib/xen/bin/qemu-system-i386";
|
virtualisation.xen.package-qemu = mkDefault pkgs.xen;
|
||||||
virtualisation.xen.qemu-package = mkDefault pkgs.xen;
|
|
||||||
virtualisation.xen.stored = mkDefault "${cfg.package}/bin/oxenstored";
|
virtualisation.xen.stored = mkDefault "${cfg.package}/bin/oxenstored";
|
||||||
|
|
||||||
environment.systemPackages = [ cfg.package ];
|
environment.systemPackages = [ cfg.package ];
|
||||||
@ -339,7 +333,8 @@ in
|
|||||||
after = [ "xen-console.service" ];
|
after = [ "xen-console.service" ];
|
||||||
requires = [ "xen-store.service" ];
|
requires = [ "xen-store.service" ];
|
||||||
serviceConfig.ExecStart = ''
|
serviceConfig.ExecStart = ''
|
||||||
${cfg.qemu} -xen-attach -xen-domid 0 -name dom0 -M xenpv \
|
${cfg.package-qemu}/${cfg.package-qemu.qemu-system-i386} \
|
||||||
|
-xen-attach -xen-domid 0 -name dom0 -M xenpv \
|
||||||
-nographic -monitor /dev/null -serial /dev/null -parallel /dev/null
|
-nographic -monitor /dev/null -serial /dev/null -parallel /dev/null
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
@ -448,7 +443,7 @@ in
|
|||||||
before = [ "dhcpd.service" ];
|
before = [ "dhcpd.service" ];
|
||||||
restartIfChanged = false;
|
restartIfChanged = false;
|
||||||
serviceConfig.RemainAfterExit = "yes";
|
serviceConfig.RemainAfterExit = "yes";
|
||||||
path = [ cfg.package cfg.qemu-package ];
|
path = [ cfg.package cfg.package-qemu ];
|
||||||
environment.XENDOM_CONFIG = "${cfg.package}/etc/sysconfig/xendomains";
|
environment.XENDOM_CONFIG = "${cfg.package}/etc/sysconfig/xendomains";
|
||||||
preStart = "mkdir -p /var/lock/subsys -m 755";
|
preStart = "mkdir -p /var/lock/subsys -m 755";
|
||||||
serviceConfig.ExecStart = "${cfg.package}/etc/init.d/xendomains start";
|
serviceConfig.ExecStart = "${cfg.package}/etc/init.d/xendomains start";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user