Merge master into haskell-updates
This commit is contained in:
commit
466ddc4b5f
7
.github/workflows/check-by-name.yml
vendored
7
.github/workflows/check-by-name.yml
vendored
|
@ -16,6 +16,13 @@ on:
|
||||||
# so it shouldn't be a problem
|
# so it shouldn't be a problem
|
||||||
types: [opened, synchronize, reopened, edited]
|
types: [opened, synchronize, reopened, edited]
|
||||||
|
|
||||||
|
# Create a check-by-name concurrency group based on the branch name. if a new
|
||||||
|
# commit is pushed to the main branch while a previous run is still in progress,
|
||||||
|
# the previous run will be cancelled and the new one will start.
|
||||||
|
concurrency:
|
||||||
|
group: check-by-name-${{ github.ref }}
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
# We need this permission to cancel the workflow run if there's a merge conflict
|
# We need this permission to cancel the workflow run if there's a merge conflict
|
||||||
actions: write
|
actions: write
|
||||||
|
|
|
@ -46,7 +46,7 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
git clean -f
|
git clean -f
|
||||||
- name: create PR
|
- name: create PR
|
||||||
uses: peter-evans/create-pull-request@70a41aba780001da0a30141984ae2a0c95d8704e # v6.0.2
|
uses: peter-evans/create-pull-request@9153d834b60caba6d51c9b9510b087acf9f33f83 # v6.0.4
|
||||||
with:
|
with:
|
||||||
body: |
|
body: |
|
||||||
Automatic update by [update-terraform-providers](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/update-terraform-providers.yml) action.
|
Automatic update by [update-terraform-providers](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/update-terraform-providers.yml) action.
|
||||||
|
|
|
@ -148,4 +148,4 @@ All new projects should use the CUDA redistributables available in [`cudaPackage
|
||||||
| Find libraries | `configurePhase` | Missing dependency on a `dev` output | Add the missing dependency | The `dev` output typically contain CMake configuration files |
|
| Find libraries | `configurePhase` | Missing dependency on a `dev` output | Add the missing dependency | The `dev` output typically contain CMake configuration files |
|
||||||
| Find libraries | `buildPhase` or `patchelf` | Missing dependency on a `lib` or `static` output | Add the missing dependency | The `lib` or `static` output typically contain the libraries |
|
| Find libraries | `buildPhase` or `patchelf` | Missing dependency on a `lib` or `static` output | Add the missing dependency | The `lib` or `static` output typically contain the libraries |
|
||||||
|
|
||||||
In the scenario you are unable to run the resulting binary: this is arguably the most complicated as it could be any combination of the previous reasons. This type of failure typically occurs when a library attempts to load or open a library it depends on that it does not declare in its `DT_NEEDED` section. As a first step, ensure that dependencies are patched with [`cudaPackages.autoAddDriverRunpath`](https://search.nixos.org/packages?channel=unstable&type=packages&query=cudaPackages.autoAddDriverRunpath). Failing that, try running the application with [`nixGL`](https://github.com/guibou/nixGL) or a similar wrapper tool. If that works, it likely means that the application is attempting to load a library that is not in the `RPATH` or `RUNPATH` of the binary.
|
In the scenario you are unable to run the resulting binary: this is arguably the most complicated as it could be any combination of the previous reasons. This type of failure typically occurs when a library attempts to load or open a library it depends on that it does not declare in its `DT_NEEDED` section. As a first step, ensure that dependencies are patched with [`autoAddDriverRunpath`](https://search.nixos.org/packages?channel=unstable&type=packages&query=autoAddDriverRunpath). Failing that, try running the application with [`nixGL`](https://github.com/guibou/nixGL) or a similar wrapper tool. If that works, it likely means that the application is attempting to load a library that is not in the `RPATH` or `RUNPATH` of the binary.
|
||||||
|
|
|
@ -4448,6 +4448,12 @@
|
||||||
github = "DarkOnion0";
|
github = "DarkOnion0";
|
||||||
githubId = 68606322;
|
githubId = 68606322;
|
||||||
};
|
};
|
||||||
|
daru-san = {
|
||||||
|
name = "Daru";
|
||||||
|
email = "zadarumaka@proton.me";
|
||||||
|
github = "Daru-san";
|
||||||
|
githubId = 135046711;
|
||||||
|
};
|
||||||
das-g = {
|
das-g = {
|
||||||
email = "nixpkgs@raphael.dasgupta.ch";
|
email = "nixpkgs@raphael.dasgupta.ch";
|
||||||
github = "das-g";
|
github = "das-g";
|
||||||
|
@ -11662,6 +11668,12 @@
|
||||||
github = "LongerHV";
|
github = "LongerHV";
|
||||||
githubId = 46924944;
|
githubId = 46924944;
|
||||||
};
|
};
|
||||||
|
lonyelon = {
|
||||||
|
email = "sergio@lony.xyz";
|
||||||
|
name = "Sergio Miguéns Iglesias";
|
||||||
|
github = "lonyelon";
|
||||||
|
githubId = 18664655;
|
||||||
|
};
|
||||||
lopsided98 = {
|
lopsided98 = {
|
||||||
email = "benwolsieffer@gmail.com";
|
email = "benwolsieffer@gmail.com";
|
||||||
github = "lopsided98";
|
github = "lopsided98";
|
||||||
|
|
|
@ -46,9 +46,7 @@ Use `services.pipewire.extraConfig` or `services.pipewire.configPackages` for Pi
|
||||||
|
|
||||||
- The default dbus implementation has transitioned to dbus-broker from the classic dbus daemon for better performance and reliability. Users can revert to the classic dbus daemon by setting `services.dbus.implementation = "dbus";`. For detailed deviations, refer to [dbus-broker's deviations page](https://github.com/bus1/dbus-broker/wiki/Deviations).
|
- The default dbus implementation has transitioned to dbus-broker from the classic dbus daemon for better performance and reliability. Users can revert to the classic dbus daemon by setting `services.dbus.implementation = "dbus";`. For detailed deviations, refer to [dbus-broker's deviations page](https://github.com/bus1/dbus-broker/wiki/Deviations).
|
||||||
|
|
||||||
- A new option `virtualisation.containers.cdi` was added. It contains `static` and `dynamic` attributes (corresponding to `/etc/cdi` and `/run/cdi` respectively) to configure the Container Device Interface (CDI).
|
- `virtualisation.docker.enableNvidia` and `virtualisation.podman.enableNvidia` options are deprecated. `hardware.nvidia-container-toolkit.enable` should be used instead. This option will expose GPUs on containers with the `--device` CLI option. This is supported by Docker 25, Podman 3.2.0 and Singularity 4. Any container runtime that supports the CDI specification will take advantage of this feature.
|
||||||
|
|
||||||
- `virtualisation.docker.enableNvidia` and `virtualisation.podman.enableNvidia` options are deprecated. `virtualisation.containers.cdi.dynamic.nvidia.enable` should be used instead. This option will expose GPUs on containers with the `--device` CLI option. This is supported by Docker 25, Podman 3.2.0 and Singularity 4. Any container runtime that supports the CDI specification will take advantage of this feature.
|
|
||||||
|
|
||||||
- `system.etc.overlay.enable` option was added. If enabled, `/etc` is
|
- `system.etc.overlay.enable` option was added. If enabled, `/etc` is
|
||||||
mounted via an overlayfs instead of being created by a custom perl script.
|
mounted via an overlayfs instead of being created by a custom perl script.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ config, lib, pkgs }:
|
{ config, lib, pkgs, utils }:
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (lib)
|
inherit (lib)
|
||||||
|
@ -396,8 +396,41 @@ in rec {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
serviceConfig = { config, ... }: {
|
serviceConfig = { name, config, ... }: {
|
||||||
config.environment.PATH = mkIf (config.path != []) "${makeBinPath config.path}:${makeSearchPathOutput "bin" "sbin" config.path}";
|
config = {
|
||||||
|
name = "${name}.service";
|
||||||
|
environment.PATH = mkIf (config.path != []) "${makeBinPath config.path}:${makeSearchPathOutput "bin" "sbin" config.path}";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pathConfig = { name, config, ... }: {
|
||||||
|
config = {
|
||||||
|
name = "${name}.path";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
socketConfig = { name, config, ... }: {
|
||||||
|
config = {
|
||||||
|
name = "${name}.socket";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sliceConfig = { name, config, ... }: {
|
||||||
|
config = {
|
||||||
|
name = "${name}.slice";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
targetConfig = { name, config, ... }: {
|
||||||
|
config = {
|
||||||
|
name = "${name}.target";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
timerConfig = { name, config, ... }: {
|
||||||
|
config = {
|
||||||
|
name = "${name}.timer";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
stage2ServiceConfig = {
|
stage2ServiceConfig = {
|
||||||
|
@ -416,6 +449,7 @@ in rec {
|
||||||
|
|
||||||
mountConfig = { config, ... }: {
|
mountConfig = { config, ... }: {
|
||||||
config = {
|
config = {
|
||||||
|
name = "${utils.escapeSystemdPath config.where}.mount";
|
||||||
mountConfig =
|
mountConfig =
|
||||||
{ What = config.what;
|
{ What = config.what;
|
||||||
Where = config.where;
|
Where = config.where;
|
||||||
|
@ -429,6 +463,7 @@ in rec {
|
||||||
|
|
||||||
automountConfig = { config, ... }: {
|
automountConfig = { config, ... }: {
|
||||||
config = {
|
config = {
|
||||||
|
name = "${utils.escapeSystemdPath config.where}.automount";
|
||||||
automountConfig =
|
automountConfig =
|
||||||
{ Where = config.where;
|
{ Where = config.where;
|
||||||
};
|
};
|
||||||
|
@ -444,8 +479,8 @@ in rec {
|
||||||
WantedBy=${concatStringsSep " " def.wantedBy}
|
WantedBy=${concatStringsSep " " def.wantedBy}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
targetToUnit = name: def:
|
targetToUnit = def:
|
||||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||||
text =
|
text =
|
||||||
''
|
''
|
||||||
[Unit]
|
[Unit]
|
||||||
|
@ -453,8 +488,8 @@ in rec {
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
serviceToUnit = name: def:
|
serviceToUnit = def:
|
||||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||||
text = commonUnitText def (''
|
text = commonUnitText def (''
|
||||||
[Service]
|
[Service]
|
||||||
'' + (let env = cfg.globalEnvironment // def.environment;
|
'' + (let env = cfg.globalEnvironment // def.environment;
|
||||||
|
@ -463,7 +498,7 @@ in rec {
|
||||||
"Environment=${toJSON "${n}=${env.${n}}"}\n";
|
"Environment=${toJSON "${n}=${env.${n}}"}\n";
|
||||||
# systemd max line length is now 1MiB
|
# systemd max line length is now 1MiB
|
||||||
# https://github.com/systemd/systemd/commit/e6dde451a51dc5aaa7f4d98d39b8fe735f73d2af
|
# https://github.com/systemd/systemd/commit/e6dde451a51dc5aaa7f4d98d39b8fe735f73d2af
|
||||||
in if stringLength s >= 1048576 then throw "The value of the environment variable ‘${n}’ in systemd service ‘${name}.service’ is too long." else s) (attrNames env))
|
in if stringLength s >= 1048576 then throw "The value of the environment variable ‘${n}’ in systemd service ‘${def.name}.service’ is too long." else s) (attrNames env))
|
||||||
+ (if def ? reloadIfChanged && def.reloadIfChanged then ''
|
+ (if def ? reloadIfChanged && def.reloadIfChanged then ''
|
||||||
X-ReloadIfChanged=true
|
X-ReloadIfChanged=true
|
||||||
'' else if (def ? restartIfChanged && !def.restartIfChanged) then ''
|
'' else if (def ? restartIfChanged && !def.restartIfChanged) then ''
|
||||||
|
@ -474,8 +509,8 @@ in rec {
|
||||||
'' + attrsToSection def.serviceConfig);
|
'' + attrsToSection def.serviceConfig);
|
||||||
};
|
};
|
||||||
|
|
||||||
socketToUnit = name: def:
|
socketToUnit = def:
|
||||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||||
text = commonUnitText def ''
|
text = commonUnitText def ''
|
||||||
[Socket]
|
[Socket]
|
||||||
${attrsToSection def.socketConfig}
|
${attrsToSection def.socketConfig}
|
||||||
|
@ -484,40 +519,40 @@ in rec {
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
timerToUnit = name: def:
|
timerToUnit = def:
|
||||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||||
text = commonUnitText def ''
|
text = commonUnitText def ''
|
||||||
[Timer]
|
[Timer]
|
||||||
${attrsToSection def.timerConfig}
|
${attrsToSection def.timerConfig}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
pathToUnit = name: def:
|
pathToUnit = def:
|
||||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||||
text = commonUnitText def ''
|
text = commonUnitText def ''
|
||||||
[Path]
|
[Path]
|
||||||
${attrsToSection def.pathConfig}
|
${attrsToSection def.pathConfig}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
mountToUnit = name: def:
|
mountToUnit = def:
|
||||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||||
text = commonUnitText def ''
|
text = commonUnitText def ''
|
||||||
[Mount]
|
[Mount]
|
||||||
${attrsToSection def.mountConfig}
|
${attrsToSection def.mountConfig}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
automountToUnit = name: def:
|
automountToUnit = def:
|
||||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||||
text = commonUnitText def ''
|
text = commonUnitText def ''
|
||||||
[Automount]
|
[Automount]
|
||||||
${attrsToSection def.automountConfig}
|
${attrsToSection def.automountConfig}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
sliceToUnit = name: def:
|
sliceToUnit = def:
|
||||||
{ inherit (def) aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
{ inherit (def) name aliases wantedBy requiredBy upheldBy enable overrideStrategy;
|
||||||
text = commonUnitText def ''
|
text = commonUnitText def ''
|
||||||
[Slice]
|
[Slice]
|
||||||
${attrsToSection def.sliceConfig}
|
${attrsToSection def.sliceConfig}
|
||||||
|
|
|
@ -5,8 +5,13 @@ let
|
||||||
automountConfig
|
automountConfig
|
||||||
makeUnit
|
makeUnit
|
||||||
mountConfig
|
mountConfig
|
||||||
|
pathConfig
|
||||||
|
sliceConfig
|
||||||
|
socketConfig
|
||||||
stage1ServiceConfig
|
stage1ServiceConfig
|
||||||
stage2ServiceConfig
|
stage2ServiceConfig
|
||||||
|
targetConfig
|
||||||
|
timerConfig
|
||||||
unitConfig
|
unitConfig
|
||||||
;
|
;
|
||||||
|
|
||||||
|
@ -48,29 +53,32 @@ let
|
||||||
;
|
;
|
||||||
in
|
in
|
||||||
|
|
||||||
rec {
|
{
|
||||||
units = attrsOf (submodule ({ name, config, ... }: {
|
units = attrsOf (submodule ({ name, config, ... }: {
|
||||||
options = concreteUnitOptions;
|
options = concreteUnitOptions;
|
||||||
config = { unit = mkDefault (makeUnit name config); };
|
config = {
|
||||||
|
name = mkDefault name;
|
||||||
|
unit = mkDefault (makeUnit name config);
|
||||||
|
};
|
||||||
}));
|
}));
|
||||||
|
|
||||||
services = attrsOf (submodule [ stage2ServiceOptions unitConfig stage2ServiceConfig ]);
|
services = attrsOf (submodule [ stage2ServiceOptions unitConfig stage2ServiceConfig ]);
|
||||||
initrdServices = attrsOf (submodule [ stage1ServiceOptions unitConfig stage1ServiceConfig ]);
|
initrdServices = attrsOf (submodule [ stage1ServiceOptions unitConfig stage1ServiceConfig ]);
|
||||||
|
|
||||||
targets = attrsOf (submodule [ stage2CommonUnitOptions unitConfig ]);
|
targets = attrsOf (submodule [ stage2CommonUnitOptions unitConfig targetConfig ]);
|
||||||
initrdTargets = attrsOf (submodule [ stage1CommonUnitOptions unitConfig ]);
|
initrdTargets = attrsOf (submodule [ stage1CommonUnitOptions unitConfig targetConfig ]);
|
||||||
|
|
||||||
sockets = attrsOf (submodule [ stage2SocketOptions unitConfig ]);
|
sockets = attrsOf (submodule [ stage2SocketOptions unitConfig socketConfig]);
|
||||||
initrdSockets = attrsOf (submodule [ stage1SocketOptions unitConfig ]);
|
initrdSockets = attrsOf (submodule [ stage1SocketOptions unitConfig socketConfig ]);
|
||||||
|
|
||||||
timers = attrsOf (submodule [ stage2TimerOptions unitConfig ]);
|
timers = attrsOf (submodule [ stage2TimerOptions unitConfig timerConfig ]);
|
||||||
initrdTimers = attrsOf (submodule [ stage1TimerOptions unitConfig ]);
|
initrdTimers = attrsOf (submodule [ stage1TimerOptions unitConfig timerConfig ]);
|
||||||
|
|
||||||
paths = attrsOf (submodule [ stage2PathOptions unitConfig ]);
|
paths = attrsOf (submodule [ stage2PathOptions unitConfig pathConfig ]);
|
||||||
initrdPaths = attrsOf (submodule [ stage1PathOptions unitConfig ]);
|
initrdPaths = attrsOf (submodule [ stage1PathOptions unitConfig pathConfig ]);
|
||||||
|
|
||||||
slices = attrsOf (submodule [ stage2SliceOptions unitConfig ]);
|
slices = attrsOf (submodule [ stage2SliceOptions unitConfig sliceConfig ]);
|
||||||
initrdSlices = attrsOf (submodule [ stage1SliceOptions unitConfig ]);
|
initrdSlices = attrsOf (submodule [ stage1SliceOptions unitConfig sliceConfig ]);
|
||||||
|
|
||||||
mounts = listOf (submodule [ stage2MountOptions unitConfig mountConfig ]);
|
mounts = listOf (submodule [ stage2MountOptions unitConfig mountConfig ]);
|
||||||
initrdMounts = listOf (submodule [ stage1MountOptions unitConfig mountConfig ]);
|
initrdMounts = listOf (submodule [ stage1MountOptions unitConfig mountConfig ]);
|
||||||
|
|
|
@ -65,6 +65,14 @@ in rec {
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
name = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
description = ''
|
||||||
|
The name of this systemd unit, including its extension.
|
||||||
|
This can be used to refer to this unit from other systemd units.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
overrideStrategy = mkOption {
|
overrideStrategy = mkOption {
|
||||||
default = "asDropinIfExists";
|
default = "asDropinIfExists";
|
||||||
type = types.enum [ "asDropinIfExists" "asDropin" ];
|
type = types.enum [ "asDropinIfExists" "asDropin" ];
|
||||||
|
|
|
@ -35,7 +35,8 @@ let
|
||||||
inherit (lib.strings) toJSON normalizePath escapeC;
|
inherit (lib.strings) toJSON normalizePath escapeC;
|
||||||
in
|
in
|
||||||
|
|
||||||
rec {
|
let
|
||||||
|
utils = rec {
|
||||||
|
|
||||||
# Copy configuration files to avoid having the entire sources in the system closure
|
# Copy configuration files to avoid having the entire sources in the system closure
|
||||||
copyFile = filePath: pkgs.runCommand (builtins.unsafeDiscardStringContext (baseNameOf filePath)) {} ''
|
copyFile = filePath: pkgs.runCommand (builtins.unsafeDiscardStringContext (baseNameOf filePath)) {} ''
|
||||||
|
@ -262,11 +263,12 @@ rec {
|
||||||
filter (x: !(elem (getName x) namesToRemove)) packages;
|
filter (x: !(elem (getName x) namesToRemove)) packages;
|
||||||
|
|
||||||
systemdUtils = {
|
systemdUtils = {
|
||||||
lib = import ./systemd-lib.nix { inherit lib config pkgs; };
|
lib = import ./systemd-lib.nix { inherit lib config pkgs utils; };
|
||||||
unitOptions = import ./systemd-unit-options.nix { inherit lib systemdUtils; };
|
unitOptions = import ./systemd-unit-options.nix { inherit lib systemdUtils; };
|
||||||
types = import ./systemd-types.nix { inherit lib systemdUtils pkgs; };
|
types = import ./systemd-types.nix { inherit lib systemdUtils pkgs; };
|
||||||
network = {
|
network = {
|
||||||
units = import ./systemd-network-units.nix { inherit lib systemdUtils; };
|
units = import ./systemd-network-units.nix { inherit lib systemdUtils; };
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
};
|
||||||
|
in utils
|
||||||
|
|
|
@ -559,7 +559,7 @@
|
||||||
./services/hardware/kanata.nix
|
./services/hardware/kanata.nix
|
||||||
./services/hardware/lcd.nix
|
./services/hardware/lcd.nix
|
||||||
./services/hardware/lirc.nix
|
./services/hardware/lirc.nix
|
||||||
./services/hardware/nvidia-container-toolkit-cdi-generator
|
./services/hardware/nvidia-container-toolkit
|
||||||
./services/hardware/monado.nix
|
./services/hardware/monado.nix
|
||||||
./services/hardware/nvidia-optimus.nix
|
./services/hardware/nvidia-optimus.nix
|
||||||
./services/hardware/openrgb.nix
|
./services/hardware/openrgb.nix
|
||||||
|
|
|
@ -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" ];
|
after = [ "network.target" ];
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
|
||||||
environment = config.environment.extra // {
|
environment = cfg.environment.extra // {
|
||||||
CODER_ACCESS_URL = cfg.accessUrl;
|
CODER_ACCESS_URL = cfg.accessUrl;
|
||||||
CODER_WILDCARD_ACCESS_URL = cfg.wildcardAccessUrl;
|
CODER_WILDCARD_ACCESS_URL = cfg.wildcardAccessUrl;
|
||||||
CODER_PG_CONNECTION_URL = "user=${cfg.database.username} ${optionalString (cfg.database.password != null) "password=${cfg.database.password}"} database=${cfg.database.database} host=${cfg.database.host} ${optionalString (cfg.database.sslmode != null) "sslmode=${cfg.database.sslmode}"}";
|
CODER_PG_CONNECTION_URL = "user=${cfg.database.username} ${optionalString (cfg.database.password != null) "password=${cfg.database.password}"} database=${cfg.database.database} host=${cfg.database.host} ${optionalString (cfg.database.sslmode != null) "sslmode=${cfg.database.sslmode}"}";
|
||||||
|
|
|
@ -246,7 +246,9 @@ in
|
||||||
|
|
||||||
passwordFile = mkOption {
|
passwordFile = mkOption {
|
||||||
type = types.path;
|
type = types.path;
|
||||||
description = "A file containing the initial password for the admin user.";
|
description = ''
|
||||||
|
A file containing the initial password for the administrator account "admin".
|
||||||
|
'';
|
||||||
example = "/run/keys/mediawiki-password";
|
example = "/run/keys/mediawiki-password";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -595,18 +595,17 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.units =
|
systemd.units =
|
||||||
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit n v)) cfg.paths
|
let
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services
|
withName = cfgToUnit: cfg: lib.nameValuePair cfg.name (cfgToUnit cfg);
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit n v)) cfg.slices
|
in
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit n v)) cfg.sockets
|
mapAttrs' (_: withName pathToUnit) cfg.paths
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit n v)) cfg.targets
|
// mapAttrs' (_: withName serviceToUnit) cfg.services
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit n v)) cfg.timers
|
// mapAttrs' (_: withName sliceToUnit) cfg.slices
|
||||||
// listToAttrs (map
|
// mapAttrs' (_: withName socketToUnit) cfg.sockets
|
||||||
(v: let n = escapeSystemdPath v.where;
|
// mapAttrs' (_: withName targetToUnit) cfg.targets
|
||||||
in nameValuePair "${n}.mount" (mountToUnit n v)) cfg.mounts)
|
// mapAttrs' (_: withName timerToUnit) cfg.timers
|
||||||
// listToAttrs (map
|
// listToAttrs (map (withName mountToUnit) cfg.mounts)
|
||||||
(v: let n = escapeSystemdPath v.where;
|
// listToAttrs (map (withName automountToUnit) cfg.automounts);
|
||||||
in nameValuePair "${n}.automount" (automountToUnit n v)) cfg.automounts);
|
|
||||||
|
|
||||||
# Environment of PID 1
|
# Environment of PID 1
|
||||||
systemd.managerEnvironment = {
|
systemd.managerEnvironment = {
|
||||||
|
|
|
@ -490,18 +490,18 @@ in {
|
||||||
|
|
||||||
targets.initrd.aliases = ["default.target"];
|
targets.initrd.aliases = ["default.target"];
|
||||||
units =
|
units =
|
||||||
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit n v)) cfg.paths
|
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit v)) cfg.paths
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services
|
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit v)) cfg.services
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit n v)) cfg.slices
|
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit v)) cfg.slices
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit n v)) cfg.sockets
|
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit v)) cfg.sockets
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit n v)) cfg.targets
|
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit v)) cfg.targets
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit n v)) cfg.timers
|
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit v)) cfg.timers
|
||||||
// listToAttrs (map
|
// listToAttrs (map
|
||||||
(v: let n = escapeSystemdPath v.where;
|
(v: let n = escapeSystemdPath v.where;
|
||||||
in nameValuePair "${n}.mount" (mountToUnit n v)) cfg.mounts)
|
in nameValuePair "${n}.mount" (mountToUnit v)) cfg.mounts)
|
||||||
// listToAttrs (map
|
// listToAttrs (map
|
||||||
(v: let n = escapeSystemdPath v.where;
|
(v: let n = escapeSystemdPath v.where;
|
||||||
in nameValuePair "${n}.automount" (automountToUnit n v)) cfg.automounts);
|
in nameValuePair "${n}.automount" (automountToUnit v)) cfg.automounts);
|
||||||
|
|
||||||
# make sure all the /dev nodes are set up
|
# make sure all the /dev nodes are set up
|
||||||
services.systemd-tmpfiles-setup-dev.wantedBy = ["sysinit.target"];
|
services.systemd-tmpfiles-setup-dev.wantedBy = ["sysinit.target"];
|
||||||
|
|
|
@ -175,12 +175,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.user.units =
|
systemd.user.units =
|
||||||
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit n v)) cfg.paths
|
mapAttrs' (n: v: nameValuePair "${n}.path" (pathToUnit v)) cfg.paths
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services
|
// mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit v)) cfg.services
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit n v)) cfg.slices
|
// mapAttrs' (n: v: nameValuePair "${n}.slice" (sliceToUnit v)) cfg.slices
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit n v)) cfg.sockets
|
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit v)) cfg.sockets
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit n v)) cfg.targets
|
// mapAttrs' (n: v: nameValuePair "${n}.target" (targetToUnit v)) cfg.targets
|
||||||
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit n v)) cfg.timers;
|
// mapAttrs' (n: v: nameValuePair "${n}.timer" (timerToUnit v)) cfg.timers;
|
||||||
|
|
||||||
# Generate timer units for all services that have a ‘startAt’ value.
|
# Generate timer units for all services that have a ‘startAt’ value.
|
||||||
systemd.user.timers =
|
systemd.user.timers =
|
||||||
|
|
|
@ -28,43 +28,6 @@ in
|
||||||
description = "Enable the OCI seccomp BPF hook";
|
description = "Enable the OCI seccomp BPF hook";
|
||||||
};
|
};
|
||||||
|
|
||||||
cdi = {
|
|
||||||
dynamic.nvidia.enable = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = ''
|
|
||||||
Enable dynamic CDI configuration for NVidia devices by running nvidia-container-toolkit on boot.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
static = mkOption {
|
|
||||||
type = types.attrs;
|
|
||||||
default = { };
|
|
||||||
description = ''
|
|
||||||
Declarative CDI specification. Each key of the attribute set
|
|
||||||
will be mapped to a file in /etc/cdi. It is required for every
|
|
||||||
key to be provided in JSON format.
|
|
||||||
'';
|
|
||||||
example = {
|
|
||||||
some-vendor = builtins.fromJSON ''
|
|
||||||
{
|
|
||||||
"cdiVersion": "0.5.0",
|
|
||||||
"kind": "some-vendor.com/foo",
|
|
||||||
"devices": [],
|
|
||||||
"containerEdits": []
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
|
|
||||||
some-other-vendor = {
|
|
||||||
cdiVersion = "0.5.0";
|
|
||||||
kind = "some-other-vendor.com/bar";
|
|
||||||
devices = [];
|
|
||||||
containerEdits = [];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
containersConf.settings = mkOption {
|
containersConf.settings = mkOption {
|
||||||
type = toml.type;
|
type = toml.type;
|
||||||
default = { };
|
default = { };
|
||||||
|
@ -150,8 +113,6 @@ in
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
|
|
||||||
hardware.nvidia-container-toolkit-cdi-generator.enable = lib.mkIf cfg.cdi.dynamic.nvidia.enable true;
|
|
||||||
|
|
||||||
virtualisation.containers.containersConf.cniPlugins = [ pkgs.cni-plugins ];
|
virtualisation.containers.containersConf.cniPlugins = [ pkgs.cni-plugins ];
|
||||||
|
|
||||||
virtualisation.containers.containersConf.settings = {
|
virtualisation.containers.containersConf.settings = {
|
||||||
|
@ -163,13 +124,7 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.etc = let
|
environment.etc = {
|
||||||
cdiStaticConfigurationFiles = (lib.attrsets.mapAttrs'
|
|
||||||
(name: value:
|
|
||||||
lib.attrsets.nameValuePair "cdi/${name}.json"
|
|
||||||
{ text = builtins.toJSON value; })
|
|
||||||
cfg.cdi.static);
|
|
||||||
in {
|
|
||||||
"containers/containers.conf".source =
|
"containers/containers.conf".source =
|
||||||
toml.generate "containers.conf" cfg.containersConf.settings;
|
toml.generate "containers.conf" cfg.containersConf.settings;
|
||||||
|
|
||||||
|
@ -183,7 +138,7 @@ in
|
||||||
"containers/policy.json".source =
|
"containers/policy.json".source =
|
||||||
if cfg.policy != { } then pkgs.writeText "policy.json" (builtins.toJSON cfg.policy)
|
if cfg.policy != { } then pkgs.writeText "policy.json" (builtins.toJSON cfg.policy)
|
||||||
else "${pkgs.skopeo.policy}/default-policy.json";
|
else "${pkgs.skopeo.policy}/default-policy.json";
|
||||||
} // cdiStaticConfigurationFiles;
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -41,6 +41,7 @@ let
|
||||||
qemu-utils
|
qemu-utils
|
||||||
rsync
|
rsync
|
||||||
squashfsTools
|
squashfsTools
|
||||||
|
swtpm
|
||||||
systemd
|
systemd
|
||||||
thin-provisioning-tools
|
thin-provisioning-tools
|
||||||
util-linux
|
util-linux
|
||||||
|
|
|
@ -30,6 +30,9 @@ in
|
||||||
memorySize = 1024;
|
memorySize = 1024;
|
||||||
diskSize = 4096;
|
diskSize = 4096;
|
||||||
|
|
||||||
|
# Provide a TPM to test vTPM support for guests
|
||||||
|
tpm.enable = true;
|
||||||
|
|
||||||
incus.enable = true;
|
incus.enable = true;
|
||||||
};
|
};
|
||||||
networking.nftables.enable = true;
|
networking.nftables.enable = true;
|
||||||
|
@ -47,8 +50,14 @@ in
|
||||||
with subtest("virtual-machine image can be imported"):
|
with subtest("virtual-machine image can be imported"):
|
||||||
machine.succeed("incus image import ${vm-image-metadata}/*/*.tar.xz ${vm-image-disk}/nixos.qcow2 --alias nixos")
|
machine.succeed("incus image import ${vm-image-metadata}/*/*.tar.xz ${vm-image-disk}/nixos.qcow2 --alias nixos")
|
||||||
|
|
||||||
|
with subtest("virtual-machine can be created"):
|
||||||
|
machine.succeed("incus create nixos ${instance-name} --vm --config limits.memory=512MB --config security.secureboot=false")
|
||||||
|
|
||||||
|
with subtest("virtual tpm can be configured"):
|
||||||
|
machine.succeed("incus config device add ${instance-name} vtpm tpm path=/dev/tpm0")
|
||||||
|
|
||||||
with subtest("virtual-machine can be launched and become available"):
|
with subtest("virtual-machine can be launched and become available"):
|
||||||
machine.succeed("incus launch nixos ${instance-name} --vm --config limits.memory=512MB --config security.secureboot=false")
|
machine.succeed("incus start ${instance-name}")
|
||||||
with machine.nested("Waiting for instance to start and be usable"):
|
with machine.nested("Waiting for instance to start and be usable"):
|
||||||
retry(instance_is_up)
|
retry(instance_is_up)
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import ./make-test-python.nix ({ pkgs, ... }: {
|
import ./make-test-python.nix ({ pkgs, ... }: {
|
||||||
name = "systemd";
|
name = "systemd";
|
||||||
|
|
||||||
nodes.machine = { lib, ... }: {
|
nodes.machine = { config, lib, ... }: {
|
||||||
imports = [ common/user-account.nix common/x11.nix ];
|
imports = [ common/user-account.nix common/x11.nix ];
|
||||||
|
|
||||||
virtualisation.emptyDiskImages = [ 512 512 ];
|
virtualisation.emptyDiskImages = [ 512 512 ];
|
||||||
|
@ -38,9 +38,18 @@ import ./make-test-python.nix ({ pkgs, ... }: {
|
||||||
script = "true";
|
script = "true";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
systemd.services.testDependency1 = {
|
||||||
|
description = "Test Dependency 1";
|
||||||
|
wantedBy = [ config.systemd.services."testservice1".name ];
|
||||||
|
serviceConfig.Type = "oneshot";
|
||||||
|
script = ''
|
||||||
|
true
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
systemd.services.testservice1 = {
|
systemd.services.testservice1 = {
|
||||||
description = "Test Service 1";
|
description = "Test Service 1";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ config.systemd.targets.multi-user.name ];
|
||||||
serviceConfig.Type = "oneshot";
|
serviceConfig.Type = "oneshot";
|
||||||
script = ''
|
script = ''
|
||||||
if [ "$XXX_SYSTEM" = foo ]; then
|
if [ "$XXX_SYSTEM" = foo ]; then
|
||||||
|
|
|
@ -41,6 +41,7 @@
|
||||||
, qtmultimedia
|
, qtmultimedia
|
||||||
, qtx11extras
|
, qtx11extras
|
||||||
, soxr
|
, soxr
|
||||||
|
, vgmstream
|
||||||
, wavpack
|
, wavpack
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
@ -109,6 +110,10 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
dontWrapQtApps = true;
|
dontWrapQtApps = true;
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
ln -s ${vgmstream.override { buildAudaciousPlugin = true; }}/lib/audacious/Input/* $out/lib/audacious/Input
|
||||||
|
'';
|
||||||
|
|
||||||
meta = audacious.meta // {
|
meta = audacious.meta // {
|
||||||
description = "Plugins for Audacious music player";
|
description = "Plugins for Audacious music player";
|
||||||
};
|
};
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
, stdenv
|
, stdenv
|
||||||
, buildDotnetModule
|
, buildDotnetModule
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, autoPatchelfHook
|
|
||||||
, fontconfig
|
, fontconfig
|
||||||
, xorg
|
, xorg
|
||||||
, libglvnd
|
, libglvnd
|
||||||
|
@ -27,7 +26,6 @@ buildDotnetModule rec {
|
||||||
dotnetFlags = [ "-p:Runtimeidentifier=linux-x64" ];
|
dotnetFlags = [ "-p:Runtimeidentifier=linux-x64" ];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
autoPatchelfHook
|
|
||||||
copyDesktopItems
|
copyDesktopItems
|
||||||
graphicsmagick
|
graphicsmagick
|
||||||
];
|
];
|
||||||
|
|
|
@ -8,13 +8,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "pt2-clone";
|
pname = "pt2-clone";
|
||||||
version = "1.67";
|
version = "1.68";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "8bitbubsy";
|
owner = "8bitbubsy";
|
||||||
repo = "pt2-clone";
|
repo = "pt2-clone";
|
||||||
rev = "v${finalAttrs.version}";
|
rev = "v${finalAttrs.version}";
|
||||||
sha256 = "sha256-fTUTXwS6A72zhKkANlSljQVvPeN5rOTyuyb8vLxYfdk=";
|
sha256 = "sha256-xlXwOxmJ5cL1ouTOnFwTvx959IDQIvJ0ZRk+G9p0HbA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ stdenv, lib, fetchFromGitHub, cmake, pkg-config
|
{ stdenv, lib, fetchFromGitHub, cmake, pkg-config, gtk3
|
||||||
, mpg123, ffmpeg, libvorbis, libao, jansson, speex
|
, audacious, mpg123, ffmpeg, libvorbis, libao, jansson, speex
|
||||||
, nix-update-script
|
, nix-update-script
|
||||||
|
, buildAudaciousPlugin ? false # only build cli by default, pkgs.audacious-plugins sets this to enable plugin support
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
|
@ -19,16 +20,29 @@ stdenv.mkDerivation rec {
|
||||||
extraArgs = [ "--version-regex" "r(.*)" ];
|
extraArgs = [ "--version-regex" "r(.*)" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake pkg-config ];
|
nativeBuildInputs = [
|
||||||
|
cmake
|
||||||
|
pkg-config
|
||||||
|
] ++ lib.optional buildAudaciousPlugin gtk3;
|
||||||
|
|
||||||
buildInputs = [ mpg123 ffmpeg libvorbis libao jansson speex ];
|
buildInputs = [
|
||||||
|
mpg123
|
||||||
|
ffmpeg
|
||||||
|
libvorbis
|
||||||
|
libao
|
||||||
|
jansson
|
||||||
|
speex
|
||||||
|
] ++ lib.optional buildAudaciousPlugin (audacious.override { audacious-plugins = null; });
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
substituteInPlace cmake/dependencies/audacious.cmake \
|
||||||
|
--replace "pkg_get_variable(AUDACIOUS_PLUGIN_DIR audacious plugin_dir)" "set(AUDACIOUS_PLUGIN_DIR \"$out/lib/audacious\")"
|
||||||
|
'';
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
# There's no nice way to build the audacious plugin without a circular dependency
|
|
||||||
"-DBUILD_AUDACIOUS=OFF"
|
|
||||||
# It always tries to download it, no option to use the system one
|
# It always tries to download it, no option to use the system one
|
||||||
"-DUSE_CELT=OFF"
|
"-DUSE_CELT=OFF"
|
||||||
];
|
] ++ lib.optional (! buildAudaciousPlugin) "-DBUILD_AUDACIOUS=OFF";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A library for playback of various streamed audio formats used in video games";
|
description = "A library for playback of various streamed audio formats used in video games";
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
buildDotnetModule,
|
buildDotnetModule,
|
||||||
dotnetCorePackages,
|
dotnetCorePackages,
|
||||||
autoPatchelfHook,
|
|
||||||
zlib,
|
zlib,
|
||||||
openssl,
|
openssl,
|
||||||
}:
|
}:
|
||||||
|
@ -25,7 +24,6 @@ buildDotnetModule rec {
|
||||||
dotnet-sdk = dotnetCorePackages.sdk_7_0;
|
dotnet-sdk = dotnetCorePackages.sdk_7_0;
|
||||||
dotnet-runtime = dotnetCorePackages.aspnetcore_7_0;
|
dotnet-runtime = dotnetCorePackages.aspnetcore_7_0;
|
||||||
|
|
||||||
nativeBuildInputs = [autoPatchelfHook];
|
|
||||||
buildInputs = [stdenv.cc.cc.lib zlib];
|
buildInputs = [stdenv.cc.cc.lib zlib];
|
||||||
|
|
||||||
runtimeDeps = [openssl zlib];
|
runtimeDeps = [openssl zlib];
|
||||||
|
|
|
@ -11,12 +11,12 @@
|
||||||
, pyright
|
, pyright
|
||||||
, ruff
|
, ruff
|
||||||
, tempel
|
, tempel
|
||||||
|
, writeScript
|
||||||
, writeText
|
, writeText
|
||||||
, unstableGitUpdater
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
rev = "0b30d95c6de95b150d93ecee325b95e04ff09e46";
|
rev = "4d18701bdef13f6bdc0ad58d26896dff0548dbab";
|
||||||
python = python3.withPackages (ps: with ps; [
|
python = python3.withPackages (ps: with ps; [
|
||||||
epc
|
epc
|
||||||
orjson
|
orjson
|
||||||
|
@ -28,13 +28,13 @@ let
|
||||||
in
|
in
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "lsp-bridge";
|
pname = "lsp-bridge";
|
||||||
version = "20231021.309"; # 3:09 UTC
|
version = "20240423.38";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "manateelazycat";
|
owner = "manateelazycat";
|
||||||
repo = "lsp-bridge";
|
repo = "lsp-bridge";
|
||||||
inherit rev;
|
inherit rev;
|
||||||
hash = "sha256-hR7bZh0ElJ8F9ToJ4dkazF19T8PE01MTcxKrjeaEp4o=";
|
hash = "sha256-6taxbsu5v/mQBwl0CPt/fsTQpclNhi2alp/xIh5omJA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
commit = rev;
|
commit = rev;
|
||||||
|
@ -88,7 +88,22 @@ melpaBuild {
|
||||||
runHook postCheck
|
runHook postCheck
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.updateScript = unstableGitUpdater { };
|
passthru.updateScript = writeScript "update.sh" ''
|
||||||
|
#!/usr/bin/env nix-shell
|
||||||
|
#!nix-shell -i bash -p common-updater-scripts coreutils git gnused
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
tmpdir="$(mktemp -d)"
|
||||||
|
git clone --depth=1 https://github.com/manateelazycat/lsp-bridge.git "$tmpdir"
|
||||||
|
|
||||||
|
pushd "$tmpdir"
|
||||||
|
commit=$(git show -s --pretty='format:%H')
|
||||||
|
# Based on: https://github.com/melpa/melpa/blob/2d8716906a0c9e18d6c979d8450bf1d15dd785eb/package-build/package-build.el#L523-L533
|
||||||
|
version=$(TZ=UTC git show -s --pretty='format:%cd' --date='format-local:%Y%m%d.%H%M' | sed 's|\.0*|.|')
|
||||||
|
popd
|
||||||
|
|
||||||
|
update-source-version emacsPackages.lsp-bridge $version --rev="$commit"
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A blazingly fast LSP client for Emacs";
|
description = "A blazingly fast LSP client for Emacs";
|
||||||
|
|
|
@ -8184,6 +8184,18 @@ final: prev:
|
||||||
meta.homepage = "https://github.com/ishan9299/nvim-solarized-lua/";
|
meta.homepage = "https://github.com/ishan9299/nvim-solarized-lua/";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nvim-sops = buildVimPlugin {
|
||||||
|
pname = "nvim-sops";
|
||||||
|
version = "2023-07-31";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "lucidph3nx";
|
||||||
|
repo = "nvim-sops";
|
||||||
|
rev = "cb2209562d00ef8c6c88bdec836d9edb8fbb96ef";
|
||||||
|
sha256 = "0fvxnx5ji3d4kgsxl2ssqs7s567ibk4h38mz70m3nhs3sxk696lj";
|
||||||
|
};
|
||||||
|
meta.homepage = "https://github.com/lucidph3nx/nvim-sops/";
|
||||||
|
};
|
||||||
|
|
||||||
nvim-spectre = buildVimPlugin {
|
nvim-spectre = buildVimPlugin {
|
||||||
pname = "nvim-spectre";
|
pname = "nvim-spectre";
|
||||||
version = "2024-04-17";
|
version = "2024-04-17";
|
||||||
|
|
|
@ -688,6 +688,7 @@ https://github.com/dstein64/nvim-scrollview/,,
|
||||||
https://github.com/s1n7ax/nvim-search-and-replace/,HEAD,
|
https://github.com/s1n7ax/nvim-search-and-replace/,HEAD,
|
||||||
https://github.com/dcampos/nvim-snippy/,HEAD,
|
https://github.com/dcampos/nvim-snippy/,HEAD,
|
||||||
https://github.com/ishan9299/nvim-solarized-lua/,,
|
https://github.com/ishan9299/nvim-solarized-lua/,,
|
||||||
|
https://github.com/lucidph3nx/nvim-sops/,HEAD,
|
||||||
https://github.com/nvim-pack/nvim-spectre/,,
|
https://github.com/nvim-pack/nvim-spectre/,,
|
||||||
https://github.com/chrisgrieser/nvim-spider/,HEAD,
|
https://github.com/chrisgrieser/nvim-spider/,HEAD,
|
||||||
https://github.com/kylechui/nvim-surround/,main,
|
https://github.com/kylechui/nvim-surround/,main,
|
||||||
|
|
|
@ -1793,8 +1793,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
publisher = "github";
|
publisher = "github";
|
||||||
name = "copilot";
|
name = "copilot";
|
||||||
version = "1.172.758";
|
version = "1.180.827";
|
||||||
hash = "sha256-sK3IiA4mQ6Hse+UpZ81Zb5iBSREzTrs7ypsfGbJiXm4=";
|
hash = "sha256-HA1na9FoExIiAay+tEjxWKqpG2+wq4Oww77Gl2Bhciw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1810,8 +1810,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
publisher = "github";
|
publisher = "github";
|
||||||
name = "copilot-chat";
|
name = "copilot-chat";
|
||||||
version = "0.13.2024022301"; # compatible with vscode >= 1.87
|
version = "0.14.2024032901"; # compatible with vscode 1.88.1
|
||||||
hash = "sha256-WdojLEdrg6iqTH/cNPEWb6VEfk+gIHh2M5GHrAURjy8=";
|
hash = "sha256-+6N7IGO5j0wP5Zg8CwapHeKGWiZzc43VM4jCtqJDJIQ=";
|
||||||
};
|
};
|
||||||
meta = {
|
meta = {
|
||||||
description = "GitHub Copilot Chat is a companion extension to GitHub Copilot that houses experimental chat features";
|
description = "GitHub Copilot Chat is a companion extension to GitHub Copilot that houses experimental chat features";
|
||||||
|
|
|
@ -12,8 +12,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
|
||||||
publisher = "nvarner";
|
publisher = "nvarner";
|
||||||
# Please update the corresponding binary (typst-lsp) when updating
|
# Please update the corresponding binary (typst-lsp) when updating
|
||||||
# this extension.
|
# this extension.
|
||||||
version = "0.12.1";
|
version = "0.13.0";
|
||||||
hash = "sha256-JcfFaR1wU5XwapH8vnfVy7Cb7DfUWVeoLfBV3wEtCpE=";
|
hash = "sha256-xiFUJymZOTEqlGvCHvLiI0pVg7NLgIXhZ7x8yx+a5mY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -69,9 +69,9 @@ in rec {
|
||||||
|
|
||||||
unstable = fetchurl rec {
|
unstable = fetchurl rec {
|
||||||
# NOTE: Don't forget to change the hash for staging as well.
|
# NOTE: Don't forget to change the hash for staging as well.
|
||||||
version = "9.6";
|
version = "9.7";
|
||||||
url = "https://dl.winehq.org/wine/source/9.x/wine-${version}.tar.xz";
|
url = "https://dl.winehq.org/wine/source/9.x/wine-${version}.tar.xz";
|
||||||
hash = "sha256-Dglg7YK2AX6ILtozOLrRJwoRd7bPBfA6wfqxVavoIEg=";
|
hash = "sha256-2fPDM2VuiL1M71Mx80sci2nJZKUnWe73RdjdrlGhU1M=";
|
||||||
inherit (stable) patches;
|
inherit (stable) patches;
|
||||||
|
|
||||||
## see http://wiki.winehq.org/Gecko
|
## see http://wiki.winehq.org/Gecko
|
||||||
|
@ -88,9 +88,9 @@ in rec {
|
||||||
|
|
||||||
## see http://wiki.winehq.org/Mono
|
## see http://wiki.winehq.org/Mono
|
||||||
mono = fetchurl rec {
|
mono = fetchurl rec {
|
||||||
version = "9.0.0";
|
version = "9.1.0";
|
||||||
url = "https://dl.winehq.org/wine/wine-mono/${version}/wine-mono-${version}-x86.msi";
|
url = "https://dl.winehq.org/wine/wine-mono/${version}/wine-mono-${version}-x86.msi";
|
||||||
hash = "sha256-efbEMQBnVWbBEvQZm56nuUTTOBZLNL2R+hGwsKQU4cQ=";
|
hash = "sha256-igoeaDe0lN9Jkn5ddZscaQjom4ovjjrQJeHCiBiCR24=";
|
||||||
};
|
};
|
||||||
|
|
||||||
updateScript = writeShellScript "update-wine-unstable" ''
|
updateScript = writeShellScript "update-wine-unstable" ''
|
||||||
|
@ -117,7 +117,7 @@ in rec {
|
||||||
staging = fetchFromGitLab rec {
|
staging = fetchFromGitLab rec {
|
||||||
# https://gitlab.winehq.org/wine/wine-staging
|
# https://gitlab.winehq.org/wine/wine-staging
|
||||||
inherit (unstable) version;
|
inherit (unstable) version;
|
||||||
hash = "sha256-6AKN/KpmsTw9qxErhTTzqWuglgFdOAhtaoBlVRcs71Q=";
|
hash = "sha256-KU6i1P81Fr+4aZH/SJ+YibaIfX88SZMPdPcGS2mT2CE=";
|
||||||
domain = "gitlab.winehq.org";
|
domain = "gitlab.winehq.org";
|
||||||
owner = "wine";
|
owner = "wine";
|
||||||
repo = "wine-staging";
|
repo = "wine-staging";
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{ lib, fetchFromGitHub, python3Packages, file, less, highlight, w3m, ranger, testers
|
{ lib, fetchFromGitHub, python3Packages, file, less, highlight, w3m, ranger, imagemagick, testers
|
||||||
, imagePreviewSupport ? true
|
, imagePreviewSupport ? true
|
||||||
|
, sixelPreviewSupport ? true
|
||||||
, neoVimSupport ? true
|
, neoVimSupport ? true
|
||||||
, improvedEncodingDetection ? true
|
, improvedEncodingDetection ? true
|
||||||
, rightToLeftTextSupport ? false
|
, rightToLeftTextSupport ? false
|
||||||
|
@ -7,22 +8,23 @@
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "ranger";
|
pname = "ranger";
|
||||||
version = "1.9.3";
|
version = "1.9.3-unstable-2023-08-23";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ranger";
|
owner = "ranger";
|
||||||
repo = "ranger";
|
repo = "ranger";
|
||||||
rev = "v${version}";
|
rev = "38bb8901004b75a407ffee4b9e176bc0a436cb15";
|
||||||
sha256= "1rygfryczanvqxn43lmlkgs04sbqznbvbb9hlbm3h5qgdcl0xlw8";
|
hash = "sha256-NpsrABk95xHNvhlRjKFh326IW83mYj1cmK3aE9JQSRo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
LC_ALL = "en_US.UTF-8";
|
LC_ALL = "en_US.UTF-8";
|
||||||
|
|
||||||
nativeCheckInputs = with python3Packages; [ pytestCheckHook ];
|
nativeCheckInputs = with python3Packages; [ pytestCheckHook astroid pylint ];
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
less
|
less
|
||||||
file
|
file
|
||||||
] ++ lib.optionals imagePreviewSupport [ python3Packages.pillow ]
|
] ++ lib.optionals imagePreviewSupport [ python3Packages.pillow ]
|
||||||
|
++ lib.optionals sixelPreviewSupport [ imagemagick ]
|
||||||
++ lib.optionals neoVimSupport [ python3Packages.pynvim ]
|
++ lib.optionals neoVimSupport [ python3Packages.pynvim ]
|
||||||
++ lib.optionals improvedEncodingDetection [ python3Packages.chardet ]
|
++ lib.optionals improvedEncodingDetection [ python3Packages.chardet ]
|
||||||
++ lib.optionals rightToLeftTextSupport [ python3Packages.python-bidi ];
|
++ lib.optionals rightToLeftTextSupport [ python3Packages.python-bidi ];
|
||||||
|
@ -49,10 +51,6 @@ python3Packages.buildPythonApplication rec {
|
||||||
--replace "set preview_images false" "set preview_images true"
|
--replace "set preview_images false" "set preview_images true"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.tests.version = testers.testVersion {
|
|
||||||
package = ranger;
|
|
||||||
};
|
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "File manager with minimalistic curses interface";
|
description = "File manager with minimalistic curses interface";
|
||||||
homepage = "https://ranger.github.io/";
|
homepage = "https://ranger.github.io/";
|
||||||
|
|
|
@ -63,6 +63,8 @@ stdenv.mkDerivation {
|
||||||
$out/bin/${mainProgram} --version
|
$out/bin/${mainProgram} --version
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
passthru.updateScript = ./update.sh;
|
||||||
|
|
||||||
passthru.tests.version = testers.testVersion {
|
passthru.tests.version = testers.testVersion {
|
||||||
package = _1password;
|
package = _1password;
|
||||||
};
|
};
|
||||||
|
|
42
pkgs/applications/misc/1password/update.sh
Executable file
42
pkgs/applications/misc/1password/update.sh
Executable file
|
@ -0,0 +1,42 @@
|
||||||
|
#!/usr/bin/env nix-shell
|
||||||
|
#!nix-shell -i bash -p curl gnused nurl xq-xml
|
||||||
|
|
||||||
|
set -eu
|
||||||
|
|
||||||
|
ROOT="$(dirname "$(readlink -f "$0")")"
|
||||||
|
NIX_DRV="$ROOT/default.nix"
|
||||||
|
if [ ! -f "$NIX_DRV" ]; then
|
||||||
|
echo "ERROR: cannot find default.nix in $ROOT"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
fetch_linux() {
|
||||||
|
VER="$1"
|
||||||
|
ARCH="$2"
|
||||||
|
URL="https://cache.agilebits.com/dist/1P/op2/pkg/v${VER}/op_${ARCH}_v${VER}.zip"
|
||||||
|
nurl --hash --expr "(import <nixpkgs> { }).fetchzip { url = \"$URL\"; stripRoot = false; }"
|
||||||
|
}
|
||||||
|
|
||||||
|
fetch_darwin() {
|
||||||
|
VER="$1"
|
||||||
|
URL="https://cache.agilebits.com/dist/1P/op2/pkg/v${VER}/op_apple_universal_v${VER}.pkg"
|
||||||
|
nurl --hash --expr "(import <nixpkgs> { }).fetchurl { url = \"$URL\"; }"
|
||||||
|
}
|
||||||
|
|
||||||
|
replace_sha() {
|
||||||
|
sed -i "s|\"$1\" \"sha256-.\{44\}\"|\"$1\" \"$2\"|" "$NIX_DRV"
|
||||||
|
}
|
||||||
|
|
||||||
|
CLI_VERSION="$(curl -Ls https://app-updates.agilebits.com/product_history/CLI2 | xq -q 'h3' | head -n1)"
|
||||||
|
|
||||||
|
CLI_LINUX_AARCH64_SHA256=$(fetch_linux "$CLI_VERSION" "linux_arm64")
|
||||||
|
CLI_LINUX_I686_SHA256=$(fetch_linux "$CLI_VERSION" "linux_386")
|
||||||
|
CLI_LINUX_X64_SHA256=$(fetch_linux "$CLI_VERSION" "linux_amd64")
|
||||||
|
CLI_DARWIN_UNIVERSAL_SHA256=$(fetch_darwin "$CLI_VERSION")
|
||||||
|
|
||||||
|
sed -i "s/version = \".*\"/version = \"$CLI_VERSION\"/" "$NIX_DRV"
|
||||||
|
|
||||||
|
replace_sha "linux_arm64" "$CLI_LINUX_AARCH64_SHA256"
|
||||||
|
replace_sha "linux_386" "$CLI_LINUX_I686_SHA256"
|
||||||
|
replace_sha "linux_amd64" "$CLI_LINUX_X64_SHA256"
|
||||||
|
replace_sha "apple_universal" "$CLI_DARWIN_UNIVERSAL_SHA256"
|
|
@ -15,7 +15,6 @@
|
||||||
, makeDesktopItem
|
, makeDesktopItem
|
||||||
, copyDesktopItems
|
, copyDesktopItems
|
||||||
, icoutils
|
, icoutils
|
||||||
, autoPatchelfHook
|
|
||||||
, bintools
|
, bintools
|
||||||
, fixDarwinDylibNames
|
, fixDarwinDylibNames
|
||||||
, autoSignDarwinBinariesHook
|
, autoSignDarwinBinariesHook
|
||||||
|
@ -40,8 +39,7 @@ buildDotnetModule rec {
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
copyDesktopItems
|
copyDesktopItems
|
||||||
icoutils
|
icoutils
|
||||||
] ++ lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ]
|
] ++ lib.optionals stdenv.hostPlatform.isDarwin [ bintools fixDarwinDylibNames ]
|
||||||
++ lib.optionals stdenv.hostPlatform.isDarwin [ bintools fixDarwinDylibNames ]
|
|
||||||
++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [ autoSignDarwinBinariesHook ];
|
++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [ autoSignDarwinBinariesHook ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
|
|
@ -25,13 +25,13 @@
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "gnome-frog";
|
pname = "gnome-frog";
|
||||||
version = "1.4.2";
|
version = "1.5.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "TenderOwl";
|
owner = "TenderOwl";
|
||||||
repo = "Frog";
|
repo = "Frog";
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
sha256 = "sha256-w/ENUhJt7bYy5htBLolb/HysK8/scRaPQX5qEezQcXY=";
|
sha256 = "sha256-zL6zuqHF1pTXT3l1mAFx2EL+0ThzjXfst/nEyNVorZg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
format = "other";
|
format = "other";
|
||||||
|
@ -70,7 +70,11 @@ python3Packages.buildPythonApplication rec {
|
||||||
];
|
];
|
||||||
|
|
||||||
propagatedBuildInputs = with python3Packages; [
|
propagatedBuildInputs = with python3Packages; [
|
||||||
|
loguru
|
||||||
|
nanoid
|
||||||
|
posthog
|
||||||
pygobject3
|
pygobject3
|
||||||
|
python-dateutil
|
||||||
pillow
|
pillow
|
||||||
pytesseract
|
pytesseract
|
||||||
pyzbar
|
pyzbar
|
||||||
|
|
|
@ -1,28 +1,8 @@
|
||||||
diff --git a/frog/config.py b/frog/config.py
|
|
||||||
index 9837755..b73e4e3 100644
|
|
||||||
--- a/frog/config.py
|
|
||||||
+++ b/frog/config.py
|
|
||||||
@@ -30,10 +30,14 @@ import os
|
|
||||||
APP_ID = "com.github.tenderowl.frog"
|
|
||||||
RESOURCE_PREFIX = "/com/github/tenderowl/frog"
|
|
||||||
|
|
||||||
+# This is based from the XDG Base Directory specification.
|
|
||||||
+if not os.getenv('XDG_DATA_HOME'):
|
|
||||||
+ os.environ['XDG_DATA_HOME'] = os.path.expanduser("~/.local/share")
|
|
||||||
+
|
|
||||||
if not os.path.exists(os.path.join(os.environ['XDG_DATA_HOME'], 'tessdata')):
|
|
||||||
os.mkdir(os.path.join(os.environ['XDG_DATA_HOME'], 'tessdata'))
|
|
||||||
|
|
||||||
tessdata_url = "https://github.com/tesseract-ocr/tessdata/raw/main/"
|
|
||||||
tessdata_best_url = "https://github.com/tesseract-ocr/tessdata_best/raw/main/"
|
|
||||||
tessdata_dir = os.path.join(os.environ['XDG_DATA_HOME'], 'tessdata')
|
|
||||||
-tessdata_config = f'--tessdata-dir {tessdata_dir} –psm 6'
|
|
||||||
+tessdata_config = f'–-psm 6 --tessdata-dir {tessdata_dir}'
|
|
||||||
diff --git a/frog/language_manager.py b/frog/language_manager.py
|
diff --git a/frog/language_manager.py b/frog/language_manager.py
|
||||||
index 5752be6..4f6a908 100644
|
index d822c44..bc289db 100644
|
||||||
--- a/frog/language_manager.py
|
--- a/frog/language_manager.py
|
||||||
+++ b/frog/language_manager.py
|
+++ b/frog/language_manager.py
|
||||||
@@ -156,7 +156,7 @@ class LanguageManager(GObject.GObject):
|
@@ -193,7 +193,7 @@ class LanguageManager(GObject.GObject):
|
||||||
os.mkdir(tessdata_dir)
|
os.mkdir(tessdata_dir)
|
||||||
|
|
||||||
dest_path = os.path.join(tessdata_dir, 'eng.traineddata')
|
dest_path = os.path.join(tessdata_dir, 'eng.traineddata')
|
||||||
|
|
|
@ -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
|
, pango
|
||||||
, wayland
|
, wayland
|
||||||
, wayland-protocols
|
, wayland-protocols
|
||||||
|
, wayland-scanner
|
||||||
, libxkbcommon
|
, libxkbcommon
|
||||||
, scdoc
|
, scdoc
|
||||||
}:
|
}:
|
||||||
|
@ -34,7 +35,7 @@ stdenv.mkDerivation rec {
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config meson ninja ];
|
nativeBuildInputs = [ pkg-config meson ninja wayland-scanner ];
|
||||||
buildInputs = [ cairo pango wayland libxkbcommon wayland-protocols scdoc ];
|
buildInputs = [ cairo pango wayland libxkbcommon wayland-protocols scdoc ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -22,18 +22,18 @@
|
||||||
ungoogled-chromium = {
|
ungoogled-chromium = {
|
||||||
deps = {
|
deps = {
|
||||||
gn = {
|
gn = {
|
||||||
hash = "sha256-JvilCnnb4laqwq69fay+IdAujYC1EHD7uWpkF/C8tBw=";
|
hash = "sha256-aEL1kIhgPAFqdb174dG093HoLhCJ07O1Kpqfu7r14wQ=";
|
||||||
rev = "d4f94f9a6c25497b2ce0356bb99a8d202c8c1d32";
|
rev = "22581fb46c0c0c9530caa67149ee4dd8811063cf";
|
||||||
url = "https://gn.googlesource.com/gn";
|
url = "https://gn.googlesource.com/gn";
|
||||||
version = "2024-02-19";
|
version = "2024-03-14";
|
||||||
};
|
};
|
||||||
ungoogled-patches = {
|
ungoogled-patches = {
|
||||||
hash = "sha256-ojKIAkJB/gfg6scCxUYNAGx4lsquAaCySBDcUCFLqSU=";
|
hash = "sha256-zgkt0stU/H5Mji429tigVbjOq27Op8UppHTjG6neoeA=";
|
||||||
rev = "d5773b0fb696ef107cc6df6a94cbe732c9e905f9";
|
rev = "124.0.6367.60-1";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
hash = "sha256-7H7h621AHPyhFYbaVFO892TtS+SP3Qu7cYUVk3ICL14=";
|
hash = "sha256-apEniFKhIxPo4nhp9gCU+WpiV/EB40qif4RfE7Uniog=";
|
||||||
hash_deb_amd64 = "sha256-tNkO1mPZg1xltBfoWeNhLekITtZV/WNgu//i2DJb17c=";
|
hash_deb_amd64 = "sha256-rSbigG5/xbL32d1ntOn6gnZyxSpgrg1h7lb/RD4YROI=";
|
||||||
version = "123.0.6312.122";
|
version = "124.0.6367.60";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
{
|
{
|
||||||
beta = import ./browser.nix {
|
beta = import ./browser.nix {
|
||||||
channel = "beta";
|
channel = "beta";
|
||||||
version = "124.0.2478.39";
|
version = "124.0.2478.51";
|
||||||
revision = "1";
|
revision = "1";
|
||||||
hash = "sha256-0KQU/JS6hlv2SLMB8RKyITUiodByBUstrhcwIefn3Yw=";
|
hash = "sha256-qQTRPkQBLRZhOqBT8U0PGcmmR2zNRxJiFl3N2UPwoSo=";
|
||||||
};
|
};
|
||||||
dev = import ./browser.nix {
|
dev = import ./browser.nix {
|
||||||
channel = "dev";
|
channel = "dev";
|
||||||
|
@ -13,8 +13,8 @@
|
||||||
};
|
};
|
||||||
stable = import ./browser.nix {
|
stable = import ./browser.nix {
|
||||||
channel = "stable";
|
channel = "stable";
|
||||||
version = "123.0.2420.97";
|
version = "124.0.2478.51";
|
||||||
revision = "1";
|
revision = "1";
|
||||||
hash = "sha256-q7Pcbi0JQr/wvKIrgueD9f2Z6v1DMoD2bcRJKGqDYjs=";
|
hash = "sha256-dAiTS+KvKVwL6tNp4YsQfH4wdNIJoBJngcLBXgHArjE=";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "istioctl";
|
pname = "istioctl";
|
||||||
version = "1.21.1";
|
version = "1.21.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "istio";
|
owner = "istio";
|
||||||
repo = "istio";
|
repo = "istio";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-zWg0UK9RHq/25GWpsvb/U5YJPkgd7aUC/Dva8jGFwfo=";
|
hash = "sha256-U0SCjozy968pcXMGyUgM47VGYYNwPq8wOzTnKp49ZY4=";
|
||||||
};
|
};
|
||||||
vendorHash = "sha256-23t1xJPRip0ojXmUl1qlk6QJsYHT+9EAS080m6c0d6U=";
|
vendorHash = "sha256-23t1xJPRip0ojXmUl1qlk6QJsYHT+9EAS080m6c0d6U=";
|
||||||
|
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "kubecolor";
|
pname = "kubecolor";
|
||||||
version = "0.2.2";
|
version = "0.3.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = pname;
|
owner = pname;
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-zXglsfPsJi9DVxlRPniSBsdF1xEMYqqGr46ThpQj3gQ=";
|
sha256 = "sha256-1gEEmF9RRMwFAvmhLwidkVh+lnibs6x5ZHy/nJRum9E=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-uf7nBnS1wmbz4xcVA5qF82QMPsLdSucje1NNaPyheCw=";
|
vendorHash = "sha256-Gzz+mCEMQCcLwTiGMB8/nXk7HDAEGkEapC/VOyXrn/Q=";
|
||||||
|
|
||||||
ldflags = [ "-s" "-w" "-X main.Version=${version}" ];
|
ldflags = [ "-s" "-w" "-X main.Version=${version}" ];
|
||||||
|
|
||||||
|
|
|
@ -20,13 +20,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "kubernetes";
|
pname = "kubernetes";
|
||||||
version = "1.29.4";
|
version = "1.30.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "kubernetes";
|
owner = "kubernetes";
|
||||||
repo = "kubernetes";
|
repo = "kubernetes";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-7Rxbcsl77iFiHkU/ovyn74aXs/i5G/m5h5Ii0y1CRho=";
|
hash = "sha256-7xRRpchjwtV3dGbZ2hN9qj6soAuiF/K7vTY0LzE6Z5w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = null;
|
vendorHash = null;
|
||||||
|
|
|
@ -120,6 +120,8 @@ in stdenv.mkDerivation rec {
|
||||||
libappindicator-gtk3
|
libappindicator-gtk3
|
||||||
libnotify
|
libnotify
|
||||||
libdbusmenu
|
libdbusmenu
|
||||||
|
pipewire
|
||||||
|
stdenv.cc.cc
|
||||||
xdg-utils
|
xdg-utils
|
||||||
wayland
|
wayland
|
||||||
];
|
];
|
||||||
|
@ -158,7 +160,6 @@ in stdenv.mkDerivation rec {
|
||||||
|
|
||||||
preFixup = ''
|
preFixup = ''
|
||||||
gappsWrapperArgs+=(
|
gappsWrapperArgs+=(
|
||||||
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc pipewire ] }"
|
|
||||||
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
|
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
|
||||||
--suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
|
--suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
|
||||||
)
|
)
|
||||||
|
|
|
@ -5,13 +5,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "storj-uplink";
|
pname = "storj-uplink";
|
||||||
version = "1.102.2";
|
version = "1.102.4";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "storj";
|
owner = "storj";
|
||||||
repo = "storj";
|
repo = "storj";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-GpHX34iHKeoT7AuEf76QTpTIrATLZyAoUxMoIouhvyA=";
|
hash = "sha256-ryOWnVcJOUs9kToXtwjUTk7nwuAW0NCDn5Npn27hKXU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
subPackages = [ "cmd/uplink" ];
|
subPackages = [ "cmd/uplink" ];
|
||||||
|
|
|
@ -7,13 +7,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "eigenmath";
|
pname = "eigenmath";
|
||||||
version = "unstable-2024-04-08";
|
version = "unstable-2024-04-19";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "georgeweigt";
|
owner = "georgeweigt";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "c0be6c47309aa40d44784a3a4c4c07bc4e8fb6fa";
|
rev = "5d5a538e7c378e9e2d9fabdf88fa2c6dd6d13e2c";
|
||||||
hash = "sha256-UVCazX0P03+e1exnpXrGNc/1vHxLH04Xtvgsy00UAoI=";
|
hash = "sha256-vPj3YKNJAZgdhw/VVrJIo2P7IyHrt7hVpnUQCUCZmR8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
checkPhase = let emulator = stdenv.hostPlatform.emulator buildPackages; in ''
|
checkPhase = let emulator = stdenv.hostPlatform.emulator buildPackages; in ''
|
||||||
|
|
|
@ -60,6 +60,13 @@ stdenv.mkDerivation rec {
|
||||||
url = "https://github.com/sagemath/sage/commit/1c3f991b9d3c5778e409e5414c6cfcd456113f19.diff";
|
url = "https://github.com/sagemath/sage/commit/1c3f991b9d3c5778e409e5414c6cfcd456113f19.diff";
|
||||||
hash = "sha256-uCXchYx26DdxTjR1k2748KCEHPnekKS2fAM7SpyhNvM=";
|
hash = "sha256-uCXchYx26DdxTjR1k2748KCEHPnekKS2fAM7SpyhNvM=";
|
||||||
})
|
})
|
||||||
|
|
||||||
|
# https://github.com/sagemath/sage/pull/37763
|
||||||
|
(fetchpatch {
|
||||||
|
name = "scipy-fault-tolerance.patch";
|
||||||
|
url = "https://github.com/sagemath/sage/commit/547d502ed56f9fd44eb5d9b4ee0824746c60fef7.diff";
|
||||||
|
hash = "sha256-PR4przrZ3ieHaW2nSY7l7VhNfrUupu9yCIrXpeyoAgg=";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
# Patches needed because of package updates. We could just pin the versions of
|
# Patches needed because of package updates. We could just pin the versions of
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "5.12.196";
|
version = "5.12.197";
|
||||||
in
|
in
|
||||||
rustPlatform.buildRustPackage {
|
rustPlatform.buildRustPackage {
|
||||||
pname = "git-mit";
|
pname = "git-mit";
|
||||||
|
@ -20,10 +20,10 @@ rustPlatform.buildRustPackage {
|
||||||
owner = "PurpleBooth";
|
owner = "PurpleBooth";
|
||||||
repo = "git-mit";
|
repo = "git-mit";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-vv60+8H6WQes+xVJRsgLppwQ/DkQbfNC6tRx2TB/4HQ=";
|
hash = "sha256-Z03FDdlg1IBXHpurKr6RwmtZkaptyeQe+0lgKn/GTTQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-jK2GTI+T7Ie5cdQQQHh2aj6Egb/5BxsfJkFrSo+z7Pc=";
|
cargoHash = "sha256-V8TV8RM3T7DYqwNV/r5PkkJVtyAQLdY3BR3sz26phdY=";
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
|
||||||
|
|
|
@ -5,15 +5,15 @@ let
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
sublime-merge = common {
|
sublime-merge = common {
|
||||||
buildVersion = "2091";
|
buildVersion = "2096";
|
||||||
aarch64sha256 = "dkPKuuzQQtL3eZlaAPeL7e2p5PCxroFRSp6Rw5wHODc=";
|
aarch64sha256 = "IHPJJ/oQ3SLemRyey5syTL0sf5GEeHSylDX+EQNNQGU=";
|
||||||
x64sha256 = "T5g6gHgl9xGytEOsh3VuB08IrbDvMu24o/1edCGmfd4=";
|
x64sha256 = "41I6p5wNx2pF56np7gHqp396RHpXtQu5ruksUywF/Ug=";
|
||||||
} { };
|
} { };
|
||||||
|
|
||||||
sublime-merge-dev = common {
|
sublime-merge-dev = common {
|
||||||
buildVersion = "2094";
|
buildVersion = "2095";
|
||||||
dev = true;
|
dev = true;
|
||||||
aarch64sha256 = "ZJgq971EPzq+BWxTQAoX6TgUmTfpf9sI4CHPcvgPTfI=";
|
aarch64sha256 = "FmXz8VAWS7e0bB9NeXbihnhdhWMyNJJs6PNt+K2G0Bk=";
|
||||||
x64sha256 = "6FLfszhP+BGHX5FrycMlznREmGDLyDyo6rgmqxhtCak=";
|
x64sha256 = "83Hw27RgGPgugpf4eMuWT6/MSQ2Q2VBCbaXoSGFtTPI=";
|
||||||
} { };
|
} { };
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,13 +15,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "cri-o";
|
pname = "cri-o";
|
||||||
version = "1.29.2";
|
version = "1.29.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "cri-o";
|
owner = "cri-o";
|
||||||
repo = "cri-o";
|
repo = "cri-o";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-il28u2+Jv2gh6XqRV4y6u0FDZ4flmcp+bOj9aibL+ro=";
|
hash = "sha256-JJuqYC4GAZqXyyAjVoPipnGjRGbVx1rfH4UrtIOP7cc=";
|
||||||
};
|
};
|
||||||
vendorHash = null;
|
vendorHash = null;
|
||||||
|
|
||||||
|
|
25
pkgs/by-name/ad/adbtuifm/package.nix
Normal file
25
pkgs/by-name/ad/adbtuifm/package.nix
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
{
|
||||||
|
buildGoModule,
|
||||||
|
fetchFromGitHub,
|
||||||
|
lib,
|
||||||
|
}:
|
||||||
|
buildGoModule rec {
|
||||||
|
pname = "adbtuifm";
|
||||||
|
version = "0.5.8";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "darkhz";
|
||||||
|
repo = "adbtuifm";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-TK93O9XwMrsrQT3EG0969HYMtYkK0a4PzG9FSTqHxAY=";
|
||||||
|
};
|
||||||
|
vendorHash = "sha256-voVoowjM90OGWXF4REEevO8XEzT7azRYiDay4bnGBks=";
|
||||||
|
meta = with lib; {
|
||||||
|
description = "A TUI-based file manager for the Android Debug Bridge";
|
||||||
|
homepage = "https://github.com/darkhz/adbtuifm";
|
||||||
|
changelog = "https:/github.com/darkhz/adbtuifm/releases/tag/v${version}";
|
||||||
|
license = with licenses; [mit];
|
||||||
|
maintainers = with maintainers; [daru-san];
|
||||||
|
mainProgram = "adbtuifm";
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
|
@ -30,6 +30,7 @@ rustPlatform.buildRustPackage rec {
|
||||||
]
|
]
|
||||||
++ lib.optionals stdenv.isDarwin [
|
++ lib.optionals stdenv.isDarwin [
|
||||||
darwin.apple_sdk.frameworks.Security
|
darwin.apple_sdk.frameworks.Security
|
||||||
|
darwin.apple_sdk.frameworks.SystemConfiguration
|
||||||
];
|
];
|
||||||
|
|
||||||
env = {
|
env = {
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
{
|
{
|
||||||
"owner": "advplyr",
|
"owner": "advplyr",
|
||||||
"repo": "audiobookshelf",
|
"repo": "audiobookshelf",
|
||||||
"rev": "166454ef43e3cdb42c644cdccdacddd3a880cd89",
|
"rev": "8b27c726d51cd9706cd564ef72377b89db3194b3",
|
||||||
"hash": "sha256-QrGzlSGK7WDlRemS13CmHdg563HFv9QhOpCF+XRxXsg=",
|
"hash": "sha256-9WqMcehlGhSMI08u6/LSNOrLhCCl8coEHAUUM5KLnx8=",
|
||||||
"version": "2.8.1",
|
"version": "2.9.0",
|
||||||
"depsHash": "sha256-CzlwpgSgsQZGuRWTA/IkCyaryCSurH74WR5Rhm5faEk=",
|
"depsHash": "sha256-ll96aPw6lO7B1c5s7uIpn3poPu/JRa/weins5SNMQw4=",
|
||||||
"clientDepsHash": "sha256-s7/Rlj3DrYjUkxAN82bTpWe+D4HdVOc1mrqKgqcJuI4="
|
"clientDepsHash": "sha256-uqHfU38BLqigGzKJC/i/bftLJbCmHaOcj04d1bu4K1I="
|
||||||
}
|
}
|
||||||
|
|
49
pkgs/by-name/au/autopsy/package.nix
Normal file
49
pkgs/by-name/au/autopsy/package.nix
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
{ stdenv, lib, makeWrapper, fetchzip, testdisk, imagemagick, jdk, findutils, sleuthkit, ... }:
|
||||||
|
let
|
||||||
|
jdkWithJfx = jdk.override (lib.optionalAttrs stdenv.isLinux {
|
||||||
|
enableJavaFX = true;
|
||||||
|
});
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "autopsy";
|
||||||
|
version = "4.21.0";
|
||||||
|
|
||||||
|
src = fetchzip {
|
||||||
|
url = "https://github.com/sleuthkit/autopsy/releases/download/autopsy-${version}/autopsy-${version}.zip";
|
||||||
|
sha256 = "32iOQA3+ykltCYW/MpqCVxyhh3mm6eYzY+t0smAsWRw=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ makeWrapper findutils ];
|
||||||
|
buildInputs = [ testdisk imagemagick jdkWithJfx ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
cp -r . $out
|
||||||
|
|
||||||
|
# Run the provided setup script to make files executable and copy sleuthkit
|
||||||
|
TSK_JAVA_LIB_PATH="${sleuthkit}/share/java" bash $out/unix_setup.sh -j '${jdkWithJfx}' -n autopsy
|
||||||
|
|
||||||
|
substituteInPlace $out/bin/autopsy \
|
||||||
|
--replace-warn 'APPNAME=`basename "$PRG"`' 'APPNAME=autopsy'
|
||||||
|
wrapProgram $out/bin/autopsy \
|
||||||
|
--run 'export SOLR_LOGS_DIR="$HOME/.autopsy/dev/var/log"' \
|
||||||
|
--run 'export SOLR_PID_DIR="$HOME/.autopsy/dev"' \
|
||||||
|
--prefix PATH : "${lib.makeBinPath [ testdisk imagemagick jdkWithJfx ]}"
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Graphical interface to The Sleuth Kit and other open source digital forensics tools";
|
||||||
|
homepage = "https://www.sleuthkit.org/autopsy";
|
||||||
|
changelog = "https://github.com/sleuthkit/autopsy/releases/tag/autopsy-${version}";
|
||||||
|
# Autopsy brings a lot of vendored dependencies
|
||||||
|
license = with lib.licenses; [ asl20 ipl10 lgpl3Only lgpl21Only zlib wtfpl bsd3 cc-by-30 mit gpl2Only ];
|
||||||
|
maintainers = with lib.maintainers; [ zebreus ];
|
||||||
|
mainProgram = "autopsy";
|
||||||
|
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
|
||||||
|
# Autopsy theoretically also supports darwin
|
||||||
|
platforms = lib.platforms.x86_64;
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,29 +1,28 @@
|
||||||
{ stdenv
|
{
|
||||||
, lib
|
lib,
|
||||||
, fetchFromGitHub
|
stdenv,
|
||||||
, cmake
|
cmake,
|
||||||
, cmocka
|
cmocka,
|
||||||
, libdict
|
fetchFromGitHub,
|
||||||
, ncurses
|
jansson,
|
||||||
, jansson
|
libdict,
|
||||||
, openssl
|
libpcap,
|
||||||
, libpcap
|
ncurses,
|
||||||
|
openssl,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "bngblaster";
|
pname = "bngblaster";
|
||||||
version = "0.8.44";
|
version = "0.8.47";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "rtbrick";
|
owner = "rtbrick";
|
||||||
repo = "bngblaster";
|
repo = "bngblaster";
|
||||||
rev = finalAttrs.version;
|
rev = finalAttrs.version;
|
||||||
hash = "sha256-kKzrXw6HQ2917RBArj2BxixXXH0mIvC4IeEU2JY4F9s=";
|
hash = "sha256-ad2vVBXN5hUCaFnq4WYc7UTKvyLg4HY+l+PGlc5ylmw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [ cmake ];
|
||||||
cmake
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
libdict
|
libdict
|
||||||
|
@ -31,9 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
jansson
|
jansson
|
||||||
openssl
|
openssl
|
||||||
cmocka
|
cmocka
|
||||||
] ++ lib.optionals finalAttrs.doCheck [
|
] ++ lib.optionals finalAttrs.doCheck [ libpcap ];
|
||||||
libpcap
|
|
||||||
];
|
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DBNGBLASTER_TESTS=${if finalAttrs.doCheck then "ON" else "OFF"}"
|
"-DBNGBLASTER_TESTS=${if finalAttrs.doCheck then "ON" else "OFF"}"
|
||||||
|
@ -43,9 +40,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
description = "Network tester for access and routing protocols";
|
||||||
homepage = "https://github.com/rtbrick/bngblaster/";
|
homepage = "https://github.com/rtbrick/bngblaster/";
|
||||||
changelog = "https://github.com/rtbrick/bngblaster/releases/tag/${finalAttrs.version}";
|
changelog = "https://github.com/rtbrick/bngblaster/releases/tag/${finalAttrs.version}";
|
||||||
description = "network tester for access and routing protocols";
|
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
maintainers = teams.wdz.members;
|
maintainers = teams.wdz.members;
|
||||||
badPlatforms = platforms.darwin;
|
badPlatforms = platforms.darwin;
|
||||||
|
|
|
@ -27,20 +27,20 @@ let
|
||||||
in
|
in
|
||||||
buildNpmPackage' rec {
|
buildNpmPackage' rec {
|
||||||
pname = "bruno";
|
pname = "bruno";
|
||||||
version = "1.13.1";
|
version = "1.14.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "usebruno";
|
owner = "usebruno";
|
||||||
repo = "bruno";
|
repo = "bruno";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-fVbwHmJ/5OtMM0lkOIo6zPXkAa8mIK+WRHCTXJ1XEIw=";
|
hash = "sha256-kUvDtqv3Tdnntr4Ny5pM406KA5++AHsCoAiPg4x4Rsw=";
|
||||||
|
|
||||||
postFetch = ''
|
postFetch = ''
|
||||||
${lib.getExe npm-lockfile-fix} $out/package-lock.json
|
${lib.getExe npm-lockfile-fix} $out/package-lock.json
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
npmDepsHash = "sha256-D90y6NaiR9zpgtjfm9QgLxBVbHa09OMSi+fvgwqSjgY=";
|
npmDepsHash = "sha256-VvUpAdF4ouy695om3qpsyrmiMf69OFgfpQyeZArQEDs=";
|
||||||
npmFlags = [ "--legacy-peer-deps" ];
|
npmFlags = [ "--legacy-peer-deps" ];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -13,10 +13,10 @@ let
|
||||||
}.${system} or throwSystem;
|
}.${system} or throwSystem;
|
||||||
|
|
||||||
hash = {
|
hash = {
|
||||||
x86_64-linux = "sha256-6sIYDI6+1/p54Af+E/GmRAFlfDYJVwxhn0qF47ZH+Zg=";
|
x86_64-linux = "sha256-cDMdhfN7PxT687DG1djDNzZXb6E3OrWHXbl1XS6pxi4=";
|
||||||
aarch64-linux = "sha256-1ImcjAqCZm5KZZYHWhG1eO7ipAdrP4Qjj2eBxTst++s=";
|
aarch64-linux = "sha256-0wc7fuvyDcbx2HXVq5IMe59r3iNbnXe+gDjCXtU3KjQ=";
|
||||||
x86_64-darwin = "sha256-yHthItxZYFejJlwJJ7BrM2csnLsZXjy/IbzF1iaCCyI=";
|
x86_64-darwin = "sha256-ZWsBfA1AsBFWA3f40coqhaAmnQc1U50VJ1RHWiybq+o=";
|
||||||
aarch64-darwin = "sha256-GIx0yABISj/rH/yVkkx6NBs5qF0P8nhpMyvnzXJ92mA=";
|
aarch64-darwin = "sha256-EaoEsBBlpewevk9HstJLZGgQGdPuPb5cqXYkcbGX9WU=";
|
||||||
}.${system} or throwSystem;
|
}.${system} or throwSystem;
|
||||||
|
|
||||||
bin = "$out/bin/codeium_language_server";
|
bin = "$out/bin/codeium_language_server";
|
||||||
|
@ -24,7 +24,7 @@ let
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "codeium";
|
pname = "codeium";
|
||||||
version = "1.8.25";
|
version = "1.8.27";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
name = "${finalAttrs.pname}-${finalAttrs.version}.gz";
|
name = "${finalAttrs.pname}-${finalAttrs.version}.gz";
|
||||||
url = "https://github.com/Exafunction/codeium/releases/download/language-server-v${finalAttrs.version}/language_server_${plat}.gz";
|
url = "https://github.com/Exafunction/codeium/releases/download/language-server-v${finalAttrs.version}/language_server_${plat}.gz";
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
, x265
|
, x265
|
||||||
, jasper
|
, jasper
|
||||||
|
|
||||||
|
, bash
|
||||||
# For panorama and focus stacking
|
# For panorama and focus stacking
|
||||||
, enblend-enfuse
|
, enblend-enfuse
|
||||||
, hugin
|
, hugin
|
||||||
|
@ -110,6 +111,13 @@ stdenv.mkDerivation rec {
|
||||||
cuda_cudart
|
cuda_cudart
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace \
|
||||||
|
core/dplugins/bqm/custom/userscript/userscript.cpp \
|
||||||
|
core/utilities/import/backend/cameracontroller.cpp \
|
||||||
|
--replace-fail \"/bin/bash\" \"${lib.getExe bash}\"
|
||||||
|
'';
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DENABLE_MYSQLSUPPORT=1"
|
"-DENABLE_MYSQLSUPPORT=1"
|
||||||
"-DENABLE_INTERNALMYSQL=1"
|
"-DENABLE_INTERNALMYSQL=1"
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
, nix-update-script
|
, nix-update-script
|
||||||
, ocl-icd
|
, ocl-icd
|
||||||
, opencl-headers
|
, opencl-headers
|
||||||
|
, overrideSDK
|
||||||
, pcre
|
, pcre
|
||||||
, pcre2
|
, pcre2
|
||||||
, pkg-config
|
, pkg-config
|
||||||
|
@ -40,8 +41,10 @@
|
||||||
, waylandSupport ? true
|
, waylandSupport ? true
|
||||||
, x11Support ? true
|
, x11Support ? true
|
||||||
}:
|
}:
|
||||||
|
let
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv' = if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv;
|
||||||
|
in
|
||||||
|
stdenv'.mkDerivation (finalAttrs: {
|
||||||
pname = "fastfetch";
|
pname = "fastfetch";
|
||||||
version = "2.9.2";
|
version = "2.9.2";
|
||||||
|
|
53
pkgs/by-name/fg/fgqcanvas/package.nix
Normal file
53
pkgs/by-name/fg/fgqcanvas/package.nix
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
{ fetchgit
|
||||||
|
, pkg-config
|
||||||
|
, stdenv
|
||||||
|
, lib
|
||||||
|
# Package dependencies
|
||||||
|
, qt5
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "fgqcanvas";
|
||||||
|
version = "0-unstable-2024-02-11";
|
||||||
|
|
||||||
|
src = fetchgit {
|
||||||
|
url = "https://git.code.sf.net/p/flightgear/flightgear";
|
||||||
|
rev = "3168828949d6b42959ccee6c202b8895493edb2b";
|
||||||
|
sha256 = "sha256-QiIMkrzaB/ljVf6c+RJNFWKLZa84cIjYPO5nxEFDqjg=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
qt5.wrapQtAppsHook
|
||||||
|
qt5.qmake
|
||||||
|
pkg-config
|
||||||
|
qt5.qttools
|
||||||
|
];
|
||||||
|
buildInputs = [
|
||||||
|
qt5.qtwebsockets
|
||||||
|
];
|
||||||
|
|
||||||
|
configurePhase = ''
|
||||||
|
runHook preConfigure
|
||||||
|
cd utils/fgqcanvas/
|
||||||
|
mkdir -p build
|
||||||
|
cd build
|
||||||
|
qmake -makefile ../fgcanvas.pro CONFIG+="release" QMAKE_CXXFLAGS+=' -Wno-deprecated-copy -Wno-deprecated -Wno-deprecated-declarations'
|
||||||
|
runHook postConfigure
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
mkdir -p $out/bin
|
||||||
|
mv fgqcanvas $out/bin/
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/utils/fgqcanvas/README.md";
|
||||||
|
description = "A Qt-based remote canvas application for FlightGear";
|
||||||
|
license = licenses.gpl2Plus;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ nayala ];
|
||||||
|
mainProgram = "fgqcanvas";
|
||||||
|
};
|
||||||
|
}
|
|
@ -8,24 +8,25 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
pname = "firefly-iii";
|
pname = "firefly-iii";
|
||||||
version = "6.1.13";
|
version = "6.1.15";
|
||||||
phpPackage = php83;
|
phpPackage = php83;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "firefly-iii";
|
owner = "firefly-iii";
|
||||||
repo = "firefly-iii";
|
repo = "firefly-iii";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-85zI8uCyyoCflzxDkvba6FWa9B3kh179DJfQ2Um6MGM=";
|
hash = "sha256-9Od8tR8X2OZ2hu81tHWDpBX8snWCRvTnlY1AwjIcMug=";
|
||||||
};
|
};
|
||||||
|
|
||||||
assets = buildNpmPackage {
|
assets = buildNpmPackage {
|
||||||
pname = "${pname}-assets";
|
pname = "${pname}-assets";
|
||||||
inherit version src;
|
inherit version src;
|
||||||
npmDepsHash = "sha256-wuPUE6XuzzgKjpxZVgwh2wGut15M61WSBFG+YIZwOFM=";
|
npmDepsHash = "sha256-UVySgcj1tQLQIxlsZuig4ixkfxfsYWYPKWLz5zHA+Dg=";
|
||||||
dontNpmBuild = true;
|
dontNpmBuild = true;
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
runHook preInstall
|
||||||
npm run build
|
npm run prod --workspace=v1
|
||||||
|
npm run build --workspace=v2
|
||||||
cp -r ./public $out/
|
cp -r ./public $out/
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
@ -35,7 +36,7 @@ in
|
||||||
phpPackage.buildComposerProject (finalAttrs: {
|
phpPackage.buildComposerProject (finalAttrs: {
|
||||||
inherit pname src version;
|
inherit pname src version;
|
||||||
|
|
||||||
vendorHash = "sha256-CVGKyyLp5hjjpEulDNEYfljU4OgPBaFcYQQAUf6GeGs=";
|
vendorHash = "sha256-RDkAbTKj7M7lE8bVRxb+RR5CA6hJIMp61U0+aRtFE50=";
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
inherit phpPackage;
|
inherit phpPackage;
|
||||||
|
|
|
@ -120,7 +120,7 @@ let
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "fwupd";
|
pname = "fwupd";
|
||||||
version = "1.9.16";
|
version = "1.9.18";
|
||||||
|
|
||||||
# libfwupd goes to lib
|
# libfwupd goes to lib
|
||||||
# daemon, plug-ins and libfwupdplugin go to out
|
# daemon, plug-ins and libfwupdplugin go to out
|
||||||
|
@ -131,7 +131,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
owner = "fwupd";
|
owner = "fwupd";
|
||||||
repo = "fwupd";
|
repo = "fwupd";
|
||||||
rev = finalAttrs.version;
|
rev = finalAttrs.version;
|
||||||
hash = "sha256-mM8HSSQD5znjpl9q/f+u0RzZEkFA1tnh+BPB2qdcWvI=";
|
hash = "sha256-w2jqIPNV6OkPaHfy7bEFgr5IgzJYtMTrO5UWmnZ+2JI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
|
|
@ -7,12 +7,12 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "0.1.0";
|
version = "0.2.0";
|
||||||
gitSrc = fetchFromGitHub {
|
gitSrc = fetchFromGitHub {
|
||||||
owner = "glasskube";
|
owner = "glasskube";
|
||||||
repo = "glasskube";
|
repo = "glasskube";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-iJjO4V2sK3e/SpDZ5Lfw7gILgZrI4CGg0wLLVKthGUE=";
|
hash = "sha256-r14gYgrenUk3OFUEab4QlwmwUeEwqocJJ3Vje9wRdBA=";
|
||||||
};
|
};
|
||||||
web-bundle = buildNpmPackage rec {
|
web-bundle = buildNpmPackage rec {
|
||||||
inherit version;
|
inherit version;
|
||||||
|
@ -20,7 +20,7 @@ let
|
||||||
|
|
||||||
src = gitSrc;
|
src = gitSrc;
|
||||||
|
|
||||||
npmDepsHash = "sha256-nv2ng8gUOi9K46bDuWt/Y3S6AJovUWaqM+8uGiu/QSs=";
|
npmDepsHash = "sha256-WKwEAVMG6r/ZFmxgLR+zJCW8F2DOHxpWDYqhX/vcdrs=";
|
||||||
|
|
||||||
dontNpmInstall = true;
|
dontNpmInstall = true;
|
||||||
|
|
||||||
|
@ -40,7 +40,7 @@ in buildGoModule rec {
|
||||||
|
|
||||||
src = gitSrc;
|
src = gitSrc;
|
||||||
|
|
||||||
vendorHash = "sha256-iFWcTzZP0DKJ9hrmfUWR4U/VX2zsR+3uojI+GRI2R3I=";
|
vendorHash = "sha256-sj9TEAWhExwaaKlMJ10U7m3/xbUNl0dVZwrCb2TTu4o=";
|
||||||
|
|
||||||
CGO_ENABLED = 0;
|
CGO_ENABLED = 0;
|
||||||
|
|
||||||
|
|
13
pkgs/by-name/go/godot_4-export-templates/package.nix
Normal file
13
pkgs/by-name/go/godot_4-export-templates/package.nix
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
# Export templates is necessary for setting up Godot engine, it's used when exporting projects.
|
||||||
|
# Godot applications/games packages needs to reference export templates.
|
||||||
|
# Export templates version should be kept in sync with Godot version.
|
||||||
|
# https://docs.godotengine.org/en/stable/tutorials/export/exporting_projects.html#export-templates
|
||||||
|
|
||||||
|
{ fetchzip, godot_4, ... }:
|
||||||
|
|
||||||
|
fetchzip {
|
||||||
|
pname = "export_templates";
|
||||||
|
extension = "zip";
|
||||||
|
url = "https://github.com/godotengine/godot/releases/download/${godot_4.version}/Godot_v${godot_4.version}_export_templates.tpz";
|
||||||
|
hash = "sha256-eomGLH9lbZhl7VtHTWjJ5mxVt0Yg8LfnAnpqoCksPgs=";
|
||||||
|
}
|
|
@ -10,13 +10,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "hugo";
|
pname = "hugo";
|
||||||
version = "0.125.0";
|
version = "0.125.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "gohugoio";
|
owner = "gohugoio";
|
||||||
repo = "hugo";
|
repo = "hugo";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-aPBS/8m57Dn8Uvem58KzaCZJ1Hn8doL1BsDdF7w5nJc=";
|
hash = "sha256-PZTV/VM0KS/vM4lLrJ/XPvNi33lM+L0gITQHGpjdN+4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-jGCHlAE5mSDKpZVWgjCEN51sL+3GR/C5ROI9065OhRU=";
|
vendorHash = "sha256-jGCHlAE5mSDKpZVWgjCEN51sL+3GR/C5ROI9065OhRU=";
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
{ lib
|
{
|
||||||
, darwin
|
lib,
|
||||||
, fetchurl
|
darwin,
|
||||||
, fetchpatch
|
fetchpatch,
|
||||||
, openssl
|
fetchurl,
|
||||||
, stdenv
|
openssl,
|
||||||
, vlc
|
stdenv,
|
||||||
|
vlc,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "live555";
|
pname = "live555";
|
||||||
version = "2024.03.08";
|
version = "2024.04.14";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
urls = [
|
urls = [
|
||||||
|
@ -18,7 +19,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
"https://download.videolan.org/contrib/live555/live.${finalAttrs.version}.tar.gz"
|
"https://download.videolan.org/contrib/live555/live.${finalAttrs.version}.tar.gz"
|
||||||
"mirror://sourceforge/slackbuildsdirectlinks/live.${finalAttrs.version}.tar.gz"
|
"mirror://sourceforge/slackbuildsdirectlinks/live.${finalAttrs.version}.tar.gz"
|
||||||
];
|
];
|
||||||
hash = "sha256-wWUC4EbxxfK+OxXiyNbNMGObVMZOqb+8jTG078pnDeU=";
|
hash = "sha256-mR5rKGKtTwMq3p+xAAGdo0DNNnIe4KHladLPlnhVhNY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
@ -60,11 +61,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
configurePhase = let
|
configurePhase = let
|
||||||
platform = if stdenv.isLinux
|
platform =
|
||||||
then "linux"
|
if stdenv.isLinux then
|
||||||
else if stdenv.isDarwin
|
"linux"
|
||||||
then "macosx-catalina"
|
else if stdenv.isDarwin then
|
||||||
else throw "Unsupported platform: ${stdenv.hostPlatform.system}";
|
"macosx-catalina"
|
||||||
|
else
|
||||||
|
throw "Unsupported platform: ${stdenv.hostPlatform.system}";
|
||||||
in ''
|
in ''
|
||||||
runHook preConfigure
|
runHook preConfigure
|
||||||
|
|
||||||
|
|
|
@ -5,16 +5,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "livekit-cli";
|
pname = "livekit-cli";
|
||||||
version = "1.4.1";
|
version = "1.4.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "livekit";
|
owner = "livekit";
|
||||||
repo = "livekit-cli";
|
repo = "livekit-cli";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-/H7Xn/nUumKf62qV6kt2PBbvIt67IwA1dt+hj8mbE30=";
|
hash = "sha256-6UIMyroZpylUMG7TIBOqDIDsuJLtpe2BQxfjEhbZBGc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-yO2Qr6H5sZGLMHiue5IVHkF1IDsZZh48s6KNpXR+nzA=";
|
vendorHash = "sha256-e84jusaQx6B5cbJoIOSVyxgAQx9VIxFODH1Io1Z/yj0=";
|
||||||
|
|
||||||
subPackages = [ "cmd/livekit-cli" ];
|
subPackages = [ "cmd/livekit-cli" ];
|
||||||
|
|
||||||
|
|
|
@ -13,13 +13,13 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "maa-cli";
|
pname = "maa-cli";
|
||||||
version = "0.4.5";
|
version = "0.4.6";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "MaaAssistantArknights";
|
owner = "MaaAssistantArknights";
|
||||||
repo = "maa-cli";
|
repo = "maa-cli";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-LeEIbfDQ+GO3gNmdpWGTNkpbhSqLz4fYQ+MdcrcbDk0=";
|
hash = "sha256-fvMSYcYWYEVvDuAEjSmQJltl90EoLKkjYD2P3OsHS3c=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -36,7 +36,7 @@ rustPlatform.buildRustPackage rec {
|
||||||
buildNoDefaultFeatures = true;
|
buildNoDefaultFeatures = true;
|
||||||
buildFeatures = [ "git2" "core_installer" ];
|
buildFeatures = [ "git2" "core_installer" ];
|
||||||
|
|
||||||
cargoHash = "sha256-tkUJH7oFY5eZ5A7J+qzeyHlqOUnTipf6o+leZz7KOiQ=";
|
cargoHash = "sha256-LQWjgMRxtSs2MX1R6YsxDAWUvoUJfOWmp/zj/hlTxyw=";
|
||||||
|
|
||||||
# maa-cli would only seach libMaaCore.so and resources in itself's path
|
# maa-cli would only seach libMaaCore.so and resources in itself's path
|
||||||
# https://github.com/MaaAssistantArknights/maa-cli/issues/67
|
# https://github.com/MaaAssistantArknights/maa-cli/issues/67
|
||||||
|
|
|
@ -8,13 +8,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "nawk";
|
pname = "nawk";
|
||||||
version = "20240311";
|
version = "20240422";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "onetrueawk";
|
owner = "onetrueawk";
|
||||||
repo = "awk";
|
repo = "awk";
|
||||||
rev = finalAttrs.version;
|
rev = finalAttrs.version;
|
||||||
hash = "sha256-4iAQR8djhhp5Yn4H1IdzotQLY0d/Gz/vNQPfAUNQV0A=";
|
hash = "sha256-wsRkSXCLtK2jk4gW/Lpg/14NiOUANfmCrYqeKZW6CLY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
pname = "netscanner";
|
pname = "netscanner";
|
||||||
version = "0.4.2";
|
version = "0.4.4";
|
||||||
in
|
in
|
||||||
rustPlatform.buildRustPackage {
|
rustPlatform.buildRustPackage {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
|
@ -17,10 +17,10 @@ rustPlatform.buildRustPackage {
|
||||||
owner = "Chleba";
|
owner = "Chleba";
|
||||||
repo = "netscanner";
|
repo = "netscanner";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-xdY3moWRmSMZ3PVyuHBnp8c9k5KxH+MoE5+s0QWSUM4=";
|
hash = "sha256-RO0+Zz1sivIjD8OM4TBHR5geJw540MAJfXEl2yriH6o=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-15BNkrr79KMyFcn7NJrGCj25RjH/a4WUOQAoMPzJieQ=";
|
cargoHash = "sha256-GJLrUF2YAMtCtXTPJvlUURfiTYBFUE6Gmeux+5RXqAM=";
|
||||||
|
|
||||||
postFixup = ''
|
postFixup = ''
|
||||||
wrapProgram $out/bin/netscanner \
|
wrapProgram $out/bin/netscanner \
|
||||||
|
|
|
@ -6,13 +6,13 @@
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
pname = "nuclei-templates";
|
pname = "nuclei-templates";
|
||||||
version = "9.8.1";
|
version = "9.8.5";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "projectdiscovery";
|
owner = "projectdiscovery";
|
||||||
repo = "nuclei-templates";
|
repo = "nuclei-templates";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-g1MwzJK9a8bpbbP9EoUi0UBR54nfnyg3RDi9qwIKlH0=";
|
hash = "sha256-j1W/Gq002Y+/Lrq51Od8iZoxbMJji20kpbUaCC7ieqE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "omnictl";
|
pname = "omnictl";
|
||||||
version = "0.32.2";
|
version = "0.33.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "siderolabs";
|
owner = "siderolabs";
|
||||||
repo = "omni";
|
repo = "omni";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-db/bYwMPrOZvD/YPtFaRK80yaYdsE70YPh0xQe0uVi4=";
|
hash = "sha256-sszIUHEXtnla1fxlUbHXjQzaJoafse1YOSVikd7LMHk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-uwzVUdA51eT9fi2Wr0ilNPMpXx430UIYYWXQa1hpzRM=";
|
vendorHash = "sha256-fU2bmVL42tEoWvrCAg2iSV7bErZhwor6tnjGRrtwMA4=";
|
||||||
|
|
||||||
ldflags = [ "-s" "-w" ];
|
ldflags = [ "-s" "-w" ];
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "pyprland";
|
pname = "pyprland";
|
||||||
version = "2.2.5";
|
version = "2.2.10";
|
||||||
format = "pyproject";
|
format = "pyproject";
|
||||||
|
|
||||||
disabled = python3Packages.pythonOlder "3.10";
|
disabled = python3Packages.pythonOlder "3.10";
|
||||||
|
@ -11,7 +11,7 @@ python3Packages.buildPythonApplication rec {
|
||||||
owner = "hyprland-community";
|
owner = "hyprland-community";
|
||||||
repo = "pyprland";
|
repo = "pyprland";
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-ech+KqB0SyFYDWNP+luv+K2aDjJHZDWp72V6wkGBJJw=";
|
hash = "sha256-SOrkOLSjXq8PlZ894EKjfN+Dfnwa8dRgh5eOJVeD2Mk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = with python3Packages; [ poetry-core ];
|
nativeBuildInputs = with python3Packages; [ poetry-core ];
|
||||||
|
|
|
@ -31,6 +31,6 @@ stdenv.mkDerivation {
|
||||||
homepage = "https://github.com/rockchip-linux/rkbin";
|
homepage = "https://github.com/rockchip-linux/rkbin";
|
||||||
license = licenses.unfreeRedistributable;
|
license = licenses.unfreeRedistributable;
|
||||||
maintainers = with maintainers; [ thefossguy ];
|
maintainers = with maintainers; [ thefossguy ];
|
||||||
platforms = [ "aarch64-linux" ];
|
platforms = lib.platforms.all;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
43
pkgs/by-name/rk/rkboot/package.nix
Normal file
43
pkgs/by-name/rk/rkboot/package.nix
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
{ stdenv
|
||||||
|
, lib
|
||||||
|
, rkbin
|
||||||
|
, box64
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "rkboot";
|
||||||
|
|
||||||
|
src = rkbin.src;
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace RKBOOT/*.ini --replace 'PATH=' 'PATH=rkboot/'
|
||||||
|
'';
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
mkdir rkboot
|
||||||
|
for i in $(ls ./RKBOOT/*.ini)
|
||||||
|
do
|
||||||
|
# The proprietary, statically linked binaries to perform boot_merge are
|
||||||
|
# x86_64 only. Though we use box64 to emulate if building on aarch64-linux
|
||||||
|
${lib.optionalString stdenv.isAarch64 "${lib.getExe box64}"} ./tools/boot_merger "$i" || true
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
if [ -z "$(ls -A rkboot)" ]; then
|
||||||
|
echo "Error: The 'rkboot' directory is empty."
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
mv rkboot $out/bin
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Rockchip proprietary SPL bootloader blobs";
|
||||||
|
homepage = "https://github.com/rockchip-linux/rkbin";
|
||||||
|
license = licenses.unfreeRedistributable;
|
||||||
|
maintainers = with maintainers; [ matthewcroughan ];
|
||||||
|
platforms = [ "x86_64-linux" "aarch64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -7,13 +7,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "simdutf";
|
pname = "simdutf";
|
||||||
version = "5.2.4";
|
version = "5.2.5";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "simdutf";
|
owner = "simdutf";
|
||||||
repo = "simdutf";
|
repo = "simdutf";
|
||||||
rev = "v${finalAttrs.version}";
|
rev = "v${finalAttrs.version}";
|
||||||
hash = "sha256-ty4LqRJzwDRMCqPUcvgCAuvNExb0iRIzCOSMCfDzGEU=";
|
hash = "sha256-X/mpVmZ9FyN5MOcQRT1CjH5wsirSQ4rqdPE0lM5meT8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Fix build on darwin
|
# Fix build on darwin
|
||||||
|
|
36
pkgs/by-name/sm/smpq/package.nix
Normal file
36
pkgs/by-name/sm/smpq/package.nix
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
cmake,
|
||||||
|
fetchurl,
|
||||||
|
stdenv,
|
||||||
|
stormlib,
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
|
pname = "smpq";
|
||||||
|
version = "1.6";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://launchpad.net/smpq/trunk/${finalAttrs.version}/+download/smpq_${finalAttrs.version}.orig.tar.gz";
|
||||||
|
hash = "sha256-tdLcil3oYptx7l02ErboTYhBi4bFzTm6MV6esEYvGMs=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
(lib.cmakeBool "WITH_KDE" false)
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
|
buildInputs = [ stormlib ];
|
||||||
|
|
||||||
|
strictDeps = true;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "https://launchpad.net/smpq";
|
||||||
|
description = "StormLib MPQ archiving utility";
|
||||||
|
license = lib.licenses.gpl3Only;
|
||||||
|
mainProgram = "smpq";
|
||||||
|
maintainers = with lib.maintainers; [ aanderse karolchmist ];
|
||||||
|
platforms = lib.platforms.all;
|
||||||
|
};
|
||||||
|
})
|
|
@ -6,11 +6,11 @@
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||||
pname = "stats";
|
pname = "stats";
|
||||||
version = "2.10.7";
|
version = "2.10.10";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/exelban/stats/releases/download/v${finalAttrs.version}/Stats.dmg";
|
url = "https://github.com/exelban/stats/releases/download/v${finalAttrs.version}/Stats.dmg";
|
||||||
hash = "sha256-B44KFrKy76IZB7QeivE4a/e8JARp4VwJs0mTffa622w=";
|
hash = "sha256-CdTY5Qv/xF9ItNgHQFqec5nKObnImx/+MuFShTfdrAo=";
|
||||||
};
|
};
|
||||||
sourceRoot = ".";
|
sourceRoot = ".";
|
||||||
|
|
||||||
|
|
|
@ -1,41 +1,61 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, cmake, bzip2, libtomcrypt, zlib, darwin }:
|
{
|
||||||
|
lib,
|
||||||
|
bzip2,
|
||||||
|
cmake,
|
||||||
|
darwin,
|
||||||
|
fetchFromGitHub,
|
||||||
|
libtomcrypt,
|
||||||
|
stdenv,
|
||||||
|
zlib,
|
||||||
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "stormlib";
|
pname = "stormlib";
|
||||||
version = "9.22";
|
version = "9.23";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ladislav-zezula";
|
owner = "ladislav-zezula";
|
||||||
repo = "StormLib";
|
repo = "StormLib";
|
||||||
rev = "v${version}";
|
rev = "v${finalAttrs.version}";
|
||||||
sha256 = "1rcdl6ryrr8fss5z5qlpl4prrw8xpbcdgajg2hpp0i7fpk21ymcc";
|
hash = "sha256-8JDMqZ5BWslH4+Mfo5lnWTmD2QDaColwBOLzcuGZciY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
nativeBuildInputs = [
|
||||||
substituteInPlace CMakeLists.txt \
|
cmake
|
||||||
--replace "FRAMEWORK DESTINATION /Library/Frameworks" "FRAMEWORK DESTINATION Library/Frameworks"
|
|
||||||
'';
|
|
||||||
|
|
||||||
cmakeFlags = [
|
|
||||||
"-DBUILD_SHARED_LIBS=ON"
|
|
||||||
"-DWITH_LIBTOMCRYPT=ON"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
buildInputs = [
|
||||||
buildInputs = [ bzip2 libtomcrypt zlib ] ++
|
bzip2
|
||||||
lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Carbon ];
|
libtomcrypt
|
||||||
|
zlib
|
||||||
|
]
|
||||||
|
++ lib.optionals stdenv.isDarwin [
|
||||||
|
darwin.apple_sdk.frameworks.Carbon
|
||||||
|
];
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
(lib.cmakeBool "BUILD_SHARED_LIBS" (!stdenv.hostPlatform.isStatic))
|
||||||
|
(lib.cmakeBool "WITH_LIBTOMCRYPT" true)
|
||||||
|
];
|
||||||
|
|
||||||
|
strictDeps = true;
|
||||||
|
|
||||||
env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [
|
env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [
|
||||||
"-Wno-implicit-function-declaration"
|
"-Wno-implicit-function-declaration"
|
||||||
"-Wno-int-conversion"
|
"-Wno-int-conversion"
|
||||||
]);
|
]);
|
||||||
|
|
||||||
meta = with lib; {
|
postPatch = ''
|
||||||
|
substituteInPlace CMakeLists.txt \
|
||||||
|
--replace "FRAMEWORK DESTINATION /Library/Frameworks" "FRAMEWORK DESTINATION Library/Frameworks"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
homepage = "https://github.com/ladislav-zezula/StormLib";
|
homepage = "https://github.com/ladislav-zezula/StormLib";
|
||||||
license = licenses.mit;
|
|
||||||
description = "An open-source project that can work with Blizzard MPQ archives";
|
description = "An open-source project that can work with Blizzard MPQ archives";
|
||||||
mainProgram = "storm_test";
|
license = lib.licenses.mit;
|
||||||
platforms = platforms.all;
|
maintainers = with lib.maintainers; [ aanderse karolchmist ];
|
||||||
maintainers = with maintainers; [ aanderse karolchmist ];
|
platforms = lib.platforms.all;
|
||||||
|
broken = stdenv.isDarwin; # installation directory mismatch
|
||||||
};
|
};
|
||||||
}
|
})
|
||||||
|
|
186
pkgs/by-name/uv/uv/Cargo.lock
generated
186
pkgs/by-name/uv/uv/Cargo.lock
generated
|
@ -308,9 +308,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "axoupdater"
|
name = "axoupdater"
|
||||||
version = "0.5.0"
|
version = "0.5.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "04daf26062f90764242d0e144ad52d1952cb0d02ef7ce3ffbb9127b4f1340f36"
|
checksum = "639ef3c97d1bebfb42f94739036fbe3e10ef0056d2f8d5ea288bf4ad5f73a5e6"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"axoasset",
|
"axoasset",
|
||||||
"axoprocess",
|
"axoprocess",
|
||||||
|
@ -628,7 +628,7 @@ dependencies = [
|
||||||
"num-traits",
|
"num-traits",
|
||||||
"serde",
|
"serde",
|
||||||
"wasm-bindgen",
|
"wasm-bindgen",
|
||||||
"windows-targets 0.52.4",
|
"windows-targets 0.52.5",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -1049,6 +1049,7 @@ dependencies = [
|
||||||
"cache-key",
|
"cache-key",
|
||||||
"distribution-filename",
|
"distribution-filename",
|
||||||
"fs-err",
|
"fs-err",
|
||||||
|
"git2",
|
||||||
"itertools 0.12.1",
|
"itertools 0.12.1",
|
||||||
"once_cell",
|
"once_cell",
|
||||||
"pep440_rs",
|
"pep440_rs",
|
||||||
|
@ -1618,9 +1619,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "hyper"
|
name = "hyper"
|
||||||
version = "1.3.0"
|
version = "1.3.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9f24ce812868d86d19daa79bf3bf9175bc44ea323391147a5e3abde2a283871b"
|
checksum = "fe575dd17d0862a9a33781c8c4696a55c320909004a67a00fb286ba8b1bc496d"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes",
|
"bytes",
|
||||||
"futures-channel",
|
"futures-channel",
|
||||||
|
@ -2724,15 +2725,15 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pyo3"
|
name = "pyo3"
|
||||||
version = "0.20.3"
|
version = "0.21.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "53bdbb96d49157e65d45cc287af5f32ffadd5f4761438b527b055fb0d4bb8233"
|
checksum = "a5e00b96a521718e08e03b1a622f01c8a8deb50719335de3f60b3b3950f069d8"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if",
|
"cfg-if",
|
||||||
"indoc",
|
"indoc",
|
||||||
"libc",
|
"libc",
|
||||||
"memoffset 0.9.1",
|
"memoffset 0.9.1",
|
||||||
"parking_lot 0.11.2",
|
"parking_lot 0.12.1",
|
||||||
"portable-atomic",
|
"portable-atomic",
|
||||||
"pyo3-build-config",
|
"pyo3-build-config",
|
||||||
"pyo3-ffi",
|
"pyo3-ffi",
|
||||||
|
@ -2742,9 +2743,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pyo3-build-config"
|
name = "pyo3-build-config"
|
||||||
version = "0.20.3"
|
version = "0.21.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "deaa5745de3f5231ce10517a1f5dd97d53e5a2fd77aa6b5842292085831d48d7"
|
checksum = "7883df5835fafdad87c0d888b266c8ec0f4c9ca48a5bed6bbb592e8dedee1b50"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"once_cell",
|
"once_cell",
|
||||||
"target-lexicon",
|
"target-lexicon",
|
||||||
|
@ -2752,9 +2753,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pyo3-ffi"
|
name = "pyo3-ffi"
|
||||||
version = "0.20.3"
|
version = "0.21.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "62b42531d03e08d4ef1f6e85a2ed422eb678b8cd62b762e53891c05faf0d4afa"
|
checksum = "01be5843dc60b916ab4dad1dca6d20b9b4e6ddc8e15f50c47fe6d85f1fb97403"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"libc",
|
"libc",
|
||||||
"pyo3-build-config",
|
"pyo3-build-config",
|
||||||
|
@ -2762,9 +2763,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pyo3-log"
|
name = "pyo3-log"
|
||||||
version = "0.9.0"
|
version = "0.10.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "4c10808ee7250403bedb24bc30c32493e93875fef7ba3e4292226fe924f398bd"
|
checksum = "2af49834b8d2ecd555177e63b273b708dea75150abc6f5341d0a6e1a9623976c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"arc-swap",
|
"arc-swap",
|
||||||
"log",
|
"log",
|
||||||
|
@ -2773,9 +2774,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pyo3-macros"
|
name = "pyo3-macros"
|
||||||
version = "0.20.3"
|
version = "0.21.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7305c720fa01b8055ec95e484a6eca7a83c841267f0dd5280f0c8b8551d2c158"
|
checksum = "77b34069fc0682e11b31dbd10321cbf94808394c56fd996796ce45217dfac53c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"pyo3-macros-backend",
|
"pyo3-macros-backend",
|
||||||
|
@ -2785,9 +2786,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pyo3-macros-backend"
|
name = "pyo3-macros-backend"
|
||||||
version = "0.20.3"
|
version = "0.21.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7c7e9b68bb9c3149c5b0cade5d07f953d6d125eb4337723c4ccdb665f1f96185"
|
checksum = "08260721f32db5e1a5beae69a55553f56b99bd0e1c3e6e0a5e8851a9d0f5a85c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"heck 0.4.1",
|
"heck 0.4.1",
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
|
@ -2933,13 +2934,13 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "reflink-copy"
|
name = "reflink-copy"
|
||||||
version = "0.1.15"
|
version = "0.1.17"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "52b1349400e2ffd64a9fb5ed9008e33c0b8ef86bd5bae8f73080839c7082f1d5"
|
checksum = "7c3138c30c59ed9b8572f82bed97ea591ecd7e45012566046cc39e72679cff22"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if",
|
"cfg-if",
|
||||||
"rustix",
|
"rustix",
|
||||||
"windows 0.54.0",
|
"windows 0.56.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -3191,9 +3192,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rmp"
|
name = "rmp"
|
||||||
version = "0.8.12"
|
version = "0.8.14"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7f9860a6cc38ed1da53456442089b4dfa35e7cedaa326df63017af88385e6b20"
|
checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"byteorder",
|
"byteorder",
|
||||||
"num-traits",
|
"num-traits",
|
||||||
|
@ -3202,9 +3203,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rmp-serde"
|
name = "rmp-serde"
|
||||||
version = "1.1.2"
|
version = "1.2.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "bffea85eea980d8a74453e5d02a8d93028f3c34725de143085a844ebe953258a"
|
checksum = "938a142ab806f18b88a97b0dea523d39e0fd730a064b035726adcfc58a8a5188"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"byteorder",
|
"byteorder",
|
||||||
"rmp",
|
"rmp",
|
||||||
|
@ -3434,18 +3435,18 @@ checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "serde"
|
name = "serde"
|
||||||
version = "1.0.197"
|
version = "1.0.198"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
|
checksum = "9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"serde_derive",
|
"serde_derive",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "serde_derive"
|
name = "serde_derive"
|
||||||
version = "1.0.197"
|
version = "1.0.198"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
|
checksum = "e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
|
@ -3465,9 +3466,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "serde_json"
|
name = "serde_json"
|
||||||
version = "1.0.115"
|
version = "1.0.116"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
|
checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"itoa",
|
"itoa",
|
||||||
"ryu",
|
"ryu",
|
||||||
|
@ -3855,18 +3856,18 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "thiserror"
|
name = "thiserror"
|
||||||
version = "1.0.58"
|
version = "1.0.59"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
|
checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"thiserror-impl",
|
"thiserror-impl",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "thiserror-impl"
|
name = "thiserror-impl"
|
||||||
version = "1.0.58"
|
version = "1.0.59"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
|
checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
|
@ -4397,7 +4398,7 @@ checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "uv"
|
name = "uv"
|
||||||
version = "0.1.35"
|
version = "0.1.36"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anstream",
|
"anstream",
|
||||||
"anyhow",
|
"anyhow",
|
||||||
|
@ -4465,6 +4466,7 @@ dependencies = [
|
||||||
name = "uv-auth"
|
name = "uv-auth"
|
||||||
version = "0.0.1"
|
version = "0.0.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
|
"anyhow",
|
||||||
"async-trait",
|
"async-trait",
|
||||||
"base64 0.22.0",
|
"base64 0.22.0",
|
||||||
"http",
|
"http",
|
||||||
|
@ -4978,6 +4980,7 @@ dependencies = [
|
||||||
"pep440_rs",
|
"pep440_rs",
|
||||||
"pep508_rs",
|
"pep508_rs",
|
||||||
"pypi-types",
|
"pypi-types",
|
||||||
|
"requirements-txt",
|
||||||
"rustc-hash",
|
"rustc-hash",
|
||||||
"serde",
|
"serde",
|
||||||
"serde_json",
|
"serde_json",
|
||||||
|
@ -4991,7 +4994,7 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "uv-version"
|
name = "uv-version"
|
||||||
version = "0.1.35"
|
version = "0.1.36"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "uv-virtualenv"
|
name = "uv-virtualenv"
|
||||||
|
@ -5306,19 +5309,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
|
checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"windows-core 0.52.0",
|
"windows-core 0.52.0",
|
||||||
"windows-implement",
|
"windows-implement 0.52.0",
|
||||||
"windows-interface",
|
"windows-interface 0.52.0",
|
||||||
"windows-targets 0.52.4",
|
"windows-targets 0.52.5",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows"
|
name = "windows"
|
||||||
version = "0.54.0"
|
version = "0.56.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49"
|
checksum = "1de69df01bdf1ead2f4ac895dc77c9351aefff65b2f3db429a343f9cbf05e132"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"windows-core 0.54.0",
|
"windows-core 0.56.0",
|
||||||
"windows-targets 0.52.4",
|
"windows-targets 0.52.5",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -5327,17 +5330,19 @@ version = "0.52.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
|
checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"windows-targets 0.52.4",
|
"windows-targets 0.52.5",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows-core"
|
name = "windows-core"
|
||||||
version = "0.54.0"
|
version = "0.56.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65"
|
checksum = "4698e52ed2d08f8658ab0c39512a7c00ee5fe2688c65f8c0a4f06750d729f2a6"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
|
"windows-implement 0.56.0",
|
||||||
|
"windows-interface 0.56.0",
|
||||||
"windows-result",
|
"windows-result",
|
||||||
"windows-targets 0.52.4",
|
"windows-targets 0.52.5",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -5351,6 +5356,17 @@ dependencies = [
|
||||||
"syn 2.0.58",
|
"syn 2.0.58",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "windows-implement"
|
||||||
|
version = "0.56.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "f6fc35f58ecd95a9b71c4f2329b911016e6bec66b3f2e6a4aad86bd2e99e2f9b"
|
||||||
|
dependencies = [
|
||||||
|
"proc-macro2",
|
||||||
|
"quote",
|
||||||
|
"syn 2.0.58",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows-interface"
|
name = "windows-interface"
|
||||||
version = "0.52.0"
|
version = "0.52.0"
|
||||||
|
@ -5363,12 +5379,23 @@ dependencies = [
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows-result"
|
name = "windows-interface"
|
||||||
version = "0.1.0"
|
version = "0.56.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "cd19df78e5168dfb0aedc343d1d1b8d422ab2db6756d2dc3fef75035402a3f64"
|
checksum = "08990546bf4edef8f431fa6326e032865f27138718c587dc21bc0265bbcb57cc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"windows-targets 0.52.4",
|
"proc-macro2",
|
||||||
|
"quote",
|
||||||
|
"syn 2.0.58",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "windows-result"
|
||||||
|
version = "0.1.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "749f0da9cc72d82e600d8d2e44cadd0b9eedb9038f71a1c58556ac1c5791813b"
|
||||||
|
dependencies = [
|
||||||
|
"windows-targets 0.52.5",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -5386,7 +5413,7 @@ version = "0.52.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
|
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"windows-targets 0.52.4",
|
"windows-targets 0.52.5",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -5406,17 +5433,18 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows-targets"
|
name = "windows-targets"
|
||||||
version = "0.52.4"
|
version = "0.52.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
|
checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"windows_aarch64_gnullvm 0.52.4",
|
"windows_aarch64_gnullvm 0.52.5",
|
||||||
"windows_aarch64_msvc 0.52.4",
|
"windows_aarch64_msvc 0.52.5",
|
||||||
"windows_i686_gnu 0.52.4",
|
"windows_i686_gnu 0.52.5",
|
||||||
"windows_i686_msvc 0.52.4",
|
"windows_i686_gnullvm",
|
||||||
"windows_x86_64_gnu 0.52.4",
|
"windows_i686_msvc 0.52.5",
|
||||||
"windows_x86_64_gnullvm 0.52.4",
|
"windows_x86_64_gnu 0.52.5",
|
||||||
"windows_x86_64_msvc 0.52.4",
|
"windows_x86_64_gnullvm 0.52.5",
|
||||||
|
"windows_x86_64_msvc 0.52.5",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -5427,9 +5455,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_aarch64_gnullvm"
|
name = "windows_aarch64_gnullvm"
|
||||||
version = "0.52.4"
|
version = "0.52.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
|
checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_aarch64_msvc"
|
name = "windows_aarch64_msvc"
|
||||||
|
@ -5439,9 +5467,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_aarch64_msvc"
|
name = "windows_aarch64_msvc"
|
||||||
version = "0.52.4"
|
version = "0.52.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
|
checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_i686_gnu"
|
name = "windows_i686_gnu"
|
||||||
|
@ -5451,9 +5479,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_i686_gnu"
|
name = "windows_i686_gnu"
|
||||||
version = "0.52.4"
|
version = "0.52.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
|
checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "windows_i686_gnullvm"
|
||||||
|
version = "0.52.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_i686_msvc"
|
name = "windows_i686_msvc"
|
||||||
|
@ -5463,9 +5497,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_i686_msvc"
|
name = "windows_i686_msvc"
|
||||||
version = "0.52.4"
|
version = "0.52.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
|
checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_x86_64_gnu"
|
name = "windows_x86_64_gnu"
|
||||||
|
@ -5475,9 +5509,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_x86_64_gnu"
|
name = "windows_x86_64_gnu"
|
||||||
version = "0.52.4"
|
version = "0.52.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
|
checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_x86_64_gnullvm"
|
name = "windows_x86_64_gnullvm"
|
||||||
|
@ -5487,9 +5521,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_x86_64_gnullvm"
|
name = "windows_x86_64_gnullvm"
|
||||||
version = "0.52.4"
|
version = "0.52.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
|
checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_x86_64_msvc"
|
name = "windows_x86_64_msvc"
|
||||||
|
@ -5499,9 +5533,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows_x86_64_msvc"
|
name = "windows_x86_64_msvc"
|
||||||
version = "0.52.4"
|
version = "0.52.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
|
checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "winnow"
|
name = "winnow"
|
||||||
|
|
|
@ -12,13 +12,13 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "uv";
|
pname = "uv";
|
||||||
version = "0.1.35";
|
version = "0.1.36";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "astral-sh";
|
owner = "astral-sh";
|
||||||
repo = "uv";
|
repo = "uv";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-GcAvpX7oanJ8G1dgTyTa8jk9xhTroF2G+ir8j7Yua1M=";
|
hash = "sha256-ngKVc3RJzkkjIfeyRbPe2kzBSJH7T8wdyZo3DP9FwpU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoLock = {
|
cargoLock = {
|
||||||
|
|
|
@ -10,9 +10,12 @@
|
||||||
, libglvnd
|
, libglvnd
|
||||||
, libxkbcommon
|
, libxkbcommon
|
||||||
, vulkan-loader
|
, vulkan-loader
|
||||||
|
, wayland
|
||||||
, xdg-utils
|
, xdg-utils
|
||||||
, xorg
|
, xorg
|
||||||
, zlib
|
, zlib
|
||||||
|
, makeWrapper
|
||||||
|
, waylandSupport ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
@ -35,7 +38,7 @@ linux = stdenv.mkDerivation (finalAttrs: {
|
||||||
--replace-fail /opt/ $out/opt/
|
--replace-fail /opt/ $out/opt/
|
||||||
'';
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [ autoPatchelfHook zstd ];
|
nativeBuildInputs = [ autoPatchelfHook zstd makeWrapper ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
curl
|
curl
|
||||||
|
@ -54,7 +57,7 @@ linux = stdenv.mkDerivation (finalAttrs: {
|
||||||
xorg.libxcb
|
xorg.libxcb
|
||||||
xorg.libXcursor
|
xorg.libXcursor
|
||||||
xorg.libXi
|
xorg.libXi
|
||||||
];
|
] ++ lib.optionals waylandSupport [wayland];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
runHook preInstall
|
||||||
|
@ -62,6 +65,9 @@ linux = stdenv.mkDerivation (finalAttrs: {
|
||||||
mkdir $out
|
mkdir $out
|
||||||
cp -r opt usr/* $out
|
cp -r opt usr/* $out
|
||||||
|
|
||||||
|
'' + lib.optionalString waylandSupport ''
|
||||||
|
wrapProgram $out/bin/warp-terminal --set WARP_ENABLE_WAYLAND 1
|
||||||
|
'' + ''
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
});
|
});
|
||||||
|
|
|
@ -74,27 +74,16 @@ let
|
||||||
rev = "0.10.1";
|
rev = "0.10.1";
|
||||||
hash = "sha256-iIYKvpOWafPJB5XhDOSIW9Mb4I3A4pcgIIPQdQYEqUw=";
|
hash = "sha256-iIYKvpOWafPJB5XhDOSIW9Mb4I3A4pcgIIPQdQYEqUw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
wireplumber_0_4 = wireplumber.overrideAttrs (attrs: rec {
|
|
||||||
version = "0.4.17";
|
|
||||||
src = fetchFromGitLab {
|
|
||||||
domain = "gitlab.freedesktop.org";
|
|
||||||
owner = "pipewire";
|
|
||||||
repo = "wireplumber";
|
|
||||||
rev = version;
|
|
||||||
hash = "sha256-vhpQT67+849WV1SFthQdUeFnYe/okudTQJoL3y+wXwI=";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "waybar";
|
pname = "waybar";
|
||||||
version = "0.10.0";
|
version = "0.10.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Alexays";
|
owner = "Alexays";
|
||||||
repo = "Waybar";
|
repo = "Waybar";
|
||||||
rev = finalAttrs.version;
|
rev = finalAttrs.version;
|
||||||
hash = "sha256-p1VRrKT2kTDy48gDXPMHlLbfcokAOFeTZXGzTeO1SAE=";
|
hash = "sha256-xDeY0Bnwr+jCS0IpseWNgryQ3yV7RJ1VNNbOkT/xl5c=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postUnpack = lib.optional cavaSupport ''
|
postUnpack = lib.optional cavaSupport ''
|
||||||
|
@ -151,7 +140,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
++ lib.optional traySupport libdbusmenu-gtk3
|
++ lib.optional traySupport libdbusmenu-gtk3
|
||||||
++ lib.optional udevSupport udev
|
++ lib.optional udevSupport udev
|
||||||
++ lib.optional upowerSupport upower
|
++ lib.optional upowerSupport upower
|
||||||
++ lib.optional wireplumberSupport wireplumber_0_4
|
++ lib.optional wireplumberSupport wireplumber
|
||||||
++ lib.optional (cavaSupport || pipewireSupport) pipewire
|
++ lib.optional (cavaSupport || pipewireSupport) pipewire
|
||||||
++ lib.optional (!stdenv.isLinux) libinotify-kqueue;
|
++ lib.optional (!stdenv.isLinux) libinotify-kqueue;
|
||||||
|
|
|
@ -60,11 +60,7 @@
|
||||||
└── uos
|
└── uos
|
||||||
└── .license.key
|
└── .license.key
|
||||||
*/
|
*/
|
||||||
uosLicense ? requireFile {
|
uosLicense ? null
|
||||||
name = "license.tar.gz";
|
|
||||||
url = "https://www.uniontech.com";
|
|
||||||
sha256 = "53760079c1a5b58f2fa3d5effe1ed35239590b288841d812229ef4e55b2dbd69";
|
|
||||||
}
|
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
wechat-uos-env = stdenvNoCC.mkDerivation {
|
wechat-uos-env = stdenvNoCC.mkDerivation {
|
||||||
|
@ -87,6 +83,30 @@ let
|
||||||
preferLocalBuild = true;
|
preferLocalBuild = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
uosLicenseUnzipped = stdenvNoCC.mkDerivation {
|
||||||
|
name = "uos-license-unzipped";
|
||||||
|
src =
|
||||||
|
if uosLicense == null then
|
||||||
|
requireFile
|
||||||
|
{
|
||||||
|
name = "license.tar.gz";
|
||||||
|
url = "https://www.uniontech.com";
|
||||||
|
sha256 = "53760079c1a5b58f2fa3d5effe1ed35239590b288841d812229ef4e55b2dbd69";
|
||||||
|
} else uosLicense;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out
|
||||||
|
cp -r * $out/
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
outputHashAlgo = "sha256";
|
||||||
|
outputHashMode = "recursive";
|
||||||
|
outputHash = "sha256-pNftwtUZqBsKBSPQsEWlYLlb6h2Xd9j56ZRMi8I82ME=";
|
||||||
|
};
|
||||||
|
|
||||||
wechat-uos-runtime = with xorg; [
|
wechat-uos-runtime = with xorg; [
|
||||||
stdenv.cc.cc
|
stdenv.cc.cc
|
||||||
stdenv.cc.libc
|
stdenv.cc.libc
|
||||||
|
@ -195,11 +215,10 @@ let
|
||||||
dpkg -x $src ./wechat-uos
|
dpkg -x $src ./wechat-uos
|
||||||
dpkg -x $uosSrc ./wechat-uos-old-source
|
dpkg -x $uosSrc ./wechat-uos-old-source
|
||||||
|
|
||||||
tar -xvf $uosLicense
|
|
||||||
|
|
||||||
runHook postUnpack
|
runHook postUnpack
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# Use ln for license to prevent being garbage collection
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
runHook preInstall
|
||||||
mkdir -p $out
|
mkdir -p $out
|
||||||
|
@ -207,7 +226,7 @@ let
|
||||||
cp -r wechat-uos/* $out
|
cp -r wechat-uos/* $out
|
||||||
|
|
||||||
mkdir -pv $out/usr/lib/wechat-uos/license
|
mkdir -pv $out/usr/lib/wechat-uos/license
|
||||||
cp -r license/* $out/usr/lib/wechat-uos/license
|
ln -s ${uosLicenseUnzipped}/* $out/usr/lib/wechat-uos/license/
|
||||||
cp -r wechat-uos-old-source/usr/lib/license/libuosdevicea.so $out/usr/lib/wechat-uos/license/
|
cp -r wechat-uos-old-source/usr/lib/license/libuosdevicea.so $out/usr/lib/wechat-uos/license/
|
||||||
|
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
buildGraalvmNativeImage rec {
|
buildGraalvmNativeImage rec {
|
||||||
pname = "yamlscript";
|
pname = "yamlscript";
|
||||||
version = "0.1.56";
|
version = "0.1.57";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/yaml/yamlscript/releases/download/${version}/yamlscript.cli-${version}-standalone.jar";
|
url = "https://github.com/yaml/yamlscript/releases/download/${version}/yamlscript.cli-${version}-standalone.jar";
|
||||||
hash = "sha256-4ZjQYl4NdqbzyeEWDthBA8fWJFlIuMRtvHLtdlVYQmw=";
|
hash = "sha256-nuYfYz1Q7PtVb9A2KEN2XGeINifEjsM4IqGiUBbTGFM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
executable = "ys";
|
executable = "ys";
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||||
pname = "youtrack";
|
pname = "youtrack";
|
||||||
version = "2024.1.27971";
|
version = "2024.1.28928";
|
||||||
|
|
||||||
src = fetchzip {
|
src = fetchzip {
|
||||||
url = "https://download.jetbrains.com/charisma/youtrack-${finalAttrs.version}.zip";
|
url = "https://download.jetbrains.com/charisma/youtrack-${finalAttrs.version}.zip";
|
||||||
hash = "sha256-DropdHT3ZA4kuxyE8xyHB079OMzYH4zKPt38oW7XoFY=";
|
hash = "sha256-8+dZ1YTpvOX0IEEbFzv4t8T/U/BZMeDCZL7Ju25WBpE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeBinaryWrapper ];
|
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
themeName = "Dracula";
|
themeName = "Dracula";
|
||||||
version = "unstable-2024-04-08";
|
version = "unstable-2024-04-16";
|
||||||
in
|
in
|
||||||
stdenvNoCC.mkDerivation {
|
stdenvNoCC.mkDerivation {
|
||||||
pname = "dracula-theme";
|
pname = "dracula-theme";
|
||||||
|
@ -11,8 +11,8 @@ stdenvNoCC.mkDerivation {
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "dracula";
|
owner = "dracula";
|
||||||
repo = "gtk";
|
repo = "gtk";
|
||||||
rev = "18350cafd8e9c775737f97fb5acf0890e29bc47a";
|
rev = "557e276b41b00bbdc981c32f22ce6adc062d7c1e";
|
||||||
hash = "sha256-uhcRV7E7GDjWjetUHcz/E/g36m/yYTg3c9WJo6gYTJA=";
|
hash = "sha256-il9zpzJeszGJ1gLkG73mtaMD8nBUFCfCXjcJV1fizxg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedUserEnvPkgs = [
|
propagatedUserEnvPkgs = [
|
||||||
|
|
|
@ -24,13 +24,13 @@ lib.checkListOfEnum "${pname}: tweaks" [ "flat" "grey" "mix" "translucent" ] twe
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
inherit pname;
|
inherit pname;
|
||||||
version = "2023-09-09";
|
version = "2024-04-20";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "vinceliuice";
|
owner = "vinceliuice";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "dfdPEJnSmD0eqzx4ysiGPp77Beo32l2Tz1qSrbShLlc=";
|
sha256 = "RbAdoix+UWKiLB+04YiPa0UwzO1fFLy56IG1MipmE+E=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -9,13 +9,13 @@
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
pname = "mint-l-icons";
|
pname = "mint-l-icons";
|
||||||
version = "1.6.7";
|
version = "1.7.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "linuxmint";
|
owner = "linuxmint";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-4fBqdJq/JG9SZOLRxv/wXYG9g4wWGkvGwkWzUTDDjXY=";
|
hash = "sha256-nVdx+d+KpTh9EPLhW0+FFzq3OEyacDSxHgllMm51BKk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -11,13 +11,13 @@
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
pname = "mint-x-icons";
|
pname = "mint-x-icons";
|
||||||
version = "1.6.5";
|
version = "1.6.8";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "linuxmint";
|
owner = "linuxmint";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-Z07475Uiv4GKCOrKhDBXPZVBGpxdjN7vn2y0rRAZVm0=";
|
hash = "sha256-cxBZsAcGgoIY9KhjR/BWnMcttrywN6qap4lu5b2hauo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user