mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-11-10 16:45:51 +03:00
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.")
|
||||
(mkRemovedOptionModule [ "fonts" "fontconfig" "forceAutohint" ] "")
|
||||
(mkRemovedOptionModule [ "fonts" "fontconfig" "renderMonoTTFAsBitmap" ] "")
|
||||
(mkRemovedOptionModule [ "virtualisation" "xen" "qemu" ] "You don't need this option anymore, it will work without it.")
|
||||
|
||||
# ZSH
|
||||
(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" "custom" ] [ "programs" "zsh" "ohMyZsh" "custom" ])
|
||||
(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 = ''
|
||||
The package used for Xen binary.
|
||||
'';
|
||||
relatedPackages = [ "xen" "xen-light" ];
|
||||
};
|
||||
|
||||
virtualisation.xen.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 {
|
||||
virtualisation.xen.package-qemu = mkOption {
|
||||
type = types.package;
|
||||
defaultText = "pkgs.xen";
|
||||
example = literalExample "pkgs.qemu_xen-light";
|
||||
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 =
|
||||
@ -158,8 +153,7 @@ in
|
||||
} ];
|
||||
|
||||
virtualisation.xen.package = mkDefault pkgs.xen;
|
||||
virtualisation.xen.qemu = mkDefault "${pkgs.xen}/lib/xen/bin/qemu-system-i386";
|
||||
virtualisation.xen.qemu-package = mkDefault pkgs.xen;
|
||||
virtualisation.xen.package-qemu = mkDefault pkgs.xen;
|
||||
virtualisation.xen.stored = mkDefault "${cfg.package}/bin/oxenstored";
|
||||
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
@ -339,7 +333,8 @@ in
|
||||
after = [ "xen-console.service" ];
|
||||
requires = [ "xen-store.service" ];
|
||||
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
|
||||
'';
|
||||
};
|
||||
@ -448,7 +443,7 @@ in
|
||||
before = [ "dhcpd.service" ];
|
||||
restartIfChanged = false;
|
||||
serviceConfig.RemainAfterExit = "yes";
|
||||
path = [ cfg.package cfg.qemu-package ];
|
||||
path = [ cfg.package cfg.package-qemu ];
|
||||
environment.XENDOM_CONFIG = "${cfg.package}/etc/sysconfig/xendomains";
|
||||
preStart = "mkdir -p /var/lock/subsys -m 755";
|
||||
serviceConfig.ExecStart = "${cfg.package}/etc/init.d/xendomains start";
|
||||
|
Loading…
Reference in New Issue
Block a user