Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2024-04-24 00:13:13 +00:00 committed by GitHub
commit 466ddc4b5f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
222 changed files with 3164 additions and 1932 deletions

View File

@ -16,6 +16,13 @@ on:
# so it shouldn't be a problem # so it shouldn't be a problem
types: [opened, synchronize, reopened, edited] types: [opened, synchronize, reopened, edited]
# Create a check-by-name concurrency group based on the branch name. if a new
# commit is pushed to the main branch while a previous run is still in progress,
# the previous run will be cancelled and the new one will start.
concurrency:
group: check-by-name-${{ github.ref }}
cancel-in-progress: true
permissions: permissions:
# We need this permission to cancel the workflow run if there's a merge conflict # We need this permission to cancel the workflow run if there's a merge conflict
actions: write actions: write

View File

@ -46,7 +46,7 @@ jobs:
run: | run: |
git clean -f git clean -f
- name: create PR - name: create PR
uses: peter-evans/create-pull-request@70a41aba780001da0a30141984ae2a0c95d8704e # v6.0.2 uses: peter-evans/create-pull-request@9153d834b60caba6d51c9b9510b087acf9f33f83 # v6.0.4
with: with:
body: | body: |
Automatic update by [update-terraform-providers](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/update-terraform-providers.yml) action. Automatic update by [update-terraform-providers](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/update-terraform-providers.yml) action.

View File

@ -148,4 +148,4 @@ All new projects should use the CUDA redistributables available in [`cudaPackage
| Find libraries | `configurePhase` | Missing dependency on a `dev` output | Add the missing dependency | The `dev` output typically contain CMake configuration files | | Find libraries | `configurePhase` | Missing dependency on a `dev` output | Add the missing dependency | The `dev` output typically contain CMake configuration files |
| Find libraries | `buildPhase` or `patchelf` | Missing dependency on a `lib` or `static` output | Add the missing dependency | The `lib` or `static` output typically contain the libraries | | Find libraries | `buildPhase` or `patchelf` | Missing dependency on a `lib` or `static` output | Add the missing dependency | The `lib` or `static` output typically contain the libraries |
In the scenario you are unable to run the resulting binary: this is arguably the most complicated as it could be any combination of the previous reasons. This type of failure typically occurs when a library attempts to load or open a library it depends on that it does not declare in its `DT_NEEDED` section. As a first step, ensure that dependencies are patched with [`cudaPackages.autoAddDriverRunpath`](https://search.nixos.org/packages?channel=unstable&type=packages&query=cudaPackages.autoAddDriverRunpath). Failing that, try running the application with [`nixGL`](https://github.com/guibou/nixGL) or a similar wrapper tool. If that works, it likely means that the application is attempting to load a library that is not in the `RPATH` or `RUNPATH` of the binary. In the scenario you are unable to run the resulting binary: this is arguably the most complicated as it could be any combination of the previous reasons. This type of failure typically occurs when a library attempts to load or open a library it depends on that it does not declare in its `DT_NEEDED` section. As a first step, ensure that dependencies are patched with [`autoAddDriverRunpath`](https://search.nixos.org/packages?channel=unstable&type=packages&query=autoAddDriverRunpath). Failing that, try running the application with [`nixGL`](https://github.com/guibou/nixGL) or a similar wrapper tool. If that works, it likely means that the application is attempting to load a library that is not in the `RPATH` or `RUNPATH` of the binary.

View File

@ -4448,6 +4448,12 @@
github = "DarkOnion0"; github = "DarkOnion0";
githubId = 68606322; githubId = 68606322;
}; };
daru-san = {
name = "Daru";
email = "zadarumaka@proton.me";
github = "Daru-san";
githubId = 135046711;
};
das-g = { das-g = {
email = "nixpkgs@raphael.dasgupta.ch"; email = "nixpkgs@raphael.dasgupta.ch";
github = "das-g"; github = "das-g";
@ -11662,6 +11668,12 @@
github = "LongerHV"; github = "LongerHV";
githubId = 46924944; githubId = 46924944;
}; };
lonyelon = {
email = "sergio@lony.xyz";
name = "Sergio Miguéns Iglesias";
github = "lonyelon";
githubId = 18664655;
};
lopsided98 = { lopsided98 = {
email = "benwolsieffer@gmail.com"; email = "benwolsieffer@gmail.com";
github = "lopsided98"; github = "lopsided98";

View File

@ -46,9 +46,7 @@ Use `services.pipewire.extraConfig` or `services.pipewire.configPackages` for Pi
- The default dbus implementation has transitioned to dbus-broker from the classic dbus daemon for better performance and reliability. Users can revert to the classic dbus daemon by setting `services.dbus.implementation = "dbus";`. For detailed deviations, refer to [dbus-broker's deviations page](https://github.com/bus1/dbus-broker/wiki/Deviations). - The default dbus implementation has transitioned to dbus-broker from the classic dbus daemon for better performance and reliability. Users can revert to the classic dbus daemon by setting `services.dbus.implementation = "dbus";`. For detailed deviations, refer to [dbus-broker's deviations page](https://github.com/bus1/dbus-broker/wiki/Deviations).
- A new option `virtualisation.containers.cdi` was added. It contains `static` and `dynamic` attributes (corresponding to `/etc/cdi` and `/run/cdi` respectively) to configure the Container Device Interface (CDI). - `virtualisation.docker.enableNvidia` and `virtualisation.podman.enableNvidia` options are deprecated. `hardware.nvidia-container-toolkit.enable` should be used instead. This option will expose GPUs on containers with the `--device` CLI option. This is supported by Docker 25, Podman 3.2.0 and Singularity 4. Any container runtime that supports the CDI specification will take advantage of this feature.
- `virtualisation.docker.enableNvidia` and `virtualisation.podman.enableNvidia` options are deprecated. `virtualisation.containers.cdi.dynamic.nvidia.enable` should be used instead. This option will expose GPUs on containers with the `--device` CLI option. This is supported by Docker 25, Podman 3.2.0 and Singularity 4. Any container runtime that supports the CDI specification will take advantage of this feature.
- `system.etc.overlay.enable` option was added. If enabled, `/etc` is - `system.etc.overlay.enable` option was added. If enabled, `/etc` is
mounted via an overlayfs instead of being created by a custom perl script. mounted via an overlayfs instead of being created by a custom perl script.

View File

@ -1,4 +1,4 @@
{ config, lib, pkgs }: { config, lib, pkgs, utils }:
let let
inherit (lib) inherit (lib)
@ -396,8 +396,41 @@ in rec {
}; };
}; };
serviceConfig = { config, ... }: { serviceConfig = { name, config, ... }: {
config.environment.PATH = mkIf (config.path != []) "${makeBinPath config.path}:${makeSearchPathOutput "bin" "sbin" config.path}"; config = {
name = "${name}.service";
environment.PATH = mkIf (config.path != []) "${makeBinPath config.path}:${makeSearchPathOutput "bin" "sbin" config.path}";
};
};
pathConfig = { name, config, ... }: {
config = {
name = "${name}.path";
};
};
socketConfig = { name, config, ... }: {
config = {
name = "${name}.socket";
};
};
sliceConfig = { name, config, ... }: {
config = {
name = "${name}.slice";
};
};
targetConfig = { name, config, ... }: {
config = {
name = "${name}.target";
};
};
timerConfig = { name, config, ... }: {
config = {
name = "${name}.timer";
};
}; };
stage2ServiceConfig = { stage2ServiceConfig = {
@ -416,6 +449,7 @@ in rec {
mountConfig = { config, ... }: { mountConfig = { config, ... }: {
config = { config = {
name = "${utils.escapeSystemdPath config.where}.mount";
mountConfig = mountConfig =
{ What = config.what; { What = config.what;
Where = config.where; Where = config.where;
@ -429,6 +463,7 @@ in rec {
automountConfig = { config, ... }: { automountConfig = { config, ... }: {
config = { config = {
name = "${utils.escapeSystemdPath config.where}.automount";
automountConfig = automountConfig =
{ Where = config.where; { Where = config.where;
}; };
@ -444,8 +479,8 @@ in rec {
WantedBy=${concatStringsSep " " def.wantedBy} WantedBy=${concatStringsSep " " def.wantedBy}
''; '';
targetToUnit = name: def: targetToUnit = def:
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy; { inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
text = text =
'' ''
[Unit] [Unit]
@ -453,8 +488,8 @@ in rec {
''; '';
}; };
serviceToUnit = name: def: serviceToUnit = def:
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy; { inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
text = commonUnitText def ('' text = commonUnitText def (''
[Service] [Service]
'' + (let env = cfg.globalEnvironment // def.environment; '' + (let env = cfg.globalEnvironment // def.environment;
@ -463,7 +498,7 @@ in rec {
"Environment=${toJSON "${n}=${env.${n}}"}\n"; "Environment=${toJSON "${n}=${env.${n}}"}\n";
# systemd max line length is now 1MiB # systemd max line length is now 1MiB
# https://github.com/systemd/systemd/commit/e6dde451a51dc5aaa7f4d98d39b8fe735f73d2af # https://github.com/systemd/systemd/commit/e6dde451a51dc5aaa7f4d98d39b8fe735f73d2af
in if stringLength s >= 1048576 then throw "The value of the environment variable ${n} in systemd service ${name}.service is too long." else s) (attrNames env)) in if stringLength s >= 1048576 then throw "The value of the environment variable ${n} in systemd service ${def.name}.service is too long." else s) (attrNames env))
+ (if def ? reloadIfChanged && def.reloadIfChanged then '' + (if def ? reloadIfChanged && def.reloadIfChanged then ''
X-ReloadIfChanged=true X-ReloadIfChanged=true
'' else if (def ? restartIfChanged && !def.restartIfChanged) then '' '' else if (def ? restartIfChanged && !def.restartIfChanged) then ''
@ -474,8 +509,8 @@ in rec {
'' + attrsToSection def.serviceConfig); '' + attrsToSection def.serviceConfig);
}; };
socketToUnit = name: def: socketToUnit = def:
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy; { inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
text = commonUnitText def '' text = commonUnitText def ''
[Socket] [Socket]
${attrsToSection def.socketConfig} ${attrsToSection def.socketConfig}
@ -484,40 +519,40 @@ in rec {
''; '';
}; };
timerToUnit = name: def: timerToUnit = def:
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy; { inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
text = commonUnitText def '' text = commonUnitText def ''
[Timer] [Timer]
${attrsToSection def.timerConfig} ${attrsToSection def.timerConfig}
''; '';
}; };
pathToUnit = name: def: pathToUnit = def:
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy; { inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
text = commonUnitText def '' text = commonUnitText def ''
[Path] [Path]
${attrsToSection def.pathConfig} ${attrsToSection def.pathConfig}
''; '';
}; };
mountToUnit = name: def: mountToUnit = def:
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy; { inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
text = commonUnitText def '' text = commonUnitText def ''
[Mount] [Mount]
${attrsToSection def.mountConfig} ${attrsToSection def.mountConfig}
''; '';
}; };
automountToUnit = name: def: automountToUnit = def:
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy; { inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
text = commonUnitText def '' text = commonUnitText def ''
[Automount] [Automount]
${attrsToSection def.automountConfig} ${attrsToSection def.automountConfig}
''; '';
}; };
sliceToUnit = name: def: sliceToUnit = def:
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy; { inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
text = commonUnitText def '' text = commonUnitText def ''
[Slice] [Slice]
${attrsToSection def.sliceConfig} ${attrsToSection def.sliceConfig}

View File

@ -5,8 +5,13 @@ let
automountConfig automountConfig
makeUnit makeUnit
mountConfig mountConfig
pathConfig
sliceConfig
socketConfig
stage1ServiceConfig stage1ServiceConfig
stage2ServiceConfig stage2ServiceConfig
targetConfig
timerConfig
unitConfig unitConfig
; ;
@ -48,29 +53,32 @@ let
; ;
in in
rec { {
units = attrsOf (submodule ({ name, config, ... }: { units = attrsOf (submodule ({ name, config, ... }: {
options = concreteUnitOptions; options = concreteUnitOptions;
config = { unit = mkDefault (makeUnit name config); }; config = {
name = mkDefault name;
unit = mkDefault (makeUnit name config);
};
})); }));
services = attrsOf (submodule [ stage2ServiceOptions unitConfig stage2ServiceConfig ]); services = attrsOf (submodule [ stage2ServiceOptions unitConfig stage2ServiceConfig ]);
initrdServices = attrsOf (submodule [ stage1ServiceOptions unitConfig stage1ServiceConfig ]); initrdServices = attrsOf (submodule [ stage1ServiceOptions unitConfig stage1ServiceConfig ]);
targets = attrsOf (submodule [ stage2CommonUnitOptions unitConfig ]); targets = attrsOf (submodule [ stage2CommonUnitOptions unitConfig targetConfig ]);
initrdTargets = attrsOf (submodule [ stage1CommonUnitOptions unitConfig ]); initrdTargets = attrsOf (submodule [ stage1CommonUnitOptions unitConfig targetConfig ]);
sockets = attrsOf (submodule [ stage2SocketOptions unitConfig ]); sockets = attrsOf (submodule [ stage2SocketOptions unitConfig socketConfig]);
initrdSockets = attrsOf (submodule [ stage1SocketOptions unitConfig ]); initrdSockets = attrsOf (submodule [ stage1SocketOptions unitConfig socketConfig ]);
timers = attrsOf (submodule [ stage2TimerOptions unitConfig ]); timers = attrsOf (submodule [ stage2TimerOptions unitConfig timerConfig ]);
initrdTimers = attrsOf (submodule [ stage1TimerOptions unitConfig ]); initrdTimers = attrsOf (submodule [ stage1TimerOptions unitConfig timerConfig ]);
paths = attrsOf (submodule [ stage2PathOptions unitConfig ]); paths = attrsOf (submodule [ stage2PathOptions unitConfig pathConfig ]);
initrdPaths = attrsOf (submodule [ stage1PathOptions unitConfig ]); initrdPaths = attrsOf (submodule [ stage1PathOptions unitConfig pathConfig ]);
slices = attrsOf (submodule [ stage2SliceOptions unitConfig ]); slices = attrsOf (submodule [ stage2SliceOptions unitConfig sliceConfig ]);
initrdSlices = attrsOf (submodule [ stage1SliceOptions unitConfig ]); initrdSlices = attrsOf (submodule [ stage1SliceOptions unitConfig sliceConfig ]);
mounts = listOf (submodule [ stage2MountOptions unitConfig mountConfig ]); mounts = listOf (submodule [ stage2MountOptions unitConfig mountConfig ]);
initrdMounts = listOf (submodule [ stage1MountOptions unitConfig mountConfig ]); initrdMounts = listOf (submodule [ stage1MountOptions unitConfig mountConfig ]);

View File

@ -65,6 +65,14 @@ in rec {
''; '';
}; };
name = lib.mkOption {
type = lib.types.str;
description = ''
The name of this systemd unit, including its extension.
This can be used to refer to this unit from other systemd units.
'';
};
overrideStrategy = mkOption { overrideStrategy = mkOption {
default = "asDropinIfExists"; default = "asDropinIfExists";
type = types.enum [ "asDropinIfExists" "asDropin" ]; type = types.enum [ "asDropinIfExists" "asDropin" ];

View File

@ -35,7 +35,8 @@ let
inherit (lib.strings) toJSON normalizePath escapeC; inherit (lib.strings) toJSON normalizePath escapeC;
in in
rec { let
utils = rec {
# Copy configuration files to avoid having the entire sources in the system closure # Copy configuration files to avoid having the entire sources in the system closure
copyFile = filePath: pkgs.runCommand (builtins.unsafeDiscardStringContext (baseNameOf filePath)) {} '' copyFile = filePath: pkgs.runCommand (builtins.unsafeDiscardStringContext (baseNameOf filePath)) {} ''
@ -262,11 +263,12 @@ rec {
filter (x: !(elem (getName x) namesToRemove)) packages; filter (x: !(elem (getName x) namesToRemove)) packages;
systemdUtils = { systemdUtils = {
lib = import ./systemd-lib.nix { inherit lib config pkgs; }; lib = import ./systemd-lib.nix { inherit lib config pkgs utils; };
unitOptions = import ./systemd-unit-options.nix { inherit lib systemdUtils; }; unitOptions = import ./systemd-unit-options.nix { inherit lib systemdUtils; };
types = import ./systemd-types.nix { inherit lib systemdUtils pkgs; }; types = import ./systemd-types.nix { inherit lib systemdUtils pkgs; };
network = { network = {
units = import ./systemd-network-units.nix { inherit lib systemdUtils; }; units = import ./systemd-network-units.nix { inherit lib systemdUtils; };
}; };
}; };
} };
in utils

View File

@ -559,7 +559,7 @@
./services/hardware/kanata.nix ./services/hardware/kanata.nix
./services/hardware/lcd.nix ./services/hardware/lcd.nix
./services/hardware/lirc.nix ./services/hardware/lirc.nix
./services/hardware/nvidia-container-toolkit-cdi-generator ./services/hardware/nvidia-container-toolkit
./services/hardware/monado.nix ./services/hardware/monado.nix
./services/hardware/nvidia-optimus.nix ./services/hardware/nvidia-optimus.nix
./services/hardware/openrgb.nix ./services/hardware/openrgb.nix

View File

@ -1,60 +0,0 @@
{
addDriverRunpath,
glibc,
jq,
lib,
nvidia-container-toolkit,
nvidia-driver,
runtimeShell,
writeScriptBin,
}:
let
mountOptions = { options = ["ro" "nosuid" "nodev" "bind"]; };
mounts = [
# FIXME: Making /usr mounts optional
{ hostPath = lib.getExe' nvidia-driver "nvidia-cuda-mps-control";
containerPath = "/usr/bin/nvidia-cuda-mps-control"; }
{ hostPath = lib.getExe' nvidia-driver "nvidia-cuda-mps-server";
containerPath = "/usr/bin/nvidia-cuda-mps-server"; }
{ hostPath = lib.getExe' nvidia-driver "nvidia-debugdump";
containerPath = "/usr/bin/nvidia-debugdump"; }
{ hostPath = lib.getExe' nvidia-driver "nvidia-powerd";
containerPath = "/usr/bin/nvidia-powerd"; }
{ hostPath = lib.getExe' nvidia-driver "nvidia-smi";
containerPath = "/usr/bin/nvidia-smi"; }
{ hostPath = lib.getExe' nvidia-container-toolkit "nvidia-ctk";
containerPath = "/usr/bin/nvidia-ctk"; }
{ hostPath = "${lib.getLib glibc}/lib";
containerPath = "${lib.getLib glibc}/lib"; }
# FIXME: use closureinfo
{
hostPath = addDriverRunpath.driverLink;
containerPath = addDriverRunpath.driverLink;
}
{ hostPath = "${lib.getLib glibc}/lib";
containerPath = "${lib.getLib glibc}/lib"; }
{ hostPath = "${lib.getLib glibc}/lib64";
containerPath = "${lib.getLib glibc}/lib64"; }
];
jqAddMountExpression = ".containerEdits.mounts[.containerEdits.mounts | length] |= . +";
mountsToJq = lib.concatMap
(mount:
["${lib.getExe jq} '${jqAddMountExpression} ${builtins.toJSON (mount // mountOptions)}'"])
mounts;
in
writeScriptBin "nvidia-cdi-generator"
''
#! ${runtimeShell}
function cdiGenerate {
${lib.getExe' nvidia-container-toolkit "nvidia-ctk"} cdi generate \
--format json \
--ldconfig-path ${lib.getExe' glibc "ldconfig"} \
--library-search-path ${lib.getLib nvidia-driver}/lib \
--nvidia-ctk-path ${lib.getExe' nvidia-container-toolkit "nvidia-ctk"}
}
cdiGenerate | \
${lib.concatStringsSep " | " mountsToJq} > $RUNTIME_DIRECTORY/nvidia-container-toolkit.json
''

View File

@ -1,40 +0,0 @@
{ config, lib, pkgs, ... }:
{
options = {
hardware.nvidia-container-toolkit-cdi-generator.enable = lib.mkOption {
default = false;
internal = true;
visible = false;
type = lib.types.bool;
description = ''
Enable dynamic CDI configuration for NVidia devices by running
nvidia-container-toolkit on boot.
'';
};
};
config = {
systemd.services.nvidia-container-toolkit-cdi-generator = lib.mkIf config.hardware.nvidia-container-toolkit-cdi-generator.enable {
description = "Container Device Interface (CDI) for Nvidia generator";
wantedBy = [ "multi-user.target" ];
after = [ "systemd-udev-settle.service" ];
serviceConfig = {
RuntimeDirectory = "cdi";
RemainAfterExit = true;
ExecStart =
let
script = pkgs.callPackage ./cdi-generate.nix { nvidia-driver = config.hardware.nvidia.package; };
in
lib.getExe script;
Type = "oneshot";
};
};
};
}

View File

@ -0,0 +1,35 @@
{
glibc,
jq,
lib,
mounts,
nvidia-container-toolkit,
nvidia-driver,
runtimeShell,
writeScriptBin,
}: let
mkMount = {hostPath, containerPath, mountOptions}: {
inherit hostPath containerPath;
options = mountOptions;
};
jqAddMountExpression = ".containerEdits.mounts[.containerEdits.mounts | length] |= . +";
allJqMounts = lib.concatMap
(mount:
["${lib.getExe jq} '${jqAddMountExpression} ${builtins.toJSON (mkMount mount)}'"])
mounts;
in
writeScriptBin "nvidia-cdi-generator"
''
#! ${runtimeShell}
function cdiGenerate {
${lib.getExe' nvidia-container-toolkit "nvidia-ctk"} cdi generate \
--format json \
--ldconfig-path ${lib.getExe' glibc "ldconfig"} \
--library-search-path ${lib.getLib nvidia-driver}/lib \
--nvidia-ctk-path ${lib.getExe' nvidia-container-toolkit "nvidia-ctk"}
}
cdiGenerate | \
${lib.concatStringsSep " | " allJqMounts} > $RUNTIME_DIRECTORY/nvidia-container-toolkit.json
''

View File

@ -0,0 +1,121 @@
{ config, lib, pkgs, ... }:
{
imports = [
(lib.mkRenamedOptionModule
[ "virtualisation" "containers" "cdi" "dynamic" "nvidia" "enable" ]
[ "hardware" "nvidia-container-toolkit" "enable" ])
];
options = let
mountType = {
options = {
hostPath = lib.mkOption {
type = lib.types.str;
description = "Host path.";
};
containerPath = lib.mkOption {
type = lib.types.str;
description = "Container path.";
};
mountOptions = lib.mkOption {
default = [ "ro" "nosuid" "nodev" "bind" ];
type = lib.types.listOf lib.types.str;
description = "Mount options.";
};
};
};
in {
hardware.nvidia-container-toolkit = {
enable = lib.mkOption {
default = false;
type = lib.types.bool;
description = ''
Enable dynamic CDI configuration for NVidia devices by running
nvidia-container-toolkit on boot.
'';
};
mounts = lib.mkOption {
type = lib.types.listOf (lib.types.submodule mountType);
default = [];
description = "Mounts to be added to every container under the Nvidia CDI profile.";
};
mount-nvidia-executables = lib.mkOption {
default = true;
type = lib.types.bool;
description = ''
Mount executables nvidia-smi, nvidia-cuda-mps-control, nvidia-cuda-mps-server,
nvidia-debugdump, nvidia-powerd and nvidia-ctk on containers.
'';
};
mount-nvidia-docker-1-directories = lib.mkOption {
default = true;
type = lib.types.bool;
description = ''
Mount nvidia-docker-1 directories on containers: /usr/local/nvidia/lib and
/usr/local/nvidia/lib64.
'';
};
};
};
config = {
hardware.nvidia-container-toolkit.mounts = let
nvidia-driver = config.hardware.nvidia.package;
in (lib.mkMerge [
[{ hostPath = pkgs.addDriverRunpath.driverLink;
containerPath = pkgs.addDriverRunpath.driverLink; }
{ hostPath = "${lib.getLib pkgs.glibc}/lib";
containerPath = "${lib.getLib pkgs.glibc}/lib"; }
{ hostPath = "${lib.getLib pkgs.glibc}/lib64";
containerPath = "${lib.getLib pkgs.glibc}/lib64"; }]
(lib.mkIf config.hardware.nvidia-container-toolkit.mount-nvidia-executables
[{ hostPath = lib.getExe' nvidia-driver "nvidia-cuda-mps-control";
containerPath = "/usr/bin/nvidia-cuda-mps-control"; }
{ hostPath = lib.getExe' nvidia-driver "nvidia-cuda-mps-server";
containerPath = "/usr/bin/nvidia-cuda-mps-server"; }
{ hostPath = lib.getExe' nvidia-driver "nvidia-debugdump";
containerPath = "/usr/bin/nvidia-debugdump"; }
{ hostPath = lib.getExe' nvidia-driver "nvidia-powerd";
containerPath = "/usr/bin/nvidia-powerd"; }
{ hostPath = lib.getExe' nvidia-driver "nvidia-smi";
containerPath = "/usr/bin/nvidia-smi"; }])
# nvidia-docker 1.0 uses /usr/local/nvidia/lib{,64}
# e.g.
# - https://gitlab.com/nvidia/container-images/cuda/-/blob/e3ff10eab3a1424fe394899df0e0f8ca5a410f0f/dist/12.3.1/ubi9/base/Dockerfile#L44
# - https://github.com/NVIDIA/nvidia-docker/blob/01d2c9436620d7dde4672e414698afe6da4a282f/src/nvidia/volumes.go#L104-L173
(lib.mkIf config.hardware.nvidia-container-toolkit.mount-nvidia-docker-1-directories
[{ hostPath = "${lib.getLib nvidia-driver}/lib";
containerPath = "/usr/local/nvidia/lib"; }
{ hostPath = "${lib.getLib nvidia-driver}/lib";
containerPath = "/usr/local/nvidia/lib64"; }])
]);
systemd.services.nvidia-container-toolkit-cdi-generator = lib.mkIf config.hardware.nvidia-container-toolkit.enable {
description = "Container Device Interface (CDI) for Nvidia generator";
wantedBy = [ "multi-user.target" ];
after = [ "systemd-udev-settle.service" ];
serviceConfig = {
RuntimeDirectory = "cdi";
RemainAfterExit = true;
ExecStart =
let
script = pkgs.callPackage ./cdi-generate.nix {
inherit (config.hardware.nvidia-container-toolkit) mounts;
nvidia-driver = config.hardware.nvidia.package;
};
in
lib.getExe script;
Type = "oneshot";
};
};
};
}

View File

@ -169,7 +169,7 @@ in {
after = [ "network.target" ]; after = [ "network.target" ];
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
environment = config.environment.extra // { environment = cfg.environment.extra // {
CODER_ACCESS_URL = cfg.accessUrl; CODER_ACCESS_URL = cfg.accessUrl;
CODER_WILDCARD_ACCESS_URL = cfg.wildcardAccessUrl; CODER_WILDCARD_ACCESS_URL = cfg.wildcardAccessUrl;
CODER_PG_CONNECTION_URL = "user=${cfg.database.username} ${optionalString (cfg.database.password != null) "password=${cfg.database.password}"} database=${cfg.database.database} host=${cfg.database.host} ${optionalString (cfg.database.sslmode != null) "sslmode=${cfg.database.sslmode}"}"; CODER_PG_CONNECTION_URL = "user=${cfg.database.username} ${optionalString (cfg.database.password != null) "password=${cfg.database.password}"} database=${cfg.database.database} host=${cfg.database.host} ${optionalString (cfg.database.sslmode != null) "sslmode=${cfg.database.sslmode}"}";

View File

@ -246,7 +246,9 @@ in
passwordFile = mkOption { passwordFile = mkOption {
type = types.path; type = types.path;
description = "A file containing the initial password for the admin user."; description = ''
A file containing the initial password for the administrator account "admin".
'';
example = "/run/keys/mediawiki-password"; example = "/run/keys/mediawiki-password";
}; };

View File

@ -595,18 +595,17 @@ in
}; };
systemd.units = systemd.units =
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit n v)) cfg.paths let
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services withName = cfgToUnit: cfg: lib.nameValuePair cfg.name (cfgToUnit cfg);
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit n v)) cfg.slices in
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit n v)) cfg.sockets mapAttrs' (_: withName pathToUnit) cfg.paths
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit n v)) cfg.targets // mapAttrs' (_: withName serviceToUnit) cfg.services
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit n v)) cfg.timers // mapAttrs' (_: withName sliceToUnit) cfg.slices
// listToAttrs (map // mapAttrs' (_: withName socketToUnit) cfg.sockets
(v: let n = escapeSystemdPath v.where; // mapAttrs' (_: withName targetToUnit) cfg.targets
in nameValuePair "${n}.mount" (mountToUnit n v)) cfg.mounts) // mapAttrs' (_: withName timerToUnit) cfg.timers
// listToAttrs (map // listToAttrs (map (withName mountToUnit) cfg.mounts)
(v: let n = escapeSystemdPath v.where; // listToAttrs (map (withName automountToUnit) cfg.automounts);
in nameValuePair "${n}.automount" (automountToUnit n v)) cfg.automounts);
# Environment of PID 1 # Environment of PID 1
systemd.managerEnvironment = { systemd.managerEnvironment = {

View File

@ -490,18 +490,18 @@ in {
targets.initrd.aliases = ["default.target"]; targets.initrd.aliases = ["default.target"];
units = units =
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit n v)) cfg.paths mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit v)) cfg.paths
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services // mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit v)) cfg.services
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit n v)) cfg.slices // mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit v)) cfg.slices
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit n v)) cfg.sockets // mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit v)) cfg.sockets
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit n v)) cfg.targets // mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit v)) cfg.targets
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit n v)) cfg.timers // mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit v)) cfg.timers
// listToAttrs (map // listToAttrs (map
(v: let n = escapeSystemdPath v.where; (v: let n = escapeSystemdPath v.where;
in nameValuePair "${n}.mount" (mountToUnit n v)) cfg.mounts) in nameValuePair "${n}.mount" (mountToUnit v)) cfg.mounts)
// listToAttrs (map // listToAttrs (map
(v: let n = escapeSystemdPath v.where; (v: let n = escapeSystemdPath v.where;
in nameValuePair "${n}.automount" (automountToUnit n v)) cfg.automounts); in nameValuePair "${n}.automount" (automountToUnit v)) cfg.automounts);
# make sure all the /dev nodes are set up # make sure all the /dev nodes are set up
services.systemd-tmpfiles-setup-dev.wantedBy = ["sysinit.target"]; services.systemd-tmpfiles-setup-dev.wantedBy = ["sysinit.target"];

View File

@ -175,12 +175,12 @@ in {
}; };
systemd.user.units = systemd.user.units =
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit n v)) cfg.paths mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit v)) cfg.paths
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services // mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit v)) cfg.services
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit n v)) cfg.slices // mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit v)) cfg.slices
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit n v)) cfg.sockets // mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit v)) cfg.sockets
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit n v)) cfg.targets // mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit v)) cfg.targets
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit n v)) cfg.timers; // mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit v)) cfg.timers;
# Generate timer units for all services that have a startAt value. # Generate timer units for all services that have a startAt value.
systemd.user.timers = systemd.user.timers =

View File

@ -28,43 +28,6 @@ in
description = "Enable the OCI seccomp BPF hook"; description = "Enable the OCI seccomp BPF hook";
}; };
cdi = {
dynamic.nvidia.enable = mkOption {
type = types.bool;
default = false;
description = ''
Enable dynamic CDI configuration for NVidia devices by running nvidia-container-toolkit on boot.
'';
};
static = mkOption {
type = types.attrs;
default = { };
description = ''
Declarative CDI specification. Each key of the attribute set
will be mapped to a file in /etc/cdi. It is required for every
key to be provided in JSON format.
'';
example = {
some-vendor = builtins.fromJSON ''
{
"cdiVersion": "0.5.0",
"kind": "some-vendor.com/foo",
"devices": [],
"containerEdits": []
}
'';
some-other-vendor = {
cdiVersion = "0.5.0";
kind = "some-other-vendor.com/bar";
devices = [];
containerEdits = [];
};
};
};
};
containersConf.settings = mkOption { containersConf.settings = mkOption {
type = toml.type; type = toml.type;
default = { }; default = { };
@ -150,8 +113,6 @@ in
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
hardware.nvidia-container-toolkit-cdi-generator.enable = lib.mkIf cfg.cdi.dynamic.nvidia.enable true;
virtualisation.containers.containersConf.cniPlugins = [ pkgs.cni-plugins ]; virtualisation.containers.containersConf.cniPlugins = [ pkgs.cni-plugins ];
virtualisation.containers.containersConf.settings = { virtualisation.containers.containersConf.settings = {
@ -163,13 +124,7 @@ in
}; };
}; };
environment.etc = let environment.etc = {
cdiStaticConfigurationFiles = (lib.attrsets.mapAttrs'
(name: value:
lib.attrsets.nameValuePair "cdi/${name}.json"
{ text = builtins.toJSON value; })
cfg.cdi.static);
in {
"containers/containers.conf".source = "containers/containers.conf".source =
toml.generate "containers.conf" cfg.containersConf.settings; toml.generate "containers.conf" cfg.containersConf.settings;
@ -183,7 +138,7 @@ in
"containers/policy.json".source = "containers/policy.json".source =
if cfg.policy != { } then pkgs.writeText "policy.json" (builtins.toJSON cfg.policy) if cfg.policy != { } then pkgs.writeText "policy.json" (builtins.toJSON cfg.policy)
else "${pkgs.skopeo.policy}/default-policy.json"; else "${pkgs.skopeo.policy}/default-policy.json";
} // cdiStaticConfigurationFiles; };
}; };

View File

@ -41,6 +41,7 @@ let
qemu-utils qemu-utils
rsync rsync
squashfsTools squashfsTools
swtpm
systemd systemd
thin-provisioning-tools thin-provisioning-tools
util-linux util-linux

View File

@ -30,6 +30,9 @@ in
memorySize = 1024; memorySize = 1024;
diskSize = 4096; diskSize = 4096;
# Provide a TPM to test vTPM support for guests
tpm.enable = true;
incus.enable = true; incus.enable = true;
}; };
networking.nftables.enable = true; networking.nftables.enable = true;
@ -47,8 +50,14 @@ in
with subtest("virtual-machine image can be imported"): with subtest("virtual-machine image can be imported"):
machine.succeed("incus image import ${vm-image-metadata}/*/*.tar.xz ${vm-image-disk}/nixos.qcow2 --alias nixos") machine.succeed("incus image import ${vm-image-metadata}/*/*.tar.xz ${vm-image-disk}/nixos.qcow2 --alias nixos")
with subtest("virtual-machine can be created"):
machine.succeed("incus create nixos ${instance-name} --vm --config limits.memory=512MB --config security.secureboot=false")
with subtest("virtual tpm can be configured"):
machine.succeed("incus config device add ${instance-name} vtpm tpm path=/dev/tpm0")
with subtest("virtual-machine can be launched and become available"): with subtest("virtual-machine can be launched and become available"):
machine.succeed("incus launch nixos ${instance-name} --vm --config limits.memory=512MB --config security.secureboot=false") machine.succeed("incus start ${instance-name}")
with machine.nested("Waiting for instance to start and be usable"): with machine.nested("Waiting for instance to start and be usable"):
retry(instance_is_up) retry(instance_is_up)

View File

@ -1,7 +1,7 @@
import ./make-test-python.nix ({ pkgs, ... }: { import ./make-test-python.nix ({ pkgs, ... }: {
name = "systemd"; name = "systemd";
nodes.machine = { lib, ... }: { nodes.machine = { config, lib, ... }: {
imports = [ common/user-account.nix common/x11.nix ]; imports = [ common/user-account.nix common/x11.nix ];
virtualisation.emptyDiskImages = [ 512 512 ]; virtualisation.emptyDiskImages = [ 512 512 ];
@ -38,9 +38,18 @@ import ./make-test-python.nix ({ pkgs, ... }: {
script = "true"; script = "true";
}; };
systemd.services.testDependency1 = {
description = "Test Dependency 1";
wantedBy = [ config.systemd.services."testservice1".name ];
serviceConfig.Type = "oneshot";
script = ''
true
'';
};
systemd.services.testservice1 = { systemd.services.testservice1 = {
description = "Test Service 1"; description = "Test Service 1";
wantedBy = [ "multi-user.target" ]; wantedBy = [ config.systemd.targets.multi-user.name ];
serviceConfig.Type = "oneshot"; serviceConfig.Type = "oneshot";
script = '' script = ''
if [ "$XXX_SYSTEM" = foo ]; then if [ "$XXX_SYSTEM" = foo ]; then

View File

@ -41,6 +41,7 @@
, qtmultimedia , qtmultimedia
, qtx11extras , qtx11extras
, soxr , soxr
, vgmstream
, wavpack , wavpack
}: }:
@ -109,6 +110,10 @@ stdenv.mkDerivation rec {
dontWrapQtApps = true; dontWrapQtApps = true;
postInstall = ''
ln -s ${vgmstream.override { buildAudaciousPlugin = true; }}/lib/audacious/Input/* $out/lib/audacious/Input
'';
meta = audacious.meta // { meta = audacious.meta // {
description = "Plugins for Audacious music player"; description = "Plugins for Audacious music player";
}; };

View File

@ -2,7 +2,6 @@
, stdenv , stdenv
, buildDotnetModule , buildDotnetModule
, fetchFromGitHub , fetchFromGitHub
, autoPatchelfHook
, fontconfig , fontconfig
, xorg , xorg
, libglvnd , libglvnd
@ -27,7 +26,6 @@ buildDotnetModule rec {
dotnetFlags = [ "-p:Runtimeidentifier=linux-x64" ]; dotnetFlags = [ "-p:Runtimeidentifier=linux-x64" ];
nativeBuildInputs = [ nativeBuildInputs = [
autoPatchelfHook
copyDesktopItems copyDesktopItems
graphicsmagick graphicsmagick
]; ];

View File

@ -8,13 +8,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "pt2-clone"; pname = "pt2-clone";
version = "1.67"; version = "1.68";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "8bitbubsy"; owner = "8bitbubsy";
repo = "pt2-clone"; repo = "pt2-clone";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
sha256 = "sha256-fTUTXwS6A72zhKkANlSljQVvPeN5rOTyuyb8vLxYfdk="; sha256 = "sha256-xlXwOxmJ5cL1ouTOnFwTvx959IDQIvJ0ZRk+G9p0HbA=";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View File

@ -1,6 +1,7 @@
{ stdenv, lib, fetchFromGitHub, cmake, pkg-config { stdenv, lib, fetchFromGitHub, cmake, pkg-config, gtk3
, mpg123, ffmpeg, libvorbis, libao, jansson, speex , audacious, mpg123, ffmpeg, libvorbis, libao, jansson, speex
, nix-update-script , nix-update-script
, buildAudaciousPlugin ? false # only build cli by default, pkgs.audacious-plugins sets this to enable plugin support
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -19,16 +20,29 @@ stdenv.mkDerivation rec {
extraArgs = [ "--version-regex" "r(.*)" ]; extraArgs = [ "--version-regex" "r(.*)" ];
}; };
nativeBuildInputs = [ cmake pkg-config ]; nativeBuildInputs = [
cmake
pkg-config
] ++ lib.optional buildAudaciousPlugin gtk3;
buildInputs = [ mpg123 ffmpeg libvorbis libao jansson speex ]; buildInputs = [
mpg123
ffmpeg
libvorbis
libao
jansson
speex
] ++ lib.optional buildAudaciousPlugin (audacious.override { audacious-plugins = null; });
preConfigure = ''
substituteInPlace cmake/dependencies/audacious.cmake \
--replace "pkg_get_variable(AUDACIOUS_PLUGIN_DIR audacious plugin_dir)" "set(AUDACIOUS_PLUGIN_DIR \"$out/lib/audacious\")"
'';
cmakeFlags = [ cmakeFlags = [
# There's no nice way to build the audacious plugin without a circular dependency
"-DBUILD_AUDACIOUS=OFF"
# It always tries to download it, no option to use the system one # It always tries to download it, no option to use the system one
"-DUSE_CELT=OFF" "-DUSE_CELT=OFF"
]; ] ++ lib.optional (! buildAudaciousPlugin) "-DBUILD_AUDACIOUS=OFF";
meta = with lib; { meta = with lib; {
description = "A library for playback of various streamed audio formats used in video games"; description = "A library for playback of various streamed audio formats used in video games";

View File

@ -4,7 +4,6 @@
fetchFromGitHub, fetchFromGitHub,
buildDotnetModule, buildDotnetModule,
dotnetCorePackages, dotnetCorePackages,
autoPatchelfHook,
zlib, zlib,
openssl, openssl,
}: }:
@ -25,7 +24,6 @@ buildDotnetModule rec {
dotnet-sdk = dotnetCorePackages.sdk_7_0; dotnet-sdk = dotnetCorePackages.sdk_7_0;
dotnet-runtime = dotnetCorePackages.aspnetcore_7_0; dotnet-runtime = dotnetCorePackages.aspnetcore_7_0;
nativeBuildInputs = [autoPatchelfHook];
buildInputs = [stdenv.cc.cc.lib zlib]; buildInputs = [stdenv.cc.cc.lib zlib];
runtimeDeps = [openssl zlib]; runtimeDeps = [openssl zlib];

View File

@ -11,12 +11,12 @@
, pyright , pyright
, ruff , ruff
, tempel , tempel
, writeScript
, writeText , writeText
, unstableGitUpdater
}: }:
let let
rev = "0b30d95c6de95b150d93ecee325b95e04ff09e46"; rev = "4d18701bdef13f6bdc0ad58d26896dff0548dbab";
python = python3.withPackages (ps: with ps; [ python = python3.withPackages (ps: with ps; [
epc epc
orjson orjson
@ -28,13 +28,13 @@ let
in in
melpaBuild { melpaBuild {
pname = "lsp-bridge"; pname = "lsp-bridge";
version = "20231021.309"; # 3:09 UTC version = "20240423.38";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "manateelazycat"; owner = "manateelazycat";
repo = "lsp-bridge"; repo = "lsp-bridge";
inherit rev; inherit rev;
hash = "sha256-hR7bZh0ElJ8F9ToJ4dkazF19T8PE01MTcxKrjeaEp4o="; hash = "sha256-6taxbsu5v/mQBwl0CPt/fsTQpclNhi2alp/xIh5omJA=";
}; };
commit = rev; commit = rev;
@ -88,7 +88,22 @@ melpaBuild {
runHook postCheck runHook postCheck
''; '';
passthru.updateScript = unstableGitUpdater { }; passthru.updateScript = writeScript "update.sh" ''
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p common-updater-scripts coreutils git gnused
set -eu -o pipefail
tmpdir="$(mktemp -d)"
git clone --depth=1 https://github.com/manateelazycat/lsp-bridge.git "$tmpdir"
pushd "$tmpdir"
commit=$(git show -s --pretty='format:%H')
# Based on: https://github.com/melpa/melpa/blob/2d8716906a0c9e18d6c979d8450bf1d15dd785eb/package-build/package-build.el#L523-L533
version=$(TZ=UTC git show -s --pretty='format:%cd' --date='format-local:%Y%m%d.%H%M' | sed 's|\.0*|.|')
popd
update-source-version emacsPackages.lsp-bridge $version --rev="$commit"
'';
meta = with lib; { meta = with lib; {
description = "A blazingly fast LSP client for Emacs"; description = "A blazingly fast LSP client for Emacs";

View File

@ -8184,6 +8184,18 @@ final: prev:
meta.homepage = "https://github.com/ishan9299/nvim-solarized-lua/"; meta.homepage = "https://github.com/ishan9299/nvim-solarized-lua/";
}; };
nvim-sops = buildVimPlugin {
pname = "nvim-sops";
version = "2023-07-31";
src = fetchFromGitHub {
owner = "lucidph3nx";
repo = "nvim-sops";
rev = "cb2209562d00ef8c6c88bdec836d9edb8fbb96ef";
sha256 = "0fvxnx5ji3d4kgsxl2ssqs7s567ibk4h38mz70m3nhs3sxk696lj";
};
meta.homepage = "https://github.com/lucidph3nx/nvim-sops/";
};
nvim-spectre = buildVimPlugin { nvim-spectre = buildVimPlugin {
pname = "nvim-spectre"; pname = "nvim-spectre";
version = "2024-04-17"; version = "2024-04-17";

View File

@ -688,6 +688,7 @@ https://github.com/dstein64/nvim-scrollview/,,
https://github.com/s1n7ax/nvim-search-and-replace/,HEAD, https://github.com/s1n7ax/nvim-search-and-replace/,HEAD,
https://github.com/dcampos/nvim-snippy/,HEAD, https://github.com/dcampos/nvim-snippy/,HEAD,
https://github.com/ishan9299/nvim-solarized-lua/,, https://github.com/ishan9299/nvim-solarized-lua/,,
https://github.com/lucidph3nx/nvim-sops/,HEAD,
https://github.com/nvim-pack/nvim-spectre/,, https://github.com/nvim-pack/nvim-spectre/,,
https://github.com/chrisgrieser/nvim-spider/,HEAD, https://github.com/chrisgrieser/nvim-spider/,HEAD,
https://github.com/kylechui/nvim-surround/,main, https://github.com/kylechui/nvim-surround/,main,

View File

@ -1793,8 +1793,8 @@ let
mktplcRef = { mktplcRef = {
publisher = "github"; publisher = "github";
name = "copilot"; name = "copilot";
version = "1.172.758"; version = "1.180.827";
hash = "sha256-sK3IiA4mQ6Hse+UpZ81Zb5iBSREzTrs7ypsfGbJiXm4="; hash = "sha256-HA1na9FoExIiAay+tEjxWKqpG2+wq4Oww77Gl2Bhciw=";
}; };
meta = { meta = {
@ -1810,8 +1810,8 @@ let
mktplcRef = { mktplcRef = {
publisher = "github"; publisher = "github";
name = "copilot-chat"; name = "copilot-chat";
version = "0.13.2024022301"; # compatible with vscode >= 1.87 version = "0.14.2024032901"; # compatible with vscode 1.88.1
hash = "sha256-WdojLEdrg6iqTH/cNPEWb6VEfk+gIHh2M5GHrAURjy8="; hash = "sha256-+6N7IGO5j0wP5Zg8CwapHeKGWiZzc43VM4jCtqJDJIQ=";
}; };
meta = { meta = {
description = "GitHub Copilot Chat is a companion extension to GitHub Copilot that houses experimental chat features"; description = "GitHub Copilot Chat is a companion extension to GitHub Copilot that houses experimental chat features";

View File

@ -12,8 +12,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
publisher = "nvarner"; publisher = "nvarner";
# Please update the corresponding binary (typst-lsp) when updating # Please update the corresponding binary (typst-lsp) when updating
# this extension. # this extension.
version = "0.12.1"; version = "0.13.0";
hash = "sha256-JcfFaR1wU5XwapH8vnfVy7Cb7DfUWVeoLfBV3wEtCpE="; hash = "sha256-xiFUJymZOTEqlGvCHvLiI0pVg7NLgIXhZ7x8yx+a5mY=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -69,9 +69,9 @@ in rec {
unstable = fetchurl rec { unstable = fetchurl rec {
# NOTE: Don't forget to change the hash for staging as well. # NOTE: Don't forget to change the hash for staging as well.
version = "9.6"; version = "9.7";
url = "https://dl.winehq.org/wine/source/9.x/wine-${version}.tar.xz"; url = "https://dl.winehq.org/wine/source/9.x/wine-${version}.tar.xz";
hash = "sha256-Dglg7YK2AX6ILtozOLrRJwoRd7bPBfA6wfqxVavoIEg="; hash = "sha256-2fPDM2VuiL1M71Mx80sci2nJZKUnWe73RdjdrlGhU1M=";
inherit (stable) patches; inherit (stable) patches;
## see http://wiki.winehq.org/Gecko ## see http://wiki.winehq.org/Gecko
@ -88,9 +88,9 @@ in rec {
## see http://wiki.winehq.org/Mono ## see http://wiki.winehq.org/Mono
mono = fetchurl rec { mono = fetchurl rec {
version = "9.0.0"; version = "9.1.0";
url = "https://dl.winehq.org/wine/wine-mono/${version}/wine-mono-${version}-x86.msi"; url = "https://dl.winehq.org/wine/wine-mono/${version}/wine-mono-${version}-x86.msi";
hash = "sha256-efbEMQBnVWbBEvQZm56nuUTTOBZLNL2R+hGwsKQU4cQ="; hash = "sha256-igoeaDe0lN9Jkn5ddZscaQjom4ovjjrQJeHCiBiCR24=";
}; };
updateScript = writeShellScript "update-wine-unstable" '' updateScript = writeShellScript "update-wine-unstable" ''
@ -117,7 +117,7 @@ in rec {
staging = fetchFromGitLab rec { staging = fetchFromGitLab rec {
# https://gitlab.winehq.org/wine/wine-staging # https://gitlab.winehq.org/wine/wine-staging
inherit (unstable) version; inherit (unstable) version;
hash = "sha256-6AKN/KpmsTw9qxErhTTzqWuglgFdOAhtaoBlVRcs71Q="; hash = "sha256-KU6i1P81Fr+4aZH/SJ+YibaIfX88SZMPdPcGS2mT2CE=";
domain = "gitlab.winehq.org"; domain = "gitlab.winehq.org";
owner = "wine"; owner = "wine";
repo = "wine-staging"; repo = "wine-staging";

View File

@ -1,5 +1,6 @@
{ lib, fetchFromGitHub, python3Packages, file, less, highlight, w3m, ranger, testers { lib, fetchFromGitHub, python3Packages, file, less, highlight, w3m, ranger, imagemagick, testers
, imagePreviewSupport ? true , imagePreviewSupport ? true
, sixelPreviewSupport ? true
, neoVimSupport ? true , neoVimSupport ? true
, improvedEncodingDetection ? true , improvedEncodingDetection ? true
, rightToLeftTextSupport ? false , rightToLeftTextSupport ? false
@ -7,22 +8,23 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "ranger"; pname = "ranger";
version = "1.9.3"; version = "1.9.3-unstable-2023-08-23";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ranger"; owner = "ranger";
repo = "ranger"; repo = "ranger";
rev = "v${version}"; rev = "38bb8901004b75a407ffee4b9e176bc0a436cb15";
sha256= "1rygfryczanvqxn43lmlkgs04sbqznbvbb9hlbm3h5qgdcl0xlw8"; hash = "sha256-NpsrABk95xHNvhlRjKFh326IW83mYj1cmK3aE9JQSRo=";
}; };
LC_ALL = "en_US.UTF-8"; LC_ALL = "en_US.UTF-8";
nativeCheckInputs = with python3Packages; [ pytestCheckHook ]; nativeCheckInputs = with python3Packages; [ pytestCheckHook astroid pylint ];
propagatedBuildInputs = [ propagatedBuildInputs = [
less less
file file
] ++ lib.optionals imagePreviewSupport [ python3Packages.pillow ] ] ++ lib.optionals imagePreviewSupport [ python3Packages.pillow ]
++ lib.optionals sixelPreviewSupport [ imagemagick ]
++ lib.optionals neoVimSupport [ python3Packages.pynvim ] ++ lib.optionals neoVimSupport [ python3Packages.pynvim ]
++ lib.optionals improvedEncodingDetection [ python3Packages.chardet ] ++ lib.optionals improvedEncodingDetection [ python3Packages.chardet ]
++ lib.optionals rightToLeftTextSupport [ python3Packages.python-bidi ]; ++ lib.optionals rightToLeftTextSupport [ python3Packages.python-bidi ];
@ -49,10 +51,6 @@ python3Packages.buildPythonApplication rec {
--replace "set preview_images false" "set preview_images true" --replace "set preview_images false" "set preview_images true"
''; '';
passthru.tests.version = testers.testVersion {
package = ranger;
};
meta = with lib; { meta = with lib; {
description = "File manager with minimalistic curses interface"; description = "File manager with minimalistic curses interface";
homepage = "https://ranger.github.io/"; homepage = "https://ranger.github.io/";

View File

@ -63,6 +63,8 @@ stdenv.mkDerivation {
$out/bin/${mainProgram} --version $out/bin/${mainProgram} --version
''; '';
passthru.updateScript = ./update.sh;
passthru.tests.version = testers.testVersion { passthru.tests.version = testers.testVersion {
package = _1password; package = _1password;
}; };

View File

@ -0,0 +1,42 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl gnused nurl xq-xml
set -eu
ROOT="$(dirname "$(readlink -f "$0")")"
NIX_DRV="$ROOT/default.nix"
if [ ! -f "$NIX_DRV" ]; then
echo "ERROR: cannot find default.nix in $ROOT"
exit 1
fi
fetch_linux() {
VER="$1"
ARCH="$2"
URL="https://cache.agilebits.com/dist/1P/op2/pkg/v${VER}/op_${ARCH}_v${VER}.zip"
nurl --hash --expr "(import <nixpkgs> { }).fetchzip { url = \"$URL\"; stripRoot = false; }"
}
fetch_darwin() {
VER="$1"
URL="https://cache.agilebits.com/dist/1P/op2/pkg/v${VER}/op_apple_universal_v${VER}.pkg"
nurl --hash --expr "(import <nixpkgs> { }).fetchurl { url = \"$URL\"; }"
}
replace_sha() {
sed -i "s|\"$1\" \"sha256-.\{44\}\"|\"$1\" \"$2\"|" "$NIX_DRV"
}
CLI_VERSION="$(curl -Ls https://app-updates.agilebits.com/product_history/CLI2 | xq -q 'h3' | head -n1)"
CLI_LINUX_AARCH64_SHA256=$(fetch_linux "$CLI_VERSION" "linux_arm64")
CLI_LINUX_I686_SHA256=$(fetch_linux "$CLI_VERSION" "linux_386")
CLI_LINUX_X64_SHA256=$(fetch_linux "$CLI_VERSION" "linux_amd64")
CLI_DARWIN_UNIVERSAL_SHA256=$(fetch_darwin "$CLI_VERSION")
sed -i "s/version = \".*\"/version = \"$CLI_VERSION\"/" "$NIX_DRV"
replace_sha "linux_arm64" "$CLI_LINUX_AARCH64_SHA256"
replace_sha "linux_386" "$CLI_LINUX_I686_SHA256"
replace_sha "linux_amd64" "$CLI_LINUX_X64_SHA256"
replace_sha "apple_universal" "$CLI_DARWIN_UNIVERSAL_SHA256"

View File

@ -15,7 +15,6 @@
, makeDesktopItem , makeDesktopItem
, copyDesktopItems , copyDesktopItems
, icoutils , icoutils
, autoPatchelfHook
, bintools , bintools
, fixDarwinDylibNames , fixDarwinDylibNames
, autoSignDarwinBinariesHook , autoSignDarwinBinariesHook
@ -40,8 +39,7 @@ buildDotnetModule rec {
nativeBuildInputs = [ nativeBuildInputs = [
copyDesktopItems copyDesktopItems
icoutils icoutils
] ++ lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ] ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ bintools fixDarwinDylibNames ]
++ lib.optionals stdenv.hostPlatform.isDarwin [ bintools fixDarwinDylibNames ]
++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [ autoSignDarwinBinariesHook ]; ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [ autoSignDarwinBinariesHook ];
buildInputs = [ buildInputs = [

View File

@ -25,13 +25,13 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "gnome-frog"; pname = "gnome-frog";
version = "1.4.2"; version = "1.5.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "TenderOwl"; owner = "TenderOwl";
repo = "Frog"; repo = "Frog";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
sha256 = "sha256-w/ENUhJt7bYy5htBLolb/HysK8/scRaPQX5qEezQcXY="; sha256 = "sha256-zL6zuqHF1pTXT3l1mAFx2EL+0ThzjXfst/nEyNVorZg=";
}; };
format = "other"; format = "other";
@ -70,7 +70,11 @@ python3Packages.buildPythonApplication rec {
]; ];
propagatedBuildInputs = with python3Packages; [ propagatedBuildInputs = with python3Packages; [
loguru
nanoid
posthog
pygobject3 pygobject3
python-dateutil
pillow pillow
pytesseract pytesseract
pyzbar pyzbar

View File

@ -1,28 +1,8 @@
diff --git a/frog/config.py b/frog/config.py
index 9837755..b73e4e3 100644
--- a/frog/config.py
+++ b/frog/config.py
@@ -30,10 +30,14 @@ import os
APP_ID = "com.github.tenderowl.frog"
RESOURCE_PREFIX = "/com/github/tenderowl/frog"
+# This is based from the XDG Base Directory specification.
+if not os.getenv('XDG_DATA_HOME'):
+ os.environ['XDG_DATA_HOME'] = os.path.expanduser("~/.local/share")
+
if not os.path.exists(os.path.join(os.environ['XDG_DATA_HOME'], 'tessdata')):
os.mkdir(os.path.join(os.environ['XDG_DATA_HOME'], 'tessdata'))
tessdata_url = "https://github.com/tesseract-ocr/tessdata/raw/main/"
tessdata_best_url = "https://github.com/tesseract-ocr/tessdata_best/raw/main/"
tessdata_dir = os.path.join(os.environ['XDG_DATA_HOME'], 'tessdata')
-tessdata_config = f'--tessdata-dir {tessdata_dir} psm 6'
+tessdata_config = f'-psm 6 --tessdata-dir {tessdata_dir}'
diff --git a/frog/language_manager.py b/frog/language_manager.py diff --git a/frog/language_manager.py b/frog/language_manager.py
index 5752be6..4f6a908 100644 index d822c44..bc289db 100644
--- a/frog/language_manager.py --- a/frog/language_manager.py
+++ b/frog/language_manager.py +++ b/frog/language_manager.py
@@ -156,7 +156,7 @@ class LanguageManager(GObject.GObject): @@ -193,7 +193,7 @@ class LanguageManager(GObject.GObject):
os.mkdir(tessdata_dir) os.mkdir(tessdata_dir)
dest_path = os.path.join(tessdata_dir, 'eng.traineddata') dest_path = os.path.join(tessdata_dir, 'eng.traineddata')

View File

@ -1,27 +0,0 @@
{ lib, stdenv, fetchurl, cmake, stormlib }:
stdenv.mkDerivation rec {
pname = "smpq";
version = "1.6";
src = fetchurl {
url = "https://launchpad.net/smpq/trunk/${version}/+download/${pname}_${version}.orig.tar.gz";
sha256 = "1jqq5x3b17jy66x3kkf5hs5l322dx2v14djxxrqrnqp8bn5drlmm";
};
cmakeFlags = [
"-DWITH_KDE=OFF"
];
nativeBuildInputs = [ cmake ];
buildInputs = [ stormlib ];
meta = with lib; {
description = "StormLib MPQ archiving utility";
homepage = "https://launchpad.net/smpq";
license = licenses.gpl3Only;
platforms = platforms.all;
maintainers = with maintainers; [ aanderse karolchmist ];
mainProgram = "smpq";
};
}

View File

@ -9,6 +9,7 @@
, pango , pango
, wayland , wayland
, wayland-protocols , wayland-protocols
, wayland-scanner
, libxkbcommon , libxkbcommon
, scdoc , scdoc
}: }:
@ -34,7 +35,7 @@ stdenv.mkDerivation rec {
}) })
]; ];
nativeBuildInputs = [ pkg-config meson ninja ]; nativeBuildInputs = [ pkg-config meson ninja wayland-scanner ];
buildInputs = [ cairo pango wayland libxkbcommon wayland-protocols scdoc ]; buildInputs = [ cairo pango wayland libxkbcommon wayland-protocols scdoc ];
meta = with lib; { meta = with lib; {

View File

@ -22,18 +22,18 @@
ungoogled-chromium = { ungoogled-chromium = {
deps = { deps = {
gn = { gn = {
hash = "sha256-JvilCnnb4laqwq69fay+IdAujYC1EHD7uWpkF/C8tBw="; hash = "sha256-aEL1kIhgPAFqdb174dG093HoLhCJ07O1Kpqfu7r14wQ=";
rev = "d4f94f9a6c25497b2ce0356bb99a8d202c8c1d32"; rev = "22581fb46c0c0c9530caa67149ee4dd8811063cf";
url = "https://gn.googlesource.com/gn"; url = "https://gn.googlesource.com/gn";
version = "2024-02-19"; version = "2024-03-14";
}; };
ungoogled-patches = { ungoogled-patches = {
hash = "sha256-ojKIAkJB/gfg6scCxUYNAGx4lsquAaCySBDcUCFLqSU="; hash = "sha256-zgkt0stU/H5Mji429tigVbjOq27Op8UppHTjG6neoeA=";
rev = "d5773b0fb696ef107cc6df6a94cbe732c9e905f9"; rev = "124.0.6367.60-1";
}; };
}; };
hash = "sha256-7H7h621AHPyhFYbaVFO892TtS+SP3Qu7cYUVk3ICL14="; hash = "sha256-apEniFKhIxPo4nhp9gCU+WpiV/EB40qif4RfE7Uniog=";
hash_deb_amd64 = "sha256-tNkO1mPZg1xltBfoWeNhLekITtZV/WNgu//i2DJb17c="; hash_deb_amd64 = "sha256-rSbigG5/xbL32d1ntOn6gnZyxSpgrg1h7lb/RD4YROI=";
version = "123.0.6312.122"; version = "124.0.6367.60";
}; };
} }

View File

@ -1,9 +1,9 @@
{ {
beta = import ./browser.nix { beta = import ./browser.nix {
channel = "beta"; channel = "beta";
version = "124.0.2478.39"; version = "124.0.2478.51";
revision = "1"; revision = "1";
hash = "sha256-0KQU/JS6hlv2SLMB8RKyITUiodByBUstrhcwIefn3Yw="; hash = "sha256-qQTRPkQBLRZhOqBT8U0PGcmmR2zNRxJiFl3N2UPwoSo=";
}; };
dev = import ./browser.nix { dev = import ./browser.nix {
channel = "dev"; channel = "dev";
@ -13,8 +13,8 @@
}; };
stable = import ./browser.nix { stable = import ./browser.nix {
channel = "stable"; channel = "stable";
version = "123.0.2420.97"; version = "124.0.2478.51";
revision = "1"; revision = "1";
hash = "sha256-q7Pcbi0JQr/wvKIrgueD9f2Z6v1DMoD2bcRJKGqDYjs="; hash = "sha256-dAiTS+KvKVwL6tNp4YsQfH4wdNIJoBJngcLBXgHArjE=";
}; };
} }

View File

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "istioctl"; pname = "istioctl";
version = "1.21.1"; version = "1.21.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "istio"; owner = "istio";
repo = "istio"; repo = "istio";
rev = version; rev = version;
hash = "sha256-zWg0UK9RHq/25GWpsvb/U5YJPkgd7aUC/Dva8jGFwfo="; hash = "sha256-U0SCjozy968pcXMGyUgM47VGYYNwPq8wOzTnKp49ZY4=";
}; };
vendorHash = "sha256-23t1xJPRip0ojXmUl1qlk6QJsYHT+9EAS080m6c0d6U="; vendorHash = "sha256-23t1xJPRip0ojXmUl1qlk6QJsYHT+9EAS080m6c0d6U=";

View File

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "kubecolor"; pname = "kubecolor";
version = "0.2.2"; version = "0.3.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = pname; owner = pname;
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-zXglsfPsJi9DVxlRPniSBsdF1xEMYqqGr46ThpQj3gQ="; sha256 = "sha256-1gEEmF9RRMwFAvmhLwidkVh+lnibs6x5ZHy/nJRum9E=";
}; };
vendorHash = "sha256-uf7nBnS1wmbz4xcVA5qF82QMPsLdSucje1NNaPyheCw="; vendorHash = "sha256-Gzz+mCEMQCcLwTiGMB8/nXk7HDAEGkEapC/VOyXrn/Q=";
ldflags = [ "-s" "-w" "-X main.Version=${version}" ]; ldflags = [ "-s" "-w" "-X main.Version=${version}" ];

View File

@ -20,13 +20,13 @@
buildGoModule rec { buildGoModule rec {
pname = "kubernetes"; pname = "kubernetes";
version = "1.29.4"; version = "1.30.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "kubernetes"; owner = "kubernetes";
repo = "kubernetes"; repo = "kubernetes";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-7Rxbcsl77iFiHkU/ovyn74aXs/i5G/m5h5Ii0y1CRho="; hash = "sha256-7xRRpchjwtV3dGbZ2hN9qj6soAuiF/K7vTY0LzE6Z5w=";
}; };
vendorHash = null; vendorHash = null;

View File

@ -120,6 +120,8 @@ in stdenv.mkDerivation rec {
libappindicator-gtk3 libappindicator-gtk3
libnotify libnotify
libdbusmenu libdbusmenu
pipewire
stdenv.cc.cc
xdg-utils xdg-utils
wayland wayland
]; ];
@ -158,7 +160,6 @@ in stdenv.mkDerivation rec {
preFixup = '' preFixup = ''
gappsWrapperArgs+=( gappsWrapperArgs+=(
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc pipewire ] }"
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
--suffix PATH : ${lib.makeBinPath [ xdg-utils ]} --suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
) )

View File

@ -5,13 +5,13 @@
buildGoModule rec { buildGoModule rec {
pname = "storj-uplink"; pname = "storj-uplink";
version = "1.102.2"; version = "1.102.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "storj"; owner = "storj";
repo = "storj"; repo = "storj";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-GpHX34iHKeoT7AuEf76QTpTIrATLZyAoUxMoIouhvyA="; hash = "sha256-ryOWnVcJOUs9kToXtwjUTk7nwuAW0NCDn5Npn27hKXU=";
}; };
subPackages = [ "cmd/uplink" ]; subPackages = [ "cmd/uplink" ];

View File

@ -7,13 +7,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "eigenmath"; pname = "eigenmath";
version = "unstable-2024-04-08"; version = "unstable-2024-04-19";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "georgeweigt"; owner = "georgeweigt";
repo = pname; repo = pname;
rev = "c0be6c47309aa40d44784a3a4c4c07bc4e8fb6fa"; rev = "5d5a538e7c378e9e2d9fabdf88fa2c6dd6d13e2c";
hash = "sha256-UVCazX0P03+e1exnpXrGNc/1vHxLH04Xtvgsy00UAoI="; hash = "sha256-vPj3YKNJAZgdhw/VVrJIo2P7IyHrt7hVpnUQCUCZmR8=";
}; };
checkPhase = let emulator = stdenv.hostPlatform.emulator buildPackages; in '' checkPhase = let emulator = stdenv.hostPlatform.emulator buildPackages; in ''

View File

@ -60,6 +60,13 @@ stdenv.mkDerivation rec {
url = "https://github.com/sagemath/sage/commit/1c3f991b9d3c5778e409e5414c6cfcd456113f19.diff"; url = "https://github.com/sagemath/sage/commit/1c3f991b9d3c5778e409e5414c6cfcd456113f19.diff";
hash = "sha256-uCXchYx26DdxTjR1k2748KCEHPnekKS2fAM7SpyhNvM="; hash = "sha256-uCXchYx26DdxTjR1k2748KCEHPnekKS2fAM7SpyhNvM=";
}) })
# https://github.com/sagemath/sage/pull/37763
(fetchpatch {
name = "scipy-fault-tolerance.patch";
url = "https://github.com/sagemath/sage/commit/547d502ed56f9fd44eb5d9b4ee0824746c60fef7.diff";
hash = "sha256-PR4przrZ3ieHaW2nSY7l7VhNfrUupu9yCIrXpeyoAgg=";
})
]; ];
# Patches needed because of package updates. We could just pin the versions of # Patches needed because of package updates. We could just pin the versions of

View File

@ -10,7 +10,7 @@
}: }:
let let
version = "5.12.196"; version = "5.12.197";
in in
rustPlatform.buildRustPackage { rustPlatform.buildRustPackage {
pname = "git-mit"; pname = "git-mit";
@ -20,10 +20,10 @@ rustPlatform.buildRustPackage {
owner = "PurpleBooth"; owner = "PurpleBooth";
repo = "git-mit"; repo = "git-mit";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-vv60+8H6WQes+xVJRsgLppwQ/DkQbfNC6tRx2TB/4HQ="; hash = "sha256-Z03FDdlg1IBXHpurKr6RwmtZkaptyeQe+0lgKn/GTTQ=";
}; };
cargoHash = "sha256-jK2GTI+T7Ie5cdQQQHh2aj6Egb/5BxsfJkFrSo+z7Pc="; cargoHash = "sha256-V8TV8RM3T7DYqwNV/r5PkkJVtyAQLdY3BR3sz26phdY=";
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];

View File

@ -5,15 +5,15 @@ let
in in
{ {
sublime-merge = common { sublime-merge = common {
buildVersion = "2091"; buildVersion = "2096";
aarch64sha256 = "dkPKuuzQQtL3eZlaAPeL7e2p5PCxroFRSp6Rw5wHODc="; aarch64sha256 = "IHPJJ/oQ3SLemRyey5syTL0sf5GEeHSylDX+EQNNQGU=";
x64sha256 = "T5g6gHgl9xGytEOsh3VuB08IrbDvMu24o/1edCGmfd4="; x64sha256 = "41I6p5wNx2pF56np7gHqp396RHpXtQu5ruksUywF/Ug=";
} { }; } { };
sublime-merge-dev = common { sublime-merge-dev = common {
buildVersion = "2094"; buildVersion = "2095";
dev = true; dev = true;
aarch64sha256 = "ZJgq971EPzq+BWxTQAoX6TgUmTfpf9sI4CHPcvgPTfI="; aarch64sha256 = "FmXz8VAWS7e0bB9NeXbihnhdhWMyNJJs6PNt+K2G0Bk=";
x64sha256 = "6FLfszhP+BGHX5FrycMlznREmGDLyDyo6rgmqxhtCak="; x64sha256 = "83Hw27RgGPgugpf4eMuWT6/MSQ2Q2VBCbaXoSGFtTPI=";
} { }; } { };
} }

View File

@ -15,13 +15,13 @@
buildGoModule rec { buildGoModule rec {
pname = "cri-o"; pname = "cri-o";
version = "1.29.2"; version = "1.29.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cri-o"; owner = "cri-o";
repo = "cri-o"; repo = "cri-o";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-il28u2+Jv2gh6XqRV4y6u0FDZ4flmcp+bOj9aibL+ro="; hash = "sha256-JJuqYC4GAZqXyyAjVoPipnGjRGbVx1rfH4UrtIOP7cc=";
}; };
vendorHash = null; vendorHash = null;

View File

@ -0,0 +1,25 @@
{
buildGoModule,
fetchFromGitHub,
lib,
}:
buildGoModule rec {
pname = "adbtuifm";
version = "0.5.8";
src = fetchFromGitHub {
owner = "darkhz";
repo = "adbtuifm";
rev = "v${version}";
hash = "sha256-TK93O9XwMrsrQT3EG0969HYMtYkK0a4PzG9FSTqHxAY=";
};
vendorHash = "sha256-voVoowjM90OGWXF4REEevO8XEzT7azRYiDay4bnGBks=";
meta = with lib; {
description = "A TUI-based file manager for the Android Debug Bridge";
homepage = "https://github.com/darkhz/adbtuifm";
changelog = "https:/github.com/darkhz/adbtuifm/releases/tag/v${version}";
license = with licenses; [mit];
maintainers = with maintainers; [daru-san];
mainProgram = "adbtuifm";
platforms = platforms.linux;
};
}

View File

@ -30,6 +30,7 @@ rustPlatform.buildRustPackage rec {
] ]
++ lib.optionals stdenv.isDarwin [ ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security darwin.apple_sdk.frameworks.Security
darwin.apple_sdk.frameworks.SystemConfiguration
]; ];
env = { env = {

View File

@ -1,9 +1,9 @@
{ {
"owner": "advplyr", "owner": "advplyr",
"repo": "audiobookshelf", "repo": "audiobookshelf",
"rev": "166454ef43e3cdb42c644cdccdacddd3a880cd89", "rev": "8b27c726d51cd9706cd564ef72377b89db3194b3",
"hash": "sha256-QrGzlSGK7WDlRemS13CmHdg563HFv9QhOpCF+XRxXsg=", "hash": "sha256-9WqMcehlGhSMI08u6/LSNOrLhCCl8coEHAUUM5KLnx8=",
"version": "2.8.1", "version": "2.9.0",
"depsHash": "sha256-CzlwpgSgsQZGuRWTA/IkCyaryCSurH74WR5Rhm5faEk=", "depsHash": "sha256-ll96aPw6lO7B1c5s7uIpn3poPu/JRa/weins5SNMQw4=",
"clientDepsHash": "sha256-s7/Rlj3DrYjUkxAN82bTpWe+D4HdVOc1mrqKgqcJuI4=" "clientDepsHash": "sha256-uqHfU38BLqigGzKJC/i/bftLJbCmHaOcj04d1bu4K1I="
} }

View File

@ -0,0 +1,49 @@
{ stdenv, lib, makeWrapper, fetchzip, testdisk, imagemagick, jdk, findutils, sleuthkit, ... }:
let
jdkWithJfx = jdk.override (lib.optionalAttrs stdenv.isLinux {
enableJavaFX = true;
});
in
stdenv.mkDerivation rec {
pname = "autopsy";
version = "4.21.0";
src = fetchzip {
url = "https://github.com/sleuthkit/autopsy/releases/download/autopsy-${version}/autopsy-${version}.zip";
sha256 = "32iOQA3+ykltCYW/MpqCVxyhh3mm6eYzY+t0smAsWRw=";
};
nativeBuildInputs = [ makeWrapper findutils ];
buildInputs = [ testdisk imagemagick jdkWithJfx ];
installPhase = ''
runHook preInstall
cp -r . $out
# Run the provided setup script to make files executable and copy sleuthkit
TSK_JAVA_LIB_PATH="${sleuthkit}/share/java" bash $out/unix_setup.sh -j '${jdkWithJfx}' -n autopsy
substituteInPlace $out/bin/autopsy \
--replace-warn 'APPNAME=`basename "$PRG"`' 'APPNAME=autopsy'
wrapProgram $out/bin/autopsy \
--run 'export SOLR_LOGS_DIR="$HOME/.autopsy/dev/var/log"' \
--run 'export SOLR_PID_DIR="$HOME/.autopsy/dev"' \
--prefix PATH : "${lib.makeBinPath [ testdisk imagemagick jdkWithJfx ]}"
runHook postInstall
'';
meta = {
description = "Graphical interface to The Sleuth Kit and other open source digital forensics tools";
homepage = "https://www.sleuthkit.org/autopsy";
changelog = "https://github.com/sleuthkit/autopsy/releases/tag/autopsy-${version}";
# Autopsy brings a lot of vendored dependencies
license = with lib.licenses; [ asl20 ipl10 lgpl3Only lgpl21Only zlib wtfpl bsd3 cc-by-30 mit gpl2Only ];
maintainers = with lib.maintainers; [ zebreus ];
mainProgram = "autopsy";
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
# Autopsy theoretically also supports darwin
platforms = lib.platforms.x86_64;
};
}

View File

@ -1,29 +1,28 @@
{ stdenv {
, lib lib,
, fetchFromGitHub stdenv,
, cmake cmake,
, cmocka cmocka,
, libdict fetchFromGitHub,
, ncurses jansson,
, jansson libdict,
, openssl libpcap,
, libpcap ncurses,
openssl,
}: }:
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "bngblaster"; pname = "bngblaster";
version = "0.8.44"; version = "0.8.47";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rtbrick"; owner = "rtbrick";
repo = "bngblaster"; repo = "bngblaster";
rev = finalAttrs.version; rev = finalAttrs.version;
hash = "sha256-kKzrXw6HQ2917RBArj2BxixXXH0mIvC4IeEU2JY4F9s="; hash = "sha256-ad2vVBXN5hUCaFnq4WYc7UTKvyLg4HY+l+PGlc5ylmw=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [ cmake ];
cmake
];
buildInputs = [ buildInputs = [
libdict libdict
@ -31,9 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
jansson jansson
openssl openssl
cmocka cmocka
] ++ lib.optionals finalAttrs.doCheck [ ] ++ lib.optionals finalAttrs.doCheck [ libpcap ];
libpcap
];
cmakeFlags = [ cmakeFlags = [
"-DBNGBLASTER_TESTS=${if finalAttrs.doCheck then "ON" else "OFF"}" "-DBNGBLASTER_TESTS=${if finalAttrs.doCheck then "ON" else "OFF"}"
@ -43,9 +40,9 @@ stdenv.mkDerivation (finalAttrs: {
doCheck = true; doCheck = true;
meta = with lib; { meta = with lib; {
description = "Network tester for access and routing protocols";
homepage = "https://github.com/rtbrick/bngblaster/"; homepage = "https://github.com/rtbrick/bngblaster/";
changelog = "https://github.com/rtbrick/bngblaster/releases/tag/${finalAttrs.version}"; changelog = "https://github.com/rtbrick/bngblaster/releases/tag/${finalAttrs.version}";
description = "network tester for access and routing protocols";
license = licenses.bsd3; license = licenses.bsd3;
maintainers = teams.wdz.members; maintainers = teams.wdz.members;
badPlatforms = platforms.darwin; badPlatforms = platforms.darwin;

View File

@ -27,20 +27,20 @@ let
in in
buildNpmPackage' rec { buildNpmPackage' rec {
pname = "bruno"; pname = "bruno";
version = "1.13.1"; version = "1.14.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "usebruno"; owner = "usebruno";
repo = "bruno"; repo = "bruno";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-fVbwHmJ/5OtMM0lkOIo6zPXkAa8mIK+WRHCTXJ1XEIw="; hash = "sha256-kUvDtqv3Tdnntr4Ny5pM406KA5++AHsCoAiPg4x4Rsw=";
postFetch = '' postFetch = ''
${lib.getExe npm-lockfile-fix} $out/package-lock.json ${lib.getExe npm-lockfile-fix} $out/package-lock.json
''; '';
}; };
npmDepsHash = "sha256-D90y6NaiR9zpgtjfm9QgLxBVbHa09OMSi+fvgwqSjgY="; npmDepsHash = "sha256-VvUpAdF4ouy695om3qpsyrmiMf69OFgfpQyeZArQEDs=";
npmFlags = [ "--legacy-peer-deps" ]; npmFlags = [ "--legacy-peer-deps" ];
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -13,10 +13,10 @@ let
}.${system} or throwSystem; }.${system} or throwSystem;
hash = { hash = {
x86_64-linux = "sha256-6sIYDI6+1/p54Af+E/GmRAFlfDYJVwxhn0qF47ZH+Zg="; x86_64-linux = "sha256-cDMdhfN7PxT687DG1djDNzZXb6E3OrWHXbl1XS6pxi4=";
aarch64-linux = "sha256-1ImcjAqCZm5KZZYHWhG1eO7ipAdrP4Qjj2eBxTst++s="; aarch64-linux = "sha256-0wc7fuvyDcbx2HXVq5IMe59r3iNbnXe+gDjCXtU3KjQ=";
x86_64-darwin = "sha256-yHthItxZYFejJlwJJ7BrM2csnLsZXjy/IbzF1iaCCyI="; x86_64-darwin = "sha256-ZWsBfA1AsBFWA3f40coqhaAmnQc1U50VJ1RHWiybq+o=";
aarch64-darwin = "sha256-GIx0yABISj/rH/yVkkx6NBs5qF0P8nhpMyvnzXJ92mA="; aarch64-darwin = "sha256-EaoEsBBlpewevk9HstJLZGgQGdPuPb5cqXYkcbGX9WU=";
}.${system} or throwSystem; }.${system} or throwSystem;
bin = "$out/bin/codeium_language_server"; bin = "$out/bin/codeium_language_server";
@ -24,7 +24,7 @@ let
in in
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "codeium"; pname = "codeium";
version = "1.8.25"; version = "1.8.27";
src = fetchurl { src = fetchurl {
name = "${finalAttrs.pname}-${finalAttrs.version}.gz"; name = "${finalAttrs.pname}-${finalAttrs.version}.gz";
url = "https://github.com/Exafunction/codeium/releases/download/language-server-v${finalAttrs.version}/language_server_${plat}.gz"; url = "https://github.com/Exafunction/codeium/releases/download/language-server-v${finalAttrs.version}/language_server_${plat}.gz";

View File

@ -26,6 +26,7 @@
, x265 , x265
, jasper , jasper
, bash
# For panorama and focus stacking # For panorama and focus stacking
, enblend-enfuse , enblend-enfuse
, hugin , hugin
@ -110,6 +111,13 @@ stdenv.mkDerivation rec {
cuda_cudart cuda_cudart
]); ]);
postPatch = ''
substituteInPlace \
core/dplugins/bqm/custom/userscript/userscript.cpp \
core/utilities/import/backend/cameracontroller.cpp \
--replace-fail \"/bin/bash\" \"${lib.getExe bash}\"
'';
cmakeFlags = [ cmakeFlags = [
"-DENABLE_MYSQLSUPPORT=1" "-DENABLE_MYSQLSUPPORT=1"
"-DENABLE_INTERNALMYSQL=1" "-DENABLE_INTERNALMYSQL=1"

View File

@ -21,6 +21,7 @@
, nix-update-script , nix-update-script
, ocl-icd , ocl-icd
, opencl-headers , opencl-headers
, overrideSDK
, pcre , pcre
, pcre2 , pcre2
, pkg-config , pkg-config
@ -40,8 +41,10 @@
, waylandSupport ? true , waylandSupport ? true
, x11Support ? true , x11Support ? true
}: }:
let
stdenv.mkDerivation (finalAttrs: { stdenv' = if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv;
in
stdenv'.mkDerivation (finalAttrs: {
pname = "fastfetch"; pname = "fastfetch";
version = "2.9.2"; version = "2.9.2";

View File

@ -0,0 +1,53 @@
{ fetchgit
, pkg-config
, stdenv
, lib
# Package dependencies
, qt5
}:
stdenv.mkDerivation rec {
pname = "fgqcanvas";
version = "0-unstable-2024-02-11";
src = fetchgit {
url = "https://git.code.sf.net/p/flightgear/flightgear";
rev = "3168828949d6b42959ccee6c202b8895493edb2b";
sha256 = "sha256-QiIMkrzaB/ljVf6c+RJNFWKLZa84cIjYPO5nxEFDqjg=";
};
nativeBuildInputs = [
qt5.wrapQtAppsHook
qt5.qmake
pkg-config
qt5.qttools
];
buildInputs = [
qt5.qtwebsockets
];
configurePhase = ''
runHook preConfigure
cd utils/fgqcanvas/
mkdir -p build
cd build
qmake -makefile ../fgcanvas.pro CONFIG+="release" QMAKE_CXXFLAGS+=' -Wno-deprecated-copy -Wno-deprecated -Wno-deprecated-declarations'
runHook postConfigure
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin
mv fgqcanvas $out/bin/
runHook postInstall
'';
meta = with lib; {
homepage = "https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/utils/fgqcanvas/README.md";
description = "A Qt-based remote canvas application for FlightGear";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ nayala ];
mainProgram = "fgqcanvas";
};
}

View File

@ -8,24 +8,25 @@
let let
pname = "firefly-iii"; pname = "firefly-iii";
version = "6.1.13"; version = "6.1.15";
phpPackage = php83; phpPackage = php83;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "firefly-iii"; owner = "firefly-iii";
repo = "firefly-iii"; repo = "firefly-iii";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-85zI8uCyyoCflzxDkvba6FWa9B3kh179DJfQ2Um6MGM="; hash = "sha256-9Od8tR8X2OZ2hu81tHWDpBX8snWCRvTnlY1AwjIcMug=";
}; };
assets = buildNpmPackage { assets = buildNpmPackage {
pname = "${pname}-assets"; pname = "${pname}-assets";
inherit version src; inherit version src;
npmDepsHash = "sha256-wuPUE6XuzzgKjpxZVgwh2wGut15M61WSBFG+YIZwOFM="; npmDepsHash = "sha256-UVySgcj1tQLQIxlsZuig4ixkfxfsYWYPKWLz5zHA+Dg=";
dontNpmBuild = true; dontNpmBuild = true;
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
npm run build npm run prod --workspace=v1
npm run build --workspace=v2
cp -r ./public $out/ cp -r ./public $out/
runHook postInstall runHook postInstall
''; '';
@ -35,7 +36,7 @@ in
phpPackage.buildComposerProject (finalAttrs: { phpPackage.buildComposerProject (finalAttrs: {
inherit pname src version; inherit pname src version;
vendorHash = "sha256-CVGKyyLp5hjjpEulDNEYfljU4OgPBaFcYQQAUf6GeGs="; vendorHash = "sha256-RDkAbTKj7M7lE8bVRxb+RR5CA6hJIMp61U0+aRtFE50=";
passthru = { passthru = {
inherit phpPackage; inherit phpPackage;

View File

@ -120,7 +120,7 @@ let
in in
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "fwupd"; pname = "fwupd";
version = "1.9.16"; version = "1.9.18";
# libfwupd goes to lib # libfwupd goes to lib
# daemon, plug-ins and libfwupdplugin go to out # daemon, plug-ins and libfwupdplugin go to out
@ -131,7 +131,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "fwupd"; owner = "fwupd";
repo = "fwupd"; repo = "fwupd";
rev = finalAttrs.version; rev = finalAttrs.version;
hash = "sha256-mM8HSSQD5znjpl9q/f+u0RzZEkFA1tnh+BPB2qdcWvI="; hash = "sha256-w2jqIPNV6OkPaHfy7bEFgr5IgzJYtMTrO5UWmnZ+2JI=";
}; };
patches = [ patches = [

View File

@ -7,12 +7,12 @@
}: }:
let let
version = "0.1.0"; version = "0.2.0";
gitSrc = fetchFromGitHub { gitSrc = fetchFromGitHub {
owner = "glasskube"; owner = "glasskube";
repo = "glasskube"; repo = "glasskube";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-iJjO4V2sK3e/SpDZ5Lfw7gILgZrI4CGg0wLLVKthGUE="; hash = "sha256-r14gYgrenUk3OFUEab4QlwmwUeEwqocJJ3Vje9wRdBA=";
}; };
web-bundle = buildNpmPackage rec { web-bundle = buildNpmPackage rec {
inherit version; inherit version;
@ -20,7 +20,7 @@ let
src = gitSrc; src = gitSrc;
npmDepsHash = "sha256-nv2ng8gUOi9K46bDuWt/Y3S6AJovUWaqM+8uGiu/QSs="; npmDepsHash = "sha256-WKwEAVMG6r/ZFmxgLR+zJCW8F2DOHxpWDYqhX/vcdrs=";
dontNpmInstall = true; dontNpmInstall = true;
@ -40,7 +40,7 @@ in buildGoModule rec {
src = gitSrc; src = gitSrc;
vendorHash = "sha256-iFWcTzZP0DKJ9hrmfUWR4U/VX2zsR+3uojI+GRI2R3I="; vendorHash = "sha256-sj9TEAWhExwaaKlMJ10U7m3/xbUNl0dVZwrCb2TTu4o=";
CGO_ENABLED = 0; CGO_ENABLED = 0;

View File

@ -0,0 +1,13 @@
# Export templates is necessary for setting up Godot engine, it's used when exporting projects.
# Godot applications/games packages needs to reference export templates.
# Export templates version should be kept in sync with Godot version.
# https://docs.godotengine.org/en/stable/tutorials/export/exporting_projects.html#export-templates
{ fetchzip, godot_4, ... }:
fetchzip {
pname = "export_templates";
extension = "zip";
url = "https://github.com/godotengine/godot/releases/download/${godot_4.version}/Godot_v${godot_4.version}_export_templates.tpz";
hash = "sha256-eomGLH9lbZhl7VtHTWjJ5mxVt0Yg8LfnAnpqoCksPgs=";
}

View File

@ -10,13 +10,13 @@
buildGoModule rec { buildGoModule rec {
pname = "hugo"; pname = "hugo";
version = "0.125.0"; version = "0.125.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "gohugoio"; owner = "gohugoio";
repo = "hugo"; repo = "hugo";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-aPBS/8m57Dn8Uvem58KzaCZJ1Hn8doL1BsDdF7w5nJc="; hash = "sha256-PZTV/VM0KS/vM4lLrJ/XPvNi33lM+L0gITQHGpjdN+4=";
}; };
vendorHash = "sha256-jGCHlAE5mSDKpZVWgjCEN51sL+3GR/C5ROI9065OhRU="; vendorHash = "sha256-jGCHlAE5mSDKpZVWgjCEN51sL+3GR/C5ROI9065OhRU=";

View File

@ -1,15 +1,16 @@
{ lib {
, darwin lib,
, fetchurl darwin,
, fetchpatch fetchpatch,
, openssl fetchurl,
, stdenv openssl,
, vlc stdenv,
vlc,
}: }:
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "live555"; pname = "live555";
version = "2024.03.08"; version = "2024.04.14";
src = fetchurl { src = fetchurl {
urls = [ urls = [
@ -18,7 +19,7 @@ stdenv.mkDerivation (finalAttrs: {
"https://download.videolan.org/contrib/live555/live.${finalAttrs.version}.tar.gz" "https://download.videolan.org/contrib/live555/live.${finalAttrs.version}.tar.gz"
"mirror://sourceforge/slackbuildsdirectlinks/live.${finalAttrs.version}.tar.gz" "mirror://sourceforge/slackbuildsdirectlinks/live.${finalAttrs.version}.tar.gz"
]; ];
hash = "sha256-wWUC4EbxxfK+OxXiyNbNMGObVMZOqb+8jTG078pnDeU="; hash = "sha256-mR5rKGKtTwMq3p+xAAGdo0DNNnIe4KHladLPlnhVhNY=";
}; };
patches = [ patches = [
@ -60,11 +61,13 @@ stdenv.mkDerivation (finalAttrs: {
''; '';
configurePhase = let configurePhase = let
platform = if stdenv.isLinux platform =
then "linux" if stdenv.isLinux then
else if stdenv.isDarwin "linux"
then "macosx-catalina" else if stdenv.isDarwin then
else throw "Unsupported platform: ${stdenv.hostPlatform.system}"; "macosx-catalina"
else
throw "Unsupported platform: ${stdenv.hostPlatform.system}";
in '' in ''
runHook preConfigure runHook preConfigure

View File

@ -5,16 +5,16 @@
buildGoModule rec { buildGoModule rec {
pname = "livekit-cli"; pname = "livekit-cli";
version = "1.4.1"; version = "1.4.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "livekit"; owner = "livekit";
repo = "livekit-cli"; repo = "livekit-cli";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-/H7Xn/nUumKf62qV6kt2PBbvIt67IwA1dt+hj8mbE30="; hash = "sha256-6UIMyroZpylUMG7TIBOqDIDsuJLtpe2BQxfjEhbZBGc=";
}; };
vendorHash = "sha256-yO2Qr6H5sZGLMHiue5IVHkF1IDsZZh48s6KNpXR+nzA="; vendorHash = "sha256-e84jusaQx6B5cbJoIOSVyxgAQx9VIxFODH1Io1Z/yj0=";
subPackages = [ "cmd/livekit-cli" ]; subPackages = [ "cmd/livekit-cli" ];

View File

@ -13,13 +13,13 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "maa-cli"; pname = "maa-cli";
version = "0.4.5"; version = "0.4.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "MaaAssistantArknights"; owner = "MaaAssistantArknights";
repo = "maa-cli"; repo = "maa-cli";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-LeEIbfDQ+GO3gNmdpWGTNkpbhSqLz4fYQ+MdcrcbDk0="; hash = "sha256-fvMSYcYWYEVvDuAEjSmQJltl90EoLKkjYD2P3OsHS3c=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -36,7 +36,7 @@ rustPlatform.buildRustPackage rec {
buildNoDefaultFeatures = true; buildNoDefaultFeatures = true;
buildFeatures = [ "git2" "core_installer" ]; buildFeatures = [ "git2" "core_installer" ];
cargoHash = "sha256-tkUJH7oFY5eZ5A7J+qzeyHlqOUnTipf6o+leZz7KOiQ="; cargoHash = "sha256-LQWjgMRxtSs2MX1R6YsxDAWUvoUJfOWmp/zj/hlTxyw=";
# maa-cli would only seach libMaaCore.so and resources in itself's path # maa-cli would only seach libMaaCore.so and resources in itself's path
# https://github.com/MaaAssistantArknights/maa-cli/issues/67 # https://github.com/MaaAssistantArknights/maa-cli/issues/67

View File

@ -8,13 +8,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "nawk"; pname = "nawk";
version = "20240311"; version = "20240422";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "onetrueawk"; owner = "onetrueawk";
repo = "awk"; repo = "awk";
rev = finalAttrs.version; rev = finalAttrs.version;
hash = "sha256-4iAQR8djhhp5Yn4H1IdzotQLY0d/Gz/vNQPfAUNQV0A="; hash = "sha256-wsRkSXCLtK2jk4gW/Lpg/14NiOUANfmCrYqeKZW6CLY=";
}; };
depsBuildBuild = [ buildPackages.stdenv.cc ]; depsBuildBuild = [ buildPackages.stdenv.cc ];

View File

@ -6,7 +6,7 @@
}: }:
let let
pname = "netscanner"; pname = "netscanner";
version = "0.4.2"; version = "0.4.4";
in in
rustPlatform.buildRustPackage { rustPlatform.buildRustPackage {
inherit pname version; inherit pname version;
@ -17,10 +17,10 @@ rustPlatform.buildRustPackage {
owner = "Chleba"; owner = "Chleba";
repo = "netscanner"; repo = "netscanner";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-xdY3moWRmSMZ3PVyuHBnp8c9k5KxH+MoE5+s0QWSUM4="; hash = "sha256-RO0+Zz1sivIjD8OM4TBHR5geJw540MAJfXEl2yriH6o=";
}; };
cargoHash = "sha256-15BNkrr79KMyFcn7NJrGCj25RjH/a4WUOQAoMPzJieQ="; cargoHash = "sha256-GJLrUF2YAMtCtXTPJvlUURfiTYBFUE6Gmeux+5RXqAM=";
postFixup = '' postFixup = ''
wrapProgram $out/bin/netscanner \ wrapProgram $out/bin/netscanner \

View File

@ -6,13 +6,13 @@
stdenvNoCC.mkDerivation rec { stdenvNoCC.mkDerivation rec {
pname = "nuclei-templates"; pname = "nuclei-templates";
version = "9.8.1"; version = "9.8.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "projectdiscovery"; owner = "projectdiscovery";
repo = "nuclei-templates"; repo = "nuclei-templates";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-g1MwzJK9a8bpbbP9EoUi0UBR54nfnyg3RDi9qwIKlH0="; hash = "sha256-j1W/Gq002Y+/Lrq51Od8iZoxbMJji20kpbUaCC7ieqE=";
}; };
installPhase = '' installPhase = ''

View File

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "omnictl"; pname = "omnictl";
version = "0.32.2"; version = "0.33.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "siderolabs"; owner = "siderolabs";
repo = "omni"; repo = "omni";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-db/bYwMPrOZvD/YPtFaRK80yaYdsE70YPh0xQe0uVi4="; hash = "sha256-sszIUHEXtnla1fxlUbHXjQzaJoafse1YOSVikd7LMHk=";
}; };
vendorHash = "sha256-uwzVUdA51eT9fi2Wr0ilNPMpXx430UIYYWXQa1hpzRM="; vendorHash = "sha256-fU2bmVL42tEoWvrCAg2iSV7bErZhwor6tnjGRrtwMA4=";
ldflags = [ "-s" "-w" ]; ldflags = [ "-s" "-w" ];

View File

@ -2,7 +2,7 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "pyprland"; pname = "pyprland";
version = "2.2.5"; version = "2.2.10";
format = "pyproject"; format = "pyproject";
disabled = python3Packages.pythonOlder "3.10"; disabled = python3Packages.pythonOlder "3.10";
@ -11,7 +11,7 @@ python3Packages.buildPythonApplication rec {
owner = "hyprland-community"; owner = "hyprland-community";
repo = "pyprland"; repo = "pyprland";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-ech+KqB0SyFYDWNP+luv+K2aDjJHZDWp72V6wkGBJJw="; hash = "sha256-SOrkOLSjXq8PlZ894EKjfN+Dfnwa8dRgh5eOJVeD2Mk=";
}; };
nativeBuildInputs = with python3Packages; [ poetry-core ]; nativeBuildInputs = with python3Packages; [ poetry-core ];

View File

@ -31,6 +31,6 @@ stdenv.mkDerivation {
homepage = "https://github.com/rockchip-linux/rkbin"; homepage = "https://github.com/rockchip-linux/rkbin";
license = licenses.unfreeRedistributable; license = licenses.unfreeRedistributable;
maintainers = with maintainers; [ thefossguy ]; maintainers = with maintainers; [ thefossguy ];
platforms = [ "aarch64-linux" ]; platforms = lib.platforms.all;
}; };
} }

View File

@ -0,0 +1,43 @@
{ stdenv
, lib
, rkbin
, box64
}:
stdenv.mkDerivation {
name = "rkboot";
src = rkbin.src;
postPatch = ''
substituteInPlace RKBOOT/*.ini --replace 'PATH=' 'PATH=rkboot/'
'';
buildPhase = ''
mkdir rkboot
for i in $(ls ./RKBOOT/*.ini)
do
# The proprietary, statically linked binaries to perform boot_merge are
# x86_64 only. Though we use box64 to emulate if building on aarch64-linux
${lib.optionalString stdenv.isAarch64 "${lib.getExe box64}"} ./tools/boot_merger "$i" || true
done
'';
installPhase = ''
mkdir -p $out
if [ -z "$(ls -A rkboot)" ]; then
echo "Error: The 'rkboot' directory is empty."
exit 1
else
mv rkboot $out/bin
fi
'';
meta = with lib; {
description = "Rockchip proprietary SPL bootloader blobs";
homepage = "https://github.com/rockchip-linux/rkbin";
license = licenses.unfreeRedistributable;
maintainers = with maintainers; [ matthewcroughan ];
platforms = [ "x86_64-linux" "aarch64-linux" ];
};
}

View File

@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "simdutf"; pname = "simdutf";
version = "5.2.4"; version = "5.2.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "simdutf"; owner = "simdutf";
repo = "simdutf"; repo = "simdutf";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-ty4LqRJzwDRMCqPUcvgCAuvNExb0iRIzCOSMCfDzGEU="; hash = "sha256-X/mpVmZ9FyN5MOcQRT1CjH5wsirSQ4rqdPE0lM5meT8=";
}; };
# Fix build on darwin # Fix build on darwin

View File

@ -0,0 +1,36 @@
{
lib,
cmake,
fetchurl,
stdenv,
stormlib,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "smpq";
version = "1.6";
src = fetchurl {
url = "https://launchpad.net/smpq/trunk/${finalAttrs.version}/+download/smpq_${finalAttrs.version}.orig.tar.gz";
hash = "sha256-tdLcil3oYptx7l02ErboTYhBi4bFzTm6MV6esEYvGMs=";
};
cmakeFlags = [
(lib.cmakeBool "WITH_KDE" false)
];
nativeBuildInputs = [ cmake ];
buildInputs = [ stormlib ];
strictDeps = true;
meta = {
homepage = "https://launchpad.net/smpq";
description = "StormLib MPQ archiving utility";
license = lib.licenses.gpl3Only;
mainProgram = "smpq";
maintainers = with lib.maintainers; [ aanderse karolchmist ];
platforms = lib.platforms.all;
};
})

View File

@ -6,11 +6,11 @@
stdenvNoCC.mkDerivation (finalAttrs: { stdenvNoCC.mkDerivation (finalAttrs: {
pname = "stats"; pname = "stats";
version = "2.10.7"; version = "2.10.10";
src = fetchurl { src = fetchurl {
url = "https://github.com/exelban/stats/releases/download/v${finalAttrs.version}/Stats.dmg"; url = "https://github.com/exelban/stats/releases/download/v${finalAttrs.version}/Stats.dmg";
hash = "sha256-B44KFrKy76IZB7QeivE4a/e8JARp4VwJs0mTffa622w="; hash = "sha256-CdTY5Qv/xF9ItNgHQFqec5nKObnImx/+MuFShTfdrAo=";
}; };
sourceRoot = "."; sourceRoot = ".";

View File

@ -1,41 +1,61 @@
{ lib, stdenv, fetchFromGitHub, cmake, bzip2, libtomcrypt, zlib, darwin }: {
lib,
bzip2,
cmake,
darwin,
fetchFromGitHub,
libtomcrypt,
stdenv,
zlib,
}:
stdenv.mkDerivation rec { stdenv.mkDerivation (finalAttrs: {
pname = "stormlib"; pname = "stormlib";
version = "9.22"; version = "9.23";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ladislav-zezula"; owner = "ladislav-zezula";
repo = "StormLib"; repo = "StormLib";
rev = "v${version}"; rev = "v${finalAttrs.version}";
sha256 = "1rcdl6ryrr8fss5z5qlpl4prrw8xpbcdgajg2hpp0i7fpk21ymcc"; hash = "sha256-8JDMqZ5BWslH4+Mfo5lnWTmD2QDaColwBOLzcuGZciY=";
}; };
postPatch = '' nativeBuildInputs = [
substituteInPlace CMakeLists.txt \ cmake
--replace "FRAMEWORK DESTINATION /Library/Frameworks" "FRAMEWORK DESTINATION Library/Frameworks"
'';
cmakeFlags = [
"-DBUILD_SHARED_LIBS=ON"
"-DWITH_LIBTOMCRYPT=ON"
]; ];
nativeBuildInputs = [ cmake ]; buildInputs = [
buildInputs = [ bzip2 libtomcrypt zlib ] ++ bzip2
lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Carbon ]; libtomcrypt
zlib
]
++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Carbon
];
cmakeFlags = [
(lib.cmakeBool "BUILD_SHARED_LIBS" (!stdenv.hostPlatform.isStatic))
(lib.cmakeBool "WITH_LIBTOMCRYPT" true)
];
strictDeps = true;
env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [ env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [
"-Wno-implicit-function-declaration" "-Wno-implicit-function-declaration"
"-Wno-int-conversion" "-Wno-int-conversion"
]); ]);
meta = with lib; { postPatch = ''
substituteInPlace CMakeLists.txt \
--replace "FRAMEWORK DESTINATION /Library/Frameworks" "FRAMEWORK DESTINATION Library/Frameworks"
'';
meta = {
homepage = "https://github.com/ladislav-zezula/StormLib"; homepage = "https://github.com/ladislav-zezula/StormLib";
license = licenses.mit;
description = "An open-source project that can work with Blizzard MPQ archives"; description = "An open-source project that can work with Blizzard MPQ archives";
mainProgram = "storm_test"; license = lib.licenses.mit;
platforms = platforms.all; maintainers = with lib.maintainers; [ aanderse karolchmist ];
maintainers = with maintainers; [ aanderse karolchmist ]; platforms = lib.platforms.all;
broken = stdenv.isDarwin; # installation directory mismatch
}; };
} })

View File

@ -308,9 +308,9 @@ dependencies = [
[[package]] [[package]]
name = "axoupdater" name = "axoupdater"
version = "0.5.0" version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "04daf26062f90764242d0e144ad52d1952cb0d02ef7ce3ffbb9127b4f1340f36" checksum = "639ef3c97d1bebfb42f94739036fbe3e10ef0056d2f8d5ea288bf4ad5f73a5e6"
dependencies = [ dependencies = [
"axoasset", "axoasset",
"axoprocess", "axoprocess",
@ -628,7 +628,7 @@ dependencies = [
"num-traits", "num-traits",
"serde", "serde",
"wasm-bindgen", "wasm-bindgen",
"windows-targets 0.52.4", "windows-targets 0.52.5",
] ]
[[package]] [[package]]
@ -1049,6 +1049,7 @@ dependencies = [
"cache-key", "cache-key",
"distribution-filename", "distribution-filename",
"fs-err", "fs-err",
"git2",
"itertools 0.12.1", "itertools 0.12.1",
"once_cell", "once_cell",
"pep440_rs", "pep440_rs",
@ -1618,9 +1619,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
[[package]] [[package]]
name = "hyper" name = "hyper"
version = "1.3.0" version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9f24ce812868d86d19daa79bf3bf9175bc44ea323391147a5e3abde2a283871b" checksum = "fe575dd17d0862a9a33781c8c4696a55c320909004a67a00fb286ba8b1bc496d"
dependencies = [ dependencies = [
"bytes", "bytes",
"futures-channel", "futures-channel",
@ -2724,15 +2725,15 @@ dependencies = [
[[package]] [[package]]
name = "pyo3" name = "pyo3"
version = "0.20.3" version = "0.21.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53bdbb96d49157e65d45cc287af5f32ffadd5f4761438b527b055fb0d4bb8233" checksum = "a5e00b96a521718e08e03b1a622f01c8a8deb50719335de3f60b3b3950f069d8"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
"indoc", "indoc",
"libc", "libc",
"memoffset 0.9.1", "memoffset 0.9.1",
"parking_lot 0.11.2", "parking_lot 0.12.1",
"portable-atomic", "portable-atomic",
"pyo3-build-config", "pyo3-build-config",
"pyo3-ffi", "pyo3-ffi",
@ -2742,9 +2743,9 @@ dependencies = [
[[package]] [[package]]
name = "pyo3-build-config" name = "pyo3-build-config"
version = "0.20.3" version = "0.21.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "deaa5745de3f5231ce10517a1f5dd97d53e5a2fd77aa6b5842292085831d48d7" checksum = "7883df5835fafdad87c0d888b266c8ec0f4c9ca48a5bed6bbb592e8dedee1b50"
dependencies = [ dependencies = [
"once_cell", "once_cell",
"target-lexicon", "target-lexicon",
@ -2752,9 +2753,9 @@ dependencies = [
[[package]] [[package]]
name = "pyo3-ffi" name = "pyo3-ffi"
version = "0.20.3" version = "0.21.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "62b42531d03e08d4ef1f6e85a2ed422eb678b8cd62b762e53891c05faf0d4afa" checksum = "01be5843dc60b916ab4dad1dca6d20b9b4e6ddc8e15f50c47fe6d85f1fb97403"
dependencies = [ dependencies = [
"libc", "libc",
"pyo3-build-config", "pyo3-build-config",
@ -2762,9 +2763,9 @@ dependencies = [
[[package]] [[package]]
name = "pyo3-log" name = "pyo3-log"
version = "0.9.0" version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4c10808ee7250403bedb24bc30c32493e93875fef7ba3e4292226fe924f398bd" checksum = "2af49834b8d2ecd555177e63b273b708dea75150abc6f5341d0a6e1a9623976c"
dependencies = [ dependencies = [
"arc-swap", "arc-swap",
"log", "log",
@ -2773,9 +2774,9 @@ dependencies = [
[[package]] [[package]]
name = "pyo3-macros" name = "pyo3-macros"
version = "0.20.3" version = "0.21.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7305c720fa01b8055ec95e484a6eca7a83c841267f0dd5280f0c8b8551d2c158" checksum = "77b34069fc0682e11b31dbd10321cbf94808394c56fd996796ce45217dfac53c"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"pyo3-macros-backend", "pyo3-macros-backend",
@ -2785,9 +2786,9 @@ dependencies = [
[[package]] [[package]]
name = "pyo3-macros-backend" name = "pyo3-macros-backend"
version = "0.20.3" version = "0.21.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7c7e9b68bb9c3149c5b0cade5d07f953d6d125eb4337723c4ccdb665f1f96185" checksum = "08260721f32db5e1a5beae69a55553f56b99bd0e1c3e6e0a5e8851a9d0f5a85c"
dependencies = [ dependencies = [
"heck 0.4.1", "heck 0.4.1",
"proc-macro2", "proc-macro2",
@ -2933,13 +2934,13 @@ dependencies = [
[[package]] [[package]]
name = "reflink-copy" name = "reflink-copy"
version = "0.1.15" version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "52b1349400e2ffd64a9fb5ed9008e33c0b8ef86bd5bae8f73080839c7082f1d5" checksum = "7c3138c30c59ed9b8572f82bed97ea591ecd7e45012566046cc39e72679cff22"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
"rustix", "rustix",
"windows 0.54.0", "windows 0.56.0",
] ]
[[package]] [[package]]
@ -3191,9 +3192,9 @@ dependencies = [
[[package]] [[package]]
name = "rmp" name = "rmp"
version = "0.8.12" version = "0.8.14"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7f9860a6cc38ed1da53456442089b4dfa35e7cedaa326df63017af88385e6b20" checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4"
dependencies = [ dependencies = [
"byteorder", "byteorder",
"num-traits", "num-traits",
@ -3202,9 +3203,9 @@ dependencies = [
[[package]] [[package]]
name = "rmp-serde" name = "rmp-serde"
version = "1.1.2" version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bffea85eea980d8a74453e5d02a8d93028f3c34725de143085a844ebe953258a" checksum = "938a142ab806f18b88a97b0dea523d39e0fd730a064b035726adcfc58a8a5188"
dependencies = [ dependencies = [
"byteorder", "byteorder",
"rmp", "rmp",
@ -3434,18 +3435,18 @@ checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
[[package]] [[package]]
name = "serde" name = "serde"
version = "1.0.197" version = "1.0.198"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" checksum = "9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc"
dependencies = [ dependencies = [
"serde_derive", "serde_derive",
] ]
[[package]] [[package]]
name = "serde_derive" name = "serde_derive"
version = "1.0.197" version = "1.0.198"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" checksum = "e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -3465,9 +3466,9 @@ dependencies = [
[[package]] [[package]]
name = "serde_json" name = "serde_json"
version = "1.0.115" version = "1.0.116"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd" checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
dependencies = [ dependencies = [
"itoa", "itoa",
"ryu", "ryu",
@ -3855,18 +3856,18 @@ dependencies = [
[[package]] [[package]]
name = "thiserror" name = "thiserror"
version = "1.0.58" version = "1.0.59"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297" checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
dependencies = [ dependencies = [
"thiserror-impl", "thiserror-impl",
] ]
[[package]] [[package]]
name = "thiserror-impl" name = "thiserror-impl"
version = "1.0.58" version = "1.0.59"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7" checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -4397,7 +4398,7 @@ checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
[[package]] [[package]]
name = "uv" name = "uv"
version = "0.1.35" version = "0.1.36"
dependencies = [ dependencies = [
"anstream", "anstream",
"anyhow", "anyhow",
@ -4465,6 +4466,7 @@ dependencies = [
name = "uv-auth" name = "uv-auth"
version = "0.0.1" version = "0.0.1"
dependencies = [ dependencies = [
"anyhow",
"async-trait", "async-trait",
"base64 0.22.0", "base64 0.22.0",
"http", "http",
@ -4978,6 +4980,7 @@ dependencies = [
"pep440_rs", "pep440_rs",
"pep508_rs", "pep508_rs",
"pypi-types", "pypi-types",
"requirements-txt",
"rustc-hash", "rustc-hash",
"serde", "serde",
"serde_json", "serde_json",
@ -4991,7 +4994,7 @@ dependencies = [
[[package]] [[package]]
name = "uv-version" name = "uv-version"
version = "0.1.35" version = "0.1.36"
[[package]] [[package]]
name = "uv-virtualenv" name = "uv-virtualenv"
@ -5306,19 +5309,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
dependencies = [ dependencies = [
"windows-core 0.52.0", "windows-core 0.52.0",
"windows-implement", "windows-implement 0.52.0",
"windows-interface", "windows-interface 0.52.0",
"windows-targets 0.52.4", "windows-targets 0.52.5",
] ]
[[package]] [[package]]
name = "windows" name = "windows"
version = "0.54.0" version = "0.56.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49" checksum = "1de69df01bdf1ead2f4ac895dc77c9351aefff65b2f3db429a343f9cbf05e132"
dependencies = [ dependencies = [
"windows-core 0.54.0", "windows-core 0.56.0",
"windows-targets 0.52.4", "windows-targets 0.52.5",
] ]
[[package]] [[package]]
@ -5327,17 +5330,19 @@ version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
dependencies = [ dependencies = [
"windows-targets 0.52.4", "windows-targets 0.52.5",
] ]
[[package]] [[package]]
name = "windows-core" name = "windows-core"
version = "0.54.0" version = "0.56.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65" checksum = "4698e52ed2d08f8658ab0c39512a7c00ee5fe2688c65f8c0a4f06750d729f2a6"
dependencies = [ dependencies = [
"windows-implement 0.56.0",
"windows-interface 0.56.0",
"windows-result", "windows-result",
"windows-targets 0.52.4", "windows-targets 0.52.5",
] ]
[[package]] [[package]]
@ -5351,6 +5356,17 @@ dependencies = [
"syn 2.0.58", "syn 2.0.58",
] ]
[[package]]
name = "windows-implement"
version = "0.56.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f6fc35f58ecd95a9b71c4f2329b911016e6bec66b3f2e6a4aad86bd2e99e2f9b"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.58",
]
[[package]] [[package]]
name = "windows-interface" name = "windows-interface"
version = "0.52.0" version = "0.52.0"
@ -5363,12 +5379,23 @@ dependencies = [
] ]
[[package]] [[package]]
name = "windows-result" name = "windows-interface"
version = "0.1.0" version = "0.56.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cd19df78e5168dfb0aedc343d1d1b8d422ab2db6756d2dc3fef75035402a3f64" checksum = "08990546bf4edef8f431fa6326e032865f27138718c587dc21bc0265bbcb57cc"
dependencies = [ dependencies = [
"windows-targets 0.52.4", "proc-macro2",
"quote",
"syn 2.0.58",
]
[[package]]
name = "windows-result"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "749f0da9cc72d82e600d8d2e44cadd0b9eedb9038f71a1c58556ac1c5791813b"
dependencies = [
"windows-targets 0.52.5",
] ]
[[package]] [[package]]
@ -5386,7 +5413,7 @@ version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
dependencies = [ dependencies = [
"windows-targets 0.52.4", "windows-targets 0.52.5",
] ]
[[package]] [[package]]
@ -5406,17 +5433,18 @@ dependencies = [
[[package]] [[package]]
name = "windows-targets" name = "windows-targets"
version = "0.52.4" version = "0.52.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b" checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
dependencies = [ dependencies = [
"windows_aarch64_gnullvm 0.52.4", "windows_aarch64_gnullvm 0.52.5",
"windows_aarch64_msvc 0.52.4", "windows_aarch64_msvc 0.52.5",
"windows_i686_gnu 0.52.4", "windows_i686_gnu 0.52.5",
"windows_i686_msvc 0.52.4", "windows_i686_gnullvm",
"windows_x86_64_gnu 0.52.4", "windows_i686_msvc 0.52.5",
"windows_x86_64_gnullvm 0.52.4", "windows_x86_64_gnu 0.52.5",
"windows_x86_64_msvc 0.52.4", "windows_x86_64_gnullvm 0.52.5",
"windows_x86_64_msvc 0.52.5",
] ]
[[package]] [[package]]
@ -5427,9 +5455,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
[[package]] [[package]]
name = "windows_aarch64_gnullvm" name = "windows_aarch64_gnullvm"
version = "0.52.4" version = "0.52.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9" checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
[[package]] [[package]]
name = "windows_aarch64_msvc" name = "windows_aarch64_msvc"
@ -5439,9 +5467,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
[[package]] [[package]]
name = "windows_aarch64_msvc" name = "windows_aarch64_msvc"
version = "0.52.4" version = "0.52.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675" checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
[[package]] [[package]]
name = "windows_i686_gnu" name = "windows_i686_gnu"
@ -5451,9 +5479,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
[[package]] [[package]]
name = "windows_i686_gnu" name = "windows_i686_gnu"
version = "0.52.4" version = "0.52.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3" checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
[[package]]
name = "windows_i686_gnullvm"
version = "0.52.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
[[package]] [[package]]
name = "windows_i686_msvc" name = "windows_i686_msvc"
@ -5463,9 +5497,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
[[package]] [[package]]
name = "windows_i686_msvc" name = "windows_i686_msvc"
version = "0.52.4" version = "0.52.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02" checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
[[package]] [[package]]
name = "windows_x86_64_gnu" name = "windows_x86_64_gnu"
@ -5475,9 +5509,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
[[package]] [[package]]
name = "windows_x86_64_gnu" name = "windows_x86_64_gnu"
version = "0.52.4" version = "0.52.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03" checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
[[package]] [[package]]
name = "windows_x86_64_gnullvm" name = "windows_x86_64_gnullvm"
@ -5487,9 +5521,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
[[package]] [[package]]
name = "windows_x86_64_gnullvm" name = "windows_x86_64_gnullvm"
version = "0.52.4" version = "0.52.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177" checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
[[package]] [[package]]
name = "windows_x86_64_msvc" name = "windows_x86_64_msvc"
@ -5499,9 +5533,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
[[package]] [[package]]
name = "windows_x86_64_msvc" name = "windows_x86_64_msvc"
version = "0.52.4" version = "0.52.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8" checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
[[package]] [[package]]
name = "winnow" name = "winnow"

View File

@ -12,13 +12,13 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "uv"; pname = "uv";
version = "0.1.35"; version = "0.1.36";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "astral-sh"; owner = "astral-sh";
repo = "uv"; repo = "uv";
rev = version; rev = version;
hash = "sha256-GcAvpX7oanJ8G1dgTyTa8jk9xhTroF2G+ir8j7Yua1M="; hash = "sha256-ngKVc3RJzkkjIfeyRbPe2kzBSJH7T8wdyZo3DP9FwpU=";
}; };
cargoLock = { cargoLock = {

View File

@ -10,9 +10,12 @@
, libglvnd , libglvnd
, libxkbcommon , libxkbcommon
, vulkan-loader , vulkan-loader
, wayland
, xdg-utils , xdg-utils
, xorg , xorg
, zlib , zlib
, makeWrapper
, waylandSupport ? false
}: }:
let let
@ -35,7 +38,7 @@ linux = stdenv.mkDerivation (finalAttrs: {
--replace-fail /opt/ $out/opt/ --replace-fail /opt/ $out/opt/
''; '';
nativeBuildInputs = [ autoPatchelfHook zstd ]; nativeBuildInputs = [ autoPatchelfHook zstd makeWrapper ];
buildInputs = [ buildInputs = [
curl curl
@ -54,7 +57,7 @@ linux = stdenv.mkDerivation (finalAttrs: {
xorg.libxcb xorg.libxcb
xorg.libXcursor xorg.libXcursor
xorg.libXi xorg.libXi
]; ] ++ lib.optionals waylandSupport [wayland];
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
@ -62,6 +65,9 @@ linux = stdenv.mkDerivation (finalAttrs: {
mkdir $out mkdir $out
cp -r opt usr/* $out cp -r opt usr/* $out
'' + lib.optionalString waylandSupport ''
wrapProgram $out/bin/warp-terminal --set WARP_ENABLE_WAYLAND 1
'' + ''
runHook postInstall runHook postInstall
''; '';
}); });

View File

@ -74,27 +74,16 @@ let
rev = "0.10.1"; rev = "0.10.1";
hash = "sha256-iIYKvpOWafPJB5XhDOSIW9Mb4I3A4pcgIIPQdQYEqUw="; hash = "sha256-iIYKvpOWafPJB5XhDOSIW9Mb4I3A4pcgIIPQdQYEqUw=";
}; };
wireplumber_0_4 = wireplumber.overrideAttrs (attrs: rec {
version = "0.4.17";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "pipewire";
repo = "wireplumber";
rev = version;
hash = "sha256-vhpQT67+849WV1SFthQdUeFnYe/okudTQJoL3y+wXwI=";
};
});
in in
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "waybar"; pname = "waybar";
version = "0.10.0"; version = "0.10.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Alexays"; owner = "Alexays";
repo = "Waybar"; repo = "Waybar";
rev = finalAttrs.version; rev = finalAttrs.version;
hash = "sha256-p1VRrKT2kTDy48gDXPMHlLbfcokAOFeTZXGzTeO1SAE="; hash = "sha256-xDeY0Bnwr+jCS0IpseWNgryQ3yV7RJ1VNNbOkT/xl5c=";
}; };
postUnpack = lib.optional cavaSupport '' postUnpack = lib.optional cavaSupport ''
@ -151,7 +140,7 @@ stdenv.mkDerivation (finalAttrs: {
++ lib.optional traySupport libdbusmenu-gtk3 ++ lib.optional traySupport libdbusmenu-gtk3
++ lib.optional udevSupport udev ++ lib.optional udevSupport udev
++ lib.optional upowerSupport upower ++ lib.optional upowerSupport upower
++ lib.optional wireplumberSupport wireplumber_0_4 ++ lib.optional wireplumberSupport wireplumber
++ lib.optional (cavaSupport || pipewireSupport) pipewire ++ lib.optional (cavaSupport || pipewireSupport) pipewire
++ lib.optional (!stdenv.isLinux) libinotify-kqueue; ++ lib.optional (!stdenv.isLinux) libinotify-kqueue;

View File

@ -60,11 +60,7 @@
uos uos
.license.key .license.key
*/ */
uosLicense ? requireFile { uosLicense ? null
name = "license.tar.gz";
url = "https://www.uniontech.com";
sha256 = "53760079c1a5b58f2fa3d5effe1ed35239590b288841d812229ef4e55b2dbd69";
}
}: }:
let let
wechat-uos-env = stdenvNoCC.mkDerivation { wechat-uos-env = stdenvNoCC.mkDerivation {
@ -87,6 +83,30 @@ let
preferLocalBuild = true; preferLocalBuild = true;
}; };
uosLicenseUnzipped = stdenvNoCC.mkDerivation {
name = "uos-license-unzipped";
src =
if uosLicense == null then
requireFile
{
name = "license.tar.gz";
url = "https://www.uniontech.com";
sha256 = "53760079c1a5b58f2fa3d5effe1ed35239590b288841d812229ef4e55b2dbd69";
} else uosLicense;
installPhase = ''
runHook preInstall
mkdir -p $out
cp -r * $out/
runHook postInstall
'';
outputHashAlgo = "sha256";
outputHashMode = "recursive";
outputHash = "sha256-pNftwtUZqBsKBSPQsEWlYLlb6h2Xd9j56ZRMi8I82ME=";
};
wechat-uos-runtime = with xorg; [ wechat-uos-runtime = with xorg; [
stdenv.cc.cc stdenv.cc.cc
stdenv.cc.libc stdenv.cc.libc
@ -195,11 +215,10 @@ let
dpkg -x $src ./wechat-uos dpkg -x $src ./wechat-uos
dpkg -x $uosSrc ./wechat-uos-old-source dpkg -x $uosSrc ./wechat-uos-old-source
tar -xvf $uosLicense
runHook postUnpack runHook postUnpack
''; '';
# Use ln for license to prevent being garbage collection
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p $out mkdir -p $out
@ -207,7 +226,7 @@ let
cp -r wechat-uos/* $out cp -r wechat-uos/* $out
mkdir -pv $out/usr/lib/wechat-uos/license mkdir -pv $out/usr/lib/wechat-uos/license
cp -r license/* $out/usr/lib/wechat-uos/license ln -s ${uosLicenseUnzipped}/* $out/usr/lib/wechat-uos/license/
cp -r wechat-uos-old-source/usr/lib/license/libuosdevicea.so $out/usr/lib/wechat-uos/license/ cp -r wechat-uos-old-source/usr/lib/license/libuosdevicea.so $out/usr/lib/wechat-uos/license/
runHook postInstall runHook postInstall

View File

@ -2,11 +2,11 @@
buildGraalvmNativeImage rec { buildGraalvmNativeImage rec {
pname = "yamlscript"; pname = "yamlscript";
version = "0.1.56"; version = "0.1.57";
src = fetchurl { src = fetchurl {
url = "https://github.com/yaml/yamlscript/releases/download/${version}/yamlscript.cli-${version}-standalone.jar"; url = "https://github.com/yaml/yamlscript/releases/download/${version}/yamlscript.cli-${version}-standalone.jar";
hash = "sha256-4ZjQYl4NdqbzyeEWDthBA8fWJFlIuMRtvHLtdlVYQmw="; hash = "sha256-nuYfYz1Q7PtVb9A2KEN2XGeINifEjsM4IqGiUBbTGFM=";
}; };
executable = "ys"; executable = "ys";

View File

@ -2,11 +2,11 @@
stdenvNoCC.mkDerivation (finalAttrs: { stdenvNoCC.mkDerivation (finalAttrs: {
pname = "youtrack"; pname = "youtrack";
version = "2024.1.27971"; version = "2024.1.28928";
src = fetchzip { src = fetchzip {
url = "https://download.jetbrains.com/charisma/youtrack-${finalAttrs.version}.zip"; url = "https://download.jetbrains.com/charisma/youtrack-${finalAttrs.version}.zip";
hash = "sha256-DropdHT3ZA4kuxyE8xyHB079OMzYH4zKPt38oW7XoFY="; hash = "sha256-8+dZ1YTpvOX0IEEbFzv4t8T/U/BZMeDCZL7Ju25WBpE=";
}; };
nativeBuildInputs = [ makeBinaryWrapper ]; nativeBuildInputs = [ makeBinaryWrapper ];

View File

@ -2,7 +2,7 @@
let let
themeName = "Dracula"; themeName = "Dracula";
version = "unstable-2024-04-08"; version = "unstable-2024-04-16";
in in
stdenvNoCC.mkDerivation { stdenvNoCC.mkDerivation {
pname = "dracula-theme"; pname = "dracula-theme";
@ -11,8 +11,8 @@ stdenvNoCC.mkDerivation {
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dracula"; owner = "dracula";
repo = "gtk"; repo = "gtk";
rev = "18350cafd8e9c775737f97fb5acf0890e29bc47a"; rev = "557e276b41b00bbdc981c32f22ce6adc062d7c1e";
hash = "sha256-uhcRV7E7GDjWjetUHcz/E/g36m/yYTg3c9WJo6gYTJA="; hash = "sha256-il9zpzJeszGJ1gLkG73mtaMD8nBUFCfCXjcJV1fizxg=";
}; };
propagatedUserEnvPkgs = [ propagatedUserEnvPkgs = [

View File

@ -24,13 +24,13 @@ lib.checkListOfEnum "${pname}: tweaks" [ "flat" "grey" "mix" "translucent" ] twe
stdenvNoCC.mkDerivation rec { stdenvNoCC.mkDerivation rec {
inherit pname; inherit pname;
version = "2023-09-09"; version = "2024-04-20";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "vinceliuice"; owner = "vinceliuice";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "dfdPEJnSmD0eqzx4ysiGPp77Beo32l2Tz1qSrbShLlc="; sha256 = "RbAdoix+UWKiLB+04YiPa0UwzO1fFLy56IG1MipmE+E=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -9,13 +9,13 @@
stdenvNoCC.mkDerivation rec { stdenvNoCC.mkDerivation rec {
pname = "mint-l-icons"; pname = "mint-l-icons";
version = "1.6.7"; version = "1.7.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "linuxmint"; owner = "linuxmint";
repo = pname; repo = pname;
rev = version; rev = version;
hash = "sha256-4fBqdJq/JG9SZOLRxv/wXYG9g4wWGkvGwkWzUTDDjXY="; hash = "sha256-nVdx+d+KpTh9EPLhW0+FFzq3OEyacDSxHgllMm51BKk=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -11,13 +11,13 @@
stdenvNoCC.mkDerivation rec { stdenvNoCC.mkDerivation rec {
pname = "mint-x-icons"; pname = "mint-x-icons";
version = "1.6.5"; version = "1.6.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "linuxmint"; owner = "linuxmint";
repo = pname; repo = pname;
rev = version; rev = version;
hash = "sha256-Z07475Uiv4GKCOrKhDBXPZVBGpxdjN7vn2y0rRAZVm0="; hash = "sha256-cxBZsAcGgoIY9KhjR/BWnMcttrywN6qap4lu5b2hauo=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

Some files were not shown because too many files have changed in this diff Show More