mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-07-13 21:50:33 +03:00
Merge staging-next into staging
This commit is contained in:
commit
8576d24b2a
127 changed files with 998 additions and 642 deletions
|
@ -471,6 +471,9 @@ systemd.services.nginx.serviceConfig.ReadWritePaths = [ "/var/www" ];
|
|||
<title>Other Notable Changes</title>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>SD and ISO images are now compressed by default using <literal>zstd</literal>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<option>services.journald.rateLimitBurst</option> was updated from
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
, # The path (outside the ISO file system) of the isohybrid-mbr image.
|
||||
isohybridMbrImage ? ""
|
||||
|
||||
, # Whether to compress the resulting ISO image with bzip2.
|
||||
, # Whether to compress the resulting ISO image with zstd.
|
||||
compressImage ? false
|
||||
|
||||
, # The volume ID.
|
||||
|
@ -48,7 +48,7 @@ assert usbBootable -> isohybridMbrImage != "";
|
|||
stdenv.mkDerivation {
|
||||
name = isoName;
|
||||
builder = ./make-iso9660-image.sh;
|
||||
buildInputs = [ xorriso syslinux ];
|
||||
buildInputs = [ xorriso syslinux zstd ];
|
||||
|
||||
inherit isoName bootable bootImage compressImage volumeID efiBootImage efiBootable isohybridMbrImage usbBootable;
|
||||
|
||||
|
|
|
@ -129,9 +129,14 @@ fi
|
|||
|
||||
if test -n "$compressImage"; then
|
||||
echo "Compressing image..."
|
||||
bzip2 $out/iso/$isoName
|
||||
zstd -T$NIX_BUILD_CORES $out/iso/$isoName
|
||||
fi
|
||||
|
||||
mkdir -p $out/nix-support
|
||||
echo $system > $out/nix-support/system
|
||||
echo "file iso $out/iso/$isoName" >> $out/nix-support/hydra-build-products
|
||||
|
||||
if test -n "$compressImage"; then
|
||||
echo "file iso $out/iso/$isoName.zst" >> $out/nix-support/hydra-build-products
|
||||
else
|
||||
echo "file iso $out/iso/$isoName" >> $out/nix-support/hydra-build-products
|
||||
fi
|
||||
|
|
|
@ -41,6 +41,7 @@ let
|
|||
pkgs.time
|
||||
pkgs.utillinux
|
||||
pkgs.which # 88K size
|
||||
pkgs.zstd
|
||||
];
|
||||
|
||||
in
|
||||
|
|
|
@ -413,7 +413,7 @@ in
|
|||
default = false;
|
||||
description = ''
|
||||
Whether the ISO image should be compressed using
|
||||
<command>bzip2</command>.
|
||||
<command>zstd</command>.
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -105,7 +105,7 @@ in
|
|||
default = true;
|
||||
description = ''
|
||||
Whether the SD image should be compressed using
|
||||
<command>bzip2</command>.
|
||||
<command>zstd</command>.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -130,10 +130,10 @@ in
|
|||
sdImage.storePaths = [ config.system.build.toplevel ];
|
||||
|
||||
system.build.sdImage = pkgs.callPackage ({ stdenv, dosfstools, e2fsprogs,
|
||||
mtools, libfaketime, utillinux, bzip2, zstd }: stdenv.mkDerivation {
|
||||
mtools, libfaketime, utillinux, zstd }: stdenv.mkDerivation {
|
||||
name = config.sdImage.imageName;
|
||||
|
||||
nativeBuildInputs = [ dosfstools e2fsprogs mtools libfaketime utillinux bzip2 zstd ];
|
||||
nativeBuildInputs = [ dosfstools e2fsprogs mtools libfaketime utillinux zstd ];
|
||||
|
||||
inherit (config.sdImage) compressImage;
|
||||
|
||||
|
@ -143,7 +143,7 @@ in
|
|||
|
||||
echo "${pkgs.stdenv.buildPlatform.system}" > $out/nix-support/system
|
||||
if test -n "$compressImage"; then
|
||||
echo "file sd-image $img.bz2" >> $out/nix-support/hydra-build-products
|
||||
echo "file sd-image $img.zst" >> $out/nix-support/hydra-build-products
|
||||
else
|
||||
echo "file sd-image $img" >> $out/nix-support/hydra-build-products
|
||||
fi
|
||||
|
@ -190,7 +190,7 @@ in
|
|||
fsck.vfat -vn firmware_part.img
|
||||
dd conv=notrunc if=firmware_part.img of=$img seek=$START count=$SECTORS
|
||||
if test -n "$compressImage"; then
|
||||
bzip2 $img
|
||||
zstd -T$NIX_BUILD_CORES $img
|
||||
fi
|
||||
'';
|
||||
}) {};
|
||||
|
|
|
@ -34,7 +34,7 @@ let
|
|||
cd ${cfg.package}
|
||||
sudo=exec
|
||||
if [[ "$USER" != nextcloud ]]; then
|
||||
sudo='exec /run/wrappers/bin/sudo -u nextcloud --preserve-env=NEXTCLOUD_CONFIG_DIR'
|
||||
sudo='exec /run/wrappers/bin/sudo -u nextcloud --preserve-env=NEXTCLOUD_CONFIG_DIR --preserve-env=OC_PASS'
|
||||
fi
|
||||
export NEXTCLOUD_CONFIG_DIR="${cfg.home}/config"
|
||||
$sudo \
|
||||
|
|
|
@ -37,10 +37,10 @@ let
|
|||
chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides
|
||||
cat - > $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas/nixos-defaults.gschema.override <<- EOF
|
||||
[org.gnome.desktop.background]
|
||||
picture-uri='file://${pkgs.nixos-artwork.wallpapers.simple-dark-gray}/share/artwork/gnome/nix-wallpaper-simple-dark-gray.png'
|
||||
picture-uri='file://${pkgs.nixos-artwork.wallpapers.simple-dark-gray.gnomeFilePath}'
|
||||
|
||||
[org.gnome.desktop.screensaver]
|
||||
picture-uri='file://${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom}/share/artwork/gnome/nix-wallpaper-simple-dark-gray_bottom.png'
|
||||
picture-uri='file://${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom.gnomeFilePath}'
|
||||
|
||||
[org.gnome.shell]
|
||||
favorite-apps=[ 'org.gnome.Epiphany.desktop', 'org.gnome.Geary.desktop', 'org.gnome.Music.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop' ]
|
||||
|
@ -320,6 +320,8 @@ in
|
|||
gnome-shell
|
||||
gnome-shell-extensions
|
||||
gnome-themes-extra
|
||||
nixos-artwork.wallpapers.simple-dark-gray
|
||||
nixos-artwork.wallpapers.simple-dark-gray-bottom
|
||||
pkgs.gnome-user-docs
|
||||
pkgs.orca
|
||||
pkgs.glib # for gsettings
|
||||
|
|
|
@ -180,6 +180,7 @@ in
|
|||
gtk3.out
|
||||
hicolor-icon-theme
|
||||
lightlocker
|
||||
nixos-artwork.wallpapers.simple-dark-gray
|
||||
onboard
|
||||
qgnomeplatform
|
||||
shared-mime-info
|
||||
|
|
|
@ -132,8 +132,9 @@ in
|
|||
};
|
||||
|
||||
background = mkOption {
|
||||
type = types.str;
|
||||
default = "${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom}/share/artwork/gnome/nix-wallpaper-simple-dark-gray_bottom.png";
|
||||
type = types.path;
|
||||
# Manual cannot depend on packages, we are actually setting the default in config below.
|
||||
defaultText = "pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom.gnomeFilePath";
|
||||
description = ''
|
||||
The background image or color to use.
|
||||
'';
|
||||
|
@ -212,6 +213,9 @@ in
|
|||
}
|
||||
];
|
||||
|
||||
# Keep in sync with the defaultText value from the option definition.
|
||||
services.xserver.displayManager.lightdm.background = mkDefault pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom.gnomeFilePath;
|
||||
|
||||
# Set default session in session chooser to a specified values – basically ignore session history.
|
||||
# Auto-login is already covered by a config value.
|
||||
services.xserver.displayManager.job.preStart = optionalString (!cfg.autoLogin.enable && dmcfg.defaultSession != null) ''
|
||||
|
|
|
@ -83,7 +83,7 @@ let
|
|||
] ++ (optional (cfg.fontSize!=null) "--size ${toString cfg.fontSize}")))
|
||||
);
|
||||
|
||||
defaultSplash = "${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bootloader}/share/artwork/gnome/nix-wallpaper-simple-dark-gray_bootloader.png";
|
||||
defaultSplash = pkgs.nixos-artwork.wallpapers.simple-dark-gray-bootloader.gnomeFilePath;
|
||||
in
|
||||
|
||||
{
|
||||
|
|
|
@ -584,7 +584,7 @@ in
|
|||
{ assertion = !config.boot.loader.supportsInitrdSecrets ->
|
||||
all (source:
|
||||
builtins.isPath source ||
|
||||
(builtins.isString source && hasPrefix source builtins.storeDir))
|
||||
(builtins.isString source && hasPrefix builtins.storeDir source))
|
||||
(attrValues config.boot.initrd.secrets);
|
||||
message = ''
|
||||
boot.loader.initrd.secrets values must be unquoted paths when
|
||||
|
|
|
@ -441,6 +441,18 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
virtualisation.bios =
|
||||
mkOption {
|
||||
default = null;
|
||||
type = types.nullOr types.package;
|
||||
description =
|
||||
''
|
||||
An alternate BIOS (such as <package>qboot</package>) with which to start the VM.
|
||||
Should containin a file named <literal>bios.bin</literal>.
|
||||
If <literal>null</literal>, QEMU's builtin SeaBIOS will be used.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
config = {
|
||||
|
@ -521,6 +533,9 @@ in
|
|||
(mkIf cfg.useEFIBoot [
|
||||
"-pflash $TMPDIR/bios.bin"
|
||||
])
|
||||
(mkIf (cfg.bios != null) [
|
||||
"-bios ${cfg.bios}/bios.bin"
|
||||
])
|
||||
(mkIf (!cfg.graphics) [
|
||||
"-nographic"
|
||||
])
|
||||
|
|
|
@ -273,6 +273,7 @@ in
|
|||
prosody = handleTest ./xmpp/prosody.nix {};
|
||||
prosodyMysql = handleTest ./xmpp/prosody-mysql.nix {};
|
||||
proxy = handleTest ./proxy.nix {};
|
||||
qboot = handleTestOn ["x86_64-linux" "i686-linux"] ./qboot.nix {};
|
||||
quagga = handleTest ./quagga.nix {};
|
||||
quorum = handleTest ./quorum.nix {};
|
||||
rabbitmq = handleTest ./rabbitmq.nix {};
|
||||
|
|
13
nixos/tests/qboot.nix
Normal file
13
nixos/tests/qboot.nix
Normal file
|
@ -0,0 +1,13 @@
|
|||
import ./make-test-python.nix ({ pkgs, ...} : {
|
||||
name = "qboot";
|
||||
|
||||
machine = { ... }: {
|
||||
virtualisation.bios = pkgs.qboot;
|
||||
};
|
||||
|
||||
testScript =
|
||||
''
|
||||
start_all()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
'';
|
||||
})
|
Loading…
Add table
Add a link
Reference in a new issue