Merge staging-next into staging
This commit is contained in:
commit
9f6509c682
@ -60,10 +60,8 @@ git -C "$tmp/nixpkgs.git" remote add fork https://github.com/"$prRepo".git
|
||||
git -C "$tmp/nixpkgs.git" config remote.fork.partialclonefilter tree:0
|
||||
git -C "$tmp/nixpkgs.git" config remote.fork.promisor true
|
||||
|
||||
# This should not conflict with any refs in Nixpkgs
|
||||
headRef=refs/remotes/fork/pr
|
||||
# Only fetch into a remote ref, because the local ref namespace is used by Nixpkgs, don't want any conflicts
|
||||
git -C "$tmp/nixpkgs.git" fetch --no-tags fork "$prBranch":"$headRef"
|
||||
git -C "$tmp/nixpkgs.git" fetch --no-tags fork "$prBranch"
|
||||
headRef=$(git -C "$tmp/nixpkgs.git" rev-parse refs/remotes/fork/"$prBranch")
|
||||
|
||||
log "Checking correctness of the base branch"
|
||||
if ! "$SCRIPT_DIR"/verify-base-branch.sh "$tmp/nixpkgs.git" "$headRef" "$baseRepo" "$baseBranch" "$prRepo" "$prBranch" | tee "$tmp/invalid-base-error" >&2; then
|
||||
|
@ -649,6 +649,8 @@
|
||||
The derivation now installs "impl" headers selectively instead of by a wildcard.
|
||||
Use `imgui.src` if you just want to access the unpacked sources.
|
||||
|
||||
- The new `boot.loader.systemd-boot.windows` option makes setting up dual-booting with Windows on a different drive easier
|
||||
|
||||
- Linux 4.19 has been removed because it will reach its end of life within the lifespan of 24.11
|
||||
|
||||
- Unprivileged access to the kernel syslog via `dmesg` is now restricted by default. Users wanting to keep an
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
let
|
||||
cfg = config.programs.gamemode;
|
||||
settingsFormat = pkgs.formats.ini { };
|
||||
settingsFormat = pkgs.formats.ini { listsAsDuplicateKeys = true; };
|
||||
configFile = settingsFormat.generate "gamemode.ini" cfg.settings;
|
||||
in
|
||||
{
|
||||
|
@ -112,6 +112,7 @@ in
|
||||
RestrictNamespaces = true;
|
||||
RestrictRealtime = true;
|
||||
RestrictSUIDSGID = true;
|
||||
StateDirectory = "wakapi";
|
||||
StateDirectoryMode = "0700";
|
||||
Restart = "always";
|
||||
};
|
||||
|
@ -1,4 +1,9 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
||||
@ -10,16 +15,21 @@ let
|
||||
# We check the source code in a derivation that does not depend on the
|
||||
# system configuration so that most users don't have to redo the check and require
|
||||
# the necessary dependencies.
|
||||
checkedSource = pkgs.runCommand "systemd-boot" {
|
||||
preferLocalBuild = true;
|
||||
} ''
|
||||
install -m755 -D ${./systemd-boot-builder.py} $out
|
||||
${lib.getExe pkgs.buildPackages.mypy} \
|
||||
--no-implicit-optional \
|
||||
--disallow-untyped-calls \
|
||||
--disallow-untyped-defs \
|
||||
$out
|
||||
'';
|
||||
checkedSource =
|
||||
pkgs.runCommand "systemd-boot"
|
||||
{
|
||||
preferLocalBuild = true;
|
||||
}
|
||||
''
|
||||
install -m755 -D ${./systemd-boot-builder.py} $out
|
||||
${lib.getExe pkgs.buildPackages.mypy} \
|
||||
--no-implicit-optional \
|
||||
--disallow-untyped-calls \
|
||||
--disallow-untyped-defs \
|
||||
$out
|
||||
'';
|
||||
|
||||
edk2ShellEspPath = "efi/edk2-uefi-shell/shell.efi";
|
||||
|
||||
systemdBootBuilder = pkgs.substituteAll rec {
|
||||
name = "systemd-boot";
|
||||
@ -44,13 +54,17 @@ let
|
||||
|
||||
configurationLimit = if cfg.configurationLimit == null then 0 else cfg.configurationLimit;
|
||||
|
||||
inherit (cfg) consoleMode graceful editor rebootForBitlocker;
|
||||
inherit (cfg)
|
||||
consoleMode
|
||||
graceful
|
||||
editor
|
||||
rebootForBitlocker
|
||||
;
|
||||
|
||||
inherit (efi) efiSysMountPoint canTouchEfiVariables;
|
||||
|
||||
bootMountPoint = if cfg.xbootldrMountPoint != null
|
||||
then cfg.xbootldrMountPoint
|
||||
else efi.efiSysMountPoint;
|
||||
bootMountPoint =
|
||||
if cfg.xbootldrMountPoint != null then cfg.xbootldrMountPoint else efi.efiSysMountPoint;
|
||||
|
||||
nixosDir = "/EFI/nixos";
|
||||
|
||||
@ -60,29 +74,35 @@ let
|
||||
|
||||
netbootxyz = optionalString cfg.netbootxyz.enable pkgs.netbootxyz-efi;
|
||||
|
||||
edk2-uefi-shell = optionalString cfg.edk2-uefi-shell.enable pkgs.edk2-uefi-shell;
|
||||
|
||||
checkMountpoints = pkgs.writeShellScript "check-mountpoints" ''
|
||||
fail() {
|
||||
echo "$1 = '$2' is not a mounted partition. Is the path configured correctly?" >&2
|
||||
exit 1
|
||||
}
|
||||
${pkgs.util-linuxMinimal}/bin/findmnt ${efiSysMountPoint} > /dev/null || fail efiSysMountPoint ${efiSysMountPoint}
|
||||
${lib.optionalString
|
||||
(cfg.xbootldrMountPoint != null)
|
||||
"${pkgs.util-linuxMinimal}/bin/findmnt ${cfg.xbootldrMountPoint} > /dev/null || fail xbootldrMountPoint ${cfg.xbootldrMountPoint}"}
|
||||
${lib.optionalString (cfg.xbootldrMountPoint != null)
|
||||
"${pkgs.util-linuxMinimal}/bin/findmnt ${cfg.xbootldrMountPoint} > /dev/null || fail xbootldrMountPoint ${cfg.xbootldrMountPoint}"
|
||||
}
|
||||
'';
|
||||
|
||||
copyExtraFiles = pkgs.writeShellScript "copy-extra-files" ''
|
||||
empty_file=$(${pkgs.coreutils}/bin/mktemp)
|
||||
|
||||
${concatStrings (mapAttrsToList (n: v: ''
|
||||
${pkgs.coreutils}/bin/install -Dp "${v}" "${bootMountPoint}/"${escapeShellArg n}
|
||||
${pkgs.coreutils}/bin/install -D $empty_file "${bootMountPoint}/${nixosDir}/.extra-files/"${escapeShellArg n}
|
||||
'') cfg.extraFiles)}
|
||||
${concatStrings (
|
||||
mapAttrsToList (n: v: ''
|
||||
${pkgs.coreutils}/bin/install -Dp "${v}" "${bootMountPoint}/"${escapeShellArg n}
|
||||
${pkgs.coreutils}/bin/install -D $empty_file "${bootMountPoint}/${nixosDir}/.extra-files/"${escapeShellArg n}
|
||||
'') cfg.extraFiles
|
||||
)}
|
||||
|
||||
${concatStrings (mapAttrsToList (n: v: ''
|
||||
${pkgs.coreutils}/bin/install -Dp "${pkgs.writeText n v}" "${bootMountPoint}/loader/entries/"${escapeShellArg n}
|
||||
${pkgs.coreutils}/bin/install -D $empty_file "${bootMountPoint}/${nixosDir}/.extra-files/loader/entries/"${escapeShellArg n}
|
||||
'') cfg.extraEntries)}
|
||||
${concatStrings (
|
||||
mapAttrsToList (n: v: ''
|
||||
${pkgs.coreutils}/bin/install -Dp "${pkgs.writeText n v}" "${bootMountPoint}/loader/entries/"${escapeShellArg n}
|
||||
${pkgs.coreutils}/bin/install -D $empty_file "${bootMountPoint}/${nixosDir}/.extra-files/loader/entries/"${escapeShellArg n}
|
||||
'') cfg.extraEntries
|
||||
)}
|
||||
'';
|
||||
};
|
||||
|
||||
@ -91,23 +111,61 @@ let
|
||||
${systemdBootBuilder}/bin/systemd-boot "$@"
|
||||
${cfg.extraInstallCommands}
|
||||
'';
|
||||
in {
|
||||
in
|
||||
{
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ julienmalka ];
|
||||
|
||||
imports =
|
||||
[ (mkRenamedOptionModule [ "boot" "loader" "gummiboot" "enable" ] [ "boot" "loader" "systemd-boot" "enable" ])
|
||||
(lib.mkChangedOptionModule
|
||||
[ "boot" "loader" "systemd-boot" "memtest86" "entryFilename" ]
|
||||
[ "boot" "loader" "systemd-boot" "memtest86" "sortKey" ]
|
||||
(config: lib.strings.removeSuffix ".conf" config.boot.loader.systemd-boot.memtest86.entryFilename)
|
||||
)
|
||||
(lib.mkChangedOptionModule
|
||||
[ "boot" "loader" "systemd-boot" "netbootxyz" "entryFilename" ]
|
||||
[ "boot" "loader" "systemd-boot" "netbootxyz" "sortKey" ]
|
||||
(config: lib.strings.removeSuffix ".conf" config.boot.loader.systemd-boot.netbootxyz.entryFilename)
|
||||
)
|
||||
];
|
||||
imports = [
|
||||
(mkRenamedOptionModule
|
||||
[
|
||||
"boot"
|
||||
"loader"
|
||||
"gummiboot"
|
||||
"enable"
|
||||
]
|
||||
[
|
||||
"boot"
|
||||
"loader"
|
||||
"systemd-boot"
|
||||
"enable"
|
||||
]
|
||||
)
|
||||
(lib.mkChangedOptionModule
|
||||
[
|
||||
"boot"
|
||||
"loader"
|
||||
"systemd-boot"
|
||||
"memtest86"
|
||||
"entryFilename"
|
||||
]
|
||||
[
|
||||
"boot"
|
||||
"loader"
|
||||
"systemd-boot"
|
||||
"memtest86"
|
||||
"sortKey"
|
||||
]
|
||||
(config: lib.strings.removeSuffix ".conf" config.boot.loader.systemd-boot.memtest86.entryFilename)
|
||||
)
|
||||
(lib.mkChangedOptionModule
|
||||
[
|
||||
"boot"
|
||||
"loader"
|
||||
"systemd-boot"
|
||||
"netbootxyz"
|
||||
"entryFilename"
|
||||
]
|
||||
[
|
||||
"boot"
|
||||
"loader"
|
||||
"systemd-boot"
|
||||
"netbootxyz"
|
||||
"sortKey"
|
||||
]
|
||||
(config: lib.strings.removeSuffix ".conf" config.boot.loader.systemd-boot.netbootxyz.entryFilename)
|
||||
)
|
||||
];
|
||||
|
||||
options.boot.loader.systemd-boot = {
|
||||
enable = mkOption {
|
||||
@ -124,7 +182,7 @@ in {
|
||||
|
||||
sortKey = mkOption {
|
||||
default = "nixos";
|
||||
type = lib.types.str;
|
||||
type = types.str;
|
||||
description = ''
|
||||
The sort key used for the NixOS bootloader entries.
|
||||
This key determines sorting relative to non-NixOS entries.
|
||||
@ -218,7 +276,15 @@ in {
|
||||
consoleMode = mkOption {
|
||||
default = "keep";
|
||||
|
||||
type = types.enum [ "0" "1" "2" "5" "auto" "max" "keep" ];
|
||||
type = types.enum [
|
||||
"0"
|
||||
"1"
|
||||
"2"
|
||||
"5"
|
||||
"auto"
|
||||
"max"
|
||||
"keep"
|
||||
];
|
||||
|
||||
description = ''
|
||||
The resolution of the console. The following values are valid:
|
||||
@ -281,9 +347,32 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
edk2-uefi-shell = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Make the EDK2 UEFI Shell available from the systemd-boot menu.
|
||||
It can be used to manually boot other operating systems or for debugging.
|
||||
'';
|
||||
};
|
||||
|
||||
sortKey = mkOption {
|
||||
type = types.str;
|
||||
default = "o_edk2-uefi-shell";
|
||||
description = ''
|
||||
`systemd-boot` orders the menu entries by their sort keys,
|
||||
so if you want something to appear after all the NixOS entries,
|
||||
it should start with {file}`o` or onwards.
|
||||
|
||||
See also {option}`boot.loader.systemd-boot.sortKey`..
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
extraEntries = mkOption {
|
||||
type = types.attrsOf types.lines;
|
||||
default = {};
|
||||
default = { };
|
||||
example = literalExpression ''
|
||||
{ "memtest86.conf" = '''
|
||||
title Memtest86+
|
||||
@ -306,7 +395,7 @@ in {
|
||||
|
||||
extraFiles = mkOption {
|
||||
type = types.attrsOf types.path;
|
||||
default = {};
|
||||
default = { };
|
||||
example = literalExpression ''
|
||||
{ "efi/memtest86/memtest.efi" = "''${pkgs.memtest86plus}/memtest.efi"; }
|
||||
'';
|
||||
@ -349,40 +438,126 @@ in {
|
||||
Windows can unseal the encryption key.
|
||||
'';
|
||||
};
|
||||
|
||||
windows = mkOption {
|
||||
default = { };
|
||||
description = ''
|
||||
Make Windows bootable from systemd-boot. This option is not necessary when Windows and
|
||||
NixOS use the same EFI System Partition (ESP). In that case, Windows will automatically be
|
||||
detected by systemd-boot.
|
||||
|
||||
However, if Windows is installed on a separate drive or ESP, you can use this option to add
|
||||
a menu entry for each installation manually.
|
||||
|
||||
The attribute name is used for the title of the menu entry and internal file names.
|
||||
'';
|
||||
example = literalExpression ''
|
||||
{
|
||||
"10".efiDeviceHandle = "HD0c3";
|
||||
"11-ame" = {
|
||||
title = "Windows 11 Ameliorated Edition";
|
||||
efiDeviceHandle = "HD0b1";
|
||||
};
|
||||
"11-home" = {
|
||||
title = "Windows 11 Home";
|
||||
efiDeviceHandle = "FS1";
|
||||
sortKey = "z_windows";
|
||||
};
|
||||
}
|
||||
'';
|
||||
type = types.attrsOf (
|
||||
types.submodule (
|
||||
{ name, ... }:
|
||||
{
|
||||
options = {
|
||||
efiDeviceHandle = mkOption {
|
||||
type = types.str;
|
||||
example = "HD1b3";
|
||||
description = ''
|
||||
The device handle of the EFI System Partition (ESP) where the Windows bootloader is
|
||||
located. This is the device handle that the EDK2 UEFI Shell uses to load the
|
||||
bootloader.
|
||||
|
||||
To find this handle, follow these steps:
|
||||
1. Set {option}`boot.loader.systemd-boot.edk2-uefi-shell.enable` to `true`
|
||||
2. Run `nixos-rebuild boot`
|
||||
3. Reboot and select "EDK2 UEFI Shell" from the systemd-boot menu
|
||||
4. Run `map -c` to list all consistent device handles
|
||||
5. For each device handle (for example, `HD0c1`), run `ls HD0c1:\EFI`
|
||||
6. If the output contains the directory `Microsoft`, you might have found the correct device handle
|
||||
7. Run `HD0c1:\EFI\Microsoft\Boot\Bootmgfw.efi` to check if Windows boots correctly
|
||||
8. If it does, this device handle is the one you need (in this example, `HD0c1`)
|
||||
|
||||
This option is required, there is no useful default.
|
||||
'';
|
||||
};
|
||||
|
||||
title = mkOption {
|
||||
type = types.str;
|
||||
example = "Michaelsoft Binbows";
|
||||
default = "Windows ${name}";
|
||||
defaultText = ''attribute name of this entry, prefixed with "Windows "'';
|
||||
description = ''
|
||||
The title of the boot menu entry.
|
||||
'';
|
||||
};
|
||||
|
||||
sortKey = mkOption {
|
||||
type = types.str;
|
||||
default = "o_windows_${name}";
|
||||
defaultText = ''attribute name of this entry, prefixed with "o_windows_"'';
|
||||
description = ''
|
||||
`systemd-boot` orders the menu entries by their sort keys,
|
||||
so if you want something to appear after all the NixOS entries,
|
||||
it should start with {file}`o` or onwards.
|
||||
|
||||
See also {option}`boot.loader.systemd-boot.sortKey`..
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
)
|
||||
);
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
assertions = [
|
||||
{
|
||||
assertion = (hasPrefix "/" efi.efiSysMountPoint);
|
||||
message = "The ESP mount point '${toString efi.efiSysMountPoint}' must be an absolute path";
|
||||
}
|
||||
{
|
||||
assertion = cfg.xbootldrMountPoint == null || (hasPrefix "/" cfg.xbootldrMountPoint);
|
||||
message = "The XBOOTLDR mount point '${toString cfg.xbootldrMountPoint}' must be an absolute path";
|
||||
}
|
||||
{
|
||||
assertion = cfg.xbootldrMountPoint != efi.efiSysMountPoint;
|
||||
message = "The XBOOTLDR mount point '${toString cfg.xbootldrMountPoint}' cannot be the same as the ESP mount point '${toString efi.efiSysMountPoint}'";
|
||||
}
|
||||
{
|
||||
assertion = (config.boot.kernelPackages.kernel.features or { efiBootStub = true; }) ? efiBootStub;
|
||||
message = "This kernel does not support the EFI boot stub";
|
||||
}
|
||||
{
|
||||
assertion = cfg.installDeviceTree -> config.hardware.deviceTree.enable -> config.hardware.deviceTree.name != null;
|
||||
message = "Cannot install devicetree without 'config.hardware.deviceTree.enable' enabled and 'config.hardware.deviceTree.name' set";
|
||||
}
|
||||
] ++ concatMap (filename: [
|
||||
{
|
||||
assertion = !(hasInfix "/" filename);
|
||||
message = "boot.loader.systemd-boot.extraEntries.${lib.strings.escapeNixIdentifier filename} is invalid: entries within folders are not supported";
|
||||
}
|
||||
{
|
||||
assertion = hasSuffix ".conf" filename;
|
||||
message = "boot.loader.systemd-boot.extraEntries.${lib.strings.escapeNixIdentifier filename} is invalid: entries must have a .conf file extension";
|
||||
}
|
||||
]) (builtins.attrNames cfg.extraEntries)
|
||||
assertions =
|
||||
[
|
||||
{
|
||||
assertion = (hasPrefix "/" efi.efiSysMountPoint);
|
||||
message = "The ESP mount point '${toString efi.efiSysMountPoint}' must be an absolute path";
|
||||
}
|
||||
{
|
||||
assertion = cfg.xbootldrMountPoint == null || (hasPrefix "/" cfg.xbootldrMountPoint);
|
||||
message = "The XBOOTLDR mount point '${toString cfg.xbootldrMountPoint}' must be an absolute path";
|
||||
}
|
||||
{
|
||||
assertion = cfg.xbootldrMountPoint != efi.efiSysMountPoint;
|
||||
message = "The XBOOTLDR mount point '${toString cfg.xbootldrMountPoint}' cannot be the same as the ESP mount point '${toString efi.efiSysMountPoint}'";
|
||||
}
|
||||
{
|
||||
assertion = (config.boot.kernelPackages.kernel.features or { efiBootStub = true; }) ? efiBootStub;
|
||||
message = "This kernel does not support the EFI boot stub";
|
||||
}
|
||||
{
|
||||
assertion =
|
||||
cfg.installDeviceTree
|
||||
-> config.hardware.deviceTree.enable
|
||||
-> config.hardware.deviceTree.name != null;
|
||||
message = "Cannot install devicetree without 'config.hardware.deviceTree.enable' enabled and 'config.hardware.deviceTree.name' set";
|
||||
}
|
||||
]
|
||||
++ concatMap (filename: [
|
||||
{
|
||||
assertion = !(hasInfix "/" filename);
|
||||
message = "boot.loader.systemd-boot.extraEntries.${lib.strings.escapeNixIdentifier filename} is invalid: entries within folders are not supported";
|
||||
}
|
||||
{
|
||||
assertion = hasSuffix ".conf" filename;
|
||||
message = "boot.loader.systemd-boot.extraEntries.${lib.strings.escapeNixIdentifier filename} is invalid: entries must have a .conf file extension";
|
||||
}
|
||||
]) (builtins.attrNames cfg.extraEntries)
|
||||
++ concatMap (filename: [
|
||||
{
|
||||
assertion = !(hasPrefix "/" filename);
|
||||
@ -396,7 +571,13 @@ in {
|
||||
assertion = !(hasInfix "nixos/.extra-files" (toLower filename));
|
||||
message = "boot.loader.systemd-boot.extraFiles.${lib.strings.escapeNixIdentifier filename} is invalid: files cannot be placed in the nixos/.extra-files directory";
|
||||
}
|
||||
]) (builtins.attrNames cfg.extraFiles);
|
||||
]) (builtins.attrNames cfg.extraFiles)
|
||||
++ concatMap (winVersion: [
|
||||
{
|
||||
assertion = lib.match "^[-_0-9A-Za-z]+$" winVersion != null;
|
||||
message = "boot.loader.systemd-boot.windows.${winVersion} is invalid: key must only contain alphanumeric characters, hyphens, and underscores";
|
||||
}
|
||||
]) (builtins.attrNames cfg.windows);
|
||||
|
||||
boot.loader.grub.enable = mkDefault false;
|
||||
|
||||
@ -409,24 +590,44 @@ in {
|
||||
(mkIf cfg.netbootxyz.enable {
|
||||
"efi/netbootxyz/netboot.xyz.efi" = "${pkgs.netbootxyz-efi}";
|
||||
})
|
||||
(mkIf (cfg.edk2-uefi-shell.enable || cfg.windows != { }) {
|
||||
${edk2ShellEspPath} = "${pkgs.edk2-uefi-shell}/shell.efi";
|
||||
})
|
||||
];
|
||||
|
||||
boot.loader.systemd-boot.extraEntries = mkMerge [
|
||||
(mkIf cfg.memtest86.enable {
|
||||
"memtest86.conf" = ''
|
||||
title Memtest86+
|
||||
efi /efi/memtest86/memtest.efi
|
||||
sort-key ${cfg.memtest86.sortKey}
|
||||
boot.loader.systemd-boot.extraEntries = mkMerge (
|
||||
[
|
||||
(mkIf cfg.memtest86.enable {
|
||||
"memtest86.conf" = ''
|
||||
title Memtest86+
|
||||
efi /efi/memtest86/memtest.efi
|
||||
sort-key ${cfg.memtest86.sortKey}
|
||||
'';
|
||||
})
|
||||
(mkIf cfg.netbootxyz.enable {
|
||||
"netbootxyz.conf" = ''
|
||||
title netboot.xyz
|
||||
efi /efi/netbootxyz/netboot.xyz.efi
|
||||
sort-key ${cfg.netbootxyz.sortKey}
|
||||
'';
|
||||
})
|
||||
(mkIf cfg.edk2-uefi-shell.enable {
|
||||
"edk2-uefi-shell.conf" = ''
|
||||
title EDK2 UEFI Shell
|
||||
efi /${edk2ShellEspPath}
|
||||
sort-key ${cfg.edk2-uefi-shell.sortKey}
|
||||
'';
|
||||
})
|
||||
]
|
||||
++ (mapAttrsToList (winVersion: cfg: {
|
||||
"windows_${winVersion}.conf" = ''
|
||||
title ${cfg.title}
|
||||
efi /${edk2ShellEspPath}
|
||||
options -nointerrupt -nomap -noversion ${cfg.efiDeviceHandle}:EFI\Microsoft\Boot\Bootmgfw.efi
|
||||
sort-key ${cfg.sortKey}
|
||||
'';
|
||||
})
|
||||
(mkIf cfg.netbootxyz.enable {
|
||||
"netbootxyz.conf" = ''
|
||||
title netboot.xyz
|
||||
efi /efi/netbootxyz/netboot.xyz.efi
|
||||
sort-key ${cfg.netbootxyz.sortKey}
|
||||
'';
|
||||
})
|
||||
];
|
||||
}) cfg.windows)
|
||||
);
|
||||
|
||||
boot.bootspec.extensions."org.nixos.systemd-boot" = {
|
||||
inherit (config.boot.loader.systemd-boot) sortKey;
|
||||
|
@ -1,6 +1,7 @@
|
||||
{ system ? builtins.currentSystem,
|
||||
config ? {},
|
||||
pkgs ? import ../.. { inherit system config; }
|
||||
{
|
||||
system ? builtins.currentSystem,
|
||||
config ? { },
|
||||
pkgs ? import ../.. { inherit system config; },
|
||||
}:
|
||||
|
||||
with import ../lib/testing-python.nix { inherit system pkgs; };
|
||||
@ -16,7 +17,13 @@ let
|
||||
system.switch.enable = true;
|
||||
};
|
||||
|
||||
commonXbootldr = { config, lib, pkgs, ... }:
|
||||
commonXbootldr =
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
diskImage = import ../lib/make-disk-image.nix {
|
||||
inherit config lib pkgs;
|
||||
@ -85,7 +92,10 @@ in
|
||||
{
|
||||
basic = makeTest {
|
||||
name = "systemd-boot";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ danielfullmer julienmalka ];
|
||||
meta.maintainers = with pkgs.lib.maintainers; [
|
||||
danielfullmer
|
||||
julienmalka
|
||||
];
|
||||
|
||||
nodes.machine = common;
|
||||
|
||||
@ -117,22 +127,25 @@ in
|
||||
virtualisation.useSecureBoot = true;
|
||||
};
|
||||
|
||||
testScript = let
|
||||
efiArch = pkgs.stdenv.hostPlatform.efiArch;
|
||||
in { nodes, ... }: ''
|
||||
machine.start(allow_reboot=True)
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
testScript =
|
||||
let
|
||||
efiArch = pkgs.stdenv.hostPlatform.efiArch;
|
||||
in
|
||||
{ nodes, ... }:
|
||||
''
|
||||
machine.start(allow_reboot=True)
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
machine.succeed("sbctl create-keys")
|
||||
machine.succeed("sbctl enroll-keys --yes-this-might-brick-my-machine")
|
||||
machine.succeed('sbctl sign /boot/EFI/systemd/systemd-boot${efiArch}.efi')
|
||||
machine.succeed('sbctl sign /boot/EFI/BOOT/BOOT${toUpper efiArch}.EFI')
|
||||
machine.succeed('sbctl sign /boot/EFI/nixos/*${nodes.machine.system.boot.loader.kernelFile}.efi')
|
||||
machine.succeed("sbctl create-keys")
|
||||
machine.succeed("sbctl enroll-keys --yes-this-might-brick-my-machine")
|
||||
machine.succeed('sbctl sign /boot/EFI/systemd/systemd-boot${efiArch}.efi')
|
||||
machine.succeed('sbctl sign /boot/EFI/BOOT/BOOT${toUpper efiArch}.EFI')
|
||||
machine.succeed('sbctl sign /boot/EFI/nixos/*${nodes.machine.system.boot.loader.kernelFile}.efi')
|
||||
|
||||
machine.reboot()
|
||||
machine.reboot()
|
||||
|
||||
assert "Secure Boot: enabled (user)" in machine.succeed("bootctl status")
|
||||
'';
|
||||
assert "Secure Boot: enabled (user)" in machine.succeed("bootctl status")
|
||||
'';
|
||||
};
|
||||
|
||||
basicXbootldr = makeTest {
|
||||
@ -141,80 +154,97 @@ in
|
||||
|
||||
nodes.machine = commonXbootldr;
|
||||
|
||||
testScript = { nodes, ... }: ''
|
||||
${customDiskImage nodes}
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
${customDiskImage nodes}
|
||||
|
||||
machine.start()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
machine.start()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
machine.succeed("test -e /efi/EFI/systemd/systemd-bootx64.efi")
|
||||
machine.succeed("test -e /boot/loader/entries/nixos-generation-1.conf")
|
||||
machine.succeed("test -e /efi/EFI/systemd/systemd-bootx64.efi")
|
||||
machine.succeed("test -e /boot/loader/entries/nixos-generation-1.conf")
|
||||
|
||||
# Ensure we actually booted using systemd-boot
|
||||
# Magic number is the vendor UUID used by systemd-boot.
|
||||
machine.succeed(
|
||||
"test -e /sys/firmware/efi/efivars/LoaderEntrySelected-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f"
|
||||
)
|
||||
# Ensure we actually booted using systemd-boot
|
||||
# Magic number is the vendor UUID used by systemd-boot.
|
||||
machine.succeed(
|
||||
"test -e /sys/firmware/efi/efivars/LoaderEntrySelected-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f"
|
||||
)
|
||||
|
||||
# "bootctl install" should have created an EFI entry
|
||||
machine.succeed('efibootmgr | grep "Linux Boot Manager"')
|
||||
'';
|
||||
# "bootctl install" should have created an EFI entry
|
||||
machine.succeed('efibootmgr | grep "Linux Boot Manager"')
|
||||
'';
|
||||
};
|
||||
|
||||
# Check that specialisations create corresponding boot entries.
|
||||
specialisation = makeTest {
|
||||
name = "systemd-boot-specialisation";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ lukegb julienmalka ];
|
||||
meta.maintainers = with pkgs.lib.maintainers; [
|
||||
lukegb
|
||||
julienmalka
|
||||
];
|
||||
|
||||
nodes.machine = { pkgs, lib, ... }: {
|
||||
imports = [ common ];
|
||||
specialisation.something.configuration = {
|
||||
boot.loader.systemd-boot.sortKey = "something";
|
||||
nodes.machine =
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
specialisation.something.configuration = {
|
||||
boot.loader.systemd-boot.sortKey = "something";
|
||||
|
||||
# Since qemu will dynamically create a devicetree blob when starting
|
||||
# up, it is not straight forward to create an export of that devicetree
|
||||
# blob without knowing before-hand all the flags we would pass to qemu
|
||||
# (we would then be able to use `dumpdtb`). Thus, the following config
|
||||
# will not boot, but it does allow us to assert that the boot entry has
|
||||
# the correct contents.
|
||||
boot.loader.systemd-boot.installDeviceTree = pkgs.stdenv.hostPlatform.isAarch64;
|
||||
hardware.deviceTree.name = "dummy.dtb";
|
||||
hardware.deviceTree.package = lib.mkForce (pkgs.runCommand "dummy-devicetree-package" { } ''
|
||||
mkdir -p $out
|
||||
cp ${pkgs.emptyFile} $out/dummy.dtb
|
||||
'');
|
||||
# Since qemu will dynamically create a devicetree blob when starting
|
||||
# up, it is not straight forward to create an export of that devicetree
|
||||
# blob without knowing before-hand all the flags we would pass to qemu
|
||||
# (we would then be able to use `dumpdtb`). Thus, the following config
|
||||
# will not boot, but it does allow us to assert that the boot entry has
|
||||
# the correct contents.
|
||||
boot.loader.systemd-boot.installDeviceTree = pkgs.stdenv.hostPlatform.isAarch64;
|
||||
hardware.deviceTree.name = "dummy.dtb";
|
||||
hardware.deviceTree.package = lib.mkForce (
|
||||
pkgs.runCommand "dummy-devicetree-package" { } ''
|
||||
mkdir -p $out
|
||||
cp ${pkgs.emptyFile} $out/dummy.dtb
|
||||
''
|
||||
);
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = { nodes, ... }: ''
|
||||
machine.start()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
machine.start()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
machine.succeed(
|
||||
"test -e /boot/loader/entries/nixos-generation-1-specialisation-something.conf"
|
||||
)
|
||||
machine.succeed(
|
||||
"grep -q 'title NixOS (something)' /boot/loader/entries/nixos-generation-1-specialisation-something.conf"
|
||||
)
|
||||
machine.succeed(
|
||||
"grep 'sort-key something' /boot/loader/entries/nixos-generation-1-specialisation-something.conf"
|
||||
)
|
||||
'' + pkgs.lib.optionalString pkgs.stdenv.hostPlatform.isAarch64 ''
|
||||
machine.succeed(
|
||||
r"grep 'devicetree /EFI/nixos/[a-z0-9]\{32\}.*dummy' /boot/loader/entries/nixos-generation-1-specialisation-something.conf"
|
||||
)
|
||||
'';
|
||||
machine.succeed(
|
||||
"test -e /boot/loader/entries/nixos-generation-1-specialisation-something.conf"
|
||||
)
|
||||
machine.succeed(
|
||||
"grep -q 'title NixOS (something)' /boot/loader/entries/nixos-generation-1-specialisation-something.conf"
|
||||
)
|
||||
machine.succeed(
|
||||
"grep 'sort-key something' /boot/loader/entries/nixos-generation-1-specialisation-something.conf"
|
||||
)
|
||||
''
|
||||
+ pkgs.lib.optionalString pkgs.stdenv.hostPlatform.isAarch64 ''
|
||||
machine.succeed(
|
||||
r"grep 'devicetree /EFI/nixos/[a-z0-9]\{32\}.*dummy' /boot/loader/entries/nixos-generation-1-specialisation-something.conf"
|
||||
)
|
||||
'';
|
||||
};
|
||||
|
||||
# Boot without having created an EFI entry--instead using default "/EFI/BOOT/BOOTX64.EFI"
|
||||
fallback = makeTest {
|
||||
name = "systemd-boot-fallback";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ danielfullmer julienmalka ];
|
||||
meta.maintainers = with pkgs.lib.maintainers; [
|
||||
danielfullmer
|
||||
julienmalka
|
||||
];
|
||||
|
||||
nodes.machine = { pkgs, lib, ... }: {
|
||||
imports = [ common ];
|
||||
boot.loader.efi.canTouchEfiVariables = mkForce false;
|
||||
};
|
||||
nodes.machine =
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
boot.loader.efi.canTouchEfiVariables = mkForce false;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.start()
|
||||
@ -235,7 +265,10 @@ in
|
||||
|
||||
update = makeTest {
|
||||
name = "systemd-boot-update";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ danielfullmer julienmalka ];
|
||||
meta.maintainers = with pkgs.lib.maintainers; [
|
||||
danielfullmer
|
||||
julienmalka
|
||||
];
|
||||
|
||||
nodes.machine = common;
|
||||
|
||||
@ -270,29 +303,35 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
memtest86 = with pkgs.lib; optionalAttrs (meta.availableOn { inherit system; } pkgs.memtest86plus) (makeTest {
|
||||
name = "systemd-boot-memtest86";
|
||||
meta.maintainers = with maintainers; [ julienmalka ];
|
||||
memtest86 =
|
||||
with pkgs.lib;
|
||||
optionalAttrs (meta.availableOn { inherit system; } pkgs.memtest86plus) (makeTest {
|
||||
name = "systemd-boot-memtest86";
|
||||
meta.maintainers = with maintainers; [ julienmalka ];
|
||||
|
||||
nodes.machine = { pkgs, lib, ... }: {
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.memtest86.enable = true;
|
||||
};
|
||||
nodes.machine =
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.memtest86.enable = true;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.succeed("test -e /boot/loader/entries/memtest86.conf")
|
||||
machine.succeed("test -e /boot/efi/memtest86/memtest.efi")
|
||||
'';
|
||||
});
|
||||
testScript = ''
|
||||
machine.succeed("test -e /boot/loader/entries/memtest86.conf")
|
||||
machine.succeed("test -e /boot/efi/memtest86/memtest.efi")
|
||||
'';
|
||||
});
|
||||
|
||||
netbootxyz = makeTest {
|
||||
name = "systemd-boot-netbootxyz";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ julienmalka ];
|
||||
|
||||
nodes.machine = { pkgs, lib, ... }: {
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.netbootxyz.enable = true;
|
||||
};
|
||||
nodes.machine =
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.netbootxyz.enable = true;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.succeed("test -e /boot/loader/entries/netbootxyz.conf")
|
||||
@ -300,15 +339,77 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
edk2-uefi-shell = makeTest {
|
||||
name = "systemd-boot-edk2-uefi-shell";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ iFreilicht ];
|
||||
|
||||
nodes.machine = { ... }: {
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.edk2-uefi-shell.enable = true;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.succeed("test -e /boot/loader/entries/edk2-uefi-shell.conf")
|
||||
machine.succeed("test -e /boot/efi/edk2-uefi-shell/shell.efi")
|
||||
'';
|
||||
};
|
||||
|
||||
windows = makeTest {
|
||||
name = "systemd-boot-windows";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ iFreilicht ];
|
||||
|
||||
nodes.machine = { ... }: {
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.windows = {
|
||||
"7" = {
|
||||
efiDeviceHandle = "HD0c1";
|
||||
sortKey = "before_all_others";
|
||||
};
|
||||
"Ten".efiDeviceHandle = "FS0";
|
||||
"11" = {
|
||||
title = "Title with-_-punctuation ...?!";
|
||||
efiDeviceHandle = "HD0d4";
|
||||
sortKey = "zzz";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.succeed("test -e /boot/efi/edk2-uefi-shell/shell.efi")
|
||||
|
||||
machine.succeed("test -e /boot/loader/entries/windows_7.conf")
|
||||
machine.succeed("test -e /boot/loader/entries/windows_Ten.conf")
|
||||
machine.succeed("test -e /boot/loader/entries/windows_11.conf")
|
||||
|
||||
machine.succeed("grep 'efi /efi/edk2-uefi-shell/shell.efi' /boot/loader/entries/windows_7.conf")
|
||||
machine.succeed("grep 'efi /efi/edk2-uefi-shell/shell.efi' /boot/loader/entries/windows_Ten.conf")
|
||||
machine.succeed("grep 'efi /efi/edk2-uefi-shell/shell.efi' /boot/loader/entries/windows_11.conf")
|
||||
|
||||
machine.succeed("grep 'HD0c1:EFI\\\\Microsoft\\\\Boot\\\\Bootmgfw.efi' /boot/loader/entries/windows_7.conf")
|
||||
machine.succeed("grep 'FS0:EFI\\\\Microsoft\\\\Boot\\\\Bootmgfw.efi' /boot/loader/entries/windows_Ten.conf")
|
||||
machine.succeed("grep 'HD0d4:EFI\\\\Microsoft\\\\Boot\\\\Bootmgfw.efi' /boot/loader/entries/windows_11.conf")
|
||||
|
||||
machine.succeed("grep 'sort-key before_all_others' /boot/loader/entries/windows_7.conf")
|
||||
machine.succeed("grep 'sort-key o_windows_Ten' /boot/loader/entries/windows_Ten.conf")
|
||||
machine.succeed("grep 'sort-key zzz' /boot/loader/entries/windows_11.conf")
|
||||
|
||||
machine.succeed("grep 'title Windows 7' /boot/loader/entries/windows_7.conf")
|
||||
machine.succeed("grep 'title Windows Ten' /boot/loader/entries/windows_Ten.conf")
|
||||
machine.succeed('grep "title Title with-_-punctuation ...?!" /boot/loader/entries/windows_11.conf')
|
||||
'';
|
||||
};
|
||||
|
||||
memtestSortKey = makeTest {
|
||||
name = "systemd-boot-memtest-sortkey";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ julienmalka ];
|
||||
|
||||
nodes.machine = { pkgs, lib, ... }: {
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.memtest86.enable = true;
|
||||
boot.loader.systemd-boot.memtest86.sortKey = "apple";
|
||||
};
|
||||
nodes.machine =
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.memtest86.enable = true;
|
||||
boot.loader.systemd-boot.memtest86.sortKey = "apple";
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.succeed("test -e /boot/loader/entries/memtest86.conf")
|
||||
@ -321,35 +422,41 @@ in
|
||||
name = "systemd-boot-entry-filename-xbootldr";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ sdht0 ];
|
||||
|
||||
nodes.machine = { pkgs, lib, ... }: {
|
||||
imports = [ commonXbootldr ];
|
||||
boot.loader.systemd-boot.memtest86.enable = true;
|
||||
};
|
||||
nodes.machine =
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
imports = [ commonXbootldr ];
|
||||
boot.loader.systemd-boot.memtest86.enable = true;
|
||||
};
|
||||
|
||||
testScript = { nodes, ... }: ''
|
||||
${customDiskImage nodes}
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
${customDiskImage nodes}
|
||||
|
||||
machine.start()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
machine.start()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
machine.succeed("test -e /efi/EFI/systemd/systemd-bootx64.efi")
|
||||
machine.succeed("test -e /boot/loader/entries/memtest86.conf")
|
||||
machine.succeed("test -e /boot/EFI/memtest86/memtest.efi")
|
||||
'';
|
||||
machine.succeed("test -e /efi/EFI/systemd/systemd-bootx64.efi")
|
||||
machine.succeed("test -e /boot/loader/entries/memtest86.conf")
|
||||
machine.succeed("test -e /boot/EFI/memtest86/memtest.efi")
|
||||
'';
|
||||
};
|
||||
|
||||
extraEntries = makeTest {
|
||||
name = "systemd-boot-extra-entries";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ julienmalka ];
|
||||
|
||||
nodes.machine = { pkgs, lib, ... }: {
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.extraEntries = {
|
||||
"banana.conf" = ''
|
||||
title banana
|
||||
'';
|
||||
nodes.machine =
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.extraEntries = {
|
||||
"banana.conf" = ''
|
||||
title banana
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.succeed("test -e /boot/loader/entries/banana.conf")
|
||||
@ -361,12 +468,14 @@ in
|
||||
name = "systemd-boot-extra-files";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ julienmalka ];
|
||||
|
||||
nodes.machine = { pkgs, lib, ... }: {
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.extraFiles = {
|
||||
"efi/fruits/tomato.efi" = pkgs.netbootxyz-efi;
|
||||
nodes.machine =
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.extraFiles = {
|
||||
"efi/fruits/tomato.efi" = pkgs.netbootxyz-efi;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.succeed("test -e /boot/efi/fruits/tomato.efi")
|
||||
@ -381,55 +490,62 @@ in
|
||||
nodes = {
|
||||
inherit common;
|
||||
|
||||
machine = { pkgs, nodes, ... }: {
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.extraFiles = {
|
||||
"efi/fruits/tomato.efi" = pkgs.netbootxyz-efi;
|
||||
machine =
|
||||
{ pkgs, nodes, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.extraFiles = {
|
||||
"efi/fruits/tomato.efi" = pkgs.netbootxyz-efi;
|
||||
};
|
||||
|
||||
# These are configs for different nodes, but we'll use them here in `machine`
|
||||
system.extraDependencies = [
|
||||
nodes.common.system.build.toplevel
|
||||
nodes.with_netbootxyz.system.build.toplevel
|
||||
];
|
||||
};
|
||||
|
||||
# These are configs for different nodes, but we'll use them here in `machine`
|
||||
system.extraDependencies = [
|
||||
nodes.common.system.build.toplevel
|
||||
nodes.with_netbootxyz.system.build.toplevel
|
||||
];
|
||||
};
|
||||
|
||||
with_netbootxyz = { pkgs, ... }: {
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.netbootxyz.enable = true;
|
||||
};
|
||||
with_netbootxyz =
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
boot.loader.systemd-boot.netbootxyz.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
testScript = { nodes, ... }: let
|
||||
originalSystem = nodes.machine.system.build.toplevel;
|
||||
baseSystem = nodes.common.system.build.toplevel;
|
||||
finalSystem = nodes.with_netbootxyz.system.build.toplevel;
|
||||
in ''
|
||||
machine.succeed("test -e /boot/efi/fruits/tomato.efi")
|
||||
machine.succeed("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi")
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
originalSystem = nodes.machine.system.build.toplevel;
|
||||
baseSystem = nodes.common.system.build.toplevel;
|
||||
finalSystem = nodes.with_netbootxyz.system.build.toplevel;
|
||||
in
|
||||
''
|
||||
machine.succeed("test -e /boot/efi/fruits/tomato.efi")
|
||||
machine.succeed("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi")
|
||||
|
||||
with subtest("remove files when no longer needed"):
|
||||
machine.succeed("${baseSystem}/bin/switch-to-configuration boot")
|
||||
machine.fail("test -e /boot/efi/fruits/tomato.efi")
|
||||
machine.fail("test -d /boot/efi/fruits")
|
||||
machine.succeed("test -d /boot/efi/nixos/.extra-files")
|
||||
machine.fail("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi")
|
||||
machine.fail("test -d /boot/efi/nixos/.extra-files/efi/fruits")
|
||||
with subtest("remove files when no longer needed"):
|
||||
machine.succeed("${baseSystem}/bin/switch-to-configuration boot")
|
||||
machine.fail("test -e /boot/efi/fruits/tomato.efi")
|
||||
machine.fail("test -d /boot/efi/fruits")
|
||||
machine.succeed("test -d /boot/efi/nixos/.extra-files")
|
||||
machine.fail("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi")
|
||||
machine.fail("test -d /boot/efi/nixos/.extra-files/efi/fruits")
|
||||
|
||||
with subtest("files are added back when needed again"):
|
||||
machine.succeed("${originalSystem}/bin/switch-to-configuration boot")
|
||||
machine.succeed("test -e /boot/efi/fruits/tomato.efi")
|
||||
machine.succeed("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi")
|
||||
with subtest("files are added back when needed again"):
|
||||
machine.succeed("${originalSystem}/bin/switch-to-configuration boot")
|
||||
machine.succeed("test -e /boot/efi/fruits/tomato.efi")
|
||||
machine.succeed("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi")
|
||||
|
||||
with subtest("simultaneously removing and adding files works"):
|
||||
machine.succeed("${finalSystem}/bin/switch-to-configuration boot")
|
||||
machine.fail("test -e /boot/efi/fruits/tomato.efi")
|
||||
machine.fail("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi")
|
||||
machine.succeed("test -e /boot/loader/entries/netbootxyz.conf")
|
||||
machine.succeed("test -e /boot/efi/netbootxyz/netboot.xyz.efi")
|
||||
machine.succeed("test -e /boot/efi/nixos/.extra-files/loader/entries/netbootxyz.conf")
|
||||
machine.succeed("test -e /boot/efi/nixos/.extra-files/efi/netbootxyz/netboot.xyz.efi")
|
||||
'';
|
||||
with subtest("simultaneously removing and adding files works"):
|
||||
machine.succeed("${finalSystem}/bin/switch-to-configuration boot")
|
||||
machine.fail("test -e /boot/efi/fruits/tomato.efi")
|
||||
machine.fail("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi")
|
||||
machine.succeed("test -e /boot/loader/entries/netbootxyz.conf")
|
||||
machine.succeed("test -e /boot/efi/netbootxyz/netboot.xyz.efi")
|
||||
machine.succeed("test -e /boot/efi/nixos/.extra-files/loader/entries/netbootxyz.conf")
|
||||
machine.succeed("test -e /boot/efi/nixos/.extra-files/efi/netbootxyz/netboot.xyz.efi")
|
||||
'';
|
||||
};
|
||||
|
||||
garbage-collect-entry = makeTest {
|
||||
@ -438,17 +554,20 @@ in
|
||||
|
||||
nodes = {
|
||||
inherit common;
|
||||
machine = { pkgs, nodes, ... }: {
|
||||
imports = [ common ];
|
||||
machine =
|
||||
{ pkgs, nodes, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
|
||||
# These are configs for different nodes, but we'll use them here in `machine`
|
||||
system.extraDependencies = [
|
||||
nodes.common.system.build.toplevel
|
||||
];
|
||||
};
|
||||
# These are configs for different nodes, but we'll use them here in `machine`
|
||||
system.extraDependencies = [
|
||||
nodes.common.system.build.toplevel
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
testScript = { nodes, ... }:
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
baseSystem = nodes.common.system.build.toplevel;
|
||||
in
|
||||
@ -461,19 +580,18 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
no-bootspec = makeTest
|
||||
{
|
||||
name = "systemd-boot-no-bootspec";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ julienmalka ];
|
||||
no-bootspec = makeTest {
|
||||
name = "systemd-boot-no-bootspec";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ julienmalka ];
|
||||
|
||||
nodes.machine = {
|
||||
imports = [ common ];
|
||||
boot.bootspec.enable = false;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.start()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
'';
|
||||
nodes.machine = {
|
||||
imports = [ common ];
|
||||
boot.bootspec.enable = false;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.start()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ergo";
|
||||
version = "5.0.22";
|
||||
version = "5.0.23";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
|
||||
sha256 = "sha256-fuea76l6kIjk9n/LlktZmJ1B8wiwSfEeHUkTr+I1a2c=";
|
||||
sha256 = "sha256-bVvqsgfsIlAUwbTbFAYbI+Dtgbxv71cMlDpaReTE56Q=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
@ -11715,6 +11715,18 @@ final: prev:
|
||||
meta.homepage = "https://github.com/nvim-telescope/telescope-fzy-native.nvim/";
|
||||
};
|
||||
|
||||
telescope-git-conflicts-nvim = buildVimPlugin {
|
||||
pname = "telescope-git-conflicts.nvim";
|
||||
version = "2024-01-14";
|
||||
src = fetchFromGitHub {
|
||||
owner = "Snikimonkd";
|
||||
repo = "telescope-git-conflicts.nvim";
|
||||
rev = "1ac7040f601d16ab3800bdda6f5912a0e385cb29";
|
||||
sha256 = "0n5jwc7pv14fipavqfvam5691qp9fvs2nksdaihjgqrgl5sd12jv";
|
||||
};
|
||||
meta.homepage = "https://github.com/Snikimonkd/telescope-git-conflicts.nvim/";
|
||||
};
|
||||
|
||||
telescope-github-nvim = buildVimPlugin {
|
||||
pname = "telescope-github.nvim";
|
||||
version = "2022-04-22";
|
||||
|
@ -2134,6 +2134,10 @@ in
|
||||
meta.platforms = lib.platforms.all;
|
||||
});
|
||||
|
||||
telescope-git-conflicts-nvim = super.telescope-git-conflicts-nvim.overrideAttrs {
|
||||
dependencies = with self; [ telescope-nvim ];
|
||||
};
|
||||
|
||||
telescope-media-files-nvim = super.telescope-media-files-nvim.overrideAttrs {
|
||||
dependencies = with self; [
|
||||
telescope-nvim
|
||||
|
@ -982,6 +982,7 @@ https://github.com/nvim-telescope/telescope-frecency.nvim/,,
|
||||
https://github.com/nvim-telescope/telescope-fzf-native.nvim/,,
|
||||
https://github.com/nvim-telescope/telescope-fzf-writer.nvim/,,
|
||||
https://github.com/nvim-telescope/telescope-fzy-native.nvim/,,
|
||||
https://github.com/Snikimonkd/telescope-git-conflicts.nvim/,HEAD,
|
||||
https://github.com/nvim-telescope/telescope-github.nvim/,,
|
||||
https://github.com/nvim-telescope/telescope-live-grep-args.nvim/,HEAD,
|
||||
https://github.com/gbrlsnchs/telescope-lsp-handlers.nvim/,,
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "temporal";
|
||||
version = "1.25.0";
|
||||
version = "1.25.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "temporalio";
|
||||
repo = "temporal";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-H/kHPS43h+MQgOpKIHoM6hJQxCYq8Yo1GzOQeLFRoNw=";
|
||||
hash = "sha256-/y03XyJM9OaG8Pceh6RuB5eIU0ue3O0cPnax4ASTt4k=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-RhWeIT1i86wxAALNhhpWZjWo1v+82vTrGBWCaryE3Ws=";
|
||||
vendorHash = "sha256-7t/hMTCraDLLYsyoGar8j7Q84temMGY+ZxVmJBGBw0c=";
|
||||
|
||||
excludedPackages = [ "./build" ];
|
||||
|
||||
|
@ -43,7 +43,7 @@ buildFHSEnv {
|
||||
|
||||
targetPkgs = pkgs: with pkgs; with xorg; [
|
||||
libICE libSM libX11 libXcomposite libXdamage libXext libXfixes libXrender
|
||||
libXxf86vm libxcb xkeyboardconfig
|
||||
libXxf86vm libGL libxcb xkeyboardconfig
|
||||
curl dbus firefox-bin fontconfig freetype gcc glib gnutar libxml2 libxslt
|
||||
procps zlib mesa libxshmfence libpthreadstubs libappindicator
|
||||
];
|
||||
|
@ -1,665 +1,665 @@
|
||||
{
|
||||
version = "128.2.3esr";
|
||||
version = "128.3.1esr";
|
||||
sources = [
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/af/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/af/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "af";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "11450c70fbb9952707384ef5900ffce76c0ddc079cd02993a37393da3b6f35e1";
|
||||
sha256 = "daec0c206763600ea16dc09db4c11ed82132bf6ed4275307f5635677891f3d43";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/ar/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/ar/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ar";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "99b09985161dda620e53c5afe9387357b7e8ef0f46c3af332c15167c9bfa32fc";
|
||||
sha256 = "04801b87ddc17b059a61cf4d16e2d7eda45ca96c0de497e93e02b24be8590176";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/ast/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/ast/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ast";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "5cca2e4b9ce3e52625fb9442c15aa5166a836a3625c0bcc9fad0a6a888d564b8";
|
||||
sha256 = "046a8218164d1dc3f7e1b7d1f134c9fb94f9fe30702e7f0ce8474145725590c3";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/be/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/be/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "be";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "c2cbc174ef0bf8616a09cfe863dcd850722c8f0fb8bb3d071fa7af6da7088fd2";
|
||||
sha256 = "2c1bec26b01f2ac25df9537f34582c18677fc93203e94c378323f0ff161ab6bb";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/bg/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/bg/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "bg";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "92ac1d843307d3a13da2bd7eaacda090aa3ca9b26e3da33a2d8e4780ccb7affe";
|
||||
sha256 = "64a6c820bc35b416aff30822417486104bbde4842efec785db6b2e1f35b66b70";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/br/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/br/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "br";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "c15561c692845ab1d750dfe2fbfa0031d4b713afe5b1359644ececef0def1e3e";
|
||||
sha256 = "9074dd4e49c2a73f62cf0454d29e8bdd417dbf129489baca9848912cc60c8fe8";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/ca/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/ca/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ca";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "efdfcf6d564b5e82f0b0e8d2bd93ba32258cbc403cefda46036e07bc813630cb";
|
||||
sha256 = "ded677ad4962afc9372067f8c87f0d1623275a03cc98b125fd721ef3c3df6028";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/cak/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/cak/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "cak";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "fdbea8ea3eca0ba502c3340f02462ce4f03064498de8c37b86559a5c491a2829";
|
||||
sha256 = "7ca0781d25f77cc72dcfc1b8ad88fa222a90c8af2fad1535c30f6e0df04cc2bd";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/cs/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/cs/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "cs";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "34233723a02da1021520ea9630d8397d29ff135ad0f80e499d6bca3a0b8c34c2";
|
||||
sha256 = "e8f6bd963a49342d176c4b45ceb7038c3a18a6002060237cd06c807f27338c29";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/cy/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/cy/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "cy";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "0fa356291b99737024a5aae863c18456ddcbb7300369367ad083aab9a48b2dfa";
|
||||
sha256 = "97486ec291bbec41a3813a1e289bd044ea3ccea71a66c9182cf13481bb17765a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/da/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/da/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "da";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "c7f51211239bcc5265e2ab81d257b8a6ff0811aa5294b7bce68c08f2fa8e3524";
|
||||
sha256 = "2f83197baae9097bf2a13f3d781416e32e711de14f2e9e6f3be4ef909975b5c5";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/de/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/de/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "de";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "a128e567f8701ae72fd82e329d660603c2c30963b80a88e646e00254312d5141";
|
||||
sha256 = "d5164afcd92be1e64887d056b0a97a2c8b8a8e0f8b52d0d71380ab44deb54c16";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/dsb/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/dsb/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "dsb";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "869b352a024d9ceec41ba4d4c6d70085e8e9986dc9733da691abdd41e5d57389";
|
||||
sha256 = "74552c085365a7a381b634dd2db32620acd3cdb4e3dd8d93d24344c45149d027";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/el/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/el/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "el";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "623d36518dbc976b50e8a6fc7e14240eff158dde50fafe1ecaead4d6ad5554af";
|
||||
sha256 = "abb4db492bf0599dc08a0af742a863729abd45b67134a450faf9bb4dc9fbd048";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/en-CA/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/en-CA/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "en-CA";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "321b39bc363f058e04742a4bf64e66a3d36abdbf5876ccec21657b69f1abc6a4";
|
||||
sha256 = "149e106c120954f9d6c8021a426d487e482deba81aa2916cef9bbfebe100f6a4";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/en-GB/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/en-GB/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "en-GB";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "c40566dd51219c4373af3b476b8ec4189c8ca6de34befd84d76dcd9af1badc52";
|
||||
sha256 = "553f881b15952c5cc4ee31f7fe6d5425a8aecb2e292968972c6a920f2fea89e4";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/en-US/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/en-US/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "en-US";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "e1886acd969d75f1030f9dc68d3f360548b15e7ff6260182ebeaffcde53d11d2";
|
||||
sha256 = "6a4738c5b07b2c6e8668cccf2c3c24f78e2d8ae7a04a1963638e8404d96f12d4";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/es-AR/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/es-AR/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "es-AR";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "04f3275d8aa8cf68618e84bbf12df8974e63acd50e799d06032c96931a1f3c8c";
|
||||
sha256 = "9b886923b198af374e589666abe029d6cf905f5a0e77acccb35817815a3bf42e";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/es-ES/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/es-ES/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "es-ES";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "a879e7d4a0791ca53bb1904b7a162119ce2271d9d7d33a1fcacf4b92338ec58e";
|
||||
sha256 = "6fad8af3dfba46a88889a147931f202bbaecbf44db174e33237974b0e1d461aa";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/es-MX/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/es-MX/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "es-MX";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "2367511c520bc2a10e9ca986e56f0fa79d77af710a97367c30a8a963a932d060";
|
||||
sha256 = "76dbaa277644f72c11b2826973253daea1cd263265aac3d393303f3d4eca736a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/et/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/et/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "et";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "256167062672846e90962e3a7a3c60c04c34c18c35c8b3b47b98663922b2421e";
|
||||
sha256 = "89a9ce893dd7002dfb6e249309f25f45bc93ee84a7895c7911d41d7934643686";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/eu/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/eu/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "eu";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "4b5928bd99c088366b08c09de01b7d5dc5f1f11deb5ad48db29f0e266f3790e0";
|
||||
sha256 = "8743449758bd59afbb83e82bd62ea0f53c2a6c4c61ad095604d5b50a4b7323a4";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/fi/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/fi/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "fi";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "878cc0b6831e75f80408ab25629b6dc97d993be97f0144b87dee331019119124";
|
||||
sha256 = "5a59846d72690a074f4bddafe97d7f088341e8de0c43e958a6d2df7021b016da";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/fr/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/fr/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "fr";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "ebf090c97372ace2ab04ce43545b05328ae50b7e7ccfe4f1bae0abc6bf7bf18f";
|
||||
sha256 = "6de6c9b793215ab2b1c1ccb93bcb535a99a165085842064dadd0a5b42a57b71a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/fy-NL/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/fy-NL/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "fy-NL";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "945f072fc92cd3db1e2ce9de0fc5c8fc08e13a8764db54f9494a896fd4add7c7";
|
||||
sha256 = "ae85b76c1b512ba5d062ea4f157a587056afa859c238b511f8eeb412ae583682";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/ga-IE/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/ga-IE/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ga-IE";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "556a3a879c173038f829c5a94f659b3fe86848465498b6cd287aace380409a7f";
|
||||
sha256 = "59168b9e0dec31685222fd9bd8b83d0f230d3308484a4a2ea5416dacd7f49728";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/gd/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/gd/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "gd";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "614ef8d8f5229e7c153fb239e056002bfde8a1920cffc3e317dbafd0b486b8f7";
|
||||
sha256 = "4c35f2ea2fb781301d87649111c6d770e94f8487fbe8925f6156cd7227e50961";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/gl/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/gl/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "gl";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "b81c0470717d21cc95412e938c651aceef010bd771a90b6b1b2166c56a064bee";
|
||||
sha256 = "da4c2677e61e8759c5f4ff5f51f737201f047b5166636000bf73377a0b39c0eb";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/he/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/he/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "he";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "22885a85a65c0be0d292ac9c7275ef07c6c04c79a9d8b383d17e2d23d5f78e8b";
|
||||
sha256 = "94085a1d0106c7ce6bad8383fa85e530a79f8a38157ad94e5352f45847c7ba31";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/hr/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/hr/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "hr";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "a8f2235ac630a23d1e00d670caaa9ccb0f939d97171449554fe59be6c9051510";
|
||||
sha256 = "49a4dd6bc68b28a96fc59235fa16db4903561eea11a836e62e55f284a1526a23";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/hsb/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/hsb/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "hsb";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "341f8c2753ff38c0e9d61a634ef448a1f2c91cdba9a7d7c494748ec6918da6d2";
|
||||
sha256 = "e9e4ca0683a0eeecdacc7d92d8a59fea75459f7cfbdfe2f4406fed041429f041";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/hu/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/hu/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "hu";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "b3ae6f2fc7cce5cb2bb2634e261c0b73f218bb50ca0b81d8afe588b83a0e601d";
|
||||
sha256 = "379bfeb3e5554643b009d7f62074ccf6e95a6c46807f938e73054625b752f77c";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/hy-AM/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/hy-AM/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "hy-AM";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "23c25370fa8c9822fd4f34bced4df5f889375d487709698e7a81154152b54583";
|
||||
sha256 = "37ada95839dacc8907a2dc89bdc424d7dc73aa18f9ecf6c69afd8807e4470d4e";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/id/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/id/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "id";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "989719255963ca2d3550022c43c724368a7c48e484b4557c300311237902eea2";
|
||||
sha256 = "204f8b79def7de4a490487588c2e9558259d88ae92a96754579b183639c64e8d";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/is/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/is/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "is";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "afae9e8d124da04903874a35879b20bb45e9f03c0aeba78108e3765bb0803b63";
|
||||
sha256 = "17ee110e6e07d69f63b64d38ead0691a6ca521428c3716230f8a0aca6e23c800";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/it/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/it/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "it";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "f55d86350731c4b89eafde39d7badd228c22ae7d250d51f1f922632b27d9c66c";
|
||||
sha256 = "d17a2eb22847628217e7a918c33de0ab20db2576a28ebe177f37fbd9d84bbb9b";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/ja/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/ja/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ja";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "54315aaeb33ff3b1b795545e5c7cdabb32a3fb6b36a0b0175cf7e770fece96a6";
|
||||
sha256 = "07f36b8b7458d725c8df846f1fce58e7ed2569b4324e4b7cfa1750fbd21b0088";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/ka/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/ka/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ka";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "881373f2c3903b72b3f626a7ae245921f235e00b23943b9379e589e6c01b178c";
|
||||
sha256 = "d6675e3d23156b74f38b3805d3fca6fad8df6a1ec6adb311c1c783d928772531";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/kab/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/kab/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "kab";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "2f01762ab42c86c65d0a88034c6f931fa599411a3cc705772a9bedef139191f4";
|
||||
sha256 = "a4cc73ef677a343d49b61009de05bffacad1c8cbf368d8ac79e87fe12a24f1c8";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/kk/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/kk/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "kk";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "60202a6ae70d4c83b65c46803d0cd7cb2fe1b4524be63544c18a83f980cf470a";
|
||||
sha256 = "4d3d0010e55a9665a6f330e73acc8a9d924587d216c3ec2558e24ba83789194d";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/ko/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/ko/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ko";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "69e259e3737e4f759be6cc069acaa58c5a36e20eefb6712c4c75936e7b6aa509";
|
||||
sha256 = "55ed9d48ec45a9cd04705a8be89701262c7cf2aa16f545f08b361d89d30bd160";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/lt/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/lt/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "lt";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "74e750b692f59232f96094af91bf9053df8a680774e20dad34c6436dee10f9e9";
|
||||
sha256 = "4f84a793e672bdfca124eaf1f64c2753a2a424d2c689403ea8f06ab18d2c0922";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/lv/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/lv/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "lv";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "3e2fbc8693718ce8c4cab0bb1b8ec973d84a95342a6a7783cf5518a5fb3cf459";
|
||||
sha256 = "28e40e746c71f4d391a3fa4c640e0c248698fba1bcc4f3fa245d98774da0b393";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/ms/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/ms/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ms";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "b98245ec7b41493883fd06af08f94d350b22e61e36ad3f289af2239cba5e84d8";
|
||||
sha256 = "fb3c86acd2353143535397dd0dc0c478ab1a77ca13a7b44f2d726bfdbacbafae";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/nb-NO/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/nb-NO/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "nb-NO";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "e40f4b73190e85cd2c60c9a87336669e3a36d599642ab4415097fd4485287ede";
|
||||
sha256 = "9ed19c21dcc40642559eed238d40d39b19f6582060f92814279e111e481f72d5";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/nl/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/nl/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "nl";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "c76ae2e8e46d062964c913d57742a1195768af6eb273e01b5488f692dc40a7a8";
|
||||
sha256 = "6ced73e12b0c29295e00f32c72d86389c586c0442cda1592a74285b2509a0a55";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/nn-NO/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/nn-NO/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "nn-NO";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "b1c25025a407d698a45e6e0077a74aba3fb80389ec9fc7cefb2f847adcec7c40";
|
||||
sha256 = "1b2601fd6f4ba3c5442a9108d3647be6ddfa63afb582ea12a949fc082e7ab925";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/pa-IN/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/pa-IN/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "pa-IN";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "4c8ddacd077e71f005e02c2c4c1553c6d83a96b4df1b15705dd75a302d7f6cee";
|
||||
sha256 = "6489cbfa303b20bd0cf44592ef4ad2594447c440694077c8987d48049aee7235";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/pl/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/pl/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "pl";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "4f8acd938e09f5fbe1a61d22ea93935e44a94ce00b416da48e8e74cbfcd8b2e6";
|
||||
sha256 = "db7dc4b36b5a76e9e7fbd703d02e3d6cb3fb48d2263144bb75418e59c9038f91";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/pt-BR/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/pt-BR/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "pt-BR";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "1cb2d1eb626c9784555f3dce178b4b4e119213af1c9181b829442b9fb935f0ef";
|
||||
sha256 = "378bcb5617eccb26bc86d6357b35edb343b2f339ee4e35d114aafb788bf35261";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/pt-PT/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/pt-PT/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "pt-PT";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "d44ed828ddf0b6ea644470dd90e332be92893d6a37abd5cdba0bec4bdafcfef9";
|
||||
sha256 = "f33c33c70d8271061bbbafbccc325206c9b37f56637907a87e4d11aefc4675bc";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/rm/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/rm/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "rm";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "77d56c77323ed0cf994f79bd9a81aa516b183542794a3ca5e4fb15f11595fa37";
|
||||
sha256 = "40e60095cc4f7e10b052b15a80b1e58228c94b6c77cf5f90b5fcc8cadf094472";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/ro/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/ro/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ro";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "8080b95078f732104df47d426cd353468fa743dc98682dfd83d72091a6701d12";
|
||||
sha256 = "4b3d0eb8cfe07e345c2effe075b391ce82d75db4ed3c5015e25762a1919abe0d";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/ru/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/ru/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ru";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "2ddd6a04de6b15e439c43435772c09823e7814561d9228db63b17fcd6c00a6c1";
|
||||
sha256 = "76ab341bfb48acadd8ba0211be37e37912f002e5f814e60cb0c92182c6ffe5c7";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/sk/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/sk/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "sk";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "ed9f68ac0accc5ae9a4e86fc723a2d4128255ffd48264e0290a63792b5171c8a";
|
||||
sha256 = "9af224be897872875d06abefb82f7d0b6230b3d10bb4ce7c33accab3a1303b7e";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/sl/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/sl/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "sl";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "d85ef11dc6f123696a0d9b021ebc1b78b606e9cc372b92ecdbf227d3fd275c3b";
|
||||
sha256 = "c66eb160c777449c032212972200997cf3303d916f50019db88a4ab21d737126";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/sq/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/sq/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "sq";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "59bb9dcb795ce15413c836ec671ba0760eba831741ecd94d181199171d26d3b3";
|
||||
sha256 = "dfb18940364e6686a2ae369fb6f5b410e978c42efc7e506288603d0c76ce22c1";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/sr/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/sr/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "sr";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "257e912ea0396a95681fc72a4f8db2248250defbb0a146c8618a067e582f14c6";
|
||||
sha256 = "0b1c98eb37db5c6ff1d216a598e352d1a77ec3a94bab7fa49790ba275714c188";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/sv-SE/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/sv-SE/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "sv-SE";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "4d1fb17a41af616be0e357e4accb2757adfc6d81ca586136f93dc44144b30c4b";
|
||||
sha256 = "a2916749179de24c63b8f393d19a3ba4ec5f6e77584f44ac5ebc24a4b0c94ca1";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/th/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/th/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "th";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "e52c7d23fa7c8ab9e1868eda178ae82ab0d9c86f3a8bb1b112817692e05fcc24";
|
||||
sha256 = "bb25041295fac38b2888e95c40835ca289f10be95d71ab32fedb7d0dcaee1c04";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/tr/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/tr/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "tr";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "ffa0651c001df67568e7e87b5755943894a9f55f4a8f67d7e10d08dd49a635a6";
|
||||
sha256 = "4a512e2bdf3ccadade3166a8acf62935244fc63b760db6e7c35a74299e49144b";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/uk/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/uk/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "uk";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "b208ef12f677ad325d460b9a67d68e9b78a0ba4b7cd9c4eff6b2a25ba0e1f051";
|
||||
sha256 = "9094442afcaabeab3424972cfede908526c7d3ddd600adcae6c345450fb42be9";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/uz/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/uz/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "uz";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "7a11f1ae369d4dc1805d9221184718011533b8a657ebbc7205a60526ce1d7b97";
|
||||
sha256 = "d4969535da853732d20475bfca72d871c76f39131cdac0d00607e0bc5ccabf5c";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/vi/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/vi/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "vi";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "057b2458a6b6759833c86f5e7019b3495a70e2656ad7089f1491c0dfda28e689";
|
||||
sha256 = "95bc29e5c14fadafaf5598687f4242ec80cccbd5724988fe471282ea65473e18";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/zh-CN/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/zh-CN/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "zh-CN";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "74d44042e2ac9e95336f1d13930424dc420f5bcef9f0308e2f19a6fc34c97dda";
|
||||
sha256 = "bc578ed3316fa130328219d7ae34c40250b57ad47394c4e2113d2d53031c3879";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-x86_64/zh-TW/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-x86_64/zh-TW/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "zh-TW";
|
||||
arch = "linux-x86_64";
|
||||
sha256 = "5ccf633ad828fffc3c9e352c78d245df61f2c56eea49e8bda021645d1425e85a";
|
||||
sha256 = "2ec4a508e96715026c4c4541d83e5f14b67c88c9e31e22bfb4ff6280eacbc1c7";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/af/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/af/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "af";
|
||||
arch = "linux-i686";
|
||||
sha256 = "997ac3091e641305cf282723590d48204fd542376d0227ce98cd9a7bf24230c0";
|
||||
sha256 = "75b27678d06857225ad241c90101d39b1e3e42c8a1f1e17f817bc13287bf185c";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/ar/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/ar/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ar";
|
||||
arch = "linux-i686";
|
||||
sha256 = "f5f0564d607ff19d51508dd17f908e38d8d4f53bb4241b4e828a5bba2c1b8eee";
|
||||
sha256 = "e2bf282b127efea3c1deeb9a375b42b4425ba30bcd730eb911dda3cd93034a77";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/ast/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/ast/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ast";
|
||||
arch = "linux-i686";
|
||||
sha256 = "2e585288ae394f9f32038ae75ae47398857c21c88af68cac8d3c7801f2b6b55b";
|
||||
sha256 = "035213d412786ec052430d4860278fc5c0ffe4b999a5924f3bf1a13683e73d3d";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/be/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/be/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "be";
|
||||
arch = "linux-i686";
|
||||
sha256 = "0379fbb7416bb4c92ba77403f5769cc810387c3b5f9518b1061ed2f2e3f179a1";
|
||||
sha256 = "8d0aab6ed5c1cb36cc70939545ec0eee2566483bbe89a1b319c63718201ea01f";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/bg/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/bg/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "bg";
|
||||
arch = "linux-i686";
|
||||
sha256 = "1a07ca44cd3071c4adc640a53ff2f0e9b66b8b4a2855b8ba1a491e98d14ec3e0";
|
||||
sha256 = "f22334ee6b9f47bb6de1623d457aa3a50932dc1f0e047037b07a86793134eca8";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/br/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/br/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "br";
|
||||
arch = "linux-i686";
|
||||
sha256 = "cd47f44426a82afd286064963782403eaaccabf40fc43335761770c7595c6776";
|
||||
sha256 = "0c2e506a17eb9d3d23fc366212644b3e3f78be621adbe2410a1ef8ab0803d86e";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/ca/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/ca/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ca";
|
||||
arch = "linux-i686";
|
||||
sha256 = "51009f72230f084d005fe9424d5e4f161a1428e650e7b9cd396132a64352ecfd";
|
||||
sha256 = "0fc351e87d10b1f33391990716581b4417f1f9759351732ca765e29e9c077c74";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/cak/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/cak/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "cak";
|
||||
arch = "linux-i686";
|
||||
sha256 = "27d392a801b4727cc002685248f2b9abdd6a7987fedb88e1f6dd5a237f3a2f0b";
|
||||
sha256 = "653eedb42f9327be63d4ccde4e9a15e431235130d70c5e1e4b90ad1766fabd65";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/cs/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/cs/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "cs";
|
||||
arch = "linux-i686";
|
||||
sha256 = "1de78102a09e564cae08bcf4228aa06ee191abe89975e0e5936cdd98b82d6919";
|
||||
sha256 = "afab7db6f33f730ad5dcbad73c68aa679eeac995a8f87cd3dd69ffeb9cc05507";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/cy/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/cy/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "cy";
|
||||
arch = "linux-i686";
|
||||
sha256 = "fdc84d26c11acbd6d92d3ac2104e15317eb82fdec3c3d0fa8a5c31ce023ad039";
|
||||
sha256 = "d4efd6a9bde2a8177c2322ed797c73a347913c7c34eefad3c8059efa3b291e87";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/da/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/da/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "da";
|
||||
arch = "linux-i686";
|
||||
sha256 = "eb0a2cd1d6113d8e0bfa2233adf3b00dfa950ebf2fc3319fe1b6afa75a616c98";
|
||||
sha256 = "ed872e714c0ee80a9ae40ca91ef2675aeac20125ae53245b41003614c8ba2a9e";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/de/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/de/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "de";
|
||||
arch = "linux-i686";
|
||||
sha256 = "4953cae2c051b63f360964c8efbe7ab4f682e06e4058382b959b6ce843418c96";
|
||||
sha256 = "3feabd14c409d43f07973ae4054ce5a3c13ce1b1023bfe9c9614bad39a36f432";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/dsb/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/dsb/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "dsb";
|
||||
arch = "linux-i686";
|
||||
sha256 = "88381b5b23427bce3b53893aef9d334b54101cd30b2af501cc87fcb319f43c3b";
|
||||
sha256 = "0f9f5e55650af7cb264b300286f426d730a9f6594a1e6a5d9f1305dfa067c767";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/el/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/el/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "el";
|
||||
arch = "linux-i686";
|
||||
sha256 = "8b5d6484cc05473b039dd74edbc30184e9ab83e40f2ed3193638dde0da7f2eca";
|
||||
sha256 = "7f399e76ed236a3067f0e179c1d902561770234a20cfbb78345b4156549a1eab";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/en-CA/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/en-CA/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "en-CA";
|
||||
arch = "linux-i686";
|
||||
sha256 = "b5c9adc111b62a9ba3d4b06c9d79953edd00a25df424ebc6ee8f9263923e6333";
|
||||
sha256 = "0bc5ef5a3e472463ebf823b16efb36cff728c432829ec73fea7f9bed1c6fcd81";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/en-GB/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/en-GB/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "en-GB";
|
||||
arch = "linux-i686";
|
||||
sha256 = "4cc02fc3f7417620256357927e9fb199ffd081996b2d08a149ebe57f4156d932";
|
||||
sha256 = "22d878733613360bae796d07249fa6be2ecfb12680c7102dc7d6d3a2fb947a89";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/en-US/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/en-US/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "en-US";
|
||||
arch = "linux-i686";
|
||||
sha256 = "ade6909367c4311c478d50a16fffdf2aadab51dbe59a5a7df0203adbc93d4846";
|
||||
sha256 = "0c0a466b278372a784b551922c4c47ca1af8161ee024d17588524d92e4364dbe";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/es-AR/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/es-AR/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "es-AR";
|
||||
arch = "linux-i686";
|
||||
sha256 = "461c5f11d7ae6145bb7e9779cd44c8c7107d779d30d3a20621d046b2ba092fd9";
|
||||
sha256 = "c60187c27a612747e8cd05ec3d6ad704da2c9fbf48ea4d9bf1a70be778047b43";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/es-ES/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/es-ES/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "es-ES";
|
||||
arch = "linux-i686";
|
||||
sha256 = "09bc297bcb61f8fb4216147fc360ee3071349f213f642edd5ccbab3d86ff2cb1";
|
||||
sha256 = "a06dd9c977dbef9679b02a9a36ad75b0929791d7dcbd5a5c05912d338201e8df";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/es-MX/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/es-MX/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "es-MX";
|
||||
arch = "linux-i686";
|
||||
sha256 = "bb4332ab92aefd60e3ccad37049e1a908449c7d9809cc67343149634fa451a66";
|
||||
sha256 = "a776bfe85b70468620ad977659908d61e79925fb8bfd36a4ace30dc06ebffcdf";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/et/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/et/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "et";
|
||||
arch = "linux-i686";
|
||||
sha256 = "b567ac1b9703db4c4b56b4c05d587a5c7d298f8b76858f26b2ca528a375d805b";
|
||||
sha256 = "c1e860a0361fdaac8811f25eb2aeaba7973ebbbdcbf769fc42791c7638aa4fae";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/eu/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/eu/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "eu";
|
||||
arch = "linux-i686";
|
||||
sha256 = "2d8f103540ca51ea231de0f6885b8b717eb4055016cd54d7b10849f52db3723c";
|
||||
sha256 = "88383b1d46ae04586637692c6dcd3a59795519a64db0feb830bdef66b55f8f76";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/fi/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/fi/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "fi";
|
||||
arch = "linux-i686";
|
||||
sha256 = "7b170156acbf6a4fb315e78ad08c173d7ddcf00714ce7b40e64f9198297ed715";
|
||||
sha256 = "fa11ef201144fd9f51fa36c8d7cdf3106f445bfdeed203db7f2fe50ad315527a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/fr/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/fr/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "fr";
|
||||
arch = "linux-i686";
|
||||
sha256 = "43972b7689800f1c2e69edca8a907d179c99ac8778931be912daefeb331a36bb";
|
||||
sha256 = "5427eb293b84db327fd6002dc84f39531c5a34aff7fe3b01e591a4ff5e243b07";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/fy-NL/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/fy-NL/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "fy-NL";
|
||||
arch = "linux-i686";
|
||||
sha256 = "5f2296663581feee2c24906bd479681fe4380c725bbdff9f299c4217b2f744ae";
|
||||
sha256 = "6a6a3e6d7f2a26f1cc70e6d26741e882e12344836b83735fe0cc15c560b3f554";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/ga-IE/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/ga-IE/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ga-IE";
|
||||
arch = "linux-i686";
|
||||
sha256 = "c478695ffca7d13bbdd415259304f3e2c4adc52cdc16d27fb3130c6332f9360b";
|
||||
sha256 = "ff9f0296f2694213d58c330e68b56aa657392bfcccd765ac0bf2847155ed014d";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/gd/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/gd/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "gd";
|
||||
arch = "linux-i686";
|
||||
sha256 = "eac3e5806ef6c62a45a0fe6e7fd3ef2d6bafc7665d70501536fa4cd0c1b745b7";
|
||||
sha256 = "79a080ab46a998ae7584ba26afae53418764b206e44993bb56bed846a6317be2";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/gl/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/gl/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "gl";
|
||||
arch = "linux-i686";
|
||||
sha256 = "204f8cf41b39d991634bb79bcb0260b2f403ea93522a1fa907ad3311a5bb96c1";
|
||||
sha256 = "19187ae587048da83c6a0a99e8f72fddf0cdc92c4481d40c534a0664a65d920a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/he/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/he/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "he";
|
||||
arch = "linux-i686";
|
||||
sha256 = "f2df6508f6e9caa6647cd4b6eaadde869ee4001afa438d596932c2bd49d927d8";
|
||||
sha256 = "e37fd7a629ba735e5916f61a6d46ca71e5698a6d16b73442ed74534f87703ecf";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/hr/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/hr/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "hr";
|
||||
arch = "linux-i686";
|
||||
sha256 = "1c632e191f37f8e63692d4f4b8dbdf831148f8ef29ba44fde7b2cfd52e6d9cf0";
|
||||
sha256 = "86c8c6f34e76873060b34b33a235b5696191f3d58042be62f5de59cbb82261e9";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/hsb/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/hsb/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "hsb";
|
||||
arch = "linux-i686";
|
||||
sha256 = "c3f3acb8c5e45a2ccf97d25eee4c3c0e9af00785e55d8d8a5ada3edb2761cefa";
|
||||
sha256 = "80489dfdf52594c34798629d7fef66e67a8b5aaac3c6275e25c092ed0de015bc";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/hu/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/hu/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "hu";
|
||||
arch = "linux-i686";
|
||||
sha256 = "10bcb2f4d27a065d72d6d6a4b88dfc826f974faf5b2b1bcffb8e723c0d0d29ac";
|
||||
sha256 = "2277897b93514a1995886d637b668a469ffed943c05e91f7e209fab23ee1232a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/hy-AM/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/hy-AM/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "hy-AM";
|
||||
arch = "linux-i686";
|
||||
sha256 = "267a887612e3fa82ed92ca98b97976fe3baf0ede1fc47ad30d8c4939c4d54a33";
|
||||
sha256 = "b321af1421b2649d5ddc42a23e31ea76068062cf8a956495969835dd0e0fe7a7";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/id/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/id/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "id";
|
||||
arch = "linux-i686";
|
||||
sha256 = "a7ecdfcd9bfcfc17c2a32c697ec0afb0370e8f5ca066e2224ebc540d8bc61f0f";
|
||||
sha256 = "4c38b3f5afb7b65a8a8089c2d258016dc4c8e60154499bb4ea2c110a29a7f7bc";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/is/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/is/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "is";
|
||||
arch = "linux-i686";
|
||||
sha256 = "64d6dbbec1d876b614ca601a58faa4baca7680a4045a9c54b4331b5bd104b86a";
|
||||
sha256 = "d7c2925526dac179bf7c857b9044058818c5a49aeacca405fe120e01a0fdc28d";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/it/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/it/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "it";
|
||||
arch = "linux-i686";
|
||||
sha256 = "106a92c15da3e96903b511ee7759e764b3378713b54f13437713b9c02982798a";
|
||||
sha256 = "4c637d4998c5d8db04a7356401eb64cd362476f91ff037979b94487548e9f0d4";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/ja/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/ja/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ja";
|
||||
arch = "linux-i686";
|
||||
sha256 = "a65e9f47fd722de2281d151c95ede105cb912c8b62d3348fab904a4fdcb6579a";
|
||||
sha256 = "4591a2d3b55f402fe47b2f7342f34fcc0e5ad6f5147f72929bef8fd59598cef1";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/ka/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/ka/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ka";
|
||||
arch = "linux-i686";
|
||||
sha256 = "af553455b4ab549cba61e23baab72524716bd166baf8de9a0e6bb01697acceba";
|
||||
sha256 = "032fbf3360e7facac683e28a205b53e9a1db756c8bd41330a15f7120ed645b1a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/kab/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/kab/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "kab";
|
||||
arch = "linux-i686";
|
||||
sha256 = "4efed1d221fcedb3151f686d4b19cb5cb18e5d90e0ff23506bcb98144724c185";
|
||||
sha256 = "5fec42cf09826f24ffeb20a3c7f0c200a1b257e4af4a8d223c4b7f98fb35eec2";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/kk/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/kk/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "kk";
|
||||
arch = "linux-i686";
|
||||
sha256 = "b02d3630206093a381dc252b8839c6d5e0e11ba36e0beb34f0e764f41d51faca";
|
||||
sha256 = "200e305315c566f34d2242fd37bee6f2726d8b6bacb37c74b0e5597e9296df60";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/ko/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/ko/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ko";
|
||||
arch = "linux-i686";
|
||||
sha256 = "c87297bec4f3865ef06aa313bfc8fe2f7d12d7a44bc4d83f47769f65b629b2f7";
|
||||
sha256 = "06f60ced2c75f13ffae69cf2355089c2b343e72b9e61cd97edf01f401c11fb77";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/lt/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/lt/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "lt";
|
||||
arch = "linux-i686";
|
||||
sha256 = "a7c131b03b732030a2c887bcd9931b92aacc8e620d46bae6d4e30a54f76523ec";
|
||||
sha256 = "5d3074b599a9c61357b872f041dbedba6f8667f92a833e6889e16bf2a0ba31fb";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/lv/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/lv/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "lv";
|
||||
arch = "linux-i686";
|
||||
sha256 = "7641f0b0168b66a18ebda4598d6b039cff57cbea38fe25e467b35cdc28040476";
|
||||
sha256 = "dbffd3f40caa2b2a7f2201f645e27ee5060a124c304079f99055a0ba6bad513c";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/ms/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/ms/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ms";
|
||||
arch = "linux-i686";
|
||||
sha256 = "ffd61330b4945c626093ae1a20b3a7ace51e4d93e32346da53cd27b0df9d1da5";
|
||||
sha256 = "2fe336e4ab817e8100ba448a4888cd0bf66728e2779f8179ecfea55bc255e20c";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/nb-NO/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/nb-NO/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "nb-NO";
|
||||
arch = "linux-i686";
|
||||
sha256 = "4927bd51e18922d4f6b3ec2d6134d33943f5daa61ae0a80529a3aea3345bade6";
|
||||
sha256 = "c3096875a2400685f1c4333531eeb3594f598b774f138e746c909976b16b895e";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/nl/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/nl/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "nl";
|
||||
arch = "linux-i686";
|
||||
sha256 = "b3010b541469aae57a0909d6f72c0f76482782d85cceef4e1dc970d36e53ae3a";
|
||||
sha256 = "3302794bdc4ba877d01b0ba80fca2661098e707f2abb0304bd2c29fc6cb3cc4b";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/nn-NO/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/nn-NO/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "nn-NO";
|
||||
arch = "linux-i686";
|
||||
sha256 = "60c0c4cdd0f0b7a2f892206c1e7adcaa4e32e8cf2b29d55a2dfce0881e66096f";
|
||||
sha256 = "770457094739c924397e643ed303f57a57b9491229abab8d98699a0507d9db1d";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/pa-IN/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/pa-IN/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "pa-IN";
|
||||
arch = "linux-i686";
|
||||
sha256 = "a59494d8eb43583d5e70a2c0c92aa9373edab5903435e337383c93aae848ff60";
|
||||
sha256 = "8be61392ae2faeba72ae3eaf698339357a1e5112be77fafc5f104bfde3a5155b";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/pl/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/pl/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "pl";
|
||||
arch = "linux-i686";
|
||||
sha256 = "73fc938c2eb420aef5fbc023dd8d1834cf08325a18d23515155cb311198239ff";
|
||||
sha256 = "0e0c57066ef2851b6729ba1c6aa192b2b7693cc5e367e4016b458cb45871030a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/pt-BR/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/pt-BR/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "pt-BR";
|
||||
arch = "linux-i686";
|
||||
sha256 = "fa203684e790a9529f34398763fe2410a6bf8d56b887fb9c1dca91fdca624c7d";
|
||||
sha256 = "89db9f5388ab006923def3d3818e61c0d0417e26f3c3a7049da453ae82e215b2";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/pt-PT/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/pt-PT/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "pt-PT";
|
||||
arch = "linux-i686";
|
||||
sha256 = "63b53d16d3a1ddd88455a2eae7fe185d7abde743f284ac634d3e63bdb38d88b8";
|
||||
sha256 = "678301cd525223c99b5b6f129fddba153bd9766478a8733ebe69ae0eaae40880";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/rm/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/rm/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "rm";
|
||||
arch = "linux-i686";
|
||||
sha256 = "5cd0a65ea1e41e6d1a9c833edf75c5a67ce77ec9bb85107d1ba282f2abe91fde";
|
||||
sha256 = "3e6f814093d3dcd8df427574bb10c56ea6bd917c1dc532d8334b8880b7e91b90";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/ro/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/ro/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ro";
|
||||
arch = "linux-i686";
|
||||
sha256 = "a000256b2ae3a67ccf6f805fbb6c122fd624448021312a7311773a59f412c5ae";
|
||||
sha256 = "39c23d82b6dacff632753ba2ba9f0a194c2891cfcc1e67efbbde1f8421085ac0";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/ru/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/ru/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "ru";
|
||||
arch = "linux-i686";
|
||||
sha256 = "531a05a5e7b5e4c1de4968a5b3e29aa28e7cb36358d8ffb2dd39f0e1a47738ab";
|
||||
sha256 = "c9d051f3faec44babcd36e6fb6c9619142dee3d775185ea86305392f88d45aeb";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/sk/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/sk/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "sk";
|
||||
arch = "linux-i686";
|
||||
sha256 = "178ff0a5f05544cf8b2275bc96328055dab6250fb6b4292a51a8295981340d05";
|
||||
sha256 = "509b5a60e239d4a8cf9a6f91ef4267de44ccc21f9314b232170093fa450af44b";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/sl/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/sl/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "sl";
|
||||
arch = "linux-i686";
|
||||
sha256 = "5750677fa4c9fa04d9c91a93962eb5ee701deab20889adb3bf7c913832358d87";
|
||||
sha256 = "aa5b49aaa7fa64f9e9ea9a01d75da4f5c89c65449d56861b48083ca00a0822cd";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/sq/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/sq/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "sq";
|
||||
arch = "linux-i686";
|
||||
sha256 = "1d64734c7b31fd002978dfb08cb058310638bddbe55bab225bd9e2015e7b7f86";
|
||||
sha256 = "3ffca31bd4bf981110a55eef165d789e253eec7c206b08c880fc3a0b92da58fc";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/sr/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/sr/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "sr";
|
||||
arch = "linux-i686";
|
||||
sha256 = "ce5dae0a9ba5be012eb5e44ce06a7b4c18f4b137caca1b19dbc4bdad32d777a9";
|
||||
sha256 = "0e25ba5b8ba286e81bfeb481f354b69bd56fc727340ce6fde36124a7ce9d330c";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/sv-SE/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/sv-SE/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "sv-SE";
|
||||
arch = "linux-i686";
|
||||
sha256 = "418e5fbbd04816de06031f56fe73033dbc72df70de688f80604fc5a16275c304";
|
||||
sha256 = "ab8be644fc47332387f67b3bbe7ad5920bd908e99bf029b85c896a44d3fe8a80";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/th/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/th/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "th";
|
||||
arch = "linux-i686";
|
||||
sha256 = "4ca1e251bb36653242a8061491304f345f016c2582a68726869453ce2047df8c";
|
||||
sha256 = "6965ca5780abcd2e8e69244e883d171ce541a4d2075a99ae6c0682f4b76c081a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/tr/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/tr/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "tr";
|
||||
arch = "linux-i686";
|
||||
sha256 = "2934a095eddd73b84a3fe2fba2d8273e36c1b853cf8f00951fb58ab96ef142f5";
|
||||
sha256 = "e3fcb1b58165e4a7f3553ecf5e9c2759fb831fe25c504365ff0bcd2f0756a186";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/uk/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/uk/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "uk";
|
||||
arch = "linux-i686";
|
||||
sha256 = "ff82f18e9ba352df0d395534f306fc78b696341f193619c5e3de03dba8dde09a";
|
||||
sha256 = "89e8999739ac1c9979c702e946130d7bd2f0d9ad209a926ee205425d54bfcf40";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/uz/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/uz/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "uz";
|
||||
arch = "linux-i686";
|
||||
sha256 = "679ecaa3f670e49cc741ce113280db9d55d9bbf3798337f9959e1e2e0f6ccf06";
|
||||
sha256 = "71e9b2d9ca7dcfc1b71524e1dc0fbd17f078e690838eee5e711b753bbccc4b45";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/vi/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/vi/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "vi";
|
||||
arch = "linux-i686";
|
||||
sha256 = "753006173e67f07c87066915be9312826547fb7ee500a1aafffc1d56ba56c34c";
|
||||
sha256 = "13d3365e9643664cbf5006fbf0de101950ca1874283c49792d1ccff437a45158";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/zh-CN/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/zh-CN/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "zh-CN";
|
||||
arch = "linux-i686";
|
||||
sha256 = "0eb18aba4976e0b17de9584773e4bb66883c1624423fec104e8b893132f24bac";
|
||||
sha256 = "a283f7503a4b0af6349dd87c6be3aa9f4e8227ae98754515b635d602c756569c";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.2.3esr/linux-i686/zh-TW/thunderbird-128.2.3esr.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/128.3.1esr/linux-i686/zh-TW/thunderbird-128.3.1esr.tar.bz2";
|
||||
locale = "zh-TW";
|
||||
arch = "linux-i686";
|
||||
sha256 = "e28e778c121abc8259445bbee5e5bd0b787f21faac556b7c77452096d60fb219";
|
||||
sha256 = "ba88abbc91d4e55687eed8fe41aa0e52622b688752341430f7b32d134a750d09";
|
||||
}
|
||||
];
|
||||
}
|
||||
|
@ -1,12 +1,12 @@
|
||||
{ lib, stdenv, fetchurl, jre, makeWrapper }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "6.9.8";
|
||||
version = "6.13.3";
|
||||
pname = "frostwire";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://dl.frostwire.com/frostwire/${version}/frostwire-${version}.amd64.tar.gz";
|
||||
sha256 = "sha256-gslNdvxA4rGKg0bjf2KWw7w9NMp3zqrii144AfKsV4s=";
|
||||
url = "https://github.com/frostwire/frostwire/releases/download/frostwire-desktop-${version}-build-322/frostwire-${version}.amd64.tar.gz";
|
||||
hash = "sha256-wRT8Oo+niOFBpEnq3pgjO9jpagZMgSE44V9RBYnGwig=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
@ -1,81 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonApplication,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
wrapGAppsHook3,
|
||||
gdk-pixbuf,
|
||||
glib-networking,
|
||||
gobject-introspection,
|
||||
imagemagick,
|
||||
librsvg,
|
||||
pango,
|
||||
python3,
|
||||
webkitgtk,
|
||||
# Python libs
|
||||
protonvpn-nm-lib,
|
||||
psutil,
|
||||
# Optionals
|
||||
withIndicator ? true,
|
||||
libappindicator-gtk3,
|
||||
}:
|
||||
|
||||
buildPythonApplication rec {
|
||||
pname = "protonvpn-gui";
|
||||
version = "1.12.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ProtonVPN";
|
||||
repo = "linux-app";
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "sha256-MPS4d/yNkccsc/j85h7/4k4xL8uSCvhj/9JWPa7ezLY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
gdk-pixbuf
|
||||
gobject-introspection
|
||||
imagemagick
|
||||
setuptools
|
||||
wrapGAppsHook3
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
glib-networking # needed for the login captcha
|
||||
protonvpn-nm-lib
|
||||
psutil
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
librsvg
|
||||
pango
|
||||
webkitgtk
|
||||
] ++ lib.optionals withIndicator [ libappindicator-gtk3 ];
|
||||
|
||||
postInstall = ''
|
||||
# Setting icons
|
||||
for size in 16 32 48 64 72 96 128 192 512 1024; do
|
||||
mkdir -p $out/share/icons/hicolor/"$size"x"$size"/apps
|
||||
convert -resize $size'x'$size \
|
||||
protonvpn_gui/assets/icons/protonvpn-logo.png \
|
||||
$out/share/icons/hicolor/$size'x'$size/apps/protonvpn.png
|
||||
done
|
||||
|
||||
install -Dm644 protonvpn.desktop -t $out/share/applications/
|
||||
chmod 644 $out/${python3.sitePackages}/protonvpn_gui/assets/icons/plus-server.png
|
||||
substituteInPlace $out/share/applications/protonvpn.desktop \
|
||||
--replace 'protonvpn-logo' protonvpn
|
||||
'';
|
||||
|
||||
# Project has a dummy test
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Official ProtonVPN Linux app";
|
||||
homepage = "https://github.com/ProtonVPN/linux-app";
|
||||
maintainers = [ ];
|
||||
license = licenses.gpl3Plus;
|
||||
mainProgram = "protonvpn";
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -7,13 +7,13 @@
|
||||
}:
|
||||
mkHyprlandPlugin hyprland rec {
|
||||
pluginName = "hy3";
|
||||
version = "0.43.0";
|
||||
version = "0.44.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "outfoxxed";
|
||||
repo = "hy3";
|
||||
rev = "refs/tags/hl${version}";
|
||||
hash = "sha256-hBvwaMlgBuR2cB1Kx6cA1z7x38HXUujNcHtBsKhaEZs=";
|
||||
hash = "sha256-6TVaB+nWVanqZWqievg+m7tVNrSpQ9CQcwXJQeyU/Q0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -8,13 +8,13 @@
|
||||
|
||||
mkHyprlandPlugin hyprland {
|
||||
pluginName = "hypr-dynamic-cursors";
|
||||
version = "0-unstable-2024-08-01";
|
||||
version = "0-unstable-2024-10-10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "VirtCode";
|
||||
repo = "hypr-dynamic-cursors";
|
||||
rev = "ed2ff68862ae02e04dd06488eb7228e4412f5c33";
|
||||
hash = "sha256-02G/SPd/X7zSIFF3V6dkh8mGGWoO0/m6/Yld7HyPmJs=";
|
||||
rev = "3ff4c2a053f7673b3b8cd45ada0886cbda13ebcc";
|
||||
hash = "sha256-XMR9wDNXmY3pPp3imT5vA4Gc6yC3R2Fatp4B53uLHzI=";
|
||||
};
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
|
@ -13,13 +13,13 @@
|
||||
|
||||
mkHyprlandPlugin hyprland rec {
|
||||
pluginName = "hyprgrass";
|
||||
version = "0.8.1";
|
||||
version = "0.8.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "horriblename";
|
||||
repo = "hyprgrass";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-3CN9ZioI5XBtp6WF61hH2EyASHUIPJQCTXiW1rt9n5w=";
|
||||
hash = "sha256-0dYMlNYuevQvsd6+imOkic3c6RSssM8WSx1hAepJ/wU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -14,13 +14,13 @@ let
|
||||
mkHyprlandPlugin,
|
||||
}:
|
||||
let
|
||||
version = "0.43.0";
|
||||
version = "0.44.0";
|
||||
|
||||
hyprland-plugins-src = fetchFromGitHub {
|
||||
owner = "hyprwm";
|
||||
repo = "hyprland-plugins";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-dPcWAeRJoG5CyWC32X3XX+Og0v/k1/S1N0T5dQWT32k=";
|
||||
hash = "sha256-/SeOrMuPEOjngI+MBlzqxQ/sJxkJFIYoef+wJ/PmX2w=";
|
||||
};
|
||||
in
|
||||
mkHyprlandPlugin hyprland {
|
||||
|
@ -9,13 +9,13 @@
|
||||
|
||||
mkHyprlandPlugin hyprland {
|
||||
pluginName = "hyprscroller";
|
||||
version = "0-unstable-2024-09-06";
|
||||
version = "0-unstable-2024-10-10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dawsers";
|
||||
repo = "hyprscroller";
|
||||
rev = "07671d7d42b92a85fc7e62cd8f02b0d9c52a8dea";
|
||||
hash = "sha256-RLI202fBXz+mDXX5Em70FU+16ChbA/YtpORYiOSX8uc=";
|
||||
rev = "1a907fd38594ec58a8fe5d68be0dcf2f9e76b0f8";
|
||||
hash = "sha256-cgwHl2YtqrnS0ThUyycFGYoYozpq7zT9POARrQAoahY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -8,13 +8,13 @@
|
||||
|
||||
mkHyprlandPlugin hyprland {
|
||||
pluginName = "hyprspace";
|
||||
version = "0-unstable-2024-08-21";
|
||||
version = "0-unstable-2024-09-16";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KZDKM";
|
||||
repo = "hyprspace";
|
||||
rev = "743ec37d02bb2b7261f28de16bf404cebfd96105";
|
||||
hash = "sha256-w0j/3OeSrpx+S8if1M2ONBsZvJQ1hBQkdTQEiMCHy7o=";
|
||||
rev = "8f14fa2e10d24742d713f04c278bc7651037b74b";
|
||||
hash = "sha256-lMIFDORuyMYHtUPrRWU5WjGcS+ZMrR4/wBSO+sgUVSY=";
|
||||
};
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
|
@ -8,13 +8,13 @@
|
||||
}:
|
||||
mkHyprlandPlugin hyprland rec {
|
||||
pluginName = "hyprsplit";
|
||||
version = "0.43.0";
|
||||
version = "0.44.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "shezdy";
|
||||
repo = "hyprsplit";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-r533kNIyfgPi/q8ddIYyDK1Pmupt/F3ncHuFo3zjDkU=";
|
||||
hash = "sha256-l+DQHWPMyUCXbKhbIFVooTKKnCRQ97Ic5smw4VzUcTc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -8,11 +8,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "alt-tab-macos";
|
||||
version = "6.71.0";
|
||||
version = "6.73.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/lwouis/alt-tab-macos/releases/download/v${finalAttrs.version}/AltTab-${finalAttrs.version}.zip";
|
||||
hash = "sha256-46K9ePNqZyaV5Da6VRCT6PvG+Ad0vsuvs7sfNRUbKB4=";
|
||||
hash = "sha256-l/Nuyr5jYBR6LtScgM2LP0mq1NEMkRNVGWZDhiZkAa8=";
|
||||
};
|
||||
|
||||
sourceRoot = ".";
|
||||
|
47
pkgs/by-name/cp/cpplint/package.nix
Normal file
47
pkgs/by-name/cp/cpplint/package.nix
Normal file
@ -0,0 +1,47 @@
|
||||
{
|
||||
lib,
|
||||
python3Packages,
|
||||
fetchFromGitHub,
|
||||
versionCheckHook,
|
||||
}:
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "cpplint";
|
||||
version = "2.0.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cpplint";
|
||||
repo = "cpplint";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-076363ZwcriPb+Fn9S5jay8oL+LlBTNh+IqQRCAndRo=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.cfg \
|
||||
--replace-fail "pytest-cov" "" \
|
||||
--replace-fail "--cov-fail-under=90 --cov=cpplint" ""
|
||||
'';
|
||||
|
||||
build-system = with python3Packages; [
|
||||
setuptools
|
||||
];
|
||||
|
||||
nativeCheckInputs = with python3Packages; [
|
||||
parameterized
|
||||
pytestCheckHook
|
||||
pytest-timeout
|
||||
testfixtures
|
||||
versionCheckHook
|
||||
];
|
||||
versionCheckProgramArg = [ "--version" ];
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/cpplint/cpplint";
|
||||
description = "Static code checker for C++";
|
||||
changelog = "https://github.com/cpplint/cpplint/releases/tag/${version}";
|
||||
mainProgram = "cpplint";
|
||||
maintainers = [ lib.maintainers.bhipple ];
|
||||
license = [ lib.licenses.bsd3 ];
|
||||
};
|
||||
}
|
@ -10,11 +10,11 @@
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "figma-linux";
|
||||
version = "0.11.4";
|
||||
version = "0.11.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/Figma-Linux/figma-linux/releases/download/v${finalAttrs.version}/figma-linux_${finalAttrs.version}_linux_amd64.deb";
|
||||
hash = "sha256-ukUsNgWOtIRe54vsmRdI62syjIPwSsgNV7kITCw0YUQ=";
|
||||
hash = "sha256-6lFeiecliyuTdnUCCbLpoQWiu5k3OPHxb+VF17GtERo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gerrit";
|
||||
version = "3.10.1";
|
||||
version = "3.10.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://gerrit-releases.storage.googleapis.com/gerrit-${version}.war";
|
||||
hash = "sha256-gWONjpn/YrSHtabacI+7Ao9pGeqcialRaaca2ct5oDM=";
|
||||
hash = "sha256-jsyL7j4ENzHVi07Uii0ouWXF3hkoGrq3NJi8fB1kj8o=";
|
||||
};
|
||||
|
||||
buildCommand = ''
|
||||
|
@ -3,27 +3,27 @@
|
||||
, fetchFromGitHub
|
||||
, pnpm
|
||||
, nodejs
|
||||
, electron_31
|
||||
, electron_32
|
||||
, makeWrapper
|
||||
, copyDesktopItems
|
||||
, makeDesktopItem
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "armcord";
|
||||
version = "3.3.1";
|
||||
pname = "legcord";
|
||||
version = "1.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ArmCord";
|
||||
repo = "ArmCord";
|
||||
owner = "Legcord";
|
||||
repo = "Legcord";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-rCcjanmr4s9Nc5QB3Rb5ptKF/Ge8PSZt0WvgIul3RGs=";
|
||||
hash = "sha256-/HwKxl3wiLSS7gmEQSddBkE2z1mmcexMgacUynLhdtg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pnpm.configHook nodejs makeWrapper copyDesktopItems ];
|
||||
|
||||
pnpmDeps = pnpm.fetchDeps {
|
||||
inherit pname version src;
|
||||
hash = "sha256-ZfErOj03NdkviNXV4bvZC8uPOk29RhgmSez/Qvw1sGo=";
|
||||
hash = "sha256-e6plwWf5eFaGsP3/cvIkGTV1nbcw8VRM30E5rwVX1RI=";
|
||||
};
|
||||
|
||||
ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
|
||||
@ -35,8 +35,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
npm exec electron-builder -- \
|
||||
--dir \
|
||||
-c.electronDist="${electron_31.dist}" \
|
||||
-c.electronVersion="${electron_31.version}"
|
||||
-c.electronDist="${electron_32.dist}" \
|
||||
-c.electronVersion="${electron_32.version}"
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
@ -44,13 +44,13 @@ stdenv.mkDerivation rec {
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p "$out/share/lib/armcord"
|
||||
cp -r ./dist/*-unpacked/{locales,resources{,.pak}} "$out/share/lib/armcord"
|
||||
mkdir -p "$out/share/lib/legcord"
|
||||
cp -r ./dist/*-unpacked/{locales,resources{,.pak}} "$out/share/lib/legcord"
|
||||
|
||||
install -Dm644 "build/icon.png" "$out/share/icons/hicolor/256x256/apps/armcord.png"
|
||||
install -Dm644 "build/icon.png" "$out/share/icons/hicolor/256x256/apps/legcord.png"
|
||||
|
||||
makeShellWrapper "${lib.getExe electron_31}" "$out/bin/armcord" \
|
||||
--add-flags "$out/share/lib/armcord/resources/app.asar" \
|
||||
makeShellWrapper "${lib.getExe electron_32}" "$out/bin/legcord" \
|
||||
--add-flags "$out/share/lib/legcord/resources/app.asar" \
|
||||
"''${gappsWrapperArgs[@]}" \
|
||||
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
|
||||
--set-default ELECTRON_IS_DEV 0 \
|
||||
@ -61,24 +61,24 @@ stdenv.mkDerivation rec {
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "armcord";
|
||||
desktopName = "ArmCord";
|
||||
exec = "armcord %U";
|
||||
icon = "armcord";
|
||||
name = "legcord";
|
||||
desktopName = "Legcord";
|
||||
exec = "legcord %U";
|
||||
icon = "legcord";
|
||||
comment = meta.description;
|
||||
categories = [ "Network" ];
|
||||
startupWMClass = "ArmCord";
|
||||
startupWMClass = "Legcord";
|
||||
terminal = false;
|
||||
})
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Lightweight, alternative desktop client for Discord";
|
||||
homepage = "https://armcord.app";
|
||||
downloadPage = "https://github.com/ArmCord/ArmCord";
|
||||
homepage = "https://legcord.app";
|
||||
downloadPage = "https://github.com/Legcord/Legcord";
|
||||
license = licenses.osl3;
|
||||
maintainers = with maintainers; [ wrmilling water-sucks ];
|
||||
platforms = [ "x86_64-linux" "aarch64-linux" ];
|
||||
mainProgram = "armcord";
|
||||
mainProgram = "legcord";
|
||||
};
|
||||
}
|
@ -6,11 +6,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "lxgw-wenkai-screen";
|
||||
version = "1.330";
|
||||
version = "1.501";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/lxgw/LxgwWenKai-Screen/releases/download/v${finalAttrs.version}/LXGWWenKaiScreen.ttf";
|
||||
hash = "sha256-3C6gZmL5Bn6+26TfI2UdCCnGI8Vw4UTFJRc8n6qlP5o=";
|
||||
hash = "sha256-em3uh53neN8v1ueiw1rWVtC0bteD7IG3X1g9tkjBRJA=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
79
pkgs/by-name/mi/mihomo-party/package.nix
Normal file
79
pkgs/by-name/mi/mihomo-party/package.nix
Normal file
@ -0,0 +1,79 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
dpkg,
|
||||
wrapGAppsHook3,
|
||||
autoPatchelfHook,
|
||||
nss,
|
||||
nspr,
|
||||
alsa-lib,
|
||||
openssl,
|
||||
webkitgtk,
|
||||
udev,
|
||||
libayatana-appindicator,
|
||||
libGL,
|
||||
}:
|
||||
let
|
||||
pname = "mihomo-party";
|
||||
version = "1.4.5";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/mihomo-party-org/mihomo-party/releases/download/v${version}/mihomo-party-linux-${version}-amd64.deb";
|
||||
hash = "sha256-O332nt2kgpDGY84S78Tx2PGUw1Pyj80ab2ZE3woYm4Y=";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
inherit pname version src;
|
||||
|
||||
nativeBuildInputs = [
|
||||
dpkg
|
||||
wrapGAppsHook3
|
||||
autoPatchelfHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
nss
|
||||
nspr
|
||||
alsa-lib
|
||||
openssl
|
||||
webkitgtk
|
||||
stdenv.cc.cc.lib
|
||||
];
|
||||
|
||||
runtimeDependencies = map lib.getLib [
|
||||
udev
|
||||
libayatana-appindicator
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir $out
|
||||
cp -r opt/mihomo-party usr/share $out
|
||||
substituteInPlace $out/share/applications/mihomo-party.desktop \
|
||||
--replace-fail "/opt/mihomo-party/mihomo-party" "mihomo-party"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
preFixup = ''
|
||||
mkdir $out/bin
|
||||
makeWrapper $out/mihomo-party/mihomo-party $out/bin/mihomo-party \
|
||||
--prefix LD_LIBRARY_PATH : "${
|
||||
lib.makeLibraryPath [
|
||||
libGL
|
||||
]
|
||||
}"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Another Mihomo GUI";
|
||||
homepage = "https://github.com/mihomo-party-org/mihomo-party";
|
||||
mainProgram = "mihomo-party";
|
||||
platforms = with lib.platforms; linux ++ darwin;
|
||||
broken = !(stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64);
|
||||
license = lib.licenses.gpl3Plus;
|
||||
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
|
||||
maintainers = with lib.maintainers; [ aucub ];
|
||||
};
|
||||
}
|
@ -3,10 +3,36 @@
|
||||
stdenv,
|
||||
smartmontools,
|
||||
fetchFromGitHub,
|
||||
fetchzip,
|
||||
cmake,
|
||||
qt6,
|
||||
qdiskinfo,
|
||||
themeBundle ? null,
|
||||
}:
|
||||
|
||||
let
|
||||
isThemed = themeBundle != null && themeBundle != { };
|
||||
themeBundle' =
|
||||
if isThemed then
|
||||
{
|
||||
rightCharacter = false;
|
||||
}
|
||||
// themeBundle
|
||||
else
|
||||
{ rightCharacter = false; };
|
||||
in
|
||||
|
||||
# check theme bundle
|
||||
assert
|
||||
isThemed
|
||||
-> (
|
||||
themeBundle' ? src
|
||||
&& themeBundle' ? paths.bgDark
|
||||
&& themeBundle' ? paths.bgLight
|
||||
&& themeBundle' ? paths.status
|
||||
&& themeBundle' ? rightCharacter
|
||||
);
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "qdiskinfo";
|
||||
version = "0.3";
|
||||
@ -31,15 +57,54 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
cmakeBuildType = "MinSizeRel";
|
||||
|
||||
cmakeFlags = [
|
||||
"-DQT_VERSION_MAJOR=6"
|
||||
];
|
||||
cmakeFlags =
|
||||
[
|
||||
"-DQT_VERSION_MAJOR=6"
|
||||
]
|
||||
++ lib.optionals isThemed [ "-DINCLUDE_OPTIONAL_RESOURCES=ON" ]
|
||||
++ (
|
||||
if themeBundle'.rightCharacter then
|
||||
[ "-DCHARACTER_IS_RIGHT=ON" ]
|
||||
else
|
||||
[ "-DCHARACTER_IS_RIGHT=OFF" ]
|
||||
);
|
||||
|
||||
postUnpack = ''
|
||||
cp -r $sourceRoot $TMPDIR/src
|
||||
sourceRoot=$TMPDIR/src
|
||||
'';
|
||||
patchPhase = lib.optionalString isThemed ''
|
||||
export SRCPATH=${themeBundle'.src}/CdiResource/themes/
|
||||
export DESTPATH=$sourceRoot/dist/theme/
|
||||
mkdir -p $DESTPATH
|
||||
if [ -n "${themeBundle'.paths.bgDark}" ]; then
|
||||
cp $SRCPATH/${themeBundle'.paths.bgDark} $DESTPATH/bg_dark.png
|
||||
fi
|
||||
if [ -n "${themeBundle'.paths.bgLight}" ]; then
|
||||
cp $SRCPATH/${themeBundle'.paths.bgLight} $DESTPATH/bg_light.png
|
||||
fi
|
||||
cp $SRCPATH/${themeBundle'.paths.status}/SDdiskStatusBad-300.png $DESTPATH/bad.png
|
||||
cp $SRCPATH/${themeBundle'.paths.status}/SDdiskStatusCaution-300.png $DESTPATH/caution.png
|
||||
cp $SRCPATH/${themeBundle'.paths.status}/SDdiskStatusGood-300.png $DESTPATH/good.png
|
||||
cp $SRCPATH/${themeBundle'.paths.status}/SDdiskStatusUnknown-300.png $DESTPATH/unknown.png
|
||||
'';
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/QDiskInfo \
|
||||
--suffix PATH : ${smartmontools}/bin
|
||||
'';
|
||||
|
||||
passthru =
|
||||
let
|
||||
themeSources = import ./sources.nix { inherit fetchzip; };
|
||||
in
|
||||
rec {
|
||||
themeBundles = import ./themes.nix { inherit themeSources; };
|
||||
tests = lib.flip lib.mapAttrs themeBundles (
|
||||
themeName: themeBundle:
|
||||
(qdiskinfo.override { inherit themeBundle; }).overrideAttrs { pname = "qdiskinfo-${themeName}"; }
|
||||
);
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "CrystalDiskInfo alternative for Linux";
|
||||
homepage = "https://github.com/edisionnano/QDiskInfo";
|
||||
|
18
pkgs/by-name/qd/qdiskinfo/sources.nix
Normal file
18
pkgs/by-name/qd/qdiskinfo/sources.nix
Normal file
@ -0,0 +1,18 @@
|
||||
{ fetchzip }:
|
||||
{
|
||||
aoi = fetchzip {
|
||||
url = "https://pilotfiber.dl.sourceforge.net/project/crystaldiskinfo/9.3.2/CrystalDiskInfo9_3_2Aoi.zip?viasf=1#cdi.zip";
|
||||
hash = "sha256-yldOX/aQYK1Fsd+BpD0SdcyfnHxtwB5rmZHU1nY7Ov8=";
|
||||
stripRoot = false;
|
||||
};
|
||||
kureikei = fetchzip {
|
||||
url = "https://pilotfiber.dl.sourceforge.net/project/crystaldiskinfo/9.3.2/CrystalDiskInfo9_3_2KureiKei.zip?viasf=1#cdi.zip";
|
||||
hash = "sha256-mzV3wHKczsh5NOsUxA3kGYSBZyVNJZUWkZdjiJA8+Po=";
|
||||
stripRoot = false;
|
||||
};
|
||||
shizuku = fetchzip {
|
||||
url = "https://pilotfiber.dl.sourceforge.net/project/crystaldiskinfo/9.3.2/CrystalDiskInfo9_3_2Shizuku.zip?viasf=1#cdi.zip";
|
||||
hash = "sha256-4dVeOHXWUVjfSssJKpcSBQ7OTMaYmgF15M4ROD3SBDA=";
|
||||
stripRoot = false;
|
||||
};
|
||||
}
|
390
pkgs/by-name/qd/qdiskinfo/themes.nix
Normal file
390
pkgs/by-name/qd/qdiskinfo/themes.nix
Normal file
@ -0,0 +1,390 @@
|
||||
{ themeSources }:
|
||||
|
||||
{
|
||||
aoi = {
|
||||
src = themeSources.aoi;
|
||||
paths = {
|
||||
bgDark = "AoiNight/AoiBackground-300.png";
|
||||
bgLight = "Aoi/AoiBackground-300.png";
|
||||
status = "Aoi";
|
||||
};
|
||||
rightCharacter = true;
|
||||
};
|
||||
kureikei = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiBikini = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiBikini/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiHomebuiltComputer = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiHomebuiltComputer~Kronotokage/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiPresent = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiPresent/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiRecoding = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiRecoding/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiRecodingKimiya = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiRecoding~KIMIYA/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiSummerKimono = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiSummerKimono/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiUniform = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiUniform/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiAsyuihira = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~AsYuihira/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiHasumikaoru = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~hasumikaoru/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiKohakumuro = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~kohakumuro/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiKosake = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~kosake/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiKunimi = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~kunimi/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiMaru = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~maru/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiMugya = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~mugya/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiNanatunatu = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~nanatunatu/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiNekopan = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~nekopan/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiNyamco = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~nyamco/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiPoyoyonchihiro = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~poyoyonchihiro/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiShitimiNanami = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~ShitimiNanami/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiTakiOuno = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~TakiOuno/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiTori = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~tori/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiYoite = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~yoite/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
shizuku = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "Shizuku/ShizukuBackground-300.png";
|
||||
status = "Shizuku";
|
||||
};
|
||||
};
|
||||
shizuku5thAnniversary = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "Shizuku5thAnniversary/ShizukuBackground-300.png";
|
||||
status = "Shizuku5thAnniversary";
|
||||
};
|
||||
};
|
||||
shizuku7thAnniversary = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "Shizuku7thAnniversary/ShizukuBackground-300.png";
|
||||
status = "Shizuku";
|
||||
};
|
||||
};
|
||||
shizukuDate = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuDate/ShizukuBackground-300.png";
|
||||
status = "ShizukuDate";
|
||||
};
|
||||
};
|
||||
shizukuHanabi = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "ShizukuHanabi/ShizukuBackground-300.png";
|
||||
bgLight = "";
|
||||
status = "ShizukuHanabi";
|
||||
};
|
||||
};
|
||||
shizukuHaregi = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuHaregi/ShizukuBackground-300.png";
|
||||
status = "ShizukuHaregi";
|
||||
};
|
||||
};
|
||||
shizukuHeianKomachi = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuHeianKomachi/ShizukuBackground-300.png";
|
||||
status = "ShizukuHeianKomachi";
|
||||
};
|
||||
};
|
||||
shizukuHotaru = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "ShizukuHotaru/ShizukuBackground-300.png";
|
||||
bgLight = "";
|
||||
status = "Shizuku";
|
||||
};
|
||||
};
|
||||
shizukuIdol = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuIdol/ShizukuBackground-300.png";
|
||||
status = "ShizukuIdol";
|
||||
};
|
||||
};
|
||||
shizukuKotatsu = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuKotatsu/ShizukuBackground-300.png";
|
||||
status = "ShizukuKotatsu";
|
||||
};
|
||||
};
|
||||
shizukuKotatsuNight = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuKotatsuNight/ShizukuBackground-300.png";
|
||||
status = "ShizukuKotatsu";
|
||||
};
|
||||
};
|
||||
shizukuLiteratureGirl = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuLiteratureGirl/ShizukuBackground-300.png";
|
||||
status = "ShizukuLiteratureGirl";
|
||||
};
|
||||
};
|
||||
shizukuLiteratureGirlWithGlasses = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuLiteratureGirlwithGlasses/ShizukuBackground-300.png";
|
||||
status = "ShizukuLiteratureGirlwithGlasses";
|
||||
};
|
||||
};
|
||||
shizukuMaidCool = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuMaidCool/ShizukuBackground-300.png";
|
||||
status = "ShizukuMaidCool";
|
||||
};
|
||||
};
|
||||
shizukuMaidCute = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuMaidCute/ShizukuBackground-300.png";
|
||||
status = "ShizukuMaidCute";
|
||||
};
|
||||
};
|
||||
shizukuMeijiMizugi = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuMeijiMizugi/ShizukuBackground-300.png";
|
||||
status = "ShizukuMeijiMizugi";
|
||||
};
|
||||
};
|
||||
shizukuMermaid = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuMermaid/ShizukuBackground-300.png";
|
||||
status = "ShizukuMermaid";
|
||||
};
|
||||
};
|
||||
shizukuMiko = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "ShizukuMikoNight/ShizukuBackground-300.png";
|
||||
bgLight = "ShizukuMiko/ShizukuBackground-300.png";
|
||||
status = "ShizukuMiko";
|
||||
};
|
||||
};
|
||||
shizukuOffice = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuOffice/ShizukuBackground-300.png";
|
||||
status = "Shizuku";
|
||||
};
|
||||
};
|
||||
shizukuSakura = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "ShizukuSakuraNight/ShizukuBackground-300.png";
|
||||
bgLight = "ShizukuSakura/ShizukuBackground-300.png";
|
||||
status = "ShizukuSakura";
|
||||
};
|
||||
};
|
||||
shizukuTaishoRoman = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuTaishoRoman/ShizukuBackground-300.png";
|
||||
status = "ShizukuTaishoRoman";
|
||||
};
|
||||
};
|
||||
shizukuTeaBreak = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuTeaBreak/ShizukuBackground-300.png";
|
||||
status = "Shizuku";
|
||||
};
|
||||
rightCharacter = true;
|
||||
};
|
||||
shizukuWebRadio = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuWebRadio/ShizukuBackground-300.png";
|
||||
status = "ShizukuWebRadio";
|
||||
};
|
||||
};
|
||||
shizukuWinterLamp = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuWinterLamp/ShizukuBackground-300.png";
|
||||
status = "ShizukuWinterLamp";
|
||||
};
|
||||
};
|
||||
}
|
@ -22,7 +22,7 @@
|
||||
|
||||
let
|
||||
pname = "spotube";
|
||||
version = "3.8.2";
|
||||
version = "3.8.3";
|
||||
|
||||
meta = {
|
||||
description = "Open source, cross-platform Spotify client compatible across multiple platforms";
|
||||
@ -56,7 +56,7 @@ let
|
||||
|
||||
src = fetchArtifact {
|
||||
filename = "Spotube-macos-universal.dmg";
|
||||
hash = "sha256-2nqWHQDxJ0PcwTiLAa8YZffqwsdnepMpXvpqRPX5JxM=";
|
||||
hash = "sha256-N1H/Vy5QQi8zAqiqAi5aTnUQcKC/EgL3GUhEfnCkaAQ=";
|
||||
};
|
||||
|
||||
sourceRoot = ".";
|
||||
@ -80,7 +80,7 @@ let
|
||||
|
||||
src = fetchArtifact {
|
||||
filename = "Spotube-linux-x86_64.deb";
|
||||
hash = "sha256-kDPNWbspmORClVMH91Lt3dLVsRwGxiBtB49CHSHxQxI=";
|
||||
hash = "sha256-x75ie9FXunClMT+YZVFlvl2VSDl933QYMRpEYjJ8YhY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libirecovery";
|
||||
version = "1.2.0";
|
||||
version = "1.2.1";
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
||||
owner = "libimobiledevice";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-3C66oNjIZA6Byf1Y2cVQUSLz6Css1y4xFZuQmo7QxMo=";
|
||||
hash = "sha256-R+oBC7F4op0qoIk3d/WqS4MwzZY3WMAMIqlJfJb188Q=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -1,30 +0,0 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, autoreconfHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "xmake-core-sv";
|
||||
version = "1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xmake-io";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-icvGQi6FNSZXNGs2oLiUKu6rrVsWcXh1r91kycGjnwY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Public domain cross-platform semantic versioning in c99";
|
||||
homepage = "https://github.com/xmake-io/xmake-core-sv";
|
||||
license = licenses.unlicense;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ rewine ];
|
||||
};
|
||||
}
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aioautomower";
|
||||
version = "2024.9.3";
|
||||
version = "2024.10.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@ -25,7 +25,7 @@ buildPythonPackage rec {
|
||||
owner = "Thomas55555";
|
||||
repo = "aioautomower";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-2jPQcMD05SUYnBwAaWHbGKXy7Du2JKPVq3eui9YaqxI=";
|
||||
hash = "sha256-qWXFkz1yIpSDGFilVZK0n+hEUs7osfO+2xfknr2cOZY=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -4,25 +4,14 @@
|
||||
fetchFromGitHub,
|
||||
attrs,
|
||||
argon2-cffi,
|
||||
base58,
|
||||
cbor2,
|
||||
cffi,
|
||||
click,
|
||||
cryptography,
|
||||
ecdsa,
|
||||
eth-abi,
|
||||
eth-account,
|
||||
flatbuffers,
|
||||
jinja2,
|
||||
hkdf,
|
||||
hyperlink,
|
||||
mnemonic,
|
||||
mock,
|
||||
msgpack,
|
||||
passlib,
|
||||
py-ecc,
|
||||
# , py-eth-sig-utils
|
||||
py-multihash,
|
||||
py-ubjson,
|
||||
pynacl,
|
||||
pygobject3,
|
||||
@ -32,19 +21,11 @@
|
||||
python-snappy,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
# , pytrie
|
||||
rlp,
|
||||
service-identity,
|
||||
setuptools,
|
||||
spake2,
|
||||
twisted,
|
||||
txaio,
|
||||
ujson,
|
||||
# , web3
|
||||
# , wsaccel
|
||||
# , xbr
|
||||
yapf,
|
||||
# , zlmdb
|
||||
zope-interface,
|
||||
}@args:
|
||||
|
||||
@ -71,13 +52,11 @@ buildPythonPackage rec {
|
||||
txaio
|
||||
];
|
||||
|
||||
nativeCheckInputs =
|
||||
[
|
||||
mock
|
||||
pytest-asyncio
|
||||
pytestCheckHook
|
||||
]
|
||||
++ optional-dependencies.scram ++ optional-dependencies.serialization ++ optional-dependencies.xbr;
|
||||
nativeCheckInputs = [
|
||||
mock
|
||||
pytest-asyncio
|
||||
pytestCheckHook
|
||||
] ++ optional-dependencies.scram ++ optional-dependencies.serialization;
|
||||
|
||||
preCheck = ''
|
||||
# Run asyncio tests (requires twisted)
|
||||
@ -92,7 +71,7 @@ buildPythonPackage rec {
|
||||
pythonImportsCheck = [ "autobahn" ];
|
||||
|
||||
optional-dependencies = rec {
|
||||
all = accelerate ++ compress ++ encryption ++ nvx ++ serialization ++ scram ++ twisted ++ ui ++ xbr;
|
||||
all = accelerate ++ compress ++ encryption ++ nvx ++ serialization ++ scram ++ twisted ++ ui;
|
||||
accelerate = [
|
||||
# wsaccel
|
||||
];
|
||||
@ -122,22 +101,6 @@ buildPythonPackage rec {
|
||||
zope-interface
|
||||
];
|
||||
ui = [ pygobject3 ];
|
||||
xbr = [
|
||||
base58
|
||||
cbor2
|
||||
click
|
||||
ecdsa
|
||||
eth-abi
|
||||
jinja2
|
||||
hkdf
|
||||
mnemonic
|
||||
py-ecc # py-eth-sig-utils
|
||||
py-multihash
|
||||
rlp
|
||||
spake2
|
||||
twisted # web3 xbr
|
||||
yapf # zlmdb
|
||||
];
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "dissect-cstruct";
|
||||
version = "4.1";
|
||||
version = "4.2";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@ -19,7 +19,7 @@ buildPythonPackage rec {
|
||||
owner = "fox-it";
|
||||
repo = "dissect.cstruct";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-8CEvn2TJTXm0t4GBG9OQo9TgSy1+sTZIusaiiGNu05M=";
|
||||
hash = "sha256-HYBt1ok2ytqBodHwpBPQqjm9fNPkE6ID2j9Bn2sm7wA=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
@ -1,40 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
nose,
|
||||
setuptools,
|
||||
}:
|
||||
|
||||
buildPythonPackage {
|
||||
pname = "hkdf";
|
||||
version = "0.0.3";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "casebeer";
|
||||
repo = "python-hkdf";
|
||||
rev = "cc3c9dbf0a271b27a7ac5cd04cc1485bbc3b4307";
|
||||
hash = "sha256-i3vJzUI7dpZbgZkz7Agd5RAeWisNWftdk/mkJBZkkLg=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
pythonImportsCheck = [ "hkdf" ];
|
||||
|
||||
nativeCheckInputs = [ nose ];
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
|
||||
nosetests
|
||||
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "HMAC-based Extract-and-Expand Key Derivation Function (HKDF)";
|
||||
homepage = "https://github.com/casebeer/python-hkdf";
|
||||
license = licenses.bsd2;
|
||||
};
|
||||
}
|
@ -2,31 +2,44 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
nose,
|
||||
pytestCheckHook,
|
||||
setuptools,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
buildPythonPackage {
|
||||
pname = "inotify";
|
||||
version = "unstable-2020-08-27";
|
||||
format = "setuptools";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dsoprea";
|
||||
repo = "PyInotify";
|
||||
rev = "f77596ae965e47124f38d7bd6587365924dcd8f7";
|
||||
sha256 = "X0gu4s1R/Kg+tmf6s8SdZBab2HisJl4FxfdwKktubVc=";
|
||||
fetchSubmodules = false;
|
||||
hash = "sha256-X0gu4s1R/Kg+tmf6s8SdZBab2HisJl4FxfdwKktubVc=";
|
||||
};
|
||||
|
||||
nativeCheckInputs = [ nose ];
|
||||
postPatch = ''
|
||||
# Needed because assertEquals was removed in python 3.12
|
||||
substituteInPlace tests/test_inotify.py \
|
||||
--replace-fail "assertEquals" "assertEqual" \
|
||||
'';
|
||||
|
||||
# dunno what's wrong but the module works regardless
|
||||
doCheck = false;
|
||||
build-system = [ setuptools ];
|
||||
|
||||
meta = with lib; {
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
|
||||
# Disable these tests as they're flaky.
|
||||
# The returned list can be in a different order, which causes the tests to fail.
|
||||
disabledTests = [
|
||||
"test__automatic_new_watches_on_new_paths"
|
||||
"test__cycle"
|
||||
"test__renames"
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/dsoprea/PyInotify";
|
||||
description = "Monitor filesystems events on Linux platforms with inotify";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
license = lib.licenses.gpl2;
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "lxml-html-clean";
|
||||
version = "0.2.2";
|
||||
version = "0.3.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -19,7 +19,7 @@ buildPythonPackage rec {
|
||||
owner = "fedora-python";
|
||||
repo = "lxml_html_clean";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-DiHbO2m/JckdXFMU7/LAW2hkyskqWtrQ93sgsVcdDSo=";
|
||||
hash = "sha256-LNfsqvBYxhUANiftDp6aYb5UWnP7/NvDEZcSSn+l20Q=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mitogen";
|
||||
version = "0.3.12";
|
||||
version = "0.3.13";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
||||
owner = "mitogen-hq";
|
||||
repo = "mitogen";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-OlZzE4Nc9VBrv5oCZ4LUFdj1a+9rc7YbHDYSbHwALY8=";
|
||||
hash = "sha256-tQz79OVhUWrmsV05l8ScPAUVecrT55fFn74zpjVxBmg=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
@ -15,7 +15,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "opower";
|
||||
version = "0.8.2";
|
||||
version = "0.8.3";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
||||
owner = "tronikos";
|
||||
repo = "opower";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-p1fvfAQVmizfsW+6F3gKkNQTYUF+A0cafh3PZZTpTRw=";
|
||||
hash = "sha256-W/EsiSNFPSJj81ykcEM3YRnRZDJDKvfOUuV98Sk4Gwo=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
@ -22,7 +22,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "playwrightcapture";
|
||||
version = "1.26.0";
|
||||
version = "1.26.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@ -31,7 +31,7 @@ buildPythonPackage rec {
|
||||
owner = "Lookyloo";
|
||||
repo = "PlaywrightCapture";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-v6n+zsiLEQHeAeSALDxu4FWwwQaD/zu3rwxIjR57Ly4=";
|
||||
hash = "sha256-zVwsRTsxic0/K6HyTLVRYCnBpSIF9Ly0TRJS90nADTg=";
|
||||
};
|
||||
|
||||
pythonRelaxDeps = [
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "propcache";
|
||||
version = "0.1.0";
|
||||
version = "0.2.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
||||
owner = "aio-libs";
|
||||
repo = "propcache";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-h6YoBnuzhsFaBNEMM4oRB14ayhE9piTSf9sswl06lz0=";
|
||||
hash = "sha256-S0u5/HJYtZCWB9X+Nlnz+oSFb3o98mGWWwsNLodzS9g=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
@ -1,26 +1,28 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchPypi,
|
||||
fetchFromGitHub,
|
||||
glibcLocales,
|
||||
importlib-metadata,
|
||||
numpy,
|
||||
packaging,
|
||||
htslib,
|
||||
fsspec,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
biopython,
|
||||
setuptools,
|
||||
setuptools-scm,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyfaidx";
|
||||
version = "0.8.1.2";
|
||||
version = "0.8.1.3";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-2EUkcEVbHnePk5aUR9uOok3rRiTHxAdpUWRZy2+HvDM=";
|
||||
src = fetchFromGitHub {
|
||||
owner = "mdshw5";
|
||||
repo = "pyfaidx";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-PKcopIu/0ko4Jl2+G0ZivZXvMwACeIFFFlPt5dlDDfQ=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
@ -28,27 +30,31 @@ buildPythonPackage rec {
|
||||
setuptools-scm
|
||||
];
|
||||
|
||||
dependencies = [ importlib-metadata ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
glibcLocales
|
||||
numpy
|
||||
pytestCheckHook
|
||||
dependencies = [
|
||||
importlib-metadata
|
||||
packaging
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
# FileNotFoundError: [Errno 2] No such file or directory: 'data/genes.fasta.gz'
|
||||
"tests/test_Fasta_bgzip.py"
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
biopython
|
||||
htslib
|
||||
fsspec
|
||||
glibcLocales
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "pyfaidx" ];
|
||||
|
||||
meta = with lib; {
|
||||
preCheck = ''
|
||||
bgzip --keep tests/data/genes.fasta
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Python classes for indexing, retrieval, and in-place modification of FASTA files using a samtools compatible index";
|
||||
homepage = "https://github.com/mdshw5/pyfaidx";
|
||||
changelog = "https://github.com/mdshw5/pyfaidx/releases/tag/v${version}";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ jbedo ];
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = with lib.maintainers; [ jbedo ];
|
||||
mainProgram = "faidx";
|
||||
};
|
||||
}
|
||||
|
@ -1084,6 +1084,24 @@ let
|
||||
'';
|
||||
});
|
||||
|
||||
sf = old.sf.overrideAttrs (attrs: {
|
||||
configureFlags = [
|
||||
"--with-proj-lib=${pkgs.lib.getLib pkgs.proj}/lib"
|
||||
];
|
||||
});
|
||||
|
||||
terra = old.terra.overrideAttrs (attrs: {
|
||||
configureFlags = [
|
||||
"--with-proj-lib=${pkgs.lib.getLib pkgs.proj}/lib"
|
||||
];
|
||||
});
|
||||
|
||||
vapour = old.vapour.overrideAttrs (attrs: {
|
||||
configureFlags = [
|
||||
"--with-proj-lib=${pkgs.lib.getLib pkgs.proj}/lib"
|
||||
];
|
||||
});
|
||||
|
||||
rzmq = old.rzmq.overrideAttrs (attrs: {
|
||||
preConfigure = "patchShebangs configure";
|
||||
});
|
||||
|
@ -1,51 +0,0 @@
|
||||
{ lib, fetchpatch, python3Packages, fetchFromGitHub }:
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "cpplint";
|
||||
version = "1.7.0";
|
||||
pyproject = true;
|
||||
|
||||
# Fetch from github instead of pypi, since the test cases are not in the pypi archive
|
||||
src = fetchFromGitHub {
|
||||
owner = "cpplint";
|
||||
repo = "cpplint";
|
||||
# Commit where version was bumped to 1.7.0, no tag available
|
||||
rev = "8f62396aff6dc850415cbe5ed7edf9dc95f4a731";
|
||||
hash = "sha256-EKD7vkxJjoKWfPrXEQRA0X3PyAoYXi9wGgUFT1zC4WM=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Whitespace fixes that make the tests pass
|
||||
(fetchpatch {
|
||||
url = "https://github.com/cpplint/cpplint/commit/fd257bd78db02888cf6b5985ab8f53d6b765704f.patch";
|
||||
hash = "sha256-BNyW8QEY9fUe2zMG4RZzBHASaIsu4d2FJt5rX3VgkrQ=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace-fail '"pytest-runner==5.2"' ""
|
||||
|
||||
patchShebangs cpplint_unittest.py
|
||||
'';
|
||||
|
||||
build-system = with python3Packages; [
|
||||
setuptools
|
||||
];
|
||||
|
||||
nativeCheckInputs = with python3Packages; [
|
||||
pytest
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
./cpplint_unittest.py
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/cpplint/cpplint";
|
||||
description = "Static code checker for C++";
|
||||
mainProgram = "cpplint";
|
||||
maintainers = [ lib.maintainers.bhipple ];
|
||||
license = [ lib.licenses.bsd3 ];
|
||||
};
|
||||
}
|
@ -7,13 +7,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "alire";
|
||||
version = "2.0.1";
|
||||
version = "2.0.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "alire-project";
|
||||
repo = "alire";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-fJXt3mM/v87hWumML6L3MH1O/uKkzmpE58B9nDRohzM=";
|
||||
hash = "sha256-m4EPiqh7KCeNgq4G727jrW5ABb+uecvvpmZyskqtml4=";
|
||||
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
nativeBuildInputs = [ gprbuild gnat ];
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs ./dev/build.sh
|
||||
patchShebangs ./dev/build.sh ./scripts/version-patcher.sh
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "controller-tools";
|
||||
version = "0.16.3";
|
||||
version = "0.16.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubernetes-sigs";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Txvzp8OcRTDCAB8nFrqj93X+Kk/sNPSSLOI07J3DwcM=";
|
||||
sha256 = "sha256-+YDYpTfWWPkAXcCNfkk0PTWqOAGwqiABbop/t6is2nM=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-nwzXlsSG7JF145bf/AJZB1GbGJRHJC7Q73Jty6mHc/w=";
|
||||
vendorHash = "sha256-zWvFwYHqECga1E2lWVA+wqY744OLXzRxK6JkniTZN70=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
@ -9,16 +9,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cargo-component";
|
||||
version = "0.16.0";
|
||||
version = "0.17.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bytecodealliance";
|
||||
repo = "cargo-component";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-MCsFcEdP8SaT6PiCidUD5DBjRdeS+YIrQHpKsAnL4gA=";
|
||||
hash = "sha256-j1gQgtse3DQWyR4D5BzQ0aAEGhNKoFT0ACRBVOqDdFE=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-Eif6e/6HHOLI4dvptQvk1LTIoaalCoVtXwM4CpEivcI=";
|
||||
cargoHash = "sha256-1YDnqopghS6MpQ2h8e5kQj0bxKAC2B6XzVeC60+M3MM=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "phrase-cli";
|
||||
version = "2.32.0";
|
||||
version = "2.33.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "phrase";
|
||||
repo = "phrase-cli";
|
||||
rev = version;
|
||||
sha256 = "sha256-UZ+JvjENTxVJ9DQ/04v3rSCo22bW3s9KaKSGOwnr2IQ=";
|
||||
sha256 = "sha256-F9uFw0SEUS0uH5cPPBFwx7mWQHX53EtQtauauH3/6p8=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-+ej8+YXTWGAk/3cBoaCJtOQ6Fk0g5lwMrNmuMjApT6o=";
|
||||
vendorHash = "sha256-1STRCr8zn6Hhj4Y/QHNo7QX/faN8V8AOmikflv8ipng=";
|
||||
|
||||
ldflags = [ "-X=github.com/phrase/phrase-cli/cmd.PHRASE_CLIENT_VERSION=${version}" ];
|
||||
|
||||
|
@ -1,5 +1,4 @@
|
||||
{ lib, stdenv, fetchFromGitHub
|
||||
, fetchpatch2
|
||||
, installShellFiles
|
||||
, boost, zlib, openssl
|
||||
, upnpSupport ? true, miniupnpc
|
||||
@ -9,23 +8,15 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "i2pd";
|
||||
version = "2.52.0";
|
||||
version = "2.54.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "PurpleI2P";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-0n3cPF3KBuzNOagrn88HeTvFAu1sYTkijpiGr77X5GI=";
|
||||
sha256 = "sha256-neoIDZNBBDq3tqz1ET3/CS/zb0Lret9niyuU7iWoNIE=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Support miniupnp-2.2.8 (fixes #2071)
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/PurpleI2P/i2pd/commit/697d8314415b0dc0634fd1673abc589a080e0a31.patch?full_index=1";
|
||||
hash = "sha256-B9Ngw1yPrnF5pGLe1a5x0TlyInvQGcq1zQUKO/ELFzA=";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ boost zlib openssl ]
|
||||
++ lib.optional upnpSupport miniupnpc;
|
||||
|
||||
|
@ -5,6 +5,7 @@
|
||||
, fetchFromGitHub
|
||||
, jq
|
||||
, moreutils
|
||||
, versionCheckHook
|
||||
, nix-update-script
|
||||
, withCmd ? false
|
||||
}:
|
||||
@ -51,6 +52,11 @@ rustPlatform.buildRustPackage rec {
|
||||
install -Dm 444 assets/kanata-icon.svg $out/share/icons/hicolor/scalable/apps/kanata.svg
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
};
|
||||
|
@ -127,6 +127,7 @@ mapAliases {
|
||||
archiveopteryx = throw "archiveopteryx depended on an unsupported version of OpenSSL and was unmaintained"; # Added 2024-01-03
|
||||
ardour_6 = throw "ardour_6 has been removed in favor of newer versions"; # Added 2023-10-13
|
||||
aria = aria2; # Added 2024-03-26
|
||||
armcord = throw "ArmCord was renamed to legcord by the upstream developers. Action is required to migrate configurations between the two applications. Please see this PR for more details: https://github.com/NixOS/nixpkgs/pull/347971"; # Added 2024-10-11
|
||||
aseprite-unfree = aseprite; # Added 2023-08-26
|
||||
asls = throw "asls has been removed: abandoned by upstream"; # Added 2023-03-16
|
||||
asterisk_16 = throw "asterisk_16: Asterisk 16 is end of life and has been removed"; # Added 2023-04-19
|
||||
@ -1332,6 +1333,7 @@ mapAliases {
|
||||
protobuf3_23 = protobuf_23;
|
||||
protobuf3_21 = protobuf_21;
|
||||
protonup = protonup-ng; # Added 2022-11-06
|
||||
protonvpn-gui_legacy = throw "protonvpn-gui_legacy source code was removed from upstream. Use protonvpn-gui instead."; # Added 2024-10-12
|
||||
proxmark3-rrg = proxmark3; # Added 2023-07-25
|
||||
proxmark3-unstable = throw "removed in favor of rfidresearchgroup fork"; # Added 2023-07-25
|
||||
psensor = throw "'psensor' has been removed due to lack of maintenance upstream. Consider using 'mission-center', 'resources' or 'monitorets' instead"; # Added 2024-09-14
|
||||
@ -1745,6 +1747,7 @@ mapAliases {
|
||||
xineUI = xine-ui; # Added 2021-04-27
|
||||
xmlada = gnatPackages.xmlada; # Added 2024-02-25
|
||||
xmr-stak = throw "xmr-stak has been removed from nixpkgs because it was broken"; # Added 2024-07-15
|
||||
xmake-core-sv = throw "'xmake-core-sv' has been removed, use 'libsv' instead"; # Added 2024-10-10
|
||||
xonsh-unwrapped = python3Packages.xonsh; # Added 2024-06-18
|
||||
xprite-editor = throw "'xprite-editor' has been removed due to lack of maintenance upstream. Consider using 'pablodraw' or 'aseprite' instead"; # Added 2024-09-14
|
||||
xtrt = throw "xtrt has been removed due to being abandoned"; # Added 2023-05-25
|
||||
|
@ -17360,8 +17360,6 @@ with pkgs;
|
||||
|
||||
cov-build = callPackage ../development/tools/analysis/cov-build { };
|
||||
|
||||
cpplint = callPackage ../development/tools/analysis/cpplint { };
|
||||
|
||||
credstash = with python3Packages; toPythonApplication credstash;
|
||||
|
||||
creduce = callPackage ../development/tools/misc/creduce {
|
||||
@ -23640,8 +23638,6 @@ with pkgs;
|
||||
|
||||
xgeometry-select = callPackage ../tools/X11/xgeometry-select { };
|
||||
|
||||
xmake-core-sv = callPackage ../development/libraries/xmake-core-sv { };
|
||||
|
||||
xmlrpc_c = callPackage ../development/libraries/xmlrpc-c { };
|
||||
|
||||
xmlsec = callPackage ../development/libraries/xmlsec { };
|
||||
@ -28297,9 +28293,6 @@ with pkgs;
|
||||
boost = boost175;
|
||||
};
|
||||
|
||||
|
||||
armcord = callPackage ../applications/networking/instant-messengers/armcord { };
|
||||
|
||||
autopanosiftc = callPackage ../applications/graphics/autopanosiftc { };
|
||||
|
||||
ausweisapp = qt6Packages.callPackage ../applications/misc/ausweisapp { };
|
||||
@ -32033,7 +32026,6 @@ with pkgs;
|
||||
protonvpn-cli_2 = python3Packages.callPackage ../applications/networking/protonvpn-cli/2.nix { };
|
||||
|
||||
protonvpn-gui = python3Packages.callPackage ../applications/networking/protonvpn-gui { };
|
||||
protonvpn-gui_legacy = python3Packages.callPackage ../applications/networking/protonvpn-gui/legacy.nix { };
|
||||
|
||||
ps2client = callPackage ../applications/networking/ps2client { };
|
||||
|
||||
|
@ -258,6 +258,7 @@ mapAliases ({
|
||||
hcs_utils = hcs-utils; # added 2024-01-06
|
||||
hdlparse = throw "hdlparse has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18
|
||||
hglib = python-hglib; # added 2023-10-13
|
||||
hkdf = throw "hkdf has been removed, as it is no longer maintained upstream."; # added 2024-10-04
|
||||
homeassistant-bring-api = bring-api; # added 2024-04-11
|
||||
homeassistant-pyozw = throw "homeassistant-pyozw has been removed, as it was packaged for home-assistant which has removed it as a dependency."; # added 2024-01-05
|
||||
htmllaundry = throw "htmllaundry has been removed because it is abandoned"; # added 2024-06-04
|
||||
|
@ -5391,7 +5391,9 @@ self: super: with self; {
|
||||
|
||||
graphrag = callPackage ../development/python-modules/graphrag { };
|
||||
|
||||
graph-tool = callPackage ../development/python-modules/graph-tool { };
|
||||
graph-tool = callPackage ../development/python-modules/graph-tool {
|
||||
inherit (pkgs) cgal;
|
||||
};
|
||||
|
||||
graphtage = callPackage ../development/python-modules/graphtage { };
|
||||
|
||||
@ -5496,7 +5498,9 @@ self: super: with self; {
|
||||
qemu = pkgs.qemu;
|
||||
};
|
||||
|
||||
gudhi = callPackage ../development/python-modules/gudhi { };
|
||||
gudhi = callPackage ../development/python-modules/gudhi {
|
||||
inherit (pkgs) cgal;
|
||||
};
|
||||
|
||||
guidance = callPackage ../development/python-modules/guidance { };
|
||||
|
||||
@ -5714,8 +5718,6 @@ self: super: with self; {
|
||||
|
||||
hkavr = callPackage ../development/python-modules/hkavr { };
|
||||
|
||||
hkdf = callPackage ../development/python-modules/hkdf { };
|
||||
|
||||
hledger-utils = callPackage ../development/python-modules/hledger-utils { };
|
||||
|
||||
hlk-sw16 = callPackage ../development/python-modules/hlk-sw16 { };
|
||||
@ -5992,7 +5994,7 @@ self: super: with self; {
|
||||
ifconfig-parser = callPackage ../development/python-modules/ifconfig-parser { };
|
||||
|
||||
ifcopenshell = callPackage ../development/python-modules/ifcopenshell {
|
||||
inherit (pkgs) libxml2;
|
||||
inherit (pkgs) cgal libxml2;
|
||||
};
|
||||
|
||||
ignite = callPackage ../development/python-modules/ignite { };
|
||||
|
Loading…
Reference in New Issue
Block a user