Merge master into haskell-updates
This commit is contained in:
commit
466ddc4b5f
|
@ -16,6 +16,13 @@ on:
|
|||
# so it shouldn't be a problem
|
||||
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:
|
||||
# We need this permission to cancel the workflow run if there's a merge conflict
|
||||
actions: write
|
||||
|
|
|
@ -46,7 +46,7 @@ jobs:
|
|||
run: |
|
||||
git clean -f
|
||||
- name: create PR
|
||||
uses: peter-evans/create-pull-request@70a41aba780001da0a30141984ae2a0c95d8704e # v6.0.2
|
||||
uses: peter-evans/create-pull-request@9153d834b60caba6d51c9b9510b087acf9f33f83 # v6.0.4
|
||||
with:
|
||||
body: |
|
||||
Automatic update by [update-terraform-providers](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/update-terraform-providers.yml) action.
|
||||
|
|
|
@ -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 | `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.
|
||||
|
|
|
@ -4448,6 +4448,12 @@
|
|||
github = "DarkOnion0";
|
||||
githubId = 68606322;
|
||||
};
|
||||
daru-san = {
|
||||
name = "Daru";
|
||||
email = "zadarumaka@proton.me";
|
||||
github = "Daru-san";
|
||||
githubId = 135046711;
|
||||
};
|
||||
das-g = {
|
||||
email = "nixpkgs@raphael.dasgupta.ch";
|
||||
github = "das-g";
|
||||
|
@ -11662,6 +11668,12 @@
|
|||
github = "LongerHV";
|
||||
githubId = 46924944;
|
||||
};
|
||||
lonyelon = {
|
||||
email = "sergio@lony.xyz";
|
||||
name = "Sergio Miguéns Iglesias";
|
||||
github = "lonyelon";
|
||||
githubId = 18664655;
|
||||
};
|
||||
lopsided98 = {
|
||||
email = "benwolsieffer@gmail.com";
|
||||
github = "lopsided98";
|
||||
|
|
|
@ -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).
|
||||
|
||||
- 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. `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.
|
||||
- `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.
|
||||
|
||||
- `system.etc.overlay.enable` option was added. If enabled, `/etc` is
|
||||
mounted via an overlayfs instead of being created by a custom perl script.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, pkgs }:
|
||||
{ config, lib, pkgs, utils }:
|
||||
|
||||
let
|
||||
inherit (lib)
|
||||
|
@ -396,8 +396,41 @@ in rec {
|
|||
};
|
||||
};
|
||||
|
||||
serviceConfig = { config, ... }: {
|
||||
config.environment.PATH = mkIf (config.path != []) "${makeBinPath config.path}:${makeSearchPathOutput "bin" "sbin" config.path}";
|
||||
serviceConfig = { name, config, ... }: {
|
||||
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 = {
|
||||
|
@ -416,6 +449,7 @@ in rec {
|
|||
|
||||
mountConfig = { config, ... }: {
|
||||
config = {
|
||||
name = "${utils.escapeSystemdPath config.where}.mount";
|
||||
mountConfig =
|
||||
{ What = config.what;
|
||||
Where = config.where;
|
||||
|
@ -429,6 +463,7 @@ in rec {
|
|||
|
||||
automountConfig = { config, ... }: {
|
||||
config = {
|
||||
name = "${utils.escapeSystemdPath config.where}.automount";
|
||||
automountConfig =
|
||||
{ Where = config.where;
|
||||
};
|
||||
|
@ -444,8 +479,8 @@ in rec {
|
|||
WantedBy=${concatStringsSep " " def.wantedBy}
|
||||
'';
|
||||
|
||||
targetToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
targetToUnit = def:
|
||||
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
text =
|
||||
''
|
||||
[Unit]
|
||||
|
@ -453,8 +488,8 @@ in rec {
|
|||
'';
|
||||
};
|
||||
|
||||
serviceToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
serviceToUnit = def:
|
||||
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
text = commonUnitText def (''
|
||||
[Service]
|
||||
'' + (let env = cfg.globalEnvironment // def.environment;
|
||||
|
@ -463,7 +498,7 @@ in rec {
|
|||
"Environment=${toJSON "${n}=${env.${n}}"}\n";
|
||||
# systemd max line length is now 1MiB
|
||||
# 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 ''
|
||||
X-ReloadIfChanged=true
|
||||
'' else if (def ? restartIfChanged && !def.restartIfChanged) then ''
|
||||
|
@ -474,8 +509,8 @@ in rec {
|
|||
'' + attrsToSection def.serviceConfig);
|
||||
};
|
||||
|
||||
socketToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
socketToUnit = def:
|
||||
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
text = commonUnitText def ''
|
||||
[Socket]
|
||||
${attrsToSection def.socketConfig}
|
||||
|
@ -484,40 +519,40 @@ in rec {
|
|||
'';
|
||||
};
|
||||
|
||||
timerToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
timerToUnit = def:
|
||||
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
text = commonUnitText def ''
|
||||
[Timer]
|
||||
${attrsToSection def.timerConfig}
|
||||
'';
|
||||
};
|
||||
|
||||
pathToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
pathToUnit = def:
|
||||
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
text = commonUnitText def ''
|
||||
[Path]
|
||||
${attrsToSection def.pathConfig}
|
||||
'';
|
||||
};
|
||||
|
||||
mountToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
mountToUnit = def:
|
||||
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
text = commonUnitText def ''
|
||||
[Mount]
|
||||
${attrsToSection def.mountConfig}
|
||||
'';
|
||||
};
|
||||
|
||||
automountToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
automountToUnit = def:
|
||||
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
text = commonUnitText def ''
|
||||
[Automount]
|
||||
${attrsToSection def.automountConfig}
|
||||
'';
|
||||
};
|
||||
|
||||
sliceToUnit = name: def:
|
||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
sliceToUnit = def:
|
||||
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||
text = commonUnitText def ''
|
||||
[Slice]
|
||||
${attrsToSection def.sliceConfig}
|
||||
|
|
|
@ -5,8 +5,13 @@ let
|
|||
automountConfig
|
||||
makeUnit
|
||||
mountConfig
|
||||
pathConfig
|
||||
sliceConfig
|
||||
socketConfig
|
||||
stage1ServiceConfig
|
||||
stage2ServiceConfig
|
||||
targetConfig
|
||||
timerConfig
|
||||
unitConfig
|
||||
;
|
||||
|
||||
|
@ -48,29 +53,32 @@ let
|
|||
;
|
||||
in
|
||||
|
||||
rec {
|
||||
{
|
||||
units = attrsOf (submodule ({ name, config, ... }: {
|
||||
options = concreteUnitOptions;
|
||||
config = { unit = mkDefault (makeUnit name config); };
|
||||
config = {
|
||||
name = mkDefault name;
|
||||
unit = mkDefault (makeUnit name config);
|
||||
};
|
||||
}));
|
||||
|
||||
services = attrsOf (submodule [ stage2ServiceOptions unitConfig stage2ServiceConfig ]);
|
||||
initrdServices = attrsOf (submodule [ stage1ServiceOptions unitConfig stage1ServiceConfig ]);
|
||||
|
||||
targets = attrsOf (submodule [ stage2CommonUnitOptions unitConfig ]);
|
||||
initrdTargets = attrsOf (submodule [ stage1CommonUnitOptions unitConfig ]);
|
||||
targets = attrsOf (submodule [ stage2CommonUnitOptions unitConfig targetConfig ]);
|
||||
initrdTargets = attrsOf (submodule [ stage1CommonUnitOptions unitConfig targetConfig ]);
|
||||
|
||||
sockets = attrsOf (submodule [ stage2SocketOptions unitConfig ]);
|
||||
initrdSockets = attrsOf (submodule [ stage1SocketOptions unitConfig ]);
|
||||
sockets = attrsOf (submodule [ stage2SocketOptions unitConfig socketConfig]);
|
||||
initrdSockets = attrsOf (submodule [ stage1SocketOptions unitConfig socketConfig ]);
|
||||
|
||||
timers = attrsOf (submodule [ stage2TimerOptions unitConfig ]);
|
||||
initrdTimers = attrsOf (submodule [ stage1TimerOptions unitConfig ]);
|
||||
timers = attrsOf (submodule [ stage2TimerOptions unitConfig timerConfig ]);
|
||||
initrdTimers = attrsOf (submodule [ stage1TimerOptions unitConfig timerConfig ]);
|
||||
|
||||
paths = attrsOf (submodule [ stage2PathOptions unitConfig ]);
|
||||
initrdPaths = attrsOf (submodule [ stage1PathOptions unitConfig ]);
|
||||
paths = attrsOf (submodule [ stage2PathOptions unitConfig pathConfig ]);
|
||||
initrdPaths = attrsOf (submodule [ stage1PathOptions unitConfig pathConfig ]);
|
||||
|
||||
slices = attrsOf (submodule [ stage2SliceOptions unitConfig ]);
|
||||
initrdSlices = attrsOf (submodule [ stage1SliceOptions unitConfig ]);
|
||||
slices = attrsOf (submodule [ stage2SliceOptions unitConfig sliceConfig ]);
|
||||
initrdSlices = attrsOf (submodule [ stage1SliceOptions unitConfig sliceConfig ]);
|
||||
|
||||
mounts = listOf (submodule [ stage2MountOptions unitConfig mountConfig ]);
|
||||
initrdMounts = listOf (submodule [ stage1MountOptions unitConfig mountConfig ]);
|
||||
|
|
|
@ -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 {
|
||||
default = "asDropinIfExists";
|
||||
type = types.enum [ "asDropinIfExists" "asDropin" ];
|
||||
|
|
|
@ -35,7 +35,8 @@ let
|
|||
inherit (lib.strings) toJSON normalizePath escapeC;
|
||||
in
|
||||
|
||||
rec {
|
||||
let
|
||||
utils = rec {
|
||||
|
||||
# Copy configuration files to avoid having the entire sources in the system closure
|
||||
copyFile = filePath: pkgs.runCommand (builtins.unsafeDiscardStringContext (baseNameOf filePath)) {} ''
|
||||
|
@ -262,11 +263,12 @@ rec {
|
|||
filter (x: !(elem (getName x) namesToRemove)) packages;
|
||||
|
||||
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; };
|
||||
types = import ./systemd-types.nix { inherit lib systemdUtils pkgs; };
|
||||
network = {
|
||||
units = import ./systemd-network-units.nix { inherit lib systemdUtils; };
|
||||
};
|
||||
};
|
||||
}
|
||||
};
|
||||
in utils
|
||||
|
|
|
@ -559,7 +559,7 @@
|
|||
./services/hardware/kanata.nix
|
||||
./services/hardware/lcd.nix
|
||||
./services/hardware/lirc.nix
|
||||
./services/hardware/nvidia-container-toolkit-cdi-generator
|
||||
./services/hardware/nvidia-container-toolkit
|
||||
./services/hardware/monado.nix
|
||||
./services/hardware/nvidia-optimus.nix
|
||||
./services/hardware/openrgb.nix
|
||||
|
|
|
@ -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
|
||||
''
|
|
@ -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";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
|
@ -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
|
||||
''
|
|
@ -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";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
|
@ -169,7 +169,7 @@ in {
|
|||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
environment = config.environment.extra // {
|
||||
environment = cfg.environment.extra // {
|
||||
CODER_ACCESS_URL = cfg.accessUrl;
|
||||
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}"}";
|
||||
|
|
|
@ -246,7 +246,9 @@ in
|
|||
|
||||
passwordFile = mkOption {
|
||||
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";
|
||||
};
|
||||
|
||||
|
|
|
@ -595,18 +595,17 @@ in
|
|||
};
|
||||
|
||||
systemd.units =
|
||||
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit n v)) cfg.paths
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit n v)) cfg.slices
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit n v)) cfg.sockets
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit n v)) cfg.targets
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit n v)) cfg.timers
|
||||
// listToAttrs (map
|
||||
(v: let n = escapeSystemdPath v.where;
|
||||
in nameValuePair "${n}.mount" (mountToUnit n v)) cfg.mounts)
|
||||
// listToAttrs (map
|
||||
(v: let n = escapeSystemdPath v.where;
|
||||
in nameValuePair "${n}.automount" (automountToUnit n v)) cfg.automounts);
|
||||
let
|
||||
withName = cfgToUnit: cfg: lib.nameValuePair cfg.name (cfgToUnit cfg);
|
||||
in
|
||||
mapAttrs' (_: withName pathToUnit) cfg.paths
|
||||
// mapAttrs' (_: withName serviceToUnit) cfg.services
|
||||
// mapAttrs' (_: withName sliceToUnit) cfg.slices
|
||||
// mapAttrs' (_: withName socketToUnit) cfg.sockets
|
||||
// mapAttrs' (_: withName targetToUnit) cfg.targets
|
||||
// mapAttrs' (_: withName timerToUnit) cfg.timers
|
||||
// listToAttrs (map (withName mountToUnit) cfg.mounts)
|
||||
// listToAttrs (map (withName automountToUnit) cfg.automounts);
|
||||
|
||||
# Environment of PID 1
|
||||
systemd.managerEnvironment = {
|
||||
|
|
|
@ -490,18 +490,18 @@ in {
|
|||
|
||||
targets.initrd.aliases = ["default.target"];
|
||||
units =
|
||||
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit n v)) cfg.paths
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit n v)) cfg.slices
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit n v)) cfg.sockets
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit n v)) cfg.targets
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit n v)) cfg.timers
|
||||
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit v)) cfg.paths
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit v)) cfg.services
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit v)) cfg.slices
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit v)) cfg.sockets
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit v)) cfg.targets
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit v)) cfg.timers
|
||||
// listToAttrs (map
|
||||
(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
|
||||
(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
|
||||
services.systemd-tmpfiles-setup-dev.wantedBy = ["sysinit.target"];
|
||||
|
|
|
@ -175,12 +175,12 @@ in {
|
|||
};
|
||||
|
||||
systemd.user.units =
|
||||
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit n v)) cfg.paths
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit n v)) cfg.slices
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit n v)) cfg.sockets
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit n v)) cfg.targets
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit n v)) cfg.timers;
|
||||
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit v)) cfg.paths
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit v)) cfg.services
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit v)) cfg.slices
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit v)) cfg.sockets
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit v)) cfg.targets
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit v)) cfg.timers;
|
||||
|
||||
# Generate timer units for all services that have a ‘startAt’ value.
|
||||
systemd.user.timers =
|
||||
|
|
|
@ -28,43 +28,6 @@ in
|
|||
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 {
|
||||
type = toml.type;
|
||||
default = { };
|
||||
|
@ -150,8 +113,6 @@ in
|
|||
|
||||
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.settings = {
|
||||
|
@ -163,13 +124,7 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
environment.etc = let
|
||||
cdiStaticConfigurationFiles = (lib.attrsets.mapAttrs'
|
||||
(name: value:
|
||||
lib.attrsets.nameValuePair "cdi/${name}.json"
|
||||
{ text = builtins.toJSON value; })
|
||||
cfg.cdi.static);
|
||||
in {
|
||||
environment.etc = {
|
||||
"containers/containers.conf".source =
|
||||
toml.generate "containers.conf" cfg.containersConf.settings;
|
||||
|
||||
|
@ -183,7 +138,7 @@ in
|
|||
"containers/policy.json".source =
|
||||
if cfg.policy != { } then pkgs.writeText "policy.json" (builtins.toJSON cfg.policy)
|
||||
else "${pkgs.skopeo.policy}/default-policy.json";
|
||||
} // cdiStaticConfigurationFiles;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -41,6 +41,7 @@ let
|
|||
qemu-utils
|
||||
rsync
|
||||
squashfsTools
|
||||
swtpm
|
||||
systemd
|
||||
thin-provisioning-tools
|
||||
util-linux
|
||||
|
|
|
@ -30,6 +30,9 @@ in
|
|||
memorySize = 1024;
|
||||
diskSize = 4096;
|
||||
|
||||
# Provide a TPM to test vTPM support for guests
|
||||
tpm.enable = true;
|
||||
|
||||
incus.enable = true;
|
||||
};
|
||||
networking.nftables.enable = true;
|
||||
|
@ -47,8 +50,14 @@ in
|
|||
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")
|
||||
|
||||
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"):
|
||||
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"):
|
||||
retry(instance_is_up)
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import ./make-test-python.nix ({ pkgs, ... }: {
|
||||
name = "systemd";
|
||||
|
||||
nodes.machine = { lib, ... }: {
|
||||
nodes.machine = { config, lib, ... }: {
|
||||
imports = [ common/user-account.nix common/x11.nix ];
|
||||
|
||||
virtualisation.emptyDiskImages = [ 512 512 ];
|
||||
|
@ -38,9 +38,18 @@ import ./make-test-python.nix ({ pkgs, ... }: {
|
|||
script = "true";
|
||||
};
|
||||
|
||||
systemd.services.testDependency1 = {
|
||||
description = "Test Dependency 1";
|
||||
wantedBy = [ config.systemd.services."testservice1".name ];
|
||||
serviceConfig.Type = "oneshot";
|
||||
script = ''
|
||||
true
|
||||
'';
|
||||
};
|
||||
|
||||
systemd.services.testservice1 = {
|
||||
description = "Test Service 1";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wantedBy = [ config.systemd.targets.multi-user.name ];
|
||||
serviceConfig.Type = "oneshot";
|
||||
script = ''
|
||||
if [ "$XXX_SYSTEM" = foo ]; then
|
||||
|
|
|
@ -41,6 +41,7 @@
|
|||
, qtmultimedia
|
||||
, qtx11extras
|
||||
, soxr
|
||||
, vgmstream
|
||||
, wavpack
|
||||
}:
|
||||
|
||||
|
@ -109,6 +110,10 @@ stdenv.mkDerivation rec {
|
|||
|
||||
dontWrapQtApps = true;
|
||||
|
||||
postInstall = ''
|
||||
ln -s ${vgmstream.override { buildAudaciousPlugin = true; }}/lib/audacious/Input/* $out/lib/audacious/Input
|
||||
'';
|
||||
|
||||
meta = audacious.meta // {
|
||||
description = "Plugins for Audacious music player";
|
||||
};
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
, stdenv
|
||||
, buildDotnetModule
|
||||
, fetchFromGitHub
|
||||
, autoPatchelfHook
|
||||
, fontconfig
|
||||
, xorg
|
||||
, libglvnd
|
||||
|
@ -27,7 +26,6 @@ buildDotnetModule rec {
|
|||
dotnetFlags = [ "-p:Runtimeidentifier=linux-x64" ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoPatchelfHook
|
||||
copyDesktopItems
|
||||
graphicsmagick
|
||||
];
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "pt2-clone";
|
||||
version = "1.67";
|
||||
version = "1.68";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "8bitbubsy";
|
||||
repo = "pt2-clone";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-fTUTXwS6A72zhKkANlSljQVvPeN5rOTyuyb8vLxYfdk=";
|
||||
sha256 = "sha256-xlXwOxmJ5cL1ouTOnFwTvx959IDQIvJ0ZRk+G9p0HbA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
{ stdenv, lib, fetchFromGitHub, cmake, pkg-config
|
||||
, mpg123, ffmpeg, libvorbis, libao, jansson, speex
|
||||
{ stdenv, lib, fetchFromGitHub, cmake, pkg-config, gtk3
|
||||
, audacious, mpg123, ffmpeg, libvorbis, libao, jansson, speex
|
||||
, nix-update-script
|
||||
, buildAudaciousPlugin ? false # only build cli by default, pkgs.audacious-plugins sets this to enable plugin support
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -19,16 +20,29 @@ stdenv.mkDerivation rec {
|
|||
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 = [
|
||||
# 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
|
||||
"-DUSE_CELT=OFF"
|
||||
];
|
||||
] ++ lib.optional (! buildAudaciousPlugin) "-DBUILD_AUDACIOUS=OFF";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A library for playback of various streamed audio formats used in video games";
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
fetchFromGitHub,
|
||||
buildDotnetModule,
|
||||
dotnetCorePackages,
|
||||
autoPatchelfHook,
|
||||
zlib,
|
||||
openssl,
|
||||
}:
|
||||
|
@ -25,7 +24,6 @@ buildDotnetModule rec {
|
|||
dotnet-sdk = dotnetCorePackages.sdk_7_0;
|
||||
dotnet-runtime = dotnetCorePackages.aspnetcore_7_0;
|
||||
|
||||
nativeBuildInputs = [autoPatchelfHook];
|
||||
buildInputs = [stdenv.cc.cc.lib zlib];
|
||||
|
||||
runtimeDeps = [openssl zlib];
|
||||
|
|
|
@ -11,12 +11,12 @@
|
|||
, pyright
|
||||
, ruff
|
||||
, tempel
|
||||
, writeScript
|
||||
, writeText
|
||||
, unstableGitUpdater
|
||||
}:
|
||||
|
||||
let
|
||||
rev = "0b30d95c6de95b150d93ecee325b95e04ff09e46";
|
||||
rev = "4d18701bdef13f6bdc0ad58d26896dff0548dbab";
|
||||
python = python3.withPackages (ps: with ps; [
|
||||
epc
|
||||
orjson
|
||||
|
@ -28,13 +28,13 @@ let
|
|||
in
|
||||
melpaBuild {
|
||||
pname = "lsp-bridge";
|
||||
version = "20231021.309"; # 3:09 UTC
|
||||
version = "20240423.38";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "manateelazycat";
|
||||
repo = "lsp-bridge";
|
||||
inherit rev;
|
||||
hash = "sha256-hR7bZh0ElJ8F9ToJ4dkazF19T8PE01MTcxKrjeaEp4o=";
|
||||
hash = "sha256-6taxbsu5v/mQBwl0CPt/fsTQpclNhi2alp/xIh5omJA=";
|
||||
};
|
||||
|
||||
commit = rev;
|
||||
|
@ -88,7 +88,22 @@ melpaBuild {
|
|||
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; {
|
||||
description = "A blazingly fast LSP client for Emacs";
|
||||
|
|
|
@ -8184,6 +8184,18 @@ final: prev:
|
|||
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 {
|
||||
pname = "nvim-spectre";
|
||||
version = "2024-04-17";
|
||||
|
|
|
@ -688,6 +688,7 @@ https://github.com/dstein64/nvim-scrollview/,,
|
|||
https://github.com/s1n7ax/nvim-search-and-replace/,HEAD,
|
||||
https://github.com/dcampos/nvim-snippy/,HEAD,
|
||||
https://github.com/ishan9299/nvim-solarized-lua/,,
|
||||
https://github.com/lucidph3nx/nvim-sops/,HEAD,
|
||||
https://github.com/nvim-pack/nvim-spectre/,,
|
||||
https://github.com/chrisgrieser/nvim-spider/,HEAD,
|
||||
https://github.com/kylechui/nvim-surround/,main,
|
||||
|
|
|
@ -1793,8 +1793,8 @@ let
|
|||
mktplcRef = {
|
||||
publisher = "github";
|
||||
name = "copilot";
|
||||
version = "1.172.758";
|
||||
hash = "sha256-sK3IiA4mQ6Hse+UpZ81Zb5iBSREzTrs7ypsfGbJiXm4=";
|
||||
version = "1.180.827";
|
||||
hash = "sha256-HA1na9FoExIiAay+tEjxWKqpG2+wq4Oww77Gl2Bhciw=";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
@ -1810,8 +1810,8 @@ let
|
|||
mktplcRef = {
|
||||
publisher = "github";
|
||||
name = "copilot-chat";
|
||||
version = "0.13.2024022301"; # compatible with vscode >= 1.87
|
||||
hash = "sha256-WdojLEdrg6iqTH/cNPEWb6VEfk+gIHh2M5GHrAURjy8=";
|
||||
version = "0.14.2024032901"; # compatible with vscode 1.88.1
|
||||
hash = "sha256-+6N7IGO5j0wP5Zg8CwapHeKGWiZzc43VM4jCtqJDJIQ=";
|
||||
};
|
||||
meta = {
|
||||
description = "GitHub Copilot Chat is a companion extension to GitHub Copilot that houses experimental chat features";
|
||||
|
|
|
@ -12,8 +12,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
|
|||
publisher = "nvarner";
|
||||
# Please update the corresponding binary (typst-lsp) when updating
|
||||
# this extension.
|
||||
version = "0.12.1";
|
||||
hash = "sha256-JcfFaR1wU5XwapH8vnfVy7Cb7DfUWVeoLfBV3wEtCpE=";
|
||||
version = "0.13.0";
|
||||
hash = "sha256-xiFUJymZOTEqlGvCHvLiI0pVg7NLgIXhZ7x8yx+a5mY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -69,9 +69,9 @@ in rec {
|
|||
|
||||
unstable = fetchurl rec {
|
||||
# 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";
|
||||
hash = "sha256-Dglg7YK2AX6ILtozOLrRJwoRd7bPBfA6wfqxVavoIEg=";
|
||||
hash = "sha256-2fPDM2VuiL1M71Mx80sci2nJZKUnWe73RdjdrlGhU1M=";
|
||||
inherit (stable) patches;
|
||||
|
||||
## see http://wiki.winehq.org/Gecko
|
||||
|
@ -88,9 +88,9 @@ in rec {
|
|||
|
||||
## see http://wiki.winehq.org/Mono
|
||||
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";
|
||||
hash = "sha256-efbEMQBnVWbBEvQZm56nuUTTOBZLNL2R+hGwsKQU4cQ=";
|
||||
hash = "sha256-igoeaDe0lN9Jkn5ddZscaQjom4ovjjrQJeHCiBiCR24=";
|
||||
};
|
||||
|
||||
updateScript = writeShellScript "update-wine-unstable" ''
|
||||
|
@ -117,7 +117,7 @@ in rec {
|
|||
staging = fetchFromGitLab rec {
|
||||
# https://gitlab.winehq.org/wine/wine-staging
|
||||
inherit (unstable) version;
|
||||
hash = "sha256-6AKN/KpmsTw9qxErhTTzqWuglgFdOAhtaoBlVRcs71Q=";
|
||||
hash = "sha256-KU6i1P81Fr+4aZH/SJ+YibaIfX88SZMPdPcGS2mT2CE=";
|
||||
domain = "gitlab.winehq.org";
|
||||
owner = "wine";
|
||||
repo = "wine-staging";
|
||||
|
|
|
@ -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
|
||||
, sixelPreviewSupport ? true
|
||||
, neoVimSupport ? true
|
||||
, improvedEncodingDetection ? true
|
||||
, rightToLeftTextSupport ? false
|
||||
|
@ -7,22 +8,23 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "ranger";
|
||||
version = "1.9.3";
|
||||
version = "1.9.3-unstable-2023-08-23";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ranger";
|
||||
repo = "ranger";
|
||||
rev = "v${version}";
|
||||
sha256= "1rygfryczanvqxn43lmlkgs04sbqznbvbb9hlbm3h5qgdcl0xlw8";
|
||||
rev = "38bb8901004b75a407ffee4b9e176bc0a436cb15";
|
||||
hash = "sha256-NpsrABk95xHNvhlRjKFh326IW83mYj1cmK3aE9JQSRo=";
|
||||
};
|
||||
|
||||
LC_ALL = "en_US.UTF-8";
|
||||
|
||||
nativeCheckInputs = with python3Packages; [ pytestCheckHook ];
|
||||
nativeCheckInputs = with python3Packages; [ pytestCheckHook astroid pylint ];
|
||||
propagatedBuildInputs = [
|
||||
less
|
||||
file
|
||||
] ++ lib.optionals imagePreviewSupport [ python3Packages.pillow ]
|
||||
++ lib.optionals sixelPreviewSupport [ imagemagick ]
|
||||
++ lib.optionals neoVimSupport [ python3Packages.pynvim ]
|
||||
++ lib.optionals improvedEncodingDetection [ python3Packages.chardet ]
|
||||
++ lib.optionals rightToLeftTextSupport [ python3Packages.python-bidi ];
|
||||
|
@ -49,10 +51,6 @@ python3Packages.buildPythonApplication rec {
|
|||
--replace "set preview_images false" "set preview_images true"
|
||||
'';
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = ranger;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "File manager with minimalistic curses interface";
|
||||
homepage = "https://ranger.github.io/";
|
||||
|
|
|
@ -63,6 +63,8 @@ stdenv.mkDerivation {
|
|||
$out/bin/${mainProgram} --version
|
||||
'';
|
||||
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = _1password;
|
||||
};
|
||||
|
|
|
@ -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"
|
|
@ -15,7 +15,6 @@
|
|||
, makeDesktopItem
|
||||
, copyDesktopItems
|
||||
, icoutils
|
||||
, autoPatchelfHook
|
||||
, bintools
|
||||
, fixDarwinDylibNames
|
||||
, autoSignDarwinBinariesHook
|
||||
|
@ -40,8 +39,7 @@ buildDotnetModule rec {
|
|||
nativeBuildInputs = [
|
||||
copyDesktopItems
|
||||
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 ];
|
||||
|
||||
buildInputs = [
|
||||
|
|
|
@ -25,13 +25,13 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "gnome-frog";
|
||||
version = "1.4.2";
|
||||
version = "1.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "TenderOwl";
|
||||
repo = "Frog";
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "sha256-w/ENUhJt7bYy5htBLolb/HysK8/scRaPQX5qEezQcXY=";
|
||||
sha256 = "sha256-zL6zuqHF1pTXT3l1mAFx2EL+0ThzjXfst/nEyNVorZg=";
|
||||
};
|
||||
|
||||
format = "other";
|
||||
|
@ -70,7 +70,11 @@ python3Packages.buildPythonApplication rec {
|
|||
];
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
loguru
|
||||
nanoid
|
||||
posthog
|
||||
pygobject3
|
||||
python-dateutil
|
||||
pillow
|
||||
pytesseract
|
||||
pyzbar
|
||||
|
|
|
@ -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
|
||||
index 5752be6..4f6a908 100644
|
||||
index d822c44..bc289db 100644
|
||||
--- a/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)
|
||||
|
||||
dest_path = os.path.join(tessdata_dir, 'eng.traineddata')
|
||||
|
|
|
@ -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";
|
||||
};
|
||||
}
|
|
@ -9,6 +9,7 @@
|
|||
, pango
|
||||
, wayland
|
||||
, wayland-protocols
|
||||
, wayland-scanner
|
||||
, libxkbcommon
|
||||
, 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 ];
|
||||
|
||||
meta = with lib; {
|
||||
|
|
|
@ -22,18 +22,18 @@
|
|||
ungoogled-chromium = {
|
||||
deps = {
|
||||
gn = {
|
||||
hash = "sha256-JvilCnnb4laqwq69fay+IdAujYC1EHD7uWpkF/C8tBw=";
|
||||
rev = "d4f94f9a6c25497b2ce0356bb99a8d202c8c1d32";
|
||||
hash = "sha256-aEL1kIhgPAFqdb174dG093HoLhCJ07O1Kpqfu7r14wQ=";
|
||||
rev = "22581fb46c0c0c9530caa67149ee4dd8811063cf";
|
||||
url = "https://gn.googlesource.com/gn";
|
||||
version = "2024-02-19";
|
||||
version = "2024-03-14";
|
||||
};
|
||||
ungoogled-patches = {
|
||||
hash = "sha256-ojKIAkJB/gfg6scCxUYNAGx4lsquAaCySBDcUCFLqSU=";
|
||||
rev = "d5773b0fb696ef107cc6df6a94cbe732c9e905f9";
|
||||
hash = "sha256-zgkt0stU/H5Mji429tigVbjOq27Op8UppHTjG6neoeA=";
|
||||
rev = "124.0.6367.60-1";
|
||||
};
|
||||
};
|
||||
hash = "sha256-7H7h621AHPyhFYbaVFO892TtS+SP3Qu7cYUVk3ICL14=";
|
||||
hash_deb_amd64 = "sha256-tNkO1mPZg1xltBfoWeNhLekITtZV/WNgu//i2DJb17c=";
|
||||
version = "123.0.6312.122";
|
||||
hash = "sha256-apEniFKhIxPo4nhp9gCU+WpiV/EB40qif4RfE7Uniog=";
|
||||
hash_deb_amd64 = "sha256-rSbigG5/xbL32d1ntOn6gnZyxSpgrg1h7lb/RD4YROI=";
|
||||
version = "124.0.6367.60";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
beta = import ./browser.nix {
|
||||
channel = "beta";
|
||||
version = "124.0.2478.39";
|
||||
version = "124.0.2478.51";
|
||||
revision = "1";
|
||||
hash = "sha256-0KQU/JS6hlv2SLMB8RKyITUiodByBUstrhcwIefn3Yw=";
|
||||
hash = "sha256-qQTRPkQBLRZhOqBT8U0PGcmmR2zNRxJiFl3N2UPwoSo=";
|
||||
};
|
||||
dev = import ./browser.nix {
|
||||
channel = "dev";
|
||||
|
@ -13,8 +13,8 @@
|
|||
};
|
||||
stable = import ./browser.nix {
|
||||
channel = "stable";
|
||||
version = "123.0.2420.97";
|
||||
version = "124.0.2478.51";
|
||||
revision = "1";
|
||||
hash = "sha256-q7Pcbi0JQr/wvKIrgueD9f2Z6v1DMoD2bcRJKGqDYjs=";
|
||||
hash = "sha256-dAiTS+KvKVwL6tNp4YsQfH4wdNIJoBJngcLBXgHArjE=";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "istioctl";
|
||||
version = "1.21.1";
|
||||
version = "1.21.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "istio";
|
||||
repo = "istio";
|
||||
rev = version;
|
||||
hash = "sha256-zWg0UK9RHq/25GWpsvb/U5YJPkgd7aUC/Dva8jGFwfo=";
|
||||
hash = "sha256-U0SCjozy968pcXMGyUgM47VGYYNwPq8wOzTnKp49ZY4=";
|
||||
};
|
||||
vendorHash = "sha256-23t1xJPRip0ojXmUl1qlk6QJsYHT+9EAS080m6c0d6U=";
|
||||
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "kubecolor";
|
||||
version = "0.2.2";
|
||||
version = "0.3.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
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}" ];
|
||||
|
||||
|
|
|
@ -20,13 +20,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "kubernetes";
|
||||
version = "1.29.4";
|
||||
version = "1.30.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubernetes";
|
||||
repo = "kubernetes";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-7Rxbcsl77iFiHkU/ovyn74aXs/i5G/m5h5Ii0y1CRho=";
|
||||
hash = "sha256-7xRRpchjwtV3dGbZ2hN9qj6soAuiF/K7vTY0LzE6Z5w=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
|
|
@ -120,6 +120,8 @@ in stdenv.mkDerivation rec {
|
|||
libappindicator-gtk3
|
||||
libnotify
|
||||
libdbusmenu
|
||||
pipewire
|
||||
stdenv.cc.cc
|
||||
xdg-utils
|
||||
wayland
|
||||
];
|
||||
|
@ -158,7 +160,6 @@ in stdenv.mkDerivation rec {
|
|||
|
||||
preFixup = ''
|
||||
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}}"
|
||||
--suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
|
||||
)
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "storj-uplink";
|
||||
version = "1.102.2";
|
||||
version = "1.102.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "storj";
|
||||
repo = "storj";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-GpHX34iHKeoT7AuEf76QTpTIrATLZyAoUxMoIouhvyA=";
|
||||
hash = "sha256-ryOWnVcJOUs9kToXtwjUTk7nwuAW0NCDn5Npn27hKXU=";
|
||||
};
|
||||
|
||||
subPackages = [ "cmd/uplink" ];
|
||||
|
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "eigenmath";
|
||||
version = "unstable-2024-04-08";
|
||||
version = "unstable-2024-04-19";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "georgeweigt";
|
||||
repo = pname;
|
||||
rev = "c0be6c47309aa40d44784a3a4c4c07bc4e8fb6fa";
|
||||
hash = "sha256-UVCazX0P03+e1exnpXrGNc/1vHxLH04Xtvgsy00UAoI=";
|
||||
rev = "5d5a538e7c378e9e2d9fabdf88fa2c6dd6d13e2c";
|
||||
hash = "sha256-vPj3YKNJAZgdhw/VVrJIo2P7IyHrt7hVpnUQCUCZmR8=";
|
||||
};
|
||||
|
||||
checkPhase = let emulator = stdenv.hostPlatform.emulator buildPackages; in ''
|
||||
|
|
|
@ -60,6 +60,13 @@ stdenv.mkDerivation rec {
|
|||
url = "https://github.com/sagemath/sage/commit/1c3f991b9d3c5778e409e5414c6cfcd456113f19.diff";
|
||||
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
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
}:
|
||||
|
||||
let
|
||||
version = "5.12.196";
|
||||
version = "5.12.197";
|
||||
in
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "git-mit";
|
||||
|
@ -20,10 +20,10 @@ rustPlatform.buildRustPackage {
|
|||
owner = "PurpleBooth";
|
||||
repo = "git-mit";
|
||||
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 ];
|
||||
|
||||
|
|
|
@ -5,15 +5,15 @@ let
|
|||
in
|
||||
{
|
||||
sublime-merge = common {
|
||||
buildVersion = "2091";
|
||||
aarch64sha256 = "dkPKuuzQQtL3eZlaAPeL7e2p5PCxroFRSp6Rw5wHODc=";
|
||||
x64sha256 = "T5g6gHgl9xGytEOsh3VuB08IrbDvMu24o/1edCGmfd4=";
|
||||
buildVersion = "2096";
|
||||
aarch64sha256 = "IHPJJ/oQ3SLemRyey5syTL0sf5GEeHSylDX+EQNNQGU=";
|
||||
x64sha256 = "41I6p5wNx2pF56np7gHqp396RHpXtQu5ruksUywF/Ug=";
|
||||
} { };
|
||||
|
||||
sublime-merge-dev = common {
|
||||
buildVersion = "2094";
|
||||
buildVersion = "2095";
|
||||
dev = true;
|
||||
aarch64sha256 = "ZJgq971EPzq+BWxTQAoX6TgUmTfpf9sI4CHPcvgPTfI=";
|
||||
x64sha256 = "6FLfszhP+BGHX5FrycMlznREmGDLyDyo6rgmqxhtCak=";
|
||||
aarch64sha256 = "FmXz8VAWS7e0bB9NeXbihnhdhWMyNJJs6PNt+K2G0Bk=";
|
||||
x64sha256 = "83Hw27RgGPgugpf4eMuWT6/MSQ2Q2VBCbaXoSGFtTPI=";
|
||||
} { };
|
||||
}
|
||||
|
|
|
@ -15,13 +15,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "cri-o";
|
||||
version = "1.29.2";
|
||||
version = "1.29.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cri-o";
|
||||
repo = "cri-o";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-il28u2+Jv2gh6XqRV4y6u0FDZ4flmcp+bOj9aibL+ro=";
|
||||
hash = "sha256-JJuqYC4GAZqXyyAjVoPipnGjRGbVx1rfH4UrtIOP7cc=";
|
||||
};
|
||||
vendorHash = null;
|
||||
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -30,6 +30,7 @@ rustPlatform.buildRustPackage rec {
|
|||
]
|
||||
++ lib.optionals stdenv.isDarwin [
|
||||
darwin.apple_sdk.frameworks.Security
|
||||
darwin.apple_sdk.frameworks.SystemConfiguration
|
||||
];
|
||||
|
||||
env = {
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"owner": "advplyr",
|
||||
"repo": "audiobookshelf",
|
||||
"rev": "166454ef43e3cdb42c644cdccdacddd3a880cd89",
|
||||
"hash": "sha256-QrGzlSGK7WDlRemS13CmHdg563HFv9QhOpCF+XRxXsg=",
|
||||
"version": "2.8.1",
|
||||
"depsHash": "sha256-CzlwpgSgsQZGuRWTA/IkCyaryCSurH74WR5Rhm5faEk=",
|
||||
"clientDepsHash": "sha256-s7/Rlj3DrYjUkxAN82bTpWe+D4HdVOc1mrqKgqcJuI4="
|
||||
"rev": "8b27c726d51cd9706cd564ef72377b89db3194b3",
|
||||
"hash": "sha256-9WqMcehlGhSMI08u6/LSNOrLhCCl8coEHAUUM5KLnx8=",
|
||||
"version": "2.9.0",
|
||||
"depsHash": "sha256-ll96aPw6lO7B1c5s7uIpn3poPu/JRa/weins5SNMQw4=",
|
||||
"clientDepsHash": "sha256-uqHfU38BLqigGzKJC/i/bftLJbCmHaOcj04d1bu4K1I="
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -1,29 +1,28 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, cmocka
|
||||
, libdict
|
||||
, ncurses
|
||||
, jansson
|
||||
, openssl
|
||||
, libpcap
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
cmake,
|
||||
cmocka,
|
||||
fetchFromGitHub,
|
||||
jansson,
|
||||
libdict,
|
||||
libpcap,
|
||||
ncurses,
|
||||
openssl,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "bngblaster";
|
||||
version = "0.8.44";
|
||||
version = "0.8.47";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rtbrick";
|
||||
repo = "bngblaster";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-kKzrXw6HQ2917RBArj2BxixXXH0mIvC4IeEU2JY4F9s=";
|
||||
hash = "sha256-ad2vVBXN5hUCaFnq4WYc7UTKvyLg4HY+l+PGlc5ylmw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
];
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
buildInputs = [
|
||||
libdict
|
||||
|
@ -31,9 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
jansson
|
||||
openssl
|
||||
cmocka
|
||||
] ++ lib.optionals finalAttrs.doCheck [
|
||||
libpcap
|
||||
];
|
||||
] ++ lib.optionals finalAttrs.doCheck [ libpcap ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DBNGBLASTER_TESTS=${if finalAttrs.doCheck then "ON" else "OFF"}"
|
||||
|
@ -43,9 +40,9 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
doCheck = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Network tester for access and routing protocols";
|
||||
homepage = "https://github.com/rtbrick/bngblaster/";
|
||||
changelog = "https://github.com/rtbrick/bngblaster/releases/tag/${finalAttrs.version}";
|
||||
description = "network tester for access and routing protocols";
|
||||
license = licenses.bsd3;
|
||||
maintainers = teams.wdz.members;
|
||||
badPlatforms = platforms.darwin;
|
||||
|
|
|
@ -27,20 +27,20 @@ let
|
|||
in
|
||||
buildNpmPackage' rec {
|
||||
pname = "bruno";
|
||||
version = "1.13.1";
|
||||
version = "1.14.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "usebruno";
|
||||
repo = "bruno";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-fVbwHmJ/5OtMM0lkOIo6zPXkAa8mIK+WRHCTXJ1XEIw=";
|
||||
hash = "sha256-kUvDtqv3Tdnntr4Ny5pM406KA5++AHsCoAiPg4x4Rsw=";
|
||||
|
||||
postFetch = ''
|
||||
${lib.getExe npm-lockfile-fix} $out/package-lock.json
|
||||
'';
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-D90y6NaiR9zpgtjfm9QgLxBVbHa09OMSi+fvgwqSjgY=";
|
||||
npmDepsHash = "sha256-VvUpAdF4ouy695om3qpsyrmiMf69OFgfpQyeZArQEDs=";
|
||||
npmFlags = [ "--legacy-peer-deps" ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -13,10 +13,10 @@ let
|
|||
}.${system} or throwSystem;
|
||||
|
||||
hash = {
|
||||
x86_64-linux = "sha256-6sIYDI6+1/p54Af+E/GmRAFlfDYJVwxhn0qF47ZH+Zg=";
|
||||
aarch64-linux = "sha256-1ImcjAqCZm5KZZYHWhG1eO7ipAdrP4Qjj2eBxTst++s=";
|
||||
x86_64-darwin = "sha256-yHthItxZYFejJlwJJ7BrM2csnLsZXjy/IbzF1iaCCyI=";
|
||||
aarch64-darwin = "sha256-GIx0yABISj/rH/yVkkx6NBs5qF0P8nhpMyvnzXJ92mA=";
|
||||
x86_64-linux = "sha256-cDMdhfN7PxT687DG1djDNzZXb6E3OrWHXbl1XS6pxi4=";
|
||||
aarch64-linux = "sha256-0wc7fuvyDcbx2HXVq5IMe59r3iNbnXe+gDjCXtU3KjQ=";
|
||||
x86_64-darwin = "sha256-ZWsBfA1AsBFWA3f40coqhaAmnQc1U50VJ1RHWiybq+o=";
|
||||
aarch64-darwin = "sha256-EaoEsBBlpewevk9HstJLZGgQGdPuPb5cqXYkcbGX9WU=";
|
||||
}.${system} or throwSystem;
|
||||
|
||||
bin = "$out/bin/codeium_language_server";
|
||||
|
@ -24,7 +24,7 @@ let
|
|||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "codeium";
|
||||
version = "1.8.25";
|
||||
version = "1.8.27";
|
||||
src = fetchurl {
|
||||
name = "${finalAttrs.pname}-${finalAttrs.version}.gz";
|
||||
url = "https://github.com/Exafunction/codeium/releases/download/language-server-v${finalAttrs.version}/language_server_${plat}.gz";
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
, x265
|
||||
, jasper
|
||||
|
||||
, bash
|
||||
# For panorama and focus stacking
|
||||
, enblend-enfuse
|
||||
, hugin
|
||||
|
@ -110,6 +111,13 @@ stdenv.mkDerivation rec {
|
|||
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 = [
|
||||
"-DENABLE_MYSQLSUPPORT=1"
|
||||
"-DENABLE_INTERNALMYSQL=1"
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
, nix-update-script
|
||||
, ocl-icd
|
||||
, opencl-headers
|
||||
, overrideSDK
|
||||
, pcre
|
||||
, pcre2
|
||||
, pkg-config
|
||||
|
@ -40,8 +41,10 @@
|
|||
, waylandSupport ? true
|
||||
, x11Support ? true
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
let
|
||||
stdenv' = if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv;
|
||||
in
|
||||
stdenv'.mkDerivation (finalAttrs: {
|
||||
pname = "fastfetch";
|
||||
version = "2.9.2";
|
||||
|
|
@ -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";
|
||||
};
|
||||
}
|
|
@ -8,24 +8,25 @@
|
|||
|
||||
let
|
||||
pname = "firefly-iii";
|
||||
version = "6.1.13";
|
||||
version = "6.1.15";
|
||||
phpPackage = php83;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "firefly-iii";
|
||||
repo = "firefly-iii";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-85zI8uCyyoCflzxDkvba6FWa9B3kh179DJfQ2Um6MGM=";
|
||||
hash = "sha256-9Od8tR8X2OZ2hu81tHWDpBX8snWCRvTnlY1AwjIcMug=";
|
||||
};
|
||||
|
||||
assets = buildNpmPackage {
|
||||
pname = "${pname}-assets";
|
||||
inherit version src;
|
||||
npmDepsHash = "sha256-wuPUE6XuzzgKjpxZVgwh2wGut15M61WSBFG+YIZwOFM=";
|
||||
npmDepsHash = "sha256-UVySgcj1tQLQIxlsZuig4ixkfxfsYWYPKWLz5zHA+Dg=";
|
||||
dontNpmBuild = true;
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
npm run build
|
||||
npm run prod --workspace=v1
|
||||
npm run build --workspace=v2
|
||||
cp -r ./public $out/
|
||||
runHook postInstall
|
||||
'';
|
||||
|
@ -35,7 +36,7 @@ in
|
|||
phpPackage.buildComposerProject (finalAttrs: {
|
||||
inherit pname src version;
|
||||
|
||||
vendorHash = "sha256-CVGKyyLp5hjjpEulDNEYfljU4OgPBaFcYQQAUf6GeGs=";
|
||||
vendorHash = "sha256-RDkAbTKj7M7lE8bVRxb+RR5CA6hJIMp61U0+aRtFE50=";
|
||||
|
||||
passthru = {
|
||||
inherit phpPackage;
|
||||
|
|
|
@ -120,7 +120,7 @@ let
|
|||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "fwupd";
|
||||
version = "1.9.16";
|
||||
version = "1.9.18";
|
||||
|
||||
# libfwupd goes to lib
|
||||
# daemon, plug-ins and libfwupdplugin go to out
|
||||
|
@ -131,7 +131,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
owner = "fwupd";
|
||||
repo = "fwupd";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-mM8HSSQD5znjpl9q/f+u0RzZEkFA1tnh+BPB2qdcWvI=";
|
||||
hash = "sha256-w2jqIPNV6OkPaHfy7bEFgr5IgzJYtMTrO5UWmnZ+2JI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -7,12 +7,12 @@
|
|||
}:
|
||||
|
||||
let
|
||||
version = "0.1.0";
|
||||
version = "0.2.0";
|
||||
gitSrc = fetchFromGitHub {
|
||||
owner = "glasskube";
|
||||
repo = "glasskube";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-iJjO4V2sK3e/SpDZ5Lfw7gILgZrI4CGg0wLLVKthGUE=";
|
||||
hash = "sha256-r14gYgrenUk3OFUEab4QlwmwUeEwqocJJ3Vje9wRdBA=";
|
||||
};
|
||||
web-bundle = buildNpmPackage rec {
|
||||
inherit version;
|
||||
|
@ -20,7 +20,7 @@ let
|
|||
|
||||
src = gitSrc;
|
||||
|
||||
npmDepsHash = "sha256-nv2ng8gUOi9K46bDuWt/Y3S6AJovUWaqM+8uGiu/QSs=";
|
||||
npmDepsHash = "sha256-WKwEAVMG6r/ZFmxgLR+zJCW8F2DOHxpWDYqhX/vcdrs=";
|
||||
|
||||
dontNpmInstall = true;
|
||||
|
||||
|
@ -40,7 +40,7 @@ in buildGoModule rec {
|
|||
|
||||
src = gitSrc;
|
||||
|
||||
vendorHash = "sha256-iFWcTzZP0DKJ9hrmfUWR4U/VX2zsR+3uojI+GRI2R3I=";
|
||||
vendorHash = "sha256-sj9TEAWhExwaaKlMJ10U7m3/xbUNl0dVZwrCb2TTu4o=";
|
||||
|
||||
CGO_ENABLED = 0;
|
||||
|
||||
|
|
|
@ -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=";
|
||||
}
|
|
@ -10,13 +10,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "hugo";
|
||||
version = "0.125.0";
|
||||
version = "0.125.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gohugoio";
|
||||
repo = "hugo";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-aPBS/8m57Dn8Uvem58KzaCZJ1Hn8doL1BsDdF7w5nJc=";
|
||||
hash = "sha256-PZTV/VM0KS/vM4lLrJ/XPvNi33lM+L0gITQHGpjdN+4=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-jGCHlAE5mSDKpZVWgjCEN51sL+3GR/C5ROI9065OhRU=";
|
||||
|
|
|
@ -1,15 +1,16 @@
|
|||
{ lib
|
||||
, darwin
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, openssl
|
||||
, stdenv
|
||||
, vlc
|
||||
{
|
||||
lib,
|
||||
darwin,
|
||||
fetchpatch,
|
||||
fetchurl,
|
||||
openssl,
|
||||
stdenv,
|
||||
vlc,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "live555";
|
||||
version = "2024.03.08";
|
||||
version = "2024.04.14";
|
||||
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
|
@ -18,7 +19,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
"https://download.videolan.org/contrib/live555/live.${finalAttrs.version}.tar.gz"
|
||||
"mirror://sourceforge/slackbuildsdirectlinks/live.${finalAttrs.version}.tar.gz"
|
||||
];
|
||||
hash = "sha256-wWUC4EbxxfK+OxXiyNbNMGObVMZOqb+8jTG078pnDeU=";
|
||||
hash = "sha256-mR5rKGKtTwMq3p+xAAGdo0DNNnIe4KHladLPlnhVhNY=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -60,11 +61,13 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
'';
|
||||
|
||||
configurePhase = let
|
||||
platform = if stdenv.isLinux
|
||||
then "linux"
|
||||
else if stdenv.isDarwin
|
||||
then "macosx-catalina"
|
||||
else throw "Unsupported platform: ${stdenv.hostPlatform.system}";
|
||||
platform =
|
||||
if stdenv.isLinux then
|
||||
"linux"
|
||||
else if stdenv.isDarwin then
|
||||
"macosx-catalina"
|
||||
else
|
||||
throw "Unsupported platform: ${stdenv.hostPlatform.system}";
|
||||
in ''
|
||||
runHook preConfigure
|
||||
|
||||
|
|
|
@ -5,16 +5,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "livekit-cli";
|
||||
version = "1.4.1";
|
||||
version = "1.4.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "livekit";
|
||||
repo = "livekit-cli";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-/H7Xn/nUumKf62qV6kt2PBbvIt67IwA1dt+hj8mbE30=";
|
||||
hash = "sha256-6UIMyroZpylUMG7TIBOqDIDsuJLtpe2BQxfjEhbZBGc=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-yO2Qr6H5sZGLMHiue5IVHkF1IDsZZh48s6KNpXR+nzA=";
|
||||
vendorHash = "sha256-e84jusaQx6B5cbJoIOSVyxgAQx9VIxFODH1Io1Z/yj0=";
|
||||
|
||||
subPackages = [ "cmd/livekit-cli" ];
|
||||
|
||||
|
|
|
@ -13,13 +13,13 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "maa-cli";
|
||||
version = "0.4.5";
|
||||
version = "0.4.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "MaaAssistantArknights";
|
||||
repo = "maa-cli";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-LeEIbfDQ+GO3gNmdpWGTNkpbhSqLz4fYQ+MdcrcbDk0=";
|
||||
hash = "sha256-fvMSYcYWYEVvDuAEjSmQJltl90EoLKkjYD2P3OsHS3c=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -36,7 +36,7 @@ rustPlatform.buildRustPackage rec {
|
|||
buildNoDefaultFeatures = true;
|
||||
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
|
||||
# https://github.com/MaaAssistantArknights/maa-cli/issues/67
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "nawk";
|
||||
version = "20240311";
|
||||
version = "20240422";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "onetrueawk";
|
||||
repo = "awk";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-4iAQR8djhhp5Yn4H1IdzotQLY0d/Gz/vNQPfAUNQV0A=";
|
||||
hash = "sha256-wsRkSXCLtK2jk4gW/Lpg/14NiOUANfmCrYqeKZW6CLY=";
|
||||
};
|
||||
|
||||
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
}:
|
||||
let
|
||||
pname = "netscanner";
|
||||
version = "0.4.2";
|
||||
version = "0.4.4";
|
||||
in
|
||||
rustPlatform.buildRustPackage {
|
||||
inherit pname version;
|
||||
|
@ -17,10 +17,10 @@ rustPlatform.buildRustPackage {
|
|||
owner = "Chleba";
|
||||
repo = "netscanner";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-xdY3moWRmSMZ3PVyuHBnp8c9k5KxH+MoE5+s0QWSUM4=";
|
||||
hash = "sha256-RO0+Zz1sivIjD8OM4TBHR5geJw540MAJfXEl2yriH6o=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-15BNkrr79KMyFcn7NJrGCj25RjH/a4WUOQAoMPzJieQ=";
|
||||
cargoHash = "sha256-GJLrUF2YAMtCtXTPJvlUURfiTYBFUE6Gmeux+5RXqAM=";
|
||||
|
||||
postFixup = ''
|
||||
wrapProgram $out/bin/netscanner \
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "nuclei-templates";
|
||||
version = "9.8.1";
|
||||
version = "9.8.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "projectdiscovery";
|
||||
repo = "nuclei-templates";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-g1MwzJK9a8bpbbP9EoUi0UBR54nfnyg3RDi9qwIKlH0=";
|
||||
hash = "sha256-j1W/Gq002Y+/Lrq51Od8iZoxbMJji20kpbUaCC7ieqE=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "omnictl";
|
||||
version = "0.32.2";
|
||||
version = "0.33.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "siderolabs";
|
||||
repo = "omni";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-db/bYwMPrOZvD/YPtFaRK80yaYdsE70YPh0xQe0uVi4=";
|
||||
hash = "sha256-sszIUHEXtnla1fxlUbHXjQzaJoafse1YOSVikd7LMHk=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-uwzVUdA51eT9fi2Wr0ilNPMpXx430UIYYWXQa1hpzRM=";
|
||||
vendorHash = "sha256-fU2bmVL42tEoWvrCAg2iSV7bErZhwor6tnjGRrtwMA4=";
|
||||
|
||||
ldflags = [ "-s" "-w" ];
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "pyprland";
|
||||
version = "2.2.5";
|
||||
version = "2.2.10";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = python3Packages.pythonOlder "3.10";
|
||||
|
@ -11,7 +11,7 @@ python3Packages.buildPythonApplication rec {
|
|||
owner = "hyprland-community";
|
||||
repo = "pyprland";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-ech+KqB0SyFYDWNP+luv+K2aDjJHZDWp72V6wkGBJJw=";
|
||||
hash = "sha256-SOrkOLSjXq8PlZ894EKjfN+Dfnwa8dRgh5eOJVeD2Mk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with python3Packages; [ poetry-core ];
|
||||
|
|
|
@ -31,6 +31,6 @@ stdenv.mkDerivation {
|
|||
homepage = "https://github.com/rockchip-linux/rkbin";
|
||||
license = licenses.unfreeRedistributable;
|
||||
maintainers = with maintainers; [ thefossguy ];
|
||||
platforms = [ "aarch64-linux" ];
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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" ];
|
||||
};
|
||||
}
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "simdutf";
|
||||
version = "5.2.4";
|
||||
version = "5.2.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "simdutf";
|
||||
repo = "simdutf";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-ty4LqRJzwDRMCqPUcvgCAuvNExb0iRIzCOSMCfDzGEU=";
|
||||
hash = "sha256-X/mpVmZ9FyN5MOcQRT1CjH5wsirSQ4rqdPE0lM5meT8=";
|
||||
};
|
||||
|
||||
# Fix build on darwin
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
})
|
|
@ -6,11 +6,11 @@
|
|||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "stats";
|
||||
version = "2.10.7";
|
||||
version = "2.10.10";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/exelban/stats/releases/download/v${finalAttrs.version}/Stats.dmg";
|
||||
hash = "sha256-B44KFrKy76IZB7QeivE4a/e8JARp4VwJs0mTffa622w=";
|
||||
hash = "sha256-CdTY5Qv/xF9ItNgHQFqec5nKObnImx/+MuFShTfdrAo=";
|
||||
};
|
||||
sourceRoot = ".";
|
||||
|
||||
|
|
|
@ -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";
|
||||
version = "9.22";
|
||||
version = "9.23";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ladislav-zezula";
|
||||
repo = "StormLib";
|
||||
rev = "v${version}";
|
||||
sha256 = "1rcdl6ryrr8fss5z5qlpl4prrw8xpbcdgajg2hpp0i7fpk21ymcc";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-8JDMqZ5BWslH4+Mfo5lnWTmD2QDaColwBOLzcuGZciY=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace "FRAMEWORK DESTINATION /Library/Frameworks" "FRAMEWORK DESTINATION Library/Frameworks"
|
||||
'';
|
||||
|
||||
cmakeFlags = [
|
||||
"-DBUILD_SHARED_LIBS=ON"
|
||||
"-DWITH_LIBTOMCRYPT=ON"
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ bzip2 libtomcrypt zlib ] ++
|
||||
lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Carbon ];
|
||||
buildInputs = [
|
||||
bzip2
|
||||
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 [
|
||||
"-Wno-implicit-function-declaration"
|
||||
"-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";
|
||||
license = licenses.mit;
|
||||
description = "An open-source project that can work with Blizzard MPQ archives";
|
||||
mainProgram = "storm_test";
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ aanderse karolchmist ];
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ aanderse karolchmist ];
|
||||
platforms = lib.platforms.all;
|
||||
broken = stdenv.isDarwin; # installation directory mismatch
|
||||
};
|
||||
}
|
||||
})
|
||||
|
|
|
@ -308,9 +308,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "axoupdater"
|
||||
version = "0.5.0"
|
||||
version = "0.5.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "04daf26062f90764242d0e144ad52d1952cb0d02ef7ce3ffbb9127b4f1340f36"
|
||||
checksum = "639ef3c97d1bebfb42f94739036fbe3e10ef0056d2f8d5ea288bf4ad5f73a5e6"
|
||||
dependencies = [
|
||||
"axoasset",
|
||||
"axoprocess",
|
||||
|
@ -628,7 +628,7 @@ dependencies = [
|
|||
"num-traits",
|
||||
"serde",
|
||||
"wasm-bindgen",
|
||||
"windows-targets 0.52.4",
|
||||
"windows-targets 0.52.5",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -1049,6 +1049,7 @@ dependencies = [
|
|||
"cache-key",
|
||||
"distribution-filename",
|
||||
"fs-err",
|
||||
"git2",
|
||||
"itertools 0.12.1",
|
||||
"once_cell",
|
||||
"pep440_rs",
|
||||
|
@ -1618,9 +1619,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
|
|||
|
||||
[[package]]
|
||||
name = "hyper"
|
||||
version = "1.3.0"
|
||||
version = "1.3.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9f24ce812868d86d19daa79bf3bf9175bc44ea323391147a5e3abde2a283871b"
|
||||
checksum = "fe575dd17d0862a9a33781c8c4696a55c320909004a67a00fb286ba8b1bc496d"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"futures-channel",
|
||||
|
@ -2724,15 +2725,15 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pyo3"
|
||||
version = "0.20.3"
|
||||
version = "0.21.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "53bdbb96d49157e65d45cc287af5f32ffadd5f4761438b527b055fb0d4bb8233"
|
||||
checksum = "a5e00b96a521718e08e03b1a622f01c8a8deb50719335de3f60b3b3950f069d8"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"indoc",
|
||||
"libc",
|
||||
"memoffset 0.9.1",
|
||||
"parking_lot 0.11.2",
|
||||
"parking_lot 0.12.1",
|
||||
"portable-atomic",
|
||||
"pyo3-build-config",
|
||||
"pyo3-ffi",
|
||||
|
@ -2742,9 +2743,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pyo3-build-config"
|
||||
version = "0.20.3"
|
||||
version = "0.21.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "deaa5745de3f5231ce10517a1f5dd97d53e5a2fd77aa6b5842292085831d48d7"
|
||||
checksum = "7883df5835fafdad87c0d888b266c8ec0f4c9ca48a5bed6bbb592e8dedee1b50"
|
||||
dependencies = [
|
||||
"once_cell",
|
||||
"target-lexicon",
|
||||
|
@ -2752,9 +2753,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pyo3-ffi"
|
||||
version = "0.20.3"
|
||||
version = "0.21.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "62b42531d03e08d4ef1f6e85a2ed422eb678b8cd62b762e53891c05faf0d4afa"
|
||||
checksum = "01be5843dc60b916ab4dad1dca6d20b9b4e6ddc8e15f50c47fe6d85f1fb97403"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"pyo3-build-config",
|
||||
|
@ -2762,9 +2763,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pyo3-log"
|
||||
version = "0.9.0"
|
||||
version = "0.10.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "4c10808ee7250403bedb24bc30c32493e93875fef7ba3e4292226fe924f398bd"
|
||||
checksum = "2af49834b8d2ecd555177e63b273b708dea75150abc6f5341d0a6e1a9623976c"
|
||||
dependencies = [
|
||||
"arc-swap",
|
||||
"log",
|
||||
|
@ -2773,9 +2774,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pyo3-macros"
|
||||
version = "0.20.3"
|
||||
version = "0.21.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7305c720fa01b8055ec95e484a6eca7a83c841267f0dd5280f0c8b8551d2c158"
|
||||
checksum = "77b34069fc0682e11b31dbd10321cbf94808394c56fd996796ce45217dfac53c"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"pyo3-macros-backend",
|
||||
|
@ -2785,9 +2786,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pyo3-macros-backend"
|
||||
version = "0.20.3"
|
||||
version = "0.21.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7c7e9b68bb9c3149c5b0cade5d07f953d6d125eb4337723c4ccdb665f1f96185"
|
||||
checksum = "08260721f32db5e1a5beae69a55553f56b99bd0e1c3e6e0a5e8851a9d0f5a85c"
|
||||
dependencies = [
|
||||
"heck 0.4.1",
|
||||
"proc-macro2",
|
||||
|
@ -2933,13 +2934,13 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "reflink-copy"
|
||||
version = "0.1.15"
|
||||
version = "0.1.17"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "52b1349400e2ffd64a9fb5ed9008e33c0b8ef86bd5bae8f73080839c7082f1d5"
|
||||
checksum = "7c3138c30c59ed9b8572f82bed97ea591ecd7e45012566046cc39e72679cff22"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"rustix",
|
||||
"windows 0.54.0",
|
||||
"windows 0.56.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -3191,9 +3192,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "rmp"
|
||||
version = "0.8.12"
|
||||
version = "0.8.14"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7f9860a6cc38ed1da53456442089b4dfa35e7cedaa326df63017af88385e6b20"
|
||||
checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4"
|
||||
dependencies = [
|
||||
"byteorder",
|
||||
"num-traits",
|
||||
|
@ -3202,9 +3203,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "rmp-serde"
|
||||
version = "1.1.2"
|
||||
version = "1.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "bffea85eea980d8a74453e5d02a8d93028f3c34725de143085a844ebe953258a"
|
||||
checksum = "938a142ab806f18b88a97b0dea523d39e0fd730a064b035726adcfc58a8a5188"
|
||||
dependencies = [
|
||||
"byteorder",
|
||||
"rmp",
|
||||
|
@ -3434,18 +3435,18 @@ checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
|
|||
|
||||
[[package]]
|
||||
name = "serde"
|
||||
version = "1.0.197"
|
||||
version = "1.0.198"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
|
||||
checksum = "9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc"
|
||||
dependencies = [
|
||||
"serde_derive",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "serde_derive"
|
||||
version = "1.0.197"
|
||||
version = "1.0.198"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
|
||||
checksum = "e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
|
@ -3465,9 +3466,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "serde_json"
|
||||
version = "1.0.115"
|
||||
version = "1.0.116"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
|
||||
checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
|
||||
dependencies = [
|
||||
"itoa",
|
||||
"ryu",
|
||||
|
@ -3855,18 +3856,18 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "thiserror"
|
||||
version = "1.0.58"
|
||||
version = "1.0.59"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
|
||||
checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
|
||||
dependencies = [
|
||||
"thiserror-impl",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "thiserror-impl"
|
||||
version = "1.0.58"
|
||||
version = "1.0.59"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
|
||||
checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
|
@ -4397,7 +4398,7 @@ checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
|
|||
|
||||
[[package]]
|
||||
name = "uv"
|
||||
version = "0.1.35"
|
||||
version = "0.1.36"
|
||||
dependencies = [
|
||||
"anstream",
|
||||
"anyhow",
|
||||
|
@ -4465,6 +4466,7 @@ dependencies = [
|
|||
name = "uv-auth"
|
||||
version = "0.0.1"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
"base64 0.22.0",
|
||||
"http",
|
||||
|
@ -4978,6 +4980,7 @@ dependencies = [
|
|||
"pep440_rs",
|
||||
"pep508_rs",
|
||||
"pypi-types",
|
||||
"requirements-txt",
|
||||
"rustc-hash",
|
||||
"serde",
|
||||
"serde_json",
|
||||
|
@ -4991,7 +4994,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "uv-version"
|
||||
version = "0.1.35"
|
||||
version = "0.1.36"
|
||||
|
||||
[[package]]
|
||||
name = "uv-virtualenv"
|
||||
|
@ -5306,19 +5309,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||
checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
|
||||
dependencies = [
|
||||
"windows-core 0.52.0",
|
||||
"windows-implement",
|
||||
"windows-interface",
|
||||
"windows-targets 0.52.4",
|
||||
"windows-implement 0.52.0",
|
||||
"windows-interface 0.52.0",
|
||||
"windows-targets 0.52.5",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "windows"
|
||||
version = "0.54.0"
|
||||
version = "0.56.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49"
|
||||
checksum = "1de69df01bdf1ead2f4ac895dc77c9351aefff65b2f3db429a343f9cbf05e132"
|
||||
dependencies = [
|
||||
"windows-core 0.54.0",
|
||||
"windows-targets 0.52.4",
|
||||
"windows-core 0.56.0",
|
||||
"windows-targets 0.52.5",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -5327,17 +5330,19 @@ version = "0.52.0"
|
|||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
|
||||
dependencies = [
|
||||
"windows-targets 0.52.4",
|
||||
"windows-targets 0.52.5",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "windows-core"
|
||||
version = "0.54.0"
|
||||
version = "0.56.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65"
|
||||
checksum = "4698e52ed2d08f8658ab0c39512a7c00ee5fe2688c65f8c0a4f06750d729f2a6"
|
||||
dependencies = [
|
||||
"windows-implement 0.56.0",
|
||||
"windows-interface 0.56.0",
|
||||
"windows-result",
|
||||
"windows-targets 0.52.4",
|
||||
"windows-targets 0.52.5",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -5351,6 +5356,17 @@ dependencies = [
|
|||
"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]]
|
||||
name = "windows-interface"
|
||||
version = "0.52.0"
|
||||
|
@ -5363,12 +5379,23 @@ dependencies = [
|
|||
]
|
||||
|
||||
[[package]]
|
||||
name = "windows-result"
|
||||
version = "0.1.0"
|
||||
name = "windows-interface"
|
||||
version = "0.56.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cd19df78e5168dfb0aedc343d1d1b8d422ab2db6756d2dc3fef75035402a3f64"
|
||||
checksum = "08990546bf4edef8f431fa6326e032865f27138718c587dc21bc0265bbcb57cc"
|
||||
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]]
|
||||
|
@ -5386,7 +5413,7 @@ version = "0.52.0"
|
|||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
|
||||
dependencies = [
|
||||
"windows-targets 0.52.4",
|
||||
"windows-targets 0.52.5",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -5406,17 +5433,18 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "windows-targets"
|
||||
version = "0.52.4"
|
||||
version = "0.52.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
|
||||
checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
|
||||
dependencies = [
|
||||
"windows_aarch64_gnullvm 0.52.4",
|
||||
"windows_aarch64_msvc 0.52.4",
|
||||
"windows_i686_gnu 0.52.4",
|
||||
"windows_i686_msvc 0.52.4",
|
||||
"windows_x86_64_gnu 0.52.4",
|
||||
"windows_x86_64_gnullvm 0.52.4",
|
||||
"windows_x86_64_msvc 0.52.4",
|
||||
"windows_aarch64_gnullvm 0.52.5",
|
||||
"windows_aarch64_msvc 0.52.5",
|
||||
"windows_i686_gnu 0.52.5",
|
||||
"windows_i686_gnullvm",
|
||||
"windows_i686_msvc 0.52.5",
|
||||
"windows_x86_64_gnu 0.52.5",
|
||||
"windows_x86_64_gnullvm 0.52.5",
|
||||
"windows_x86_64_msvc 0.52.5",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -5427,9 +5455,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
|
|||
|
||||
[[package]]
|
||||
name = "windows_aarch64_gnullvm"
|
||||
version = "0.52.4"
|
||||
version = "0.52.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
|
||||
checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
|
||||
|
||||
[[package]]
|
||||
name = "windows_aarch64_msvc"
|
||||
|
@ -5439,9 +5467,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
|
|||
|
||||
[[package]]
|
||||
name = "windows_aarch64_msvc"
|
||||
version = "0.52.4"
|
||||
version = "0.52.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
|
||||
checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
|
||||
|
||||
[[package]]
|
||||
name = "windows_i686_gnu"
|
||||
|
@ -5451,9 +5479,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
|
|||
|
||||
[[package]]
|
||||
name = "windows_i686_gnu"
|
||||
version = "0.52.4"
|
||||
version = "0.52.5"
|
||||
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]]
|
||||
name = "windows_i686_msvc"
|
||||
|
@ -5463,9 +5497,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
|
|||
|
||||
[[package]]
|
||||
name = "windows_i686_msvc"
|
||||
version = "0.52.4"
|
||||
version = "0.52.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
|
||||
checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
|
||||
|
||||
[[package]]
|
||||
name = "windows_x86_64_gnu"
|
||||
|
@ -5475,9 +5509,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
|
|||
|
||||
[[package]]
|
||||
name = "windows_x86_64_gnu"
|
||||
version = "0.52.4"
|
||||
version = "0.52.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
|
||||
checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
|
||||
|
||||
[[package]]
|
||||
name = "windows_x86_64_gnullvm"
|
||||
|
@ -5487,9 +5521,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
|
|||
|
||||
[[package]]
|
||||
name = "windows_x86_64_gnullvm"
|
||||
version = "0.52.4"
|
||||
version = "0.52.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
|
||||
checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
|
||||
|
||||
[[package]]
|
||||
name = "windows_x86_64_msvc"
|
||||
|
@ -5499,9 +5533,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
|
|||
|
||||
[[package]]
|
||||
name = "windows_x86_64_msvc"
|
||||
version = "0.52.4"
|
||||
version = "0.52.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
|
||||
checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
|
||||
|
||||
[[package]]
|
||||
name = "winnow"
|
||||
|
|
|
@ -12,13 +12,13 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "uv";
|
||||
version = "0.1.35";
|
||||
version = "0.1.36";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "astral-sh";
|
||||
repo = "uv";
|
||||
rev = version;
|
||||
hash = "sha256-GcAvpX7oanJ8G1dgTyTa8jk9xhTroF2G+ir8j7Yua1M=";
|
||||
hash = "sha256-ngKVc3RJzkkjIfeyRbPe2kzBSJH7T8wdyZo3DP9FwpU=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
|
|
|
@ -10,9 +10,12 @@
|
|||
, libglvnd
|
||||
, libxkbcommon
|
||||
, vulkan-loader
|
||||
, wayland
|
||||
, xdg-utils
|
||||
, xorg
|
||||
, zlib
|
||||
, makeWrapper
|
||||
, waylandSupport ? false
|
||||
}:
|
||||
|
||||
let
|
||||
|
@ -35,7 +38,7 @@ linux = stdenv.mkDerivation (finalAttrs: {
|
|||
--replace-fail /opt/ $out/opt/
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ autoPatchelfHook zstd ];
|
||||
nativeBuildInputs = [ autoPatchelfHook zstd makeWrapper ];
|
||||
|
||||
buildInputs = [
|
||||
curl
|
||||
|
@ -54,7 +57,7 @@ linux = stdenv.mkDerivation (finalAttrs: {
|
|||
xorg.libxcb
|
||||
xorg.libXcursor
|
||||
xorg.libXi
|
||||
];
|
||||
] ++ lib.optionals waylandSupport [wayland];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
@ -62,6 +65,9 @@ linux = stdenv.mkDerivation (finalAttrs: {
|
|||
mkdir $out
|
||||
cp -r opt usr/* $out
|
||||
|
||||
'' + lib.optionalString waylandSupport ''
|
||||
wrapProgram $out/bin/warp-terminal --set WARP_ENABLE_WAYLAND 1
|
||||
'' + ''
|
||||
runHook postInstall
|
||||
'';
|
||||
});
|
||||
|
|
|
@ -74,27 +74,16 @@ let
|
|||
rev = "0.10.1";
|
||||
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
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "waybar";
|
||||
version = "0.10.0";
|
||||
version = "0.10.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Alexays";
|
||||
repo = "Waybar";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-p1VRrKT2kTDy48gDXPMHlLbfcokAOFeTZXGzTeO1SAE=";
|
||||
hash = "sha256-xDeY0Bnwr+jCS0IpseWNgryQ3yV7RJ1VNNbOkT/xl5c=";
|
||||
};
|
||||
|
||||
postUnpack = lib.optional cavaSupport ''
|
||||
|
@ -151,7 +140,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
++ lib.optional traySupport libdbusmenu-gtk3
|
||||
++ lib.optional udevSupport udev
|
||||
++ lib.optional upowerSupport upower
|
||||
++ lib.optional wireplumberSupport wireplumber_0_4
|
||||
++ lib.optional wireplumberSupport wireplumber
|
||||
++ lib.optional (cavaSupport || pipewireSupport) pipewire
|
||||
++ lib.optional (!stdenv.isLinux) libinotify-kqueue;
|
||||
|
|
@ -60,11 +60,7 @@
|
|||
└── uos
|
||||
└── .license.key
|
||||
*/
|
||||
uosLicense ? requireFile {
|
||||
name = "license.tar.gz";
|
||||
url = "https://www.uniontech.com";
|
||||
sha256 = "53760079c1a5b58f2fa3d5effe1ed35239590b288841d812229ef4e55b2dbd69";
|
||||
}
|
||||
uosLicense ? null
|
||||
}:
|
||||
let
|
||||
wechat-uos-env = stdenvNoCC.mkDerivation {
|
||||
|
@ -87,6 +83,30 @@ let
|
|||
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; [
|
||||
stdenv.cc.cc
|
||||
stdenv.cc.libc
|
||||
|
@ -195,11 +215,10 @@ let
|
|||
dpkg -x $src ./wechat-uos
|
||||
dpkg -x $uosSrc ./wechat-uos-old-source
|
||||
|
||||
tar -xvf $uosLicense
|
||||
|
||||
runHook postUnpack
|
||||
'';
|
||||
|
||||
# Use ln for license to prevent being garbage collection
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out
|
||||
|
@ -207,7 +226,7 @@ let
|
|||
cp -r wechat-uos/* $out
|
||||
|
||||
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/
|
||||
|
||||
runHook postInstall
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
buildGraalvmNativeImage rec {
|
||||
pname = "yamlscript";
|
||||
version = "0.1.56";
|
||||
version = "0.1.57";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/yaml/yamlscript/releases/download/${version}/yamlscript.cli-${version}-standalone.jar";
|
||||
hash = "sha256-4ZjQYl4NdqbzyeEWDthBA8fWJFlIuMRtvHLtdlVYQmw=";
|
||||
hash = "sha256-nuYfYz1Q7PtVb9A2KEN2XGeINifEjsM4IqGiUBbTGFM=";
|
||||
};
|
||||
|
||||
executable = "ys";
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "youtrack";
|
||||
version = "2024.1.27971";
|
||||
version = "2024.1.28928";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://download.jetbrains.com/charisma/youtrack-${finalAttrs.version}.zip";
|
||||
hash = "sha256-DropdHT3ZA4kuxyE8xyHB079OMzYH4zKPt38oW7XoFY=";
|
||||
hash = "sha256-8+dZ1YTpvOX0IEEbFzv4t8T/U/BZMeDCZL7Ju25WBpE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
let
|
||||
themeName = "Dracula";
|
||||
version = "unstable-2024-04-08";
|
||||
version = "unstable-2024-04-16";
|
||||
in
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "dracula-theme";
|
||||
|
@ -11,8 +11,8 @@ stdenvNoCC.mkDerivation {
|
|||
src = fetchFromGitHub {
|
||||
owner = "dracula";
|
||||
repo = "gtk";
|
||||
rev = "18350cafd8e9c775737f97fb5acf0890e29bc47a";
|
||||
hash = "sha256-uhcRV7E7GDjWjetUHcz/E/g36m/yYTg3c9WJo6gYTJA=";
|
||||
rev = "557e276b41b00bbdc981c32f22ce6adc062d7c1e";
|
||||
hash = "sha256-il9zpzJeszGJ1gLkG73mtaMD8nBUFCfCXjcJV1fizxg=";
|
||||
};
|
||||
|
||||
propagatedUserEnvPkgs = [
|
||||
|
|
|
@ -24,13 +24,13 @@ lib.checkListOfEnum "${pname}: tweaks" [ "flat" "grey" "mix" "translucent" ] twe
|
|||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
inherit pname;
|
||||
version = "2023-09-09";
|
||||
version = "2024-04-20";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vinceliuice";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "dfdPEJnSmD0eqzx4ysiGPp77Beo32l2Tz1qSrbShLlc=";
|
||||
sha256 = "RbAdoix+UWKiLB+04YiPa0UwzO1fFLy56IG1MipmE+E=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -9,13 +9,13 @@
|
|||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "mint-l-icons";
|
||||
version = "1.6.7";
|
||||
version = "1.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linuxmint";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-4fBqdJq/JG9SZOLRxv/wXYG9g4wWGkvGwkWzUTDDjXY=";
|
||||
hash = "sha256-nVdx+d+KpTh9EPLhW0+FFzq3OEyacDSxHgllMm51BKk=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -11,13 +11,13 @@
|
|||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "mint-x-icons";
|
||||
version = "1.6.5";
|
||||
version = "1.6.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linuxmint";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-Z07475Uiv4GKCOrKhDBXPZVBGpxdjN7vn2y0rRAZVm0=";
|
||||
hash = "sha256-cxBZsAcGgoIY9KhjR/BWnMcttrywN6qap4lu5b2hauo=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue