Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2024-03-12 00:12:17 +00:00 committed by GitHub
commit 87dfdf055e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
271 changed files with 6484 additions and 3570 deletions

View file

@ -19,7 +19,7 @@ jobs:
# we don't limit this action to only NixOS repo since the checks are cheap and useful developer feedback # we don't limit this action to only NixOS repo since the checks are cheap and useful developer feedback
steps: steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- uses: cachix/install-nix-action@6004951b182f8860210c8d6f0d808ec5b1a33d28 # v25 - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
- uses: cachix/cachix-action@18cf96c7c98e048e10a83abd92116114cd8504be # v14 - uses: cachix/cachix-action@18cf96c7c98e048e10a83abd92116114cd8504be # v14
with: with:
# This cache is for the nixpkgs repo checks and should not be trusted or used elsewhere. # This cache is for the nixpkgs repo checks and should not be trusted or used elsewhere.

View file

@ -98,7 +98,7 @@ jobs:
base=$(mktemp -d) base=$(mktemp -d)
git worktree add "$base" "$(git rev-parse HEAD^1)" git worktree add "$base" "$(git rev-parse HEAD^1)"
echo "base=$base" >> "$GITHUB_ENV" echo "base=$base" >> "$GITHUB_ENV"
- uses: cachix/install-nix-action@6004951b182f8860210c8d6f0d808ec5b1a33d28 # v25 - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
- name: Fetching the pinned tool - name: Fetching the pinned tool
# Update the pinned version using pkgs/test/nixpkgs-check-by-name/scripts/update-pinned-tool.sh # Update the pinned version using pkgs/test/nixpkgs-check-by-name/scripts/update-pinned-tool.sh
run: | run: |

View file

@ -16,7 +16,7 @@ jobs:
with: with:
# pull_request_target checks out the base branch by default # pull_request_target checks out the base branch by default
ref: refs/pull/${{ github.event.pull_request.number }}/merge ref: refs/pull/${{ github.event.pull_request.number }}/merge
- uses: cachix/install-nix-action@6004951b182f8860210c8d6f0d808ec5b1a33d28 # v25 - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
with: with:
# explicitly enable sandbox # explicitly enable sandbox
extra_nix_config: sandbox = true extra_nix_config: sandbox = true

View file

@ -28,7 +28,7 @@ jobs:
with: with:
# pull_request_target checks out the base branch by default # pull_request_target checks out the base branch by default
ref: refs/pull/${{ github.event.pull_request.number }}/merge ref: refs/pull/${{ github.event.pull_request.number }}/merge
- uses: cachix/install-nix-action@6004951b182f8860210c8d6f0d808ec5b1a33d28 # v25 - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
with: with:
# nixpkgs commit is pinned so that it doesn't break # nixpkgs commit is pinned so that it doesn't break
# editorconfig-checker 2.4.0 # editorconfig-checker 2.4.0

View file

@ -18,7 +18,7 @@ jobs:
with: with:
# pull_request_target checks out the base branch by default # pull_request_target checks out the base branch by default
ref: refs/pull/${{ github.event.pull_request.number }}/merge ref: refs/pull/${{ github.event.pull_request.number }}/merge
- uses: cachix/install-nix-action@6004951b182f8860210c8d6f0d808ec5b1a33d28 # v25 - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
with: with:
# explicitly enable sandbox # explicitly enable sandbox
extra_nix_config: sandbox = true extra_nix_config: sandbox = true

View file

@ -19,7 +19,7 @@ jobs:
with: with:
# pull_request_target checks out the base branch by default # pull_request_target checks out the base branch by default
ref: refs/pull/${{ github.event.pull_request.number }}/merge ref: refs/pull/${{ github.event.pull_request.number }}/merge
- uses: cachix/install-nix-action@6004951b182f8860210c8d6f0d808ec5b1a33d28 # v25 - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
with: with:
# explicitly enable sandbox # explicitly enable sandbox
extra_nix_config: sandbox = true extra_nix_config: sandbox = true

View file

@ -29,7 +29,7 @@ jobs:
# pull_request_target checks out the base branch by default # pull_request_target checks out the base branch by default
ref: refs/pull/${{ github.event.pull_request.number }}/merge ref: refs/pull/${{ github.event.pull_request.number }}/merge
if: ${{ env.CHANGED_FILES && env.CHANGED_FILES != '' }} if: ${{ env.CHANGED_FILES && env.CHANGED_FILES != '' }}
- uses: cachix/install-nix-action@6004951b182f8860210c8d6f0d808ec5b1a33d28 # v25 - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
with: with:
nix_path: nixpkgs=channel:nixpkgs-unstable nix_path: nixpkgs=channel:nixpkgs-unstable
- name: Parse all changed or added nix files - name: Parse all changed or added nix files

View file

@ -17,7 +17,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- uses: cachix/install-nix-action@6004951b182f8860210c8d6f0d808ec5b1a33d28 # v25 - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
with: with:
nix_path: nixpkgs=channel:nixpkgs-unstable nix_path: nixpkgs=channel:nixpkgs-unstable
- name: setup - name: setup

1
.gitignore vendored
View file

@ -17,7 +17,6 @@ tags
/doc/NEWS.txt /doc/NEWS.txt
/doc/manual.html /doc/manual.html
/doc/manual.pdf /doc/manual.pdf
/result
/source/ /source/
.version-suffix .version-suffix

View file

@ -6,12 +6,19 @@
{ config, lib, ... }: { config, lib, ... }:
with lib; let
inherit (lib)
mkAliasOptionModule
mkForce
mkOption
types
;
in
{ {
options = { options = {
# A simple boolean option that can be enabled or disabled. # A simple boolean option that can be enabled or disabled.
enable = lib.mkOption { enable = mkOption {
type = types.nullOr types.bool; type = types.nullOr types.bool;
default = null; default = null;
example = true; example = true;
@ -41,7 +48,7 @@ with lib;
# should override the next import. # should override the next import.
( { config, lib, ... }: ( { config, lib, ... }:
{ {
enableAlias = lib.mkForce false; enableAlias = mkForce false;
} }
) )

View file

@ -6,12 +6,19 @@
{ config, lib, ... }: { config, lib, ... }:
with lib; let
inherit (lib)
mkAliasOptionModule
mkDefault
mkOption
types
;
in
{ {
options = { options = {
# A simple boolean option that can be enabled or disabled. # A simple boolean option that can be enabled or disabled.
enable = lib.mkOption { enable = mkOption {
type = types.nullOr types.bool; type = types.nullOr types.bool;
default = null; default = null;
example = true; example = true;
@ -41,7 +48,7 @@ with lib;
# should be able to be overridden by the next import. # should be able to be overridden by the next import.
( { config, lib, ... }: ( { config, lib, ... }:
{ {
enableAlias = lib.mkDefault false; enableAlias = mkDefault false;
} }
) )

View file

@ -2,7 +2,14 @@
, extendModules , extendModules
, ... , ...
}: }:
with lib;
let
inherit (lib)
mkOption
mkOverride
types
;
in
{ {
imports = [ imports = [

View file

@ -9423,6 +9423,13 @@
githubId = 392720; githubId = 392720;
name = "Jon Banafato"; name = "Jon Banafato";
}; };
jonas-w = {
email = "nixpkgs@03j.de";
github = "jonas-w";
githubId = 32615971;
name = "Jonas Wunderlich";
matrix = "@matrix:03j.de";
};
jonathanmarler = { jonathanmarler = {
email = "johnnymarler@gmail.com"; email = "johnnymarler@gmail.com";
github = "marler8997"; github = "marler8997";
@ -10596,6 +10603,12 @@
githubId = 449813; githubId = 449813;
name = "Roman Kuznetsov"; name = "Roman Kuznetsov";
}; };
kuznetsss = {
email = "kuzzz99@gmail.com";
github = "kuznetsss";
githubId = 15742918;
name = "Sergey Kuznetsov";
};
kwohlfahrt = { kwohlfahrt = {
email = "kai.wohlfahrt@gmail.com"; email = "kai.wohlfahrt@gmail.com";
github = "kwohlfahrt"; github = "kwohlfahrt";
@ -17185,6 +17198,12 @@
githubId = 8534888; githubId = 8534888;
name = "Savanni D'Gerinel"; name = "Savanni D'Gerinel";
}; };
savedra1 = {
email = "michaelsavedra@gmail.com";
github = "savedra1";
githubId = 99875823;
name = "Michael Savedra";
};
savyajha = { savyajha = {
email = "savya.jha@hawkradius.com"; email = "savya.jha@hawkradius.com";
github = "savyajha"; github = "savyajha";
@ -18110,6 +18129,12 @@
githubId = 55726; githubId = 55726;
name = "Stanislav Ochotnický"; name = "Stanislav Ochotnický";
}; };
sodiboo = {
name = "sodiboo";
github = "sodiboo";
githubId = 37938646;
matrix = "@sodiboo:arcticfoxes.net";
};
softinio = { softinio = {
email = "code@softinio.com"; email = "code@softinio.com";
github = "softinio"; github = "softinio";
@ -19227,6 +19252,12 @@
githubId = 3105057; githubId = 3105057;
name = "Jan Beinke"; name = "Jan Beinke";
}; };
themaxmur = {
name = "Maxim Muravev";
email = "muravjev.mak@yandex.ru";
github = "TheMaxMur";
githubId = 31189199;
};
thenonameguy = { thenonameguy = {
email = "thenonameguy24@gmail.com"; email = "thenonameguy24@gmail.com";
name = "Krisztian Szabo"; name = "Krisztian Szabo";

View file

@ -93,6 +93,7 @@ CROSS_TARGETS=(
mips64el-unknown-linux-gnuabi64 mips64el-unknown-linux-gnuabi64
mips64el-unknown-linux-gnuabin32 mips64el-unknown-linux-gnuabin32
mipsel-unknown-linux-gnu mipsel-unknown-linux-gnu
powerpc64-unknown-linux-gnuabielfv2
powerpc64le-unknown-linux-gnu powerpc64le-unknown-linux-gnu
riscv64-unknown-linux-gnu riscv64-unknown-linux-gnu
) )

View file

@ -377,6 +377,9 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
- [Nginx virtual hosts](#opt-services.nginx.virtualHosts) using `forceSSL` or - [Nginx virtual hosts](#opt-services.nginx.virtualHosts) using `forceSSL` or
`globalRedirect` can now have redirect codes other than 301 through `globalRedirect` can now have redirect codes other than 301 through
- `bacula` now allows to configure `TLS` for encrypted communication.
`redirectCode`. `redirectCode`.
- `libjxl` 0.9.0 [dropped support for the butteraugli API](https://github.com/libjxl/libjxl/pull/2576). You will no longer be able to set `enableButteraugli` on `libaom`. - `libjxl` 0.9.0 [dropped support for the butteraugli API](https://github.com/libjxl/libjxl/pull/2576). You will no longer be able to set `enableButteraugli` on `libaom`.

View file

@ -4,11 +4,36 @@
# TODO: test configuration when building nixexpr (use -t parameter) # TODO: test configuration when building nixexpr (use -t parameter)
# TODO: support sqlite3 (it's deprecate?) and mysql # TODO: support sqlite3 (it's deprecate?) and mysql
with lib;
let let
inherit (lib)
concatStringsSep
literalExpression
mapAttrsToList
mdDoc
mkIf
mkOption
optional
optionalString
types
;
libDir = "/var/lib/bacula"; libDir = "/var/lib/bacula";
yes_no = bool: if bool then "yes" else "no";
tls_conf = tls_cfg: optionalString tls_cfg.enable (
concatStringsSep
"\n"
(
["TLS Enable = yes;"]
++ optional (tls_cfg.require != null) "TLS Require = ${yes_no tls_cfg.require};"
++ optional (tls_cfg.certificate != null) ''TLS Certificate = "${tls_cfg.certificate}";''
++ [''TLS Key = "${tls_cfg.key}";'']
++ optional (tls_cfg.verifyPeer != null) "TLS Verify Peer = ${yes_no tls_cfg.verifyPeer};"
++ optional (tls_cfg.allowedCN != [ ]) "TLS Allowed CN = ${concatStringsSep " " (tls_cfg.allowedCN)};"
++ optional (tls_cfg.caCertificateFile != null) ''TLS CA Certificate File = "${tls_cfg.caCertificateFile}";''
)
);
fd_cfg = config.services.bacula-fd; fd_cfg = config.services.bacula-fd;
fd_conf = pkgs.writeText "bacula-fd.conf" fd_conf = pkgs.writeText "bacula-fd.conf"
'' ''
@ -18,6 +43,7 @@ let
WorkingDirectory = ${libDir}; WorkingDirectory = ${libDir};
Pid Directory = /run; Pid Directory = /run;
${fd_cfg.extraClientConfig} ${fd_cfg.extraClientConfig}
${tls_conf fd_cfg.tls}
} }
${concatStringsSep "\n" (mapAttrsToList (name: value: '' ${concatStringsSep "\n" (mapAttrsToList (name: value: ''
@ -25,6 +51,7 @@ let
Name = "${name}"; Name = "${name}";
Password = ${value.password}; Password = ${value.password};
Monitor = ${value.monitor}; Monitor = ${value.monitor};
${tls_conf value.tls}
} }
'') fd_cfg.director)} '') fd_cfg.director)}
@ -44,6 +71,7 @@ let
WorkingDirectory = ${libDir}; WorkingDirectory = ${libDir};
Pid Directory = /run; Pid Directory = /run;
${sd_cfg.extraStorageConfig} ${sd_cfg.extraStorageConfig}
${tls_conf sd_cfg.tls}
} }
${concatStringsSep "\n" (mapAttrsToList (name: value: '' ${concatStringsSep "\n" (mapAttrsToList (name: value: ''
@ -70,6 +98,7 @@ let
Name = "${name}"; Name = "${name}";
Password = ${value.password}; Password = ${value.password};
Monitor = ${value.monitor}; Monitor = ${value.monitor};
${tls_conf value.tls}
} }
'') sd_cfg.director)} '') sd_cfg.director)}
@ -90,6 +119,7 @@ let
Working Directory = ${libDir}; Working Directory = ${libDir};
Pid Directory = /run/; Pid Directory = /run/;
QueryFile = ${pkgs.bacula}/etc/query.sql; QueryFile = ${pkgs.bacula}/etc/query.sql;
${tls_conf dir_cfg.tls}
${dir_cfg.extraDirectorConfig} ${dir_cfg.extraDirectorConfig}
} }
@ -108,13 +138,99 @@ let
${dir_cfg.extraConfig} ${dir_cfg.extraConfig}
''; '';
directorOptions = {...}: linkOption = name: destination: "[${name}](#opt-${builtins.replaceStrings [ "<" ">"] ["_" "_"] destination})";
tlsLink = destination: submodulePath: linkOption "${submodulePath}.${destination}" "${submodulePath}.${destination}";
tlsOptions = submodulePath: {...}:
{
options = {
enable = mkOption {
type = types.bool;
default = false;
description = mdDoc ''
Specifies if TLS should be enabled.
If this set to `false` TLS will be completely disabled, even if ${tlsLink "tls.require" submodulePath} is true.
'';
};
require = mkOption {
type = types.nullOr types.bool;
default = null;
description = mdDoc ''
Require TLS or TLS-PSK encryption.
This directive is ignored unless one of ${tlsLink "tls.enable" submodulePath} is true or TLS PSK Enable is set to `yes`.
If TLS is not required while TLS or TLS-PSK are enabled, then the Bacula component
will connect with other components either with or without TLS or TLS-PSK
If ${tlsLink "tls.enable" submodulePath} or TLS-PSK is enabled and TLS is required, then the Bacula
component will refuse any connection request that does not use TLS.
'';
};
certificate = mkOption {
type = types.nullOr types.path;
default = null;
description = mdDoc ''
The full path to the PEM encoded TLS certificate.
It will be used as either a client or server certificate,
depending on the connection direction.
This directive is required in a server context, but it may
not be specified in a client context if ${tlsLink "tls.verifyPeer" submodulePath} is
`false` in the corresponding server context.
'';
};
key = mkOption {
type = types.path;
description = mdDoc ''
The path of a PEM encoded TLS private key.
It must correspond to the TLS certificate.
'';
};
verifyPeer = mkOption {
type = types.nullOr types.bool;
default = null;
description = mdDoc ''
Verify peer certificate.
Instructs server to request and verify the client's X.509 certificate.
Any client certificate signed by a known-CA will be accepted.
Additionally, the client's X509 certificate Common Name must meet the value of the Address directive.
If ${tlsLink "tls.allowedCN" submodulePath} is used,
the client's x509 certificate Common Name must also correspond to
one of the CN specified in the ${tlsLink "tls.allowedCN" submodulePath} directive.
This directive is valid only for a server and not in client context.
Standard from Bacula is `true`.
'';
};
allowedCN = mkOption {
type = types.listOf types.str;
default = [ ];
description = mdDoc ''
Common name attribute of allowed peer certificates.
This directive is valid for a server and in a client context.
If this directive is specified, the peer certificate will be verified against this list.
In the case this directive is configured on a server side, the allowed
CN list will not be checked if ${tlsLink "tls.verifyPeer" submodulePath} is false.
'';
};
caCertificateFile = mkOption {
type = types.nullOr types.path;
default = null;
description = mdDoc ''
The path specifying a PEM encoded TLS CA certificate(s).
Multiple certificates are permitted in the file.
One of TLS CA Certificate File or TLS CA Certificate Dir are required in a server context, unless
${tlsLink "tls.verifyPeer" submodulePath} is false, and are always required in a client context.
'';
};
};
};
directorOptions = submodulePath:{...}:
{ {
options = { options = {
password = mkOption { password = mkOption {
type = types.str; type = types.str;
# TODO: required? # TODO: required?
description = lib.mdDoc '' description = mdDoc ''
Specifies the password that must be supplied for the default Bacula Specifies the password that must be supplied for the default Bacula
Console to be authorized. The same password must appear in the Console to be authorized. The same password must appear in the
Director resource of the Console configuration file. For added Director resource of the Console configuration file. For added
@ -135,7 +251,7 @@ let
type = types.enum [ "no" "yes" ]; type = types.enum [ "no" "yes" ];
default = "no"; default = "no";
example = "yes"; example = "yes";
description = lib.mdDoc '' description = mdDoc ''
If Monitor is set to `no`, this director will have If Monitor is set to `no`, this director will have
full access to this Storage daemon. If Monitor is set to full access to this Storage daemon. If Monitor is set to
`yes`, this director will only be able to fetch the `yes`, this director will only be able to fetch the
@ -146,6 +262,13 @@ let
security problems. security problems.
''; '';
}; };
tls = mkOption {
type = types.submodule (tlsOptions "${submodulePath}.director.<name>");
description = mdDoc ''
TLS Options for the Director in this Configuration.
'';
};
}; };
}; };
@ -154,7 +277,7 @@ let
options = { options = {
changerDevice = mkOption { changerDevice = mkOption {
type = types.str; type = types.str;
description = lib.mdDoc '' description = mdDoc ''
The specified name-string must be the generic SCSI device name of the The specified name-string must be the generic SCSI device name of the
autochanger that corresponds to the normal read/write Archive Device autochanger that corresponds to the normal read/write Archive Device
specified in the Device resource. This generic SCSI device name specified in the Device resource. This generic SCSI device name
@ -173,7 +296,7 @@ let
changerCommand = mkOption { changerCommand = mkOption {
type = types.str; type = types.str;
description = lib.mdDoc '' description = mdDoc ''
The name-string specifies an external program to be called that will The name-string specifies an external program to be called that will
automatically change volumes as required by Bacula. Normally, this automatically change volumes as required by Bacula. Normally, this
directive will be specified only in the AutoChanger resource, which directive will be specified only in the AutoChanger resource, which
@ -195,14 +318,14 @@ let
}; };
devices = mkOption { devices = mkOption {
description = lib.mdDoc ""; description = mdDoc "";
type = types.listOf types.str; type = types.listOf types.str;
}; };
extraAutochangerConfig = mkOption { extraAutochangerConfig = mkOption {
default = ""; default = "";
type = types.lines; type = types.lines;
description = lib.mdDoc '' description = mdDoc ''
Extra configuration to be passed in Autochanger directive. Extra configuration to be passed in Autochanger directive.
''; '';
example = '' example = ''
@ -219,7 +342,7 @@ let
archiveDevice = mkOption { archiveDevice = mkOption {
# TODO: required? # TODO: required?
type = types.str; type = types.str;
description = lib.mdDoc '' description = mdDoc ''
The specified name-string gives the system file name of the storage The specified name-string gives the system file name of the storage
device managed by this storage daemon. This will usually be the device managed by this storage daemon. This will usually be the
device file name of a removable storage device (tape drive), for device file name of a removable storage device (tape drive), for
@ -236,7 +359,7 @@ let
mediaType = mkOption { mediaType = mkOption {
# TODO: required? # TODO: required?
type = types.str; type = types.str;
description = lib.mdDoc '' description = mdDoc ''
The specified name-string names the type of media supported by this The specified name-string names the type of media supported by this
device, for example, `DLT7000`. Media type names are device, for example, `DLT7000`. Media type names are
arbitrary in that you set them to anything you want, but they must be arbitrary in that you set them to anything you want, but they must be
@ -274,7 +397,7 @@ let
extraDeviceConfig = mkOption { extraDeviceConfig = mkOption {
default = ""; default = "";
type = types.lines; type = types.lines;
description = lib.mdDoc '' description = mdDoc ''
Extra configuration to be passed in Device directive. Extra configuration to be passed in Device directive.
''; '';
example = '' example = ''
@ -295,7 +418,7 @@ in {
enable = mkOption { enable = mkOption {
type = types.bool; type = types.bool;
default = false; default = false;
description = lib.mdDoc '' description = mdDoc ''
Whether to enable the Bacula File Daemon. Whether to enable the Bacula File Daemon.
''; '';
}; };
@ -304,7 +427,7 @@ in {
default = "${config.networking.hostName}-fd"; default = "${config.networking.hostName}-fd";
defaultText = literalExpression ''"''${config.networking.hostName}-fd"''; defaultText = literalExpression ''"''${config.networking.hostName}-fd"'';
type = types.str; type = types.str;
description = lib.mdDoc '' description = mdDoc ''
The client name that must be used by the Director when connecting. The client name that must be used by the Director when connecting.
Generally, it is a good idea to use a name related to the machine so Generally, it is a good idea to use a name related to the machine so
that error messages can be easily identified if you have multiple that error messages can be easily identified if you have multiple
@ -315,7 +438,7 @@ in {
port = mkOption { port = mkOption {
default = 9102; default = 9102;
type = types.port; type = types.port;
description = lib.mdDoc '' description = mdDoc ''
This specifies the port number on which the Client listens for This specifies the port number on which the Client listens for
Director connections. It must agree with the FDPort specified in Director connections. It must agree with the FDPort specified in
the Client resource of the Director's configuration file. the Client resource of the Director's configuration file.
@ -324,16 +447,26 @@ in {
director = mkOption { director = mkOption {
default = {}; default = {};
description = lib.mdDoc '' description = mdDoc ''
This option defines director resources in Bacula File Daemon. This option defines director resources in Bacula File Daemon.
''; '';
type = with types; attrsOf (submodule directorOptions); type = types.attrsOf (types.submodule (directorOptions "services.bacula-fd"));
}; };
tls = mkOption {
type = types.submodule (tlsOptions "services.bacula-fd");
default = { };
description = mdDoc ''
TLS Options for the File Daemon.
Important notice: The backup won't be encrypted.
'';
};
extraClientConfig = mkOption { extraClientConfig = mkOption {
default = ""; default = "";
type = types.lines; type = types.lines;
description = lib.mdDoc '' description = mdDoc ''
Extra configuration to be passed in Client directive. Extra configuration to be passed in Client directive.
''; '';
example = '' example = ''
@ -345,7 +478,7 @@ in {
extraMessagesConfig = mkOption { extraMessagesConfig = mkOption {
default = ""; default = "";
type = types.lines; type = types.lines;
description = lib.mdDoc '' description = mdDoc ''
Extra configuration to be passed in Messages directive. Extra configuration to be passed in Messages directive.
''; '';
example = '' example = ''
@ -358,7 +491,7 @@ in {
enable = mkOption { enable = mkOption {
type = types.bool; type = types.bool;
default = false; default = false;
description = lib.mdDoc '' description = mdDoc ''
Whether to enable Bacula Storage Daemon. Whether to enable Bacula Storage Daemon.
''; '';
}; };
@ -367,7 +500,7 @@ in {
default = "${config.networking.hostName}-sd"; default = "${config.networking.hostName}-sd";
defaultText = literalExpression ''"''${config.networking.hostName}-sd"''; defaultText = literalExpression ''"''${config.networking.hostName}-sd"'';
type = types.str; type = types.str;
description = lib.mdDoc '' description = mdDoc ''
Specifies the Name of the Storage daemon. Specifies the Name of the Storage daemon.
''; '';
}; };
@ -375,7 +508,7 @@ in {
port = mkOption { port = mkOption {
default = 9103; default = 9103;
type = types.port; type = types.port;
description = lib.mdDoc '' description = mdDoc ''
Specifies port number on which the Storage daemon listens for Specifies port number on which the Storage daemon listens for
Director connections. Director connections.
''; '';
@ -383,32 +516,32 @@ in {
director = mkOption { director = mkOption {
default = {}; default = {};
description = lib.mdDoc '' description = mdDoc ''
This option defines Director resources in Bacula Storage Daemon. This option defines Director resources in Bacula Storage Daemon.
''; '';
type = with types; attrsOf (submodule directorOptions); type = types.attrsOf (types.submodule (directorOptions "services.bacula-sd"));
}; };
device = mkOption { device = mkOption {
default = {}; default = {};
description = lib.mdDoc '' description = mdDoc ''
This option defines Device resources in Bacula Storage Daemon. This option defines Device resources in Bacula Storage Daemon.
''; '';
type = with types; attrsOf (submodule deviceOptions); type = types.attrsOf (types.submodule deviceOptions);
}; };
autochanger = mkOption { autochanger = mkOption {
default = {}; default = {};
description = lib.mdDoc '' description = mdDoc ''
This option defines Autochanger resources in Bacula Storage Daemon. This option defines Autochanger resources in Bacula Storage Daemon.
''; '';
type = with types; attrsOf (submodule autochangerOptions); type = types.attrsOf (types.submodule autochangerOptions);
}; };
extraStorageConfig = mkOption { extraStorageConfig = mkOption {
default = ""; default = "";
type = types.lines; type = types.lines;
description = lib.mdDoc '' description = mdDoc ''
Extra configuration to be passed in Storage directive. Extra configuration to be passed in Storage directive.
''; '';
example = '' example = ''
@ -420,13 +553,21 @@ in {
extraMessagesConfig = mkOption { extraMessagesConfig = mkOption {
default = ""; default = "";
type = types.lines; type = types.lines;
description = lib.mdDoc '' description = mdDoc ''
Extra configuration to be passed in Messages directive. Extra configuration to be passed in Messages directive.
''; '';
example = '' example = ''
console = all console = all
''; '';
}; };
tls = mkOption {
type = types.submodule (tlsOptions "services.bacula-sd");
default = { };
description = mdDoc ''
TLS Options for the Storage Daemon.
Important notice: The backup won't be encrypted.
'';
};
}; };
@ -434,7 +575,7 @@ in {
enable = mkOption { enable = mkOption {
type = types.bool; type = types.bool;
default = false; default = false;
description = lib.mdDoc '' description = mdDoc ''
Whether to enable Bacula Director Daemon. Whether to enable Bacula Director Daemon.
''; '';
}; };
@ -443,7 +584,7 @@ in {
default = "${config.networking.hostName}-dir"; default = "${config.networking.hostName}-dir";
defaultText = literalExpression ''"''${config.networking.hostName}-dir"''; defaultText = literalExpression ''"''${config.networking.hostName}-dir"'';
type = types.str; type = types.str;
description = lib.mdDoc '' description = mdDoc ''
The director name used by the system administrator. This directive is The director name used by the system administrator. This directive is
required. required.
''; '';
@ -452,7 +593,7 @@ in {
port = mkOption { port = mkOption {
default = 9101; default = 9101;
type = types.port; type = types.port;
description = lib.mdDoc '' description = mdDoc ''
Specify the port (a positive integer) on which the Director daemon Specify the port (a positive integer) on which the Director daemon
will listen for Bacula Console connections. This same port number will listen for Bacula Console connections. This same port number
must be specified in the Director resource of the Console must be specified in the Director resource of the Console
@ -465,7 +606,7 @@ in {
password = mkOption { password = mkOption {
# TODO: required? # TODO: required?
type = types.str; type = types.str;
description = lib.mdDoc '' description = mdDoc ''
Specifies the password that must be supplied for a Director. Specifies the password that must be supplied for a Director.
''; '';
}; };
@ -473,7 +614,7 @@ in {
extraMessagesConfig = mkOption { extraMessagesConfig = mkOption {
default = ""; default = "";
type = types.lines; type = types.lines;
description = lib.mdDoc '' description = mdDoc ''
Extra configuration to be passed in Messages directive. Extra configuration to be passed in Messages directive.
''; '';
example = '' example = ''
@ -484,7 +625,7 @@ in {
extraDirectorConfig = mkOption { extraDirectorConfig = mkOption {
default = ""; default = "";
type = types.lines; type = types.lines;
description = lib.mdDoc '' description = mdDoc ''
Extra configuration to be passed in Director directive. Extra configuration to be passed in Director directive.
''; '';
example = '' example = ''
@ -496,13 +637,22 @@ in {
extraConfig = mkOption { extraConfig = mkOption {
default = ""; default = "";
type = types.lines; type = types.lines;
description = lib.mdDoc '' description = mdDoc ''
Extra configuration for Bacula Director Daemon. Extra configuration for Bacula Director Daemon.
''; '';
example = '' example = ''
TODO TODO
''; '';
}; };
tls = mkOption {
type = types.submodule (tlsOptions "services.bacula-dir");
default = { };
description = mdDoc ''
TLS Options for the Director.
Important notice: The backup won't be encrypted.
'';
};
}; };
}; };

View file

@ -107,10 +107,25 @@ in
wants = [ "network-online.target" ]; wants = [ "network-online.target" ];
after = [ "network-online.target" ]; after = [ "network-online.target" ];
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
# lldap defaults to a hardcoded `jwt_secret` value if none is provided, which is bad, because
# an attacker could create a valid admin jwt access token fairly trivially.
# Because there are 3 different ways `jwt_secret` can be provided, we check if any one of them is present,
# and if not, bootstrap a secret in `/var/lib/lldap/jwt_secret_file` and give that to lldap.
script = lib.optionalString (!cfg.settings ? jwt_secret) ''
if [[ -z "$LLDAP_JWT_SECRET_FILE" ]] && [[ -z "$LLDAP_JWT_SECRET" ]]; then
if [[ ! -e "./jwt_secret_file" ]]; then
${lib.getExe pkgs.openssl} rand -base64 -out ./jwt_secret_file 32
fi
export LLDAP_JWT_SECRET_FILE="./jwt_secret_file"
fi
'' + ''
${lib.getExe cfg.package} run --config-file ${format.generate "lldap_config.toml" cfg.settings}
'';
serviceConfig = { serviceConfig = {
ExecStart = "${lib.getExe cfg.package} run --config-file ${format.generate "lldap_config.toml" cfg.settings}";
StateDirectory = "lldap"; StateDirectory = "lldap";
StateDirectoryMode = "0750";
WorkingDirectory = "%S/lldap"; WorkingDirectory = "%S/lldap";
UMask = "0027";
User = "lldap"; User = "lldap";
Group = "lldap"; Group = "lldap";
DynamicUser = true; DynamicUser = true;

View file

@ -436,6 +436,7 @@ in
And if you edit a declarative profile NetworkManager will move it to the persistent storage and treat it like a ad-hoc one, And if you edit a declarative profile NetworkManager will move it to the persistent storage and treat it like a ad-hoc one,
but there will be two profiles as soon as the systemd unit from this option runs again which can be confusing since NetworkManager tools will start displaying two profiles with the same name and probably a bit different settings depending on what you edited. but there will be two profiles as soon as the systemd unit from this option runs again which can be confusing since NetworkManager tools will start displaying two profiles with the same name and probably a bit different settings depending on what you edited.
A profile won't be deleted even if it's removed from the config until the system reboots because that's when NetworkManager clears it's temp directory. A profile won't be deleted even if it's removed from the config until the system reboots because that's when NetworkManager clears it's temp directory.
If `networking.resolvconf.enable` is true, attributes affecting the name resolution (such as `ignore-auto-dns`) may not end up changing `/etc/resolv.conf` as expected when other name services (for example `networking.dhcpcd`) are enabled. Run `resolvconf -l` in the terminal to see what each service produces.
''; '';
}; };
environmentFiles = mkOption { environmentFiles = mkOption {

View file

@ -76,12 +76,13 @@ in {
checkconf = mkOption { checkconf = mkOption {
type = types.bool; type = types.bool;
default = !cfg.settings ? include; default = !cfg.settings ? include && !cfg.settings ? remote-control;
defaultText = "!config.services.unbound.settings ? include"; defaultText = "!services.unbound.settings ? include && !services.unbound.settings ? remote-control";
description = lib.mdDoc '' description = lib.mdDoc ''
Wether to check the resulting config file with unbound checkconf for syntax errors. Wether to check the resulting config file with unbound checkconf for syntax errors.
If settings.include is used, then this options is disabled, as the import can likely not be resolved at build time. If settings.include is used, this options is disabled, as the import can likely not be accessed at build time.
If settings.remote-control is used, this option is disabled, too as the control-key-file, server-cert-file and server-key-file cannot be accessed at build time.
''; '';
}; };

View file

@ -4,49 +4,33 @@ let
cfg = config.services.esdm; cfg = config.services.esdm;
in in
{ {
imports = [
# removed option 'services.esdm.cuseRandomEnable'
(lib.mkRemovedOptionModule [ "services" "esdm" "cuseRandomEnable" ] ''
Use services.esdm.enableLinuxCompatServices instead.
'')
# removed option 'services.esdm.cuseUrandomEnable'
(lib.mkRemovedOptionModule [ "services" "esdm" "cuseUrandomEnable" ] ''
Use services.esdm.enableLinuxCompatServices instead.
'')
# removed option 'services.esdm.procEnable'
(lib.mkRemovedOptionModule [ "services" "esdm" "procEnable" ] ''
Use services.esdm.enableLinuxCompatServices instead.
'')
# removed option 'services.esdm.verbose'
(lib.mkRemovedOptionModule [ "services" "esdm" "verbose" ] ''
There is no replacement.
'')
];
options.services.esdm = { options.services.esdm = {
enable = lib.mkEnableOption (lib.mdDoc "ESDM service configuration"); enable = lib.mkEnableOption (lib.mdDoc "ESDM service configuration");
package = lib.mkPackageOption pkgs "esdm" { }; package = lib.mkPackageOption pkgs "esdm" { };
serverEnable = lib.mkOption { enableLinuxCompatServices = lib.mkOption {
type = lib.types.bool; type = lib.types.bool;
default = true; default = true;
description = lib.mdDoc '' description = lib.mdDoc ''
Enable option for ESDM server service. If serverEnable == false, then the esdm-server Enable /dev/random, /dev/urandom and /proc/sys/kernel/random/* userspace wrapper.
will not start. Also the subsequent services esdm-cuse-random, esdm-cuse-urandom
and esdm-proc will not start as these have the entry Want=esdm-server.service.
'';
};
cuseRandomEnable = lib.mkOption {
type = lib.types.bool;
default = true;
description = lib.mdDoc ''
Enable option for ESDM cuse-random service. Determines if the esdm-cuse-random.service
is started.
'';
};
cuseUrandomEnable = lib.mkOption {
type = lib.types.bool;
default = true;
description = lib.mdDoc ''
Enable option for ESDM cuse-urandom service. Determines if the esdm-cuse-urandom.service
is started.
'';
};
procEnable = lib.mkOption {
type = lib.types.bool;
default = true;
description = lib.mdDoc ''
Enable option for ESDM proc service. Determines if the esdm-proc.service
is started.
'';
};
verbose = lib.mkOption {
type = lib.types.bool;
default = false;
description = lib.mdDoc ''
Enable verbose ExecStart for ESDM. If verbose == true, then the corresponding "ExecStart"
values of the 4 aforementioned services are overwritten with the option
for the highest verbosity.
''; '';
}; };
}; };
@ -55,46 +39,13 @@ in
lib.mkMerge [ lib.mkMerge [
({ ({
systemd.packages = [ cfg.package ]; systemd.packages = [ cfg.package ];
systemd.services."esdm-server".wantedBy = [ "basic.target" ];
}) })
# It is necessary to set those options for these services to be started by systemd in NixOS # It is necessary to set those options for these services to be started by systemd in NixOS
(lib.mkIf cfg.serverEnable { (lib.mkIf cfg.enableLinuxCompatServices {
systemd.services."esdm-server".wantedBy = [ "basic.target" ]; systemd.targets."esdm-linux-compat".wantedBy = [ "basic.target" ];
systemd.services."esdm-server".serviceConfig = lib.mkIf cfg.verbose { systemd.services."esdm-server-suspend".wantedBy = [ "sleep.target" "suspend.target" "hibernate.target" ];
ExecStart = [ systemd.services."esdm-server-resume".wantedBy = [ "sleep.target" "suspend.target" "hibernate.target" ];
" " # unset previous value defined in 'esdm-server.service'
"${cfg.package}/bin/esdm-server -f -vvvvvv"
];
};
})
(lib.mkIf cfg.cuseRandomEnable {
systemd.services."esdm-cuse-random".wantedBy = [ "basic.target" ];
systemd.services."esdm-cuse-random".serviceConfig = lib.mkIf cfg.verbose {
ExecStart = [
" " # unset previous value defined in 'esdm-cuse-random.service'
"${cfg.package}/bin/esdm-cuse-random -f -v 6"
];
};
})
(lib.mkIf cfg.cuseUrandomEnable {
systemd.services."esdm-cuse-urandom".wantedBy = [ "basic.target" ];
systemd.services."esdm-cuse-urandom".serviceConfig = lib.mkIf cfg.verbose {
ExecStart = [
" " # unset previous value defined in 'esdm-cuse-urandom.service'
"${config.services.esdm.package}/bin/esdm-cuse-urandom -f -v 6"
];
};
})
(lib.mkIf cfg.procEnable {
systemd.services."esdm-proc".wantedBy = [ "basic.target" ];
systemd.services."esdm-proc".serviceConfig = lib.mkIf cfg.verbose {
ExecStart = [
" " # unset previous value defined in 'esdm-proc.service'
"${cfg.package}/bin/esdm-proc --relabel -f -o allow_other /proc/sys/kernel/random -v 6"
];
};
}) })
]); ]);

View file

@ -686,6 +686,7 @@ in {
pgbouncer = handleTest ./pgbouncer.nix {}; pgbouncer = handleTest ./pgbouncer.nix {};
pgjwt = handleTest ./pgjwt.nix {}; pgjwt = handleTest ./pgjwt.nix {};
pgmanage = handleTest ./pgmanage.nix {}; pgmanage = handleTest ./pgmanage.nix {};
pgvecto-rs = handleTest ./pgvecto-rs.nix {};
phosh = handleTest ./phosh.nix {}; phosh = handleTest ./phosh.nix {};
photoprism = handleTest ./photoprism.nix {}; photoprism = handleTest ./photoprism.nix {};
php = handleTest ./php {}; php = handleTest ./php {};

View file

@ -100,7 +100,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
# Test Wayland # Test Wayland
# We let Miriway start the first terminal, as we might get stuck if it's not ready to process the first keybind # We let Miriway start the first terminal, as we might get stuck if it's not ready to process the first keybind
# machine.send_key("ctrl-alt-t") # machine.send_key("ctrl-alt-t")
machine.wait_for_text("alice@machine") machine.wait_for_text(r"(alice|machine)")
machine.send_chars("test-wayland\n") machine.send_chars("test-wayland\n")
machine.wait_for_file("/tmp/test-wayland-exit-ok") machine.wait_for_file("/tmp/test-wayland-exit-ok")
machine.copy_from_vm("/tmp/test-wayland.out") machine.copy_from_vm("/tmp/test-wayland.out")
@ -112,7 +112,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
# Test XWayland # Test XWayland
machine.send_key("ctrl-alt-a") machine.send_key("ctrl-alt-a")
machine.wait_for_text("alice@machine") machine.wait_for_text(r"(alice|machine)")
machine.send_chars("test-x11\n") machine.send_chars("test-x11\n")
machine.wait_for_file("/tmp/test-x11-exit-ok") machine.wait_for_file("/tmp/test-x11-exit-ok")
machine.copy_from_vm("/tmp/test-x11.out") machine.copy_from_vm("/tmp/test-x11.out")

View file

@ -0,0 +1,76 @@
# mostly copied from ./timescaledb.nix which was copied from ./postgresql.nix
# as it seemed unapproriate to test additional extensions for postgresql there.
{ system ? builtins.currentSystem
, config ? { }
, pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing-python.nix { inherit system pkgs; };
with pkgs.lib;
let
postgresql-versions = import ../../pkgs/servers/sql/postgresql pkgs;
# Test cases from https://docs.pgvecto.rs/use-cases/hybrid-search.html
test-sql = pkgs.writeText "postgresql-test" ''
CREATE EXTENSION vectors;
CREATE TABLE items (
id bigserial PRIMARY KEY,
content text NOT NULL,
embedding vectors.vector(3) NOT NULL -- 3 dimensions
);
INSERT INTO items (content, embedding) VALUES
('a fat cat sat on a mat and ate a fat rat', '[1, 2, 3]'),
('a fat dog sat on a mat and ate a fat rat', '[4, 5, 6]'),
('a thin cat sat on a mat and ate a thin rat', '[7, 8, 9]'),
('a thin dog sat on a mat and ate a thin rat', '[10, 11, 12]');
'';
make-postgresql-test = postgresql-name: postgresql-package: makeTest {
name = postgresql-name;
meta = with pkgs.lib.maintainers; {
maintainers = [ diogotcorreia ];
};
nodes.machine = { ... }:
{
services.postgresql = {
enable = true;
package = postgresql-package;
extraPlugins = ps: with ps; [
pgvecto-rs
];
settings.shared_preload_libraries = "vectors";
};
};
testScript = ''
def check_count(statement, lines):
return 'test $(sudo -u postgres psql postgres -tAc "{}"|wc -l) -eq {}'.format(
statement, lines
)
machine.start()
machine.wait_for_unit("postgresql")
with subtest("Postgresql with extension vectors is available just after unit start"):
machine.succeed(check_count("SELECT * FROM pg_available_extensions WHERE name = 'vectors' AND default_version = '${postgresql-package.pkgs.pgvecto-rs.version}';", 1))
machine.succeed("sudo -u postgres psql -f ${test-sql}")
machine.succeed(check_count("SELECT content, embedding FROM items WHERE to_tsvector('english', content) @@ 'cat & rat'::tsquery;", 2))
machine.shutdown()
'';
};
applicablePostgresqlVersions = filterAttrs (_: value: versionAtLeast value.version "12") postgresql-versions;
in
mapAttrs'
(name: package: {
inherit name;
value = make-postgresql-test name package;
})
applicablePostgresqlVersions

View file

@ -176,7 +176,7 @@ For example, the `libxml2` package builds both a library and some tools; but it
- **If its a _language server_:** - **If its a _language server_:**
- `development/tools/language-servers` (e.g. `ccls` or `rnix-lsp`) - `development/tools/language-servers` (e.g. `ccls` or `nil`)
- **Else:** - **Else:**

View file

@ -142,9 +142,6 @@ in stdenv'.mkDerivation (finalAttrs: {
homepage = "https://musescore.org/"; homepage = "https://musescore.org/";
license = licenses.gpl3Only; license = licenses.gpl3Only;
maintainers = with maintainers; [ vandenoever doronbehar ]; maintainers = with maintainers; [ vandenoever doronbehar ];
# on aarch64-linux:
# error: cannot convert '<brace-enclosed initializer list>' to 'float32x4_t' in assignment
broken = (stdenv.isLinux && stdenv.isAarch64);
mainProgram = "mscore"; mainProgram = "mscore";
}; };
}) })

View file

@ -11,13 +11,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "schismtracker"; pname = "schismtracker";
version = "20240129"; version = "20240308";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = pname; owner = pname;
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-msi638LQM0LPfUineINRW8l8BcPKIeRBEDtV5L6anGk="; sha256 = "sha256-6MzMmeD4HCS/7VTFTAcOhyKjz5NvzvDEzcSpHGUwFvM=";
}; };
configureFlags = [ "--enable-dependency-tracking" ] configureFlags = [ "--enable-dependency-tracking" ]

View file

@ -20,13 +20,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gridcoin-research"; pname = "gridcoin-research";
version = "5.4.5.0"; version = "5.4.6.0-hotfix-1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "gridcoin-community"; owner = "gridcoin-community";
repo = "Gridcoin-Research"; repo = "Gridcoin-Research";
rev = "${version}"; rev = "${version}";
sha256 = "1a174m7821c7d3yh9lyh0r3ds6qn06x16aa1qxcbrqyxxc127yky"; sha256 = "sha256-fFxHJJ+EMnv0CterTwJbAfybF9WCzaSP7ynlxx2hE5A=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -33,13 +33,13 @@
let let
pname = "pulsar"; pname = "pulsar";
version = "1.109.0"; version = "1.114.0";
sourcesPath = { sourcesPath = {
x86_64-linux.tarname = "Linux.${pname}-${version}.tar.gz"; x86_64-linux.tarname = "Linux.${pname}-${version}.tar.gz";
x86_64-linux.hash = "sha256-pIm3mI1YdfapxXgIciSHtI4LeqMw5RdYTnH+eHUQ4Yo="; x86_64-linux.hash = "sha256-O//dowoMgQfS3hq088IKr5aJd5St9zpT/ypfuswnyv0=";
aarch64-linux.tarname = "ARM.Linux.${pname}-${version}-arm64.tar.gz"; aarch64-linux.tarname = "ARM.Linux.${pname}-${version}-arm64.tar.gz";
aarch64-linux.hash = "sha256-KIY/qzfl7CU0YwIgQlNHoAMhLfrTbQe7ZZvzdkUVw+M="; aarch64-linux.hash = "sha256-EzCTB1Ib9cTbslEdXPsS5gehHr1qd5v4iZgOqpxhUmA=";
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
newLibpath = lib.makeLibraryPath [ newLibpath = lib.makeLibraryPath [
@ -137,7 +137,7 @@ stdenv.mkDerivation rec {
--set-rpath "${newLibpath}" \ --set-rpath "${newLibpath}" \
$opt/resources/app/ppm/bin/node $opt/resources/app/ppm/bin/node
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
$opt/resources/app.asar.unpacked/node_modules/symbols-view/vendor/ctags-linux $opt/resources/app.asar.unpacked/node_modules/symbol-provider-ctags/vendor/ctags-linux
'' + lib.optionalString (stdenv.hostPlatform.system == "x86_64-linux") '' '' + lib.optionalString (stdenv.hostPlatform.system == "x86_64-linux") ''
# Replace the bundled git with the one from nixpkgs # Replace the bundled git with the one from nixpkgs
@ -208,7 +208,7 @@ stdenv.mkDerivation rec {
sourceProvenance = with sourceTypes; [ binaryNativeCode ]; sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = licenses.mit; license = licenses.mit;
platforms = platforms.linux; platforms = platforms.linux;
maintainers = with maintainers; [ colamaroro ]; maintainers = with maintainers; [ colamaroro bryango ];
knownVulnerabilities = [ knownVulnerabilities = [
"CVE-2023-5217" "CVE-2023-5217"
"CVE-2022-21718" "CVE-2022-21718"

View file

@ -996,7 +996,7 @@
spectre_oxi = rustPlatform.buildRustPackage { spectre_oxi = rustPlatform.buildRustPackage {
pname = "spectre_oxi"; pname = "spectre_oxi";
inherit (old) version src; inherit (old) version src;
sourceRoot = "source/spectre_oxi"; sourceRoot = "${old.src.name}/spectre_oxi";
cargoHash = "sha256-gCGuD5kipgfR0Le8npNmyBxNsUq0PavXvKkxkiPx13E="; cargoHash = "sha256-gCGuD5kipgfR0Le8npNmyBxNsUq0PavXvKkxkiPx13E=";

View file

@ -1,6 +1,6 @@
{ lib, stdenv, vscode-utils, callPackage }: { lib, stdenv, vscode-utils, callPackage }:
let let
version = "1.42.0"; version = "1.48.0";
rescript-editor-analysis = callPackage ./rescript-editor-analysis.nix { inherit version; }; rescript-editor-analysis = callPackage ./rescript-editor-analysis.nix { inherit version; };
arch = arch =
if stdenv.isLinux then "linux" if stdenv.isLinux then "linux"
@ -13,7 +13,7 @@ vscode-utils.buildVscodeMarketplaceExtension rec {
name = "rescript-vscode"; name = "rescript-vscode";
publisher = "chenglou92"; publisher = "chenglou92";
inherit version; inherit version;
sha256 = "sha256-Po7zuppr8EHSfg2sDzkNn0KARncsiNVPoRsd25zc/xg="; sha256 = "sha256-/1nDuj/kSdkV6PlbdlOLfUKQeuvyL2VhPjUAr9kq2NM=";
}; };
postPatch = '' postPatch = ''
rm -r ${analysisDir} rm -r ${analysisDir}

View file

@ -40,6 +40,22 @@ let
# #
baseExtensions = self: lib.mapAttrs (_n: lib.recurseIntoAttrs) baseExtensions = self: lib.mapAttrs (_n: lib.recurseIntoAttrs)
{ {
"13xforever".language-x86-64-assembly = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "language-x86-64-assembly";
publisher = "13xforever";
version = "3.1.4";
sha256 = "sha256-FJRDm1H3GLBfSKBSFgVspCjByy9m+j9OStlU+/pMfs8=";
};
meta = {
description = "Cutting edge x86 and x86_64 assembly syntax highlighting";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=13xforever.language-x86-64-assembly";
homepage = "https://github.com/13xforever/x86_64-assembly-vscode";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.themaxmur ];
};
};
"1Password".op-vscode = buildVscodeMarketplaceExtension { "1Password".op-vscode = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
publisher = "1Password"; publisher = "1Password";
@ -1016,6 +1032,22 @@ let
}; };
}; };
cweijan.dbclient-jdbc = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "dbclient-jdbc";
publisher = "cweijan";
version = "1.3.4";
sha256 = "sha256-qknooeedRhTvEWSuGXFoO/BczGanYCdMr7WWjthxG+k=";
};
meta = {
description = "JDBC Adapter For Database Client";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=cweijan.dbclient-jdbc";
homepage = "https://github.com/database-client/jdbc-adapter-server";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.themaxmur ];
};
};
cweijan.vscode-database-client2 = buildVscodeMarketplaceExtension { cweijan.vscode-database-client2 = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "vscode-database-client2"; name = "vscode-database-client2";
@ -1524,6 +1556,22 @@ let
equinusocio.vsc-material-theme = callPackage ./equinusocio.vsc-material-theme { }; equinusocio.vsc-material-theme = callPackage ./equinusocio.vsc-material-theme { };
equinusocio.vsc-material-theme-icons = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "vsc-material-theme-icons";
publisher = "Equinusocio";
version = "3.5.0";
sha256 = "sha256-XqtyZVlsPaPkKB9HdigKSXjCwqXe9wzJWeRcPpS6EVM=";
};
meta = {
description = "Material Theme Icons, the most epic icons theme for Visual Studio Code and Material Theme.";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=Equinusocio.vsc-material-theme-icons";
homepage = "https://github.com/material-theme/vsc-material-theme-icons";
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.themaxmur ];
};
};
esbenp.prettier-vscode = buildVscodeMarketplaceExtension { esbenp.prettier-vscode = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "prettier-vscode"; name = "prettier-vscode";
@ -1622,6 +1670,22 @@ let
}; };
}; };
firsttris.vscode-jest-runner = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "vscode-jest-runner";
publisher = "firsttris";
version = "0.4.72";
sha256 = "sha256-1nUpOXdteWsyFYJ2uATCcr1SUbeusmbpa09Bkw9/TZM=";
};
meta = {
description = "Simple way to run or debug a single (or multiple) tests from context-menu";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=firsttris.vscode-jest-runner";
homepage = "https://github.com/firsttris/vscode-jest-runner";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.themaxmur ];
};
};
foam.foam-vscode = buildVscodeMarketplaceExtension { foam.foam-vscode = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "foam-vscode"; name = "foam-vscode";
@ -1986,6 +2050,38 @@ let
}; };
}; };
hars.cppsnippets = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "cppsnippets";
publisher = "hars";
version = "0.0.15";
sha256 = "sha256-KXdEKcxPclbD22aKGAKSmdpVBZP2IpQRaKfc2LDsL0U=";
};
meta = {
description = "Code snippets for C/C++";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=hars.CppSnippets";
homepage = "https://github.com/one-harsh/vscode-cpp-snippets";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.themaxmur ];
};
};
hashicorp.hcl = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "HCL";
publisher = "HashiCorp";
version = "0.3.2";
sha256 = "sha256-cxF3knYY29PvT3rkRS8SGxMn9vzt56wwBXpk2PqO0mo=";
};
meta = {
description = "HashiCorp HCL syntax";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=HashiCorp.HCL";
homepage = "https://github.com/hashicorp/vscode-hcl";
license = lib.licenses.mpl20;
maintainers = [ lib.maintainers.themaxmur ];
};
};
hashicorp.terraform = callPackage ./hashicorp.terraform { }; hashicorp.terraform = callPackage ./hashicorp.terraform { };
haskell.haskell = buildVscodeMarketplaceExtension { haskell.haskell = buildVscodeMarketplaceExtension {
@ -2000,6 +2096,22 @@ let
}; };
}; };
hediet.vscode-drawio = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "vscode-drawio";
publisher = "hediet";
version = "1.6.6";
sha256 = "sha256-SPcSnS7LnRL5gdiJIVsFaN7eccrUHSj9uQYIQZllm0M=";
};
meta = {
description = "This unofficial extension integrates Draw.io into VS Code.";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=hediet.vscode-drawio";
homepage = "https://github.com/hediet/vscode-drawio";
license = lib.licenses.gpl3Only;
maintainers = [ lib.maintainers.themaxmur ];
};
};
hookyqr.beautify = buildVscodeMarketplaceExtension { hookyqr.beautify = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "beautify"; name = "beautify";
@ -2489,6 +2601,22 @@ let
meta.license = lib.licenses.mit; meta.license = lib.licenses.mit;
}; };
mathiasfrohlich.kotlin = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "Kotlin";
publisher = "mathiasfrohlich";
version = "1.7.1";
sha256 = "sha256-MuAlX6cdYMLYRX2sLnaxWzdNPcZ4G0Fdf04fmnzQKH4=";
};
meta = {
description = "Kotlin language support for VS Code";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=mathiasfrohlich.Kotlin";
homepage = "https://github.com/mathiasfrohlich/vscode-kotlin";
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.themaxmur ];
};
};
matthewpi.caddyfile-support = buildVscodeMarketplaceExtension { matthewpi.caddyfile-support = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "caddyfile-support"; name = "caddyfile-support";
@ -2823,6 +2951,22 @@ let
ms-vscode.cpptools = callPackage ./ms-vscode.cpptools { }; ms-vscode.cpptools = callPackage ./ms-vscode.cpptools { };
ms-vscode.cpptools-extension-pack = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "cpptools-extension-pack";
publisher = "ms-vscode";
version = "1.3.0";
sha256 = "sha256-rHST7CYCVins3fqXC+FYiS5Xgcjmi7QW7M4yFrUR04U=";
};
meta = {
description = "Popular extensions for C++ development in Visual Studio Code.";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools-extension-pack";
homepage = "https://github.com/microsoft/vscode-cpptools";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.themaxmur ];
};
};
ms-vscode.hexeditor = buildVscodeMarketplaceExtension { ms-vscode.hexeditor = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "hexeditor"; name = "hexeditor";
@ -2971,6 +3115,22 @@ let
}; };
}; };
naumovs.theme-oceanicnext = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "theme-oceanicnext";
publisher = "naumovs";
version = "0.0.4";
sha256 = "sha256-romhWL3s0NVZ3kptSNT4/X9WkgakgNNfFElaBCo6jj4=";
};
meta = {
description = "Oceanic Next theme for VSCode + dimmed bg version for better looking UI";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=naumovs.theme-oceanicnext";
homepage = "https://github.com/voronianski/oceanic-next-color-scheme";
license = lib.licenses.unlicense;
maintainers = [ lib.maintainers.themaxmur ];
};
};
njpwerner.autodocstring = buildVscodeMarketplaceExtension { njpwerner.autodocstring = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "autodocstring"; name = "autodocstring";
@ -3196,6 +3356,22 @@ let
meta.license = lib.licenses.mit; meta.license = lib.licenses.mit;
}; };
redhat.ansible = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "ansible";
publisher = "redhat";
version = "2.12.143";
sha256 = "sha256-NEV7sVYJJvapZjk5sylkzijH8qLZ7xzmBzHI7qcj2Ok=";
};
meta = {
description = "Ansible language support";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=redhat.ansible";
homepage = "https://github.com/ansible/vscode-ansible";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.themaxmur ];
};
};
redhat.java = buildVscodeMarketplaceExtension { redhat.java = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "java"; name = "java";
@ -3232,6 +3408,22 @@ let
}; };
}; };
reloadedextensions.reloaded-cpp = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "reloaded-cpp";
publisher = "reloadedextensions";
version = "0.1.9";
sha256 = "sha256-KQiSD18W9NnsqhRt+XM3ko70u4zX4enn3OpMt0ebViU=";
};
meta = {
description = "C/C++ must-have highlighter that understands many coding styles and APIs. Use with 'Reloaded Themes' extension.";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=reloadedextensions.reloaded-cpp";
homepage = "https://github.com/kobalicek/reloaded-cpp";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.themaxmur ];
};
};
richie5um2.snake-trail = buildVscodeMarketplaceExtension { richie5um2.snake-trail = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "snake-trail"; name = "snake-trail";
@ -3447,8 +3639,8 @@ let
mktplcRef = { mktplcRef = {
publisher = "shd101wyy"; publisher = "shd101wyy";
name = "markdown-preview-enhanced"; name = "markdown-preview-enhanced";
version = "0.8.10"; version = "0.8.12";
sha256 = "sha256-BjTV2uH9QqCS1VJ94XXgzNMJb4FB4Ee+t/5uAQfJCuM="; sha256 = "sha256-4Iq6idux029i7cBV3x79ZRAbSk3ymqx+Q2jv0zV9ZTI=";
}; };
meta = { meta = {
description = "Provides a live preview of markdown using either markdown-it or pandoc"; description = "Provides a live preview of markdown using either markdown-it or pandoc";
@ -3653,6 +3845,22 @@ let
}; };
}; };
stylelint.vscode-stylelint = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "vscode-stylelint";
publisher = "stylelint";
version = "1.3.0";
sha256 = "sha256-JoCa2d0ayBEuCcQi3Z/90GJ4AIECVz8NCpd+i+9uMeA=";
};
meta = {
description = "Official Stylelint extension for Visual Studio Code";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=stylelint.vscode-stylelint";
homepage = "https://github.com/stylelint/vscode-stylelint";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.themaxmur ];
};
};
sumneko.lua = callPackage ./sumneko.lua { }; sumneko.lua = callPackage ./sumneko.lua { };
svelte.svelte-vscode = buildVscodeMarketplaceExtension { svelte.svelte-vscode = buildVscodeMarketplaceExtension {
@ -3730,6 +3938,22 @@ let
}; };
}; };
tal7aouy.icons = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "icons";
publisher = "tal7aouy";
version = "3.8.0";
sha256 = "sha256-PdhNFyVUWcOfli/ZlT+6TmtWrV31fBP1E1Vd4QWOY+A=";
};
meta = {
description = "Icons for Visual Studio Code.";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=tal7aouy.icons";
homepage = "https://github.com/tal7aouy/vscode-icons";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.themaxmur ];
};
};
tamasfe.even-better-toml = buildVscodeMarketplaceExtension { tamasfe.even-better-toml = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "even-better-toml"; name = "even-better-toml";
@ -4063,6 +4287,54 @@ let
}; };
}; };
visualstudioexptteam.intellicode-api-usage-examples = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "intellicode-api-usage-examples";
publisher = "VisualStudioExptTeam";
version = "0.2.8";
sha256 = "sha256-aXAS3QX+mrX0kJqf1LUsvguqRxxC0o+jj1bKQteXPNA=";
};
meta = {
description = "See relevant code examples from GitHub for over 100K different APIs right in your editor.";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=VisualStudioExptTeam.intellicode-api-usage-examples";
homepage = "https://github.com/MicrosoftDocs/intellicode";
license = lib.licenses.cc-by-40;
maintainers = [ lib.maintainers.themaxmur ];
};
};
visualstudioexptteam.vscodeintellicode = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "vscodeintellicode";
publisher = "VisualStudioExptTeam";
version = "1.2.30";
sha256 = "sha256-f2Gn+W0QHN8jD5aCG+P93Y+JDr/vs2ldGL7uQwBK4lE=";
};
meta = {
description = "AI-assisted development";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=VisualStudioExptTeam.vscodeintellicode";
homepage = "https://github.com/MicrosoftDocs/intellicode";
license = lib.licenses.cc-by-40;
maintainers = [ lib.maintainers.themaxmur ];
};
};
vlanguage.vscode-vlang = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "vscode-vlang";
publisher = "vlanguage";
version = "0.1.14";
sha256 = "sha256-hlBALxBs5wZZFk4lgAkdkGs731Xuc2p0qxffOW6mMWQ=";
};
meta = {
description = "V language support (syntax highlighting, formatter, snippets) for Visual Studio Code.";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=vlanguage.vscode-vlang";
homepage = "https://github.com/vlang/vscode-vlang";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.themaxmur ];
};
};
vscjava.vscode-gradle = buildVscodeMarketplaceExtension rec { vscjava.vscode-gradle = buildVscodeMarketplaceExtension rec {
mktplcRef = { mktplcRef = {
name = "vscode-gradle"; name = "vscode-gradle";
@ -4117,6 +4389,22 @@ let
}; };
}; };
vscjava.vscode-java-pack = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "vscode-java-pack";
publisher = "vscjava";
version = "0.25.2023121402";
sha256 = "sha256-JhVJK2gZe3R6dpynon+9wauSAWPdW4LmG9oRWylCexM=";
};
meta = {
description = "Popular extensions for Java development that provides Java IntelliSense, debugging, testing, Maven/Gradle support, project management and more";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-pack";
homepage = "https://github.com/Microsoft/vscode-java-pack";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.themaxmur ];
};
};
vscjava.vscode-maven = buildVscodeMarketplaceExtension { vscjava.vscode-maven = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "vscode-maven"; name = "vscode-maven";

View file

@ -55,20 +55,20 @@
"src": { "src": {
"owner": "libretro", "owner": "libretro",
"repo": "beetle-pce-libretro", "repo": "beetle-pce-libretro",
"rev": "95b5ea18a694f5a05b1c0cda20928c825d981238", "rev": "96a654ae2b2df1cc12dc7f1f2d1822db562aa51f",
"hash": "sha256-4Y2dyELUGWycCQ1UA0Ov6Ijh1t+KgSL1AtDefbRmjbA=" "hash": "sha256-Tz9FA2Kqu8R2pXSTgbr5Mxu4VKrURWWpy+J3R3/CHpk="
}, },
"version": "unstable-2024-03-01" "version": "unstable-2024-03-08"
}, },
"beetle-pce-fast": { "beetle-pce-fast": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
"src": { "src": {
"owner": "libretro", "owner": "libretro",
"repo": "beetle-pce-fast-libretro", "repo": "beetle-pce-fast-libretro",
"rev": "28180934e9d7f1a6ec655adde0b81f0b167732ad", "rev": "f450a7118a3b4e8524cdd915aa610bd364e64dde",
"hash": "sha256-Kt1Bh32zoJynbqp/0ARngPTYHlvp6k/Ya09l8/736gk=" "hash": "sha256-VHW+MJT68wIoSV8H24484uyGK7/cySFMITcpu6zqo3A="
}, },
"version": "unstable-2024-03-01" "version": "unstable-2024-03-08"
}, },
"beetle-pcfx": { "beetle-pcfx": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
@ -85,10 +85,10 @@
"src": { "src": {
"owner": "libretro", "owner": "libretro",
"repo": "beetle-psx-libretro", "repo": "beetle-psx-libretro",
"rev": "680bbf0e2a4f9bc2b534d213416456baa9c95212", "rev": "b9018ad9776de0d92d05f6d6c1017f1ac07e9238",
"hash": "sha256-QmiCokeMtQC2+cwWFovve2+c3pahD+IdOFBRAXEPV0k=" "hash": "sha256-1xxJ33IiTgmqbH4vzEGBc3eKe1Wz67TI1RTiipr9/Cg="
}, },
"version": "unstable-2024-03-01" "version": "unstable-2024-03-08"
}, },
"beetle-saturn": { "beetle-saturn": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
@ -115,10 +115,10 @@
"src": { "src": {
"owner": "libretro", "owner": "libretro",
"repo": "beetle-supergrafx-libretro", "repo": "beetle-supergrafx-libretro",
"rev": "29ff9e00a85db3d462cca42543a84597c421c99c", "rev": "239d25f4c2bbb6e66d3e48502907d3d611119a22",
"hash": "sha256-UZt1yFcwgdY/TbDs+GQ73Nu5KRA1R8gdKs73IQC1mCg=" "hash": "sha256-8SP/SOJR/5tDkpysYTAuDPeQJCaAVgXE9CieSj1H4ZQ="
}, },
"version": "unstable-2024-03-01" "version": "unstable-2024-03-08"
}, },
"beetle-vb": { "beetle-vb": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
@ -165,10 +165,10 @@
"src": { "src": {
"owner": "libretro", "owner": "libretro",
"repo": "bsnes-libretro", "repo": "bsnes-libretro",
"rev": "9e9b928e0153f663cf4802f266315ab092067b7e", "rev": "9c688ea5cbbb0e8c586414e07305cfbdffbf83e2",
"hash": "sha256-Fn1bz3TC+8CEmGDNcll0yfzBpDPvfS1vknf49ogNCIQ=" "hash": "sha256-tte90wZfrkkNzjsUhmGGf/eKj6vwskcQAQTdqxg9wkE="
}, },
"version": "unstable-2024-03-01" "version": "unstable-2024-03-09"
}, },
"bsnes-hd": { "bsnes-hd": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
@ -287,10 +287,10 @@
"src": { "src": {
"owner": "libretro", "owner": "libretro",
"repo": "fbneo", "repo": "fbneo",
"rev": "a9c41d1e1132b1a7aad48c0f8e94fcf9c7ba0f9f", "rev": "6fc8060a75fd75c5b292fbef488ed8dd37c7bc34",
"hash": "sha256-H4pJruHqJ4p3tBykm015U+wApHrAeVaZO9nLJ9Rc0NQ=" "hash": "sha256-Wjh6ab5kLlfX4QVv+d6YgnuvWtDat9wgJ8dQdl7MH2A="
}, },
"version": "unstable-2024-03-03" "version": "unstable-2024-03-06"
}, },
"fceumm": { "fceumm": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
@ -307,11 +307,11 @@
"src": { "src": {
"owner": "flyinghead", "owner": "flyinghead",
"repo": "flycast", "repo": "flycast",
"rev": "391da7023f63c2afd32af72ac9f2cfb02bbc7eb6", "rev": "464defe0d791795553a6cd2f0dbe05b437ecd068",
"hash": "sha256-fcNpFl6VwaoL2mWZOgyVoJWX9CV2KbWctukdxxo797I=", "hash": "sha256-Gnp8MMerKweUnDg8fIoAF3vkIFVVbQdn3qjxZYLBTEY=",
"fetchSubmodules": true "fetchSubmodules": true
}, },
"version": "unstable-2024-03-04" "version": "unstable-2024-03-10"
}, },
"fmsx": { "fmsx": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
@ -348,20 +348,20 @@
"src": { "src": {
"owner": "libretro", "owner": "libretro",
"repo": "gambatte-libretro", "repo": "gambatte-libretro",
"rev": "9806d3f12bc3a831fad3f71c6fbad6f93d83581c", "rev": "76c875138f6ffe1b1cf983b49758004cd53785ce",
"hash": "sha256-EdqS410TZyRqE/nd/oLJt7dauN0DCtNnhB6k6CPd/tc=" "hash": "sha256-HcZY/0JK+tqvrI70xzzEkDH8hX4Xk7ojLsSp/a3EWnk="
}, },
"version": "unstable-2024-03-01" "version": "unstable-2024-03-08"
}, },
"genesis-plus-gx": { "genesis-plus-gx": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
"src": { "src": {
"owner": "libretro", "owner": "libretro",
"repo": "Genesis-Plus-GX", "repo": "Genesis-Plus-GX",
"rev": "d434ad9ee418247490a8560b52e0651d25304f35", "rev": "541229daa9e8f706135531c28c7abec4efd08d48",
"hash": "sha256-v6IYku+9hLlGD0sgkzoatdD7Glp/3pgwBE2K4hdsFec=" "hash": "sha256-0yytgnO6bBt2ssapOu+6S488peeCzKS1fE7Znyk51HA="
}, },
"version": "unstable-2024-03-02" "version": "unstable-2024-03-09"
}, },
"gpsp": { "gpsp": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
@ -438,10 +438,10 @@
"src": { "src": {
"owner": "libretro", "owner": "libretro",
"repo": "mame2003-plus-libretro", "repo": "mame2003-plus-libretro",
"rev": "a7cb863de48247c771a0fcc71d519131eae4e9c6", "rev": "f8b0565fd3278f2efbc3e68fc929a912645e211b",
"hash": "sha256-Y/Zyfck5tJ6oVsL/WjNXJZdPE5THeyBD5tNzJQaLSn8=" "hash": "sha256-jOQxPUTbKQH0PKJSOItEpSHaNPzMlYOJ2CUgzSLHti4="
}, },
"version": "unstable-2024-03-02" "version": "unstable-2024-03-10"
}, },
"mame2010": { "mame2010": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
@ -539,10 +539,10 @@
"src": { "src": {
"owner": "libretro", "owner": "libretro",
"repo": "mupen64plus-libretro-nx", "repo": "mupen64plus-libretro-nx",
"rev": "fa55ddca926d3c3ad2285911646919def4aa6fa3", "rev": "3f794eec4dc4af2f22ecce507f2da324381d3d92",
"hash": "sha256-Fn/qSQDR8FuHG9eLE0I24wUa0sdosrl6+lhnf9cD+yQ=" "hash": "sha256-xO01TAjW8otnoU8fzmK69BufoQn3eY9BPamc3ISqBn8="
}, },
"version": "unstable-2024-02-06" "version": "unstable-2024-03-07"
}, },
"neocd": { "neocd": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
@ -662,11 +662,11 @@
"src": { "src": {
"owner": "hrydgard", "owner": "hrydgard",
"repo": "ppsspp", "repo": "ppsspp",
"rev": "0159102a191d43de7ae51775a79846efa2635988", "rev": "a0aaab9c47bae66fd834354977a562baec581a54",
"hash": "sha256-b7QOOpeoVJUComVOlMtZK8B5w5vkE6rxJVEHecJE19k=", "hash": "sha256-N+s4BzOsXUMqdOnfy0Th8euaD2EvRoYEie706RNuIoo=",
"fetchSubmodules": true "fetchSubmodules": true
}, },
"version": "unstable-2024-02-28" "version": "unstable-2024-03-10"
}, },
"prboom": { "prboom": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",
@ -793,10 +793,10 @@
"src": { "src": {
"owner": "stella-emu", "owner": "stella-emu",
"repo": "stella", "repo": "stella",
"rev": "a311e1d714db3837ae4c05e2fab0abcf092a2e54", "rev": "8e8549c1c441e62c2bac0ae5a6489ba3e15412c6",
"hash": "sha256-QJirSJleSPezNoyH2DKkaoNmGY3r/5J64IHBp+MeFvI=" "hash": "sha256-gcIBtLpfmjPHxnixMOF/onNyIclC8sDrmgTi3zHW0Mc="
}, },
"version": "unstable-2024-03-03" "version": "unstable-2024-03-08"
}, },
"stella2014": { "stella2014": {
"fetcher": "fetchFromGitHub", "fetcher": "fetchFromGitHub",

View file

@ -6,14 +6,14 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "browsr"; pname = "browsr";
version = "1.18.0"; version = "1.19.0";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "juftin"; owner = "juftin";
repo = "browsr"; repo = "browsr";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-Ygqoz1rNQwhU1/8NsHwQsSCqQ8gYwHEaAuIaVMCtKKA="; hash = "sha256-V5B+/zfUlpF0TMTHqzyjapW93/DoJKgbJkTMX2NZyIQ=";
}; };
nativeBuildInputs = with python3.pkgs; [ nativeBuildInputs = with python3.pkgs; [
@ -27,6 +27,7 @@ python3.pkgs.buildPythonApplication rec {
pandas pandas
pillow pillow
pymupdf pymupdf
pyperclip
rich rich
rich-click rich-click
rich-pixels rich-pixels
@ -75,6 +76,9 @@ python3.pkgs.buildPythonApplication rec {
"test_github_screenshot" "test_github_screenshot"
"test_github_screenshot_license" "test_github_screenshot_license"
"test_textual_app_context_path_github" "test_textual_app_context_path_github"
"test_mkdocs_screenshot"
# Different output
"test_textual_app_context_path"
]; ];
meta = with lib; { meta = with lib; {

View file

@ -14,7 +14,7 @@ let
qtnproperty = mkDerivation { qtnproperty = mkDerivation {
name = "qtnproperty"; name = "qtnproperty";
inherit src; inherit src;
sourceRoot = "AwesomeBump/Sources/utils/QtnProperty"; sourceRoot = "${src.name}/Sources/utils/QtnProperty";
patches = [ ./qtnproperty-parallel-building.patch ]; patches = [ ./qtnproperty-parallel-building.patch ];
buildInputs = [ qtscript qtbase qtdeclarative ]; buildInputs = [ qtscript qtbase qtdeclarative ];
nativeBuildInputs = [ qmake flex bison ]; nativeBuildInputs = [ qmake flex bison ];

View file

@ -5,7 +5,7 @@
{ config, lib, pkgs }: { config, lib, pkgs }:
let let
inherit (pkgs) stdenv fetchurl fetchpatch pkg-config intltool glib fetchFromGitHub; inherit (pkgs) stdenv fetchurl fetchpatch pkg-config intltool glib fetchFromGitHub fetchFromGitLab;
in in
lib.makeScope pkgs.newScope (self: lib.makeScope pkgs.newScope (self:
@ -111,13 +111,18 @@ in
Video Video
*/ */
pname = "gap"; pname = "gap";
version = "2.6.0"; version = "2.6.0-unstable-2023-05-20";
src = fetchurl { src = fetchFromGitLab {
url = "https://ftp.gimp.org/pub/gimp/plug-ins/v2.6/gap/gimp-gap-2.6.0.tar.bz2"; domain = "gitlab.gnome.org";
sha256 = "1jic7ixcmsn4kx2cn32nc5087rk6g8xsrz022xy11yfmgvhzb0ql"; owner = "Archive";
repo = "gimp-gap";
rev = "b2aa06cc7ee4ae1938f14640fe46b75ef5b15982";
hash = "sha256-q5TgCy0+iIfxyqJRXsKxiFrWMFSzBqC0SA9MBGTHXcA=";
}; };
nativeBuildInputs = with pkgs; [autoreconfHook];
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];
env = { env = {

View file

@ -1,9 +1,10 @@
{ lib { lib
, clangStdenv
, fetchurl , fetchurl
, gnustep , gnustep
}: }:
gnustep.gsmakeDerivation rec { clangStdenv.mkDerivation rec {
pname = "pikopixel"; pname = "pikopixel";
version = "1.0-b10"; version = "1.0-b10";
@ -14,6 +15,11 @@ gnustep.gsmakeDerivation rec {
sourceRoot = "PikoPixel.Sources.${version}/PikoPixel"; sourceRoot = "PikoPixel.Sources.${version}/PikoPixel";
nativeBuildInputs = [
gnustep.make
gnustep.wrapGNUstepAppsHook
];
buildInputs = [ buildInputs = [
gnustep.base gnustep.base
gnustep.gui gnustep.gui

View file

@ -113,6 +113,8 @@ stdenv.mkDerivation rec {
patches = [ patches = [
# Fix for webkitgtk linking # Fix for webkitgtk linking
./0001-not-for-upstream-CMakeLists-Link-against-webkit2gtk-.patch ./0001-not-for-upstream-CMakeLists-Link-against-webkit2gtk-.patch
# Fix build with cgal-5.6.1+
./meshboolean-const.patch
]; ];
doCheck = true; doCheck = true;

View file

@ -0,0 +1,21 @@
Fix build with cgal 5.6.1+
diff --git a/src/libslic3r/MeshBoolean.cpp b/src/libslic3r/MeshBoolean.cpp
index 50bbc099..b05245d3 100644
--- a/src/libslic3r/MeshBoolean.cpp
+++ b/src/libslic3r/MeshBoolean.cpp
@@ -200,12 +200,12 @@ indexed_triangle_set cgal_to_indexed_triangle_set(const _Mesh &cgalmesh)
const auto &vertices = cgalmesh.vertices();
int vsize = int(vertices.size());
- for (auto &vi : vertices) {
+ for (const auto &vi : vertices) {
auto &v = cgalmesh.point(vi); // Don't ask...
its.vertices.emplace_back(to_vec3f(v));
}
- for (auto &face : faces) {
+ for (const auto &face : faces) {
auto vtc = cgalmesh.vertices_around_face(cgalmesh.halfedge(face));
int i = 0;

View file

@ -10,13 +10,13 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "scli"; pname = "scli";
version = "0.7.3"; version = "0.7.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "isamert"; owner = "isamert";
repo = pname; repo = pname;
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
sha256 = "sha256-x5NLYqA/sdQkT/8oG/ija/+4+KjRHa1q0T3mqymAuV8="; sha256 = "sha256-GC19iJYdNUdC4UEBWWdlzl0Ha6Y3knB1dG+6spwdYQ0=";
}; };
propagatedBuildInputs = with python3.pkgs; [ propagatedBuildInputs = with python3.pkgs; [

View file

@ -3,6 +3,7 @@
, fetchFromGitHub , fetchFromGitHub
, qtbase , qtbase
, qtsvg , qtsvg
, qtwayland
, qtwebengine , qtwebengine
, qtdeclarative , qtdeclarative
, extra-cmake-modules , extra-cmake-modules
@ -46,6 +47,7 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [ buildInputs = [
qtbase qtbase
qtsvg qtsvg
qtwayland
cpp-utilities cpp-utilities
qtutilities qtutilities
boost boost

View file

@ -7,18 +7,18 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "wttrbar"; pname = "wttrbar";
version = "0.9.0"; version = "0.9.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "bjesus"; owner = "bjesus";
repo = "wttrbar"; repo = "wttrbar";
rev = version; rev = version;
hash = "sha256-8ahXRKpVbGFX+SrR8bjUw5POzpCqmlunM5CiRzDE/IM="; hash = "sha256-2oUj9G82+aGXU+qB37f+lRz5rctZNnb3bK8IETrt/4g=";
}; };
buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk_11_0.frameworks; [ Security SystemConfiguration ]); buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk_11_0.frameworks; [ Security SystemConfiguration ]);
cargoHash = "sha256-SsZRD6FmeB5Hz6Hs+I+5SBGazm8/mntK3Eb2FNw27Bg="; cargoHash = "sha256-yvgqvcOxl/AmvUg6jTFtYh13sgqAWKPt2uMFHaX5OMM=";
meta = { meta = {
description = "A simple but detailed weather indicator for Waybar using wttr.in"; description = "A simple but detailed weather indicator for Waybar using wttr.in";

View file

@ -3,16 +3,16 @@
buildGoModule rec { buildGoModule rec {
pname = "discordo"; pname = "discordo";
version = "unstable-2024-03-03"; version = "unstable-2024-03-07";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ayn2op"; owner = "ayn2op";
repo = pname; repo = pname;
rev = "ce2091d566f2d999d83b3c9463860b73f1d163ae"; rev = "23cb3a146a8567526b35807c6f16120163c40f98";
hash = "sha256-71i/8t768RtD0Gk2cpSdznERSNf1gErQrrOGYiZz05g="; hash = "sha256-1ov9SEyXdRTg9HEN2ASC5QY8ZKlWDdrc9TCMfFHIhCc=";
}; };
vendorHash = "sha256-dBJYTe8aZtNuBwmcpXb3OEHoLVCa/GbGExLIRc8cVbo="; vendorHash = "sha256-6pCQHr/O2pfR1v8YI+htwGZ8RFStEEUctIEpgblXvjY=";
CGO_ENABLED = 0; CGO_ENABLED = 0;

View file

@ -64,7 +64,7 @@ in
pname = "${pname}-pnpm-deps"; pname = "${pname}-pnpm-deps";
inherit src version; inherit src version;
sourceRoot = "source/gephgui-wry/gephgui"; sourceRoot = "${src.name}/gephgui-wry/gephgui";
nativeBuildInputs = [ nativeBuildInputs = [
jq jq
@ -95,7 +95,7 @@ in
pname = "gephgui-wry"; pname = "gephgui-wry";
inherit version src; inherit version src;
sourceRoot = "source/gephgui-wry"; sourceRoot = "${src.name}/gephgui-wry";
cargoLock = { cargoLock = {
lockFile = ./Cargo.lock; lockFile = ./Cargo.lock;

View file

@ -4,7 +4,7 @@ let
if stdenv.isLinux then { if stdenv.isLinux then {
stable = "0.0.44"; stable = "0.0.44";
ptb = "0.0.72"; ptb = "0.0.72";
canary = "0.0.285"; canary = "0.0.294";
development = "0.0.13"; development = "0.0.13";
} else { } else {
stable = "0.0.294"; stable = "0.0.294";
@ -25,7 +25,7 @@ let
}; };
canary = fetchurl { canary = fetchurl {
url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz"; url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
hash = "sha256-dfBwe/YOzUUAfBrf51mNXtpyGL3Mp235e6TfQM4h04s="; hash = "sha256-3D48+eg8hqToGepFdQznUTTUu37WRcZJ9kgG+wpxFAE=";
}; };
development = fetchurl { development = fetchurl {
url = "https://dl-development.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz"; url = "https://dl-development.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz";

View file

@ -13,7 +13,7 @@ let
pname = "localsend"; pname = "localsend";
version = "1.14.0"; version = "1.14.0";
linux = flutter313.buildFlutterApplication { linux = flutter313.buildFlutterApplication rec {
inherit pname version; inherit pname version;
src = fetchFromGitHub { src = fetchFromGitHub {
@ -23,7 +23,7 @@ let
hash = "sha256-CO0uFcZnOfE31EZxRUpgtod3+1lyXPpbytHB45DEM98="; hash = "sha256-CO0uFcZnOfE31EZxRUpgtod3+1lyXPpbytHB45DEM98=";
}; };
sourceRoot = "source/app"; sourceRoot = "${src.name}/app";
pubspecLock = lib.importJSON ./pubspec.lock.json; pubspecLock = lib.importJSON ./pubspec.lock.json;
@ -59,7 +59,7 @@ let
passthru.updateScript = ./update.sh; passthru.updateScript = ./update.sh;
meta = meta // { meta = metaCommon // {
mainProgram = "localsend_app"; mainProgram = "localsend_app";
}; };
}; };
@ -81,13 +81,13 @@ let
cp -r *.app $out/Applications cp -r *.app $out/Applications
''; '';
meta = meta // { meta = metaCommon // {
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
platforms = [ "x86_64-darwin" "aarch64-darwin" ]; platforms = [ "x86_64-darwin" "aarch64-darwin" ];
}; };
}; };
meta = with lib; { metaCommon = with lib; {
description = "An open source cross-platform alternative to AirDrop"; description = "An open source cross-platform alternative to AirDrop";
homepage = "https://localsend.org/"; homepage = "https://localsend.org/";
license = licenses.mit; license = licenses.mit;

View file

@ -16,11 +16,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "notmuch"; pname = "notmuch";
version = "0.38.2"; version = "0.38.3";
src = fetchurl { src = fetchurl {
url = "https://notmuchmail.org/releases/notmuch-${version}.tar.xz"; url = "https://notmuchmail.org/releases/notmuch-${version}.tar.xz";
hash = "sha256-UoLr5HQrA+4A/Dq4NZaflNIpJ523IyESvcUAnYYelH4="; hash = "sha256-mvRsyA2li0MByiuu/MJaQNES0DFVB+YywPPw8IMo0FQ=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -22,6 +22,18 @@ let
ln -sf $out/lib/libssl.so $out/lib/libssl.so.1.0.0 ln -sf $out/lib/libssl.so $out/lib/libssl.so.1.0.0
''; '';
}; };
opencv4' = symlinkJoin {
name = "opencv4-compat";
nativeBuildInputs = [ makeWrapper ];
paths = [ opencv4 ];
postBuild = ''
for so in ${opencv4}/lib/*.so; do
ln -s "$so" $out/lib/$(basename "$so").407
done
'';
};
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -98,7 +110,7 @@ stdenv.mkDerivation rec {
mesa mesa
nspr nspr
nss nss
opencv4 opencv4'
openssl' openssl'
pango pango
speex speex

View file

@ -98,7 +98,7 @@
, gpgme , gpgme
, libwebp , libwebp
, abseil-cpp , abseil-cpp
, langs ? [ "ar" "ca" "cs" "da" "de" "en-GB" "en-US" "eo" "es" "fr" "hu" "it" "ja" "nl" "pl" "pt" "pt-BR" "ro" "ru" "sl" "tr" "uk" "zh-CN" ] , langs ? [ "ar" "ca" "cs" "da" "de" "en-GB" "en-US" "eo" "es" "fi" "fr" "hu" "it" "ja" "nl" "pl" "pt" "pt-BR" "ro" "ru" "sl" "tr" "uk" "zh-CN" ]
, withHelp ? true , withHelp ? true
, kdeIntegration ? false , kdeIntegration ? false
, wrapQtAppsHook ? null , wrapQtAppsHook ? null

View file

@ -22,13 +22,13 @@
}: }:
let let
version = "2.6.1"; version = "2.6.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "paperless-ngx"; owner = "paperless-ngx";
repo = "paperless-ngx"; repo = "paperless-ngx";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-sBzy3C59630moKuv3cmE9YI/FQkoZbF0SoSFbpJdNd8="; hash = "sha256-i7zQQbNF9uAmvC5qAlNKV8Ip9K6sM1xOeOV4wxe5hts=";
}; };
python = python3; python = python3;

View file

@ -41,12 +41,12 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "zotero"; pname = "zotero";
version = "6.0.30"; version = "6.0.35";
src = fetchurl { src = fetchurl {
url = url =
"https://download.zotero.org/client/release/${version}/Zotero-${version}_linux-x86_64.tar.bz2"; "https://download.zotero.org/client/release/${version}/Zotero-${version}_linux-x86_64.tar.bz2";
hash = "sha256-4XQZ1xw9Qtk3SzHMsEUk+HuIYtHDAOMgpwzbAd5QQpU="; hash = "sha256-HAVLmamEPuFf0548/iEXes+f4XnQ7kU1u9hyOYhVyZ0=";
}; };
nativeBuildInputs = [ wrapGAppsHook ]; nativeBuildInputs = [ wrapGAppsHook ];

View file

@ -11,13 +11,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "calcmysky"; pname = "calcmysky";
version = "0.3.1"; version = "0.3.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "10110111"; owner = "10110111";
repo = "CalcMySky"; repo = "CalcMySky";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-oqYOXoIPVqCD3HL7ShNoF89W725hFHX0Ei/yVJNTS5I="; hash = "sha256-AP6YkORbvH8PzF869s2OWbTwTfwMC+RLJx3V3BqVy88=";
}; };
nativeBuildInputs = [ cmake wrapQtAppsHook ]; nativeBuildInputs = [ cmake wrapQtAppsHook ];

View file

@ -20,10 +20,10 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-yguUMEX0tn75wKrPKyqlCYbBFaEwC5b1s3k9xept1Fw="; hash = "sha256-yguUMEX0tn75wKrPKyqlCYbBFaEwC5b1s3k9xept1Fw=";
}; };
sourceRoot = sourceRoot = "${finalAttrs.src.name}/build/${
if stdenv.isDarwin if stdenv.hostPlatform.isDarwin then "mac"
then "source/build/mac/release" else "linux"
else "source/build/linux/release"; }/release";
buildInputs = [ buildInputs = [
boost' boost'

View file

@ -27,7 +27,7 @@ let
inherit src version; inherit src version;
pname = "openrefine-npm"; pname = "openrefine-npm";
sourceRoot = "source/main/webapp"; sourceRoot = "${src.name}/main/webapp";
npmDepsHash = "sha256-8GhcL4tohQ5u2HeYN6JyTMMobUOqAL8ETCLiP1SoDSk="; npmDepsHash = "sha256-8GhcL4tohQ5u2HeYN6JyTMMobUOqAL8ETCLiP1SoDSk=";

View file

@ -25,7 +25,7 @@ mkDerivation rec {
sha256 = "sha256-G4KlYAjOT1UV29vcX7Q8dMTj0BX0rsJcLtK2MQag5nU="; sha256 = "sha256-G4KlYAjOT1UV29vcX7Q8dMTj0BX0rsJcLtK2MQag5nU=";
}; };
sourceRoot = "source/src"; sourceRoot = "${src.name}/src";
qmakeFlags = [ "PREFIX=${placeholder "out"}" "CONFIG+=unixvlc" ]; qmakeFlags = [ "PREFIX=${placeholder "out"}" "CONFIG+=unixvlc" ];

View file

@ -49,13 +49,13 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "mkvtoolnix"; pname = "mkvtoolnix";
version = "82.0"; version = "83.0";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "mbunkus"; owner = "mbunkus";
repo = "mkvtoolnix"; repo = "mkvtoolnix";
rev = "release-${version}"; rev = "release-${version}";
hash = "sha256-3WULzEkjMH4PUETJeKmDKn9PdanWf581O2mI/IqN8YM="; hash = "sha256-MHi3ewxCn560vpVfOucV34CNj/95U2OFd6bxAjtMBoc=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -11,13 +11,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "miriway"; pname = "miriway";
version = "unstable-2024-02-14"; version = "unstable-2024-03-06";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Miriway"; owner = "Miriway";
repo = "Miriway"; repo = "Miriway";
rev = "ad4d311269dc25789f7412211ddddad383d9700c"; rev = "d58ec46b38aa1c18bbe5c3a0ba2ccdf73b069ee9";
hash = "sha256-kPrsyrAHvwrktBFITuhpFKyjmedv04ONFhuxiBDlAJA="; hash = "sha256-0zbiSAF0T/OwRn5CYv2fLL4J3K5gUOmy3GK70RfXv5Y=";
}; };
strictDeps = true; strictDeps = true;

View file

@ -1,5 +1,5 @@
{ lib { lib
, stdenv , clangStdenv
, fetchFromGitHub , fetchFromGitHub
, gnustep , gnustep
, libxkbcommon , libxkbcommon
@ -12,9 +12,10 @@
assert wayland.withLibraries; assert wayland.withLibraries;
let let
mkDerivation = if stdenv.isDarwin then stdenv.mkDerivation else gnustep.gsmakeDerivation; stdenv = clangStdenv;
in in
mkDerivation {
stdenv.mkDerivation {
pname = "owl-compositor"; pname = "owl-compositor";
version = "unstable-2021-11-10"; version = "unstable-2021-11-10";
@ -43,6 +44,7 @@ mkDerivation {
darwin.bootstrap_cmds darwin.bootstrap_cmds
] ++ lib.optionals (!stdenv.isDarwin) [ ] ++ lib.optionals (!stdenv.isDarwin) [
gnustep.make gnustep.make
gnustep.wrapGNUstepAppsHook
]; ];
buildInputs = [ buildInputs = [

View file

@ -7,16 +7,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "ast-grep"; pname = "ast-grep";
version = "0.19.3"; version = "0.19.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ast-grep"; owner = "ast-grep";
repo = "ast-grep"; repo = "ast-grep";
rev = version; rev = version;
hash = "sha256-nqKDBRH2/YsSmirxJ84BgUTLfgPzZ/EQxqy6Fa7Mfxs="; hash = "sha256-hKqj3LVu/3ndGoZQYyH1yCm5vF0/Ck5bkTKjLIkcUys=";
}; };
cargoHash = "sha256-48ZVbRJkpMO+kJE5Kz96McjXhMtu4TzzjfyYdggNWkQ="; cargoHash = "sha256-Fli97ANWHZvvBC6hImymELkpBqqrAOm006LROj3R3sM=";
# Work around https://github.com/NixOS/nixpkgs/issues/166205. # Work around https://github.com/NixOS/nixpkgs/issues/166205.
env = lib.optionalAttrs stdenv.cc.isClang { env = lib.optionalAttrs stdenv.cc.isClang {

View file

@ -17,7 +17,7 @@ buildGoModule rec {
ldflags = [ "-s" "-w" ]; ldflags = [ "-s" "-w" ];
sourceRoot = "source/c2FmZQ"; sourceRoot = "${src.name}/c2FmZQ";
vendorHash = "sha256-cTXSFwWGHV2QJM4mX/Z+ZxCXKwr+59lEPvJa/PTA1wU="; vendorHash = "sha256-cTXSFwWGHV2QJM4mX/Z+ZxCXKwr+59lEPvJa/PTA1wU=";

View file

@ -0,0 +1,26 @@
{ lib
, buildGoModule
, fetchFromGitHub
}:
buildGoModule rec {
pname = "clipse";
version = "0.0.6";
src = fetchFromGitHub {
owner = "savedra1";
repo = "clipse";
rev = "v${version}";
hash = "sha256-DLvYTPlLkp98zCzmbeL68B7mHl7RY3ee9rL30vYm5Ow=";
};
vendorHash = "sha256-GIUEx4h3xvLySjBAQKajby2cdH8ioHkv8aPskHN0V+w=";
meta = {
description = "Useful clipboard manager TUI for Unix";
homepage = "https://github.com/savedra1/clipse";
license = lib.licenses.mit;
mainProgram = "clipse";
maintainers = [ lib.maintainers.savedra1 ];
};
}

View file

@ -9,12 +9,12 @@
stdenvNoCC.mkDerivation (finalAttrs: { stdenvNoCC.mkDerivation (finalAttrs: {
name = "disko"; name = "disko";
version = "1.4.0"; version = "1.4.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "nix-community"; owner = "nix-community";
repo = "disko"; repo = "disko";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-71S/64RbyADT6FUVJq4WLiNbmcxFvgMsSihf/C2Hgno="; hash = "sha256-HeWFrRuHpnAiPmIr26OKl2g142HuGerwoO/XtW53pcI=";
}; };
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];
buildInputs = [ bash ]; buildInputs = [ bash ];

View file

@ -7,13 +7,13 @@
buildGoModule rec { buildGoModule rec {
pname = "dmarc-report-converter"; pname = "dmarc-report-converter";
version = "0.6.5"; version = "0.7.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tierpod"; owner = "tierpod";
repo = "dmarc-report-converter"; repo = "dmarc-report-converter";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-4rAQhZmqYldilCKomBfuyqS0vcUg5yS4nqp84XSjam4="; hash = "sha256-doipM3SZmU/QUglN0UA2IpRgrhdMnuCmMPRs0OWRxPE=";
}; };
vendorHash = null; vendorHash = null;

View file

@ -21,13 +21,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "feather"; pname = "feather";
version = "2.6.3"; version = "2.6.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "feather-wallet"; owner = "feather-wallet";
repo = "feather"; repo = "feather";
rev = finalAttrs.version; rev = finalAttrs.version;
hash = "sha256-pQnaJbKznK1i8wn7t8ZnxLVu1LV/D47krxZZ0j6Mw6g="; hash = "sha256-NFFIpHyie8jABfmiJP38VbPFjZgaNc+i5JcpbRr+mBU=";
fetchSubmodules = true; fetchSubmodules = true;
}; };

View file

@ -7,16 +7,16 @@
buildGoModule rec { buildGoModule rec {
pname = "files-cli"; pname = "files-cli";
version = "2.12.40"; version = "2.12.41";
src = fetchFromGitHub { src = fetchFromGitHub {
repo = "files-cli"; repo = "files-cli";
owner = "files-com"; owner = "files-com";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-dtHmBpszacoKHOg5PXrIQ2oPPCk1zzhvxAWULzxm3C4="; hash = "sha256-Z/lkVZln5MBh5ETtAK9ohkDQE2leObHeVlskvsvicPc=";
}; };
vendorHash = "sha256-yaDc2o0vzgb0KDn3dGiXxPjEXyPNcCCQ+bEu/X1Cs3Q="; vendorHash = "sha256-ZySp/JKFEIhWNjqSYpSvCQyJRqVmsXL8du/77XQcFMM=";
ldflags = [ ldflags = [
"-s" "-s"

View file

@ -0,0 +1,51 @@
{ lib
, stdenv
, fetchFromGitHub
, meson
, ninja
, pkg-config
, vala
, blueprint-compiler
, wrapGAppsHook4
, desktop-file-utils
, libadwaita
, libgee
, gtksourceview5
}:
stdenv.mkDerivation rec {
pname = "folio";
version = "24.05";
src = fetchFromGitHub {
owner = "toolstack";
repo = "Folio";
rev = version;
hash = "sha256-8FU7xYidKXtrSLVT9t+i0O8eYlUYIpq7rVU5Cm10CWE=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
vala
blueprint-compiler
wrapGAppsHook4
desktop-file-utils
];
buildInputs = [
libadwaita
libgee
gtksourceview5
];
meta = with lib; {
description = "A beautiful markdown note-taking app for GNOME (forked from Paper)";
homepage = "https://github.com/toolstack/Folio";
license = licenses.gpl3Only;
mainProgram = "com.toolstack.Folio";
maintainers = with maintainers; [ aleksana ];
platforms = platforms.unix;
};
}

View file

@ -35,7 +35,7 @@ in buildGoModule rec {
hash = "sha256-tQ35GZuw7Ag1YfmOUarVY45yk4yugNLJetEV4m2w3GE="; hash = "sha256-tQ35GZuw7Ag1YfmOUarVY45yk4yugNLJetEV4m2w3GE=";
}; };
sourceRoot = "source/caddy"; sourceRoot = "${src.name}/caddy";
# frankenphp requires C code that would be removed with `go mod tidy` # frankenphp requires C code that would be removed with `go mod tidy`
# https://github.com/golang/go/issues/26366 # https://github.com/golang/go/issues/26366

View file

@ -10,13 +10,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "free42"; pname = "free42";
version = "3.1.4"; version = "3.1.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "thomasokken"; owner = "thomasokken";
repo = "free42"; repo = "free42";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-XAYi4CBOx5KkqJyz6WkPlWC+bfbEReyaSv9SRCe6TDw="; hash = "sha256-YFTmEyOd/r8Pbj+PzD+VYkkB0gqDJ4wteLBTdwa1qcE=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -0,0 +1,60 @@
{ lib, stdenv, fetchFromGitHub, qt5 }:
stdenv.mkDerivation (finalAttrs: {
pname = "frequest";
version = "1.2a";
srcs = [
(fetchFromGitHub {
owner = "fabiobento512";
name = "frequest";
repo = "FRequest";
rev = "v${finalAttrs.version}";
hash = "sha256-fdn3MK5GWBOhJjpMtRaytO9EsVzz6KJknDhqWtAyXCc=";
})
# The application depends on hard-coded relative paths to ../CommonLibs and ../CommonUtils.
# See https://github.com/fabiobento512/FRequest/wiki/Building-FRequest for more info.
# Upstream provides no tags for these dependencies, use latest commit on their `master` branch.
# Changing the name of these srcs will break the build.
(fetchFromGitHub {
owner = "fabiobento512";
name = "CommonLibs";
repo = "CommonLibs";
rev = "d3906931bb06ddf4194ff711a59e1dcff80fa82f";
hash = "sha256-iLJJ95yJ+VjNPuk8fNEDvYBI0db0rcfJF12a9azGv1Y=";
})
(fetchFromGitHub {
owner = "fabiobento512";
name = "CommonUtils";
repo = "CommonUtils";
rev = "53970984f6538d78350be1b9426032bcb5bcf818";
hash = "sha256-nRv9DriSOuAiWhy+KkOVNEz5oSgNNNJZqk8sNwgbx8U=";
})
];
sourceRoot = "frequest";
buildInputs = [
qt5.qtbase
];
nativeBuildInputs = [
qt5.wrapQtAppsHook
qt5.qmake
];
# Without this, nothing gets installed in $out.
postInstall = ''
install -D FRequest $out/bin/FRequest
install -D LinuxAppImageDeployment/frequest.desktop $out/share/applications/frequest.desktop
install -D LinuxAppImageDeployment/frequest_icon.png $out/share/icons/hicolor/128x128/apps/frequest_icon.png
'';
meta = {
description = "A fast, lightweight and opensource desktop application to make HTTP(s) requests";
homepage = "https://fabiobento512.github.io/FRequest";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ eliandoran ];
platforms = lib.platforms.linux;
mainProgram = "frequest";
};
})

View file

@ -0,0 +1,38 @@
{ lib
, stdenv
, fetchFromGitHub
, rustPlatform
, darwin
, libgit2
, git
, pkg-config
, zlib
}:
rustPlatform.buildRustPackage {
pname = "git-agecrypt";
version = "unstable-2023-07-14";
src = fetchFromGitHub {
owner = "vlaci";
repo = "git-agecrypt";
rev = "945b80556d8848f6e85a8cc0053f9020bdc8b359";
hash = "sha256-6FjyJRYGyZt+uvYjXWvXI7DGq/+BNZHSSAT/DhOsF/E=";
};
cargoHash = "sha256-QCV0DT0kcDRMzVc+9uTn9FYPpf+xvKJbakP6CHRcibo=";
nativeBuildInputs = [ pkg-config git ];
buildInputs = [ libgit2 zlib ]
++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
meta = with lib; {
description = "Alternative to git-crypt using age instead of GPG.";
homepage = "https://github.com/vlaci/git-agecrypt";
license = licenses.mpl20;
maintainers = with maintainers; [ kuznetsss ];
mainProgram = "git-agecrypt";
};
}

View file

@ -0,0 +1,50 @@
{ lib
, rustPlatform
, fetchFromGitHub
, pkg-config
, libgit2
, openssl
, zlib
, stdenv
, darwin
, git
}:
rustPlatform.buildRustPackage rec {
pname = "gitu";
version = "0.5.4";
src = fetchFromGitHub {
owner = "altsem";
repo = "gitu";
rev = "v${version}";
hash = "sha256-a4hNgEizxanYE3XuHSCmbV6CkOqhXkznP3Sp0KLFFQs=";
};
cargoHash = "sha256-+CA3UG32oZedzRbt7b0wOlhH/subuym4BCL5SMNzrr8=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [
libgit2
openssl
zlib
] ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security
];
nativeCheckInputs = [
git
];
meta = with lib; {
description = "A TUI Git client inspired by Magit";
homepage = "https://github.com/altsem/gitu";
changelog = "https://github.com/altsem/gitu/blob/${src.rev}/CHANGELOG.md";
license = licenses.mit;
maintainers = with maintainers; [ evanrichter ];
mainProgram = "gitu";
};
}

View file

@ -1,32 +1,87 @@
{ lxd { lib
, stdenv
, fetchFromGitHub , fetchFromGitHub
, fetchYarnDeps
, nodejs
, prefetch-yarn-deps
, yarn
, nixosTests
, git , git
}: }:
lxd.ui.overrideAttrs(prev: rec { stdenv.mkDerivation rec {
pname = "incus-ui"; pname = "incus-ui";
version = "0.6";
src = fetchFromGitHub {
owner = "canonical";
repo = "lxd-ui";
rev = "refs/tags/${version}";
hash = "sha256-3Ts6lKyzpMDVATCKD1fFIGTskWzWpQUT9S8cPFnlEOs=";
};
offlineCache = fetchYarnDeps {
yarnLock = "${src}/yarn.lock";
hash = "sha256-0pyxwMGGqogEe1w3sail8NUDHtxLQZU9Wg8E6rQNy4o=";
};
zabbly = fetchFromGitHub { zabbly = fetchFromGitHub {
owner = "zabbly"; owner = "zabbly";
repo = "incus"; repo = "incus";
rev = "8bbe23f42beedd845bd95069c06f4d0c85e450b6"; rev = "3eabc1960e99e7e515916e3ea7068a412a8c420b";
hash = "sha256-X0I8vrhvg5mLGAY8oEU/nr2pvDJ8ZqLUSY9WBqwmolE="; hash = "sha256-Kw53Qjurc6WPswB38v6wuRhuuGE34uYxNoAKH4UmTBE=";
}; };
nativeBuildInputs = prev.nativeBuildInputs ++ [
git
];
patchPhase = '' patchPhase = ''
for p in $zabbly/patches/ui-canonical*; do for p in $zabbly/patches/ui-canonical*patch; do
echo "applying patch $p" echo "applying patch $p"
git apply -p1 "$p" git apply -p1 "$p"
done done
sed -i "s/LXD/Incus/g" src/*/*.ts* src/*/*/*.ts* src/*/*/*/*.ts* sed -i -f "$zabbly/patches/ui-canonical-renames.sed" src/*/*.ts* src/*/*/*.ts* src/*/*/*/*.ts*
sed -i "s/devlxd/guestapi/g" src/*/*.ts* src/*/*/*.ts* src/*/*/*/*.ts*
sed -i "s/dev\/lxd/dev\/incus/g" src/*/*.ts* src/*/*/*.ts* src/*/*/*/*.ts*
sed -i "s/lxd_/incus_/g" src/*/*.ts* src/*/*/*.ts* src/*/*/*/*.ts*
sed -i "s/\"lxd\"/\"incus\"/g" src/*/*.ts* src/*/*/*.ts* src/*/*/*/*.ts*
''; '';
})
nativeBuildInputs = [
nodejs
prefetch-yarn-deps
yarn
git
];
configurePhase = ''
runHook preConfigure
export HOME=$(mktemp -d)
yarn config --offline set yarn-offline-mirror "$offlineCache"
fixup-yarn-lock yarn.lock
yarn --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive install
patchShebangs node_modules
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
yarn --offline build
runHook postBuild
'';
installPhase = ''
runHook preInstall
cp -r build/ui/ $out
runHook postInstall
'';
passthru.tests.default = nixosTests.incus.ui;
meta = {
description = "Web user interface for Incus, based on LXD webui";
homepage = "https://github.com/canonical/lxd-ui";
license = lib.licenses.gpl3;
maintainers = lib.teams.lxc.members;
platforms = lib.platforms.linux;
};
}

View file

@ -27,7 +27,7 @@ flutter.buildFlutterApplication rec {
cargoDeps = rustPlatform.fetchCargoTarball { cargoDeps = rustPlatform.fetchCargoTarball {
name = "${pname}-${version}-cargo-deps"; name = "${pname}-${version}-cargo-deps";
inherit src; inherit src;
sourceRoot = "source/intiface-engine-flutter-bridge"; sourceRoot = "${src.name}/intiface-engine-flutter-bridge";
hash = "sha256-0sCHa3rMaLYaUG3E3fmsLi0dSdb9vGyv7qNR3JQkXuU="; hash = "sha256-0sCHa3rMaLYaUG3E3fmsLi0dSdb9vGyv7qNR3JQkXuU=";
}; };
cargoRoot = "intiface-engine-flutter-bridge"; cargoRoot = "intiface-engine-flutter-bridge";

View file

@ -5,10 +5,10 @@
let let
pname = "jan"; pname = "jan";
version = "0.4.7"; version = "0.4.8";
src = fetchurl { src = fetchurl {
url = "https://github.com/janhq/jan/releases/download/v${version}/jan-linux-x86_64-${version}.AppImage"; url = "https://github.com/janhq/jan/releases/download/v${version}/jan-linux-x86_64-${version}.AppImage";
hash = "sha256-Mn7rIBEf46JbNof8h3z66TGdGKnb0FGMJc46JncA0KM="; hash = "sha256-8Vi2KK+5Wk/K+RJZ0/cbRUb8L25WEiLdo5ay8+ichdw=";
}; };
appimageContents = appimageTools.extractType2 { inherit pname version src; }; appimageContents = appimageTools.extractType2 { inherit pname version src; };

View file

@ -11,17 +11,17 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "just"; pname = "just";
version = "1.25.1"; version = "1.25.2";
outputs = [ "out" "man" "doc" ]; outputs = [ "out" "man" "doc" ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "casey"; owner = "casey";
repo = pname; repo = pname;
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-CvOnvUez2mfta9aXmdsLFxpVB/TGDw0y0ha3OyNJ2DE="; hash = "sha256-w7tHLjIFnlvyuTw5yG6zxJtQ7oDNdKRXHIRKY638vTo=";
}; };
cargoHash = "sha256-b4hprcYOcY0z0UnUe3pGc87j+X3n52btYlaCemETLYg="; cargoHash = "sha256-VL2uNbEtqOv3xmLukhdCmo3lrfx5yFwOAMGwgBlgAVw=";
nativeBuildInputs = [ installShellFiles mdbook ]; nativeBuildInputs = [ installShellFiles mdbook ];
buildInputs = lib.optionals stdenv.isDarwin [ libiconv ]; buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];

View file

@ -0,0 +1,74 @@
{ lib
, stdenv
, fetchFromGitLab
, rustPlatform
, meson
, ninja
, pkg-config
, rustc
, cargo
, wrapGAppsHook4
, desktop-file-utils
, libadwaita
, gst_all_1
, darwin
}:
stdenv.mkDerivation rec {
pname = "kana";
version = "1.4";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "fkinoshita";
repo = "Kana";
rev = "v${version}";
hash = "sha256-/Ri723ub8LMlhbPObC83bay63JuWIQpgxAT5UUYuwZI=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "kana-${version}";
hash = "sha256-Z7DpPe8/Tt8AcLjCwKbwzQTsLe6YvWBCG7DlDkkklew=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
rustPlatform.cargoSetupHook
rustc
cargo
wrapGAppsHook4
desktop-file-utils
];
buildInputs = [
libadwaita
] ++ (with gst_all_1; [
gstreamer
gst-plugins-base
gst-plugins-bad
gst-plugins-good
]) ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Foundation
];
# Workaround for the gettext-sys issue
# https://github.com/Koka/gettext-rs/issues/114
env.NIX_CFLAGS_COMPILE = lib.optionalString
(
stdenv.cc.isClang &&
lib.versionAtLeast stdenv.cc.version "16"
)
"-Wno-error=incompatible-function-pointer-types";
meta = with lib; {
description = "Learn Japanese hiragana and katakana characters";
homepage = "https://gitlab.gnome.org/fkinoshita/kana";
license = licenses.gpl3Plus;
mainProgram = "kana";
maintainers = with maintainers; [ aleksana ];
platforms = platforms.unix;
};
}

View file

@ -10,6 +10,7 @@
, numpy , numpy
, click , click
, markdown2 , markdown2
, openscad
, pytestCheckHook , pytestCheckHook
, commentjson , commentjson
, wxpython , wxpython
@ -23,7 +24,7 @@ let
in in
buildPythonApplication rec { buildPythonApplication rec {
pname = "kikit"; pname = "kikit";
version = "1.4.0"; version = "1.5.0";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -32,7 +33,7 @@ buildPythonApplication rec {
owner = "yaqwsx"; owner = "yaqwsx";
repo = "KiKit"; repo = "KiKit";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-88/1bL3MtawR/8P8U1jHatMbq+JxF1qb+plH3rYh1qU="; hash = "sha256-f8FB6EEy9Ch4LcMKd9PADXV9QrSb7e22Ui86G6AnQKE=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -40,6 +41,9 @@ buildPythonApplication rec {
numpy numpy
click click
markdown2 markdown2
# OpenSCAD is an optional dependency (see
# https://github.com/yaqwsx/KiKit/blob/v1.5.0/docs/installation/intro.md#optional-dependencies).
openscad
commentjson commentjson
# https://github.com/yaqwsx/KiKit/issues/575 # https://github.com/yaqwsx/KiKit/issues/575
wxpython wxpython

View file

@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
hash = "sha256-Fb5TeRTdvUlo/5Yi2d+FC8a6KoRLk2h1VE0/peMhWPs="; hash = "sha256-Fb5TeRTdvUlo/5Yi2d+FC8a6KoRLk2h1VE0/peMhWPs=";
}; };
sourceRoot = "source/rust/tool"; sourceRoot = "${src.name}/rust/tool";
cargoHash = "sha256-g4WzqfH6DZVUuNb0jV3MFdm3h7zy2bQ6d3agrXesWgc="; cargoHash = "sha256-g4WzqfH6DZVUuNb0jV3MFdm3h7zy2bQ6d3agrXesWgc=";
env.TEST_SYSTEMD = systemd; env.TEST_SYSTEMD = systemd;

View file

@ -61,7 +61,7 @@ rustPlatform.buildRustPackage rec {
systemd systemd
]; ];
sourceRoot = "source/gui"; sourceRoot = "${src.name}/gui";
postInstall = '' postInstall = ''
install -Dm0644 ./ui/static/logos/liana-app-icon.svg $out/share/icons/hicolor/scalable/apps/liana.svg install -Dm0644 ./ui/static/logos/liana-app-icon.svg $out/share/icons/hicolor/scalable/apps/liana.svg

View file

@ -9,7 +9,7 @@ python3.pkgs.buildPythonApplication rec {
inherit (python3.pkgs.linien-common) src version; inherit (python3.pkgs.linien-common) src version;
sourceRoot = "source/linien-gui"; sourceRoot = "${src.name}/linien-gui";
nativeBuildInputs = with python3.pkgs; [ nativeBuildInputs = with python3.pkgs; [
setuptools setuptools

View file

@ -17,7 +17,7 @@ buildGoModule rec {
hash = "sha256-4Y+yZSZrBDLPbQXaOCSKk/EY20Ka8CS4ivUg1TEaqXo="; hash = "sha256-4Y+yZSZrBDLPbQXaOCSKk/EY20Ka8CS4ivUg1TEaqXo=";
}; };
sourceRoot = "source/caddy"; sourceRoot = "${src.name}/caddy";
vendorHash = "sha256-N0RmvhBlTiWmBb4TzLmaThD9jVkKgcIO9vPWxJAvLRQ="; vendorHash = "sha256-N0RmvhBlTiWmBb4TzLmaThD9jVkKgcIO9vPWxJAvLRQ=";

View file

@ -14,7 +14,7 @@ python3Packages.buildPythonApplication rec {
version = "2.7.0"; version = "2.7.0";
format = "other"; format = "other";
sourceRoot = "source/source"; sourceRoot = "${src.name}/source";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "zehkira"; owner = "zehkira";
repo = "monophony"; repo = "monophony";

View file

@ -16,6 +16,7 @@
, libclang , libclang
, autoPatchelfHook , autoPatchelfHook
, clang , clang
, fetchpatch
}: }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
@ -29,6 +30,14 @@ rustPlatform.buildRustPackage rec {
hash = "sha256-VTtXEfxc3OCdtdYiEdtftOQ7gDJNb679Yw8v1Lu3lhY="; hash = "sha256-VTtXEfxc3OCdtdYiEdtftOQ7gDJNb679Yw8v1Lu3lhY=";
}; };
patches = [
(fetchpatch {
name = "revert-viewporter.patch";
url = "https://github.com/YaLTeR/niri/commit/40cec34aa4a7f99ab12b30cba1a0ee83a706a413.patch";
hash = "sha256-3fg8v0eotfjUQY6EVFEPK5BBIBrr6vQpXbjDcsw2E8Q=";
})
];
cargoLock = { cargoLock = {
lockFile = ./Cargo.lock; lockFile = ./Cargo.lock;
outputHashes = { outputHashes = {
@ -83,7 +92,7 @@ rustPlatform.buildRustPackage rec {
description = "A scrollable-tiling Wayland compositor"; description = "A scrollable-tiling Wayland compositor";
homepage = "https://github.com/YaLTeR/niri"; homepage = "https://github.com/YaLTeR/niri";
license = licenses.gpl3Only; license = licenses.gpl3Only;
maintainers = with maintainers; [ iogamaster foo-dogsquared ]; maintainers = with maintainers; [ iogamaster foo-dogsquared sodiboo ];
mainProgram = "niri"; mainProgram = "niri";
platforms = platforms.linux; platforms = platforms.linux;
}; };

View file

@ -4,6 +4,7 @@
lib, lib,
runCommand, runCommand,
nixfmt-rfc-style, nixfmt-rfc-style,
fetchpatch,
}: }:
let let
inherit (haskell.lib.compose) overrideCabal justStaticExecutables; inherit (haskell.lib.compose) overrideCabal justStaticExecutables;
@ -13,6 +14,13 @@ let
passthru.updateScript = ./update.sh; passthru.updateScript = ./update.sh;
patches = [
(fetchpatch {
url = "https://github.com/serokell/nixfmt/commit/ca9c8975ed671112fdfce94f2e9e2ad3de480c9a.patch";
hash = "sha256-UOSAYahSKBsqPMVcQJ3H26Eg2xpPAsNOjYMI6g+WTYU=";
})
];
maintainers = lib.teams.formatter.members; maintainers = lib.teams.formatter.members;
# These tests can be run with the following command. # These tests can be run with the following command.

View file

@ -22,10 +22,9 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-jHr7J0X1v2n/ZK0y3b/XPDISk7e08VWS6nicJU4fKKY="; hash = "sha256-jHr7J0X1v2n/ZK0y3b/XPDISk7e08VWS6nicJU4fKKY=";
}; };
# Because some unknown reason split outputs is breaking on Darwin outputs = [ "out" ]
outputs = if stdenv.isDarwin # man pages are not installed on Darwin, see cmake/{Mac,Unix}BuildTarget.cmake
then [ "out" ] ++ lib.optionals (!stdenv.isDarwin) [ "man" ];
else [ "out" "man" ];
sourceRoot = "${finalAttrs.src.name}/ImageLounge"; sourceRoot = "${finalAttrs.src.name}/ImageLounge";
@ -58,7 +57,8 @@ stdenv.mkDerivation (finalAttrs: {
]; ];
postInstall = lib.optionalString stdenv.isDarwin '' postInstall = lib.optionalString stdenv.isDarwin ''
mkdir -p $out/lib mkdir -p $out/{Applications,lib}
mv $out/nomacs.app $out/Applications/nomacs.app
mv $out/libnomacsCore.dylib $out/lib/libnomacsCore.dylib mv $out/libnomacsCore.dylib $out/lib/libnomacsCore.dylib
''; '';

View file

@ -0,0 +1,45 @@
{ lib
, stdenv
, eigen
, fetchFromGitHub
, cmake
}:
stdenv.mkDerivation (finalAttrs: {
pname = "opengv";
version = "0-unstable-2020-08-06";
src = fetchFromGitHub {
owner = "laurentkneip";
repo = "opengv";
rev = "91f4b19c73450833a40e463ad3648aae80b3a7f3";
hash = "sha256-LfnylJ9NCHlqjT76Tgku4NwxULJ+WDAcJQ2lDKGWSI4=";
};
nativeBuildInputs = [
cmake
];
buildInputs = [
eigen
];
cmakeFlakes = [
(lib.cmakeFeature "CMAKE_BUILD_TYPE" "Release")
];
meta = {
description = "A collection of computer vision methods for solving geometric vision problems";
homepage = "https://github.com/laurentkneip/opengv";
license = lib.licenses.bsd2;
longDescription = ''OpenGV is a collection of computer vision methods for solving
geometric vision problems. It contains absolute-pose, relative-pose,
triangulation, and point-cloud alignment methods for the calibrated
case. All problems can be solved with central or non-central cameras,
and embedded into a random sample consensus or nonlinear optimization
context. Matlab and Python interfaces are implemented as well. The link
to the above pages also shows links to precompiled Matlab mex-libraries.
Please consult the documentation for more information.'';
maintainers = [ lib.maintainers.locochoco ];
platforms = lib.platforms.all;
};
})

View file

@ -15,25 +15,27 @@
, flex , flex
, fontconfig , fontconfig
, freetype , freetype
, ghostscript
, glib , glib
, glm , glm
, gmp , gmp
, harfbuzz , harfbuzz
, hidapi , hidapi
, lib3mf , lib3mf
, libGL
, libGLU , libGLU
, libICE , libICE
, libSM , libSM
, libsForQt5 , libsForQt5
, libspnav , libspnav
, libzip , libzip
, mesa
, mpfr , mpfr
, python3 , python3
, tbb_2021_8 , tbb_2021_8
, wayland , wayland
, wayland-protocols , wayland-protocols
, wrapGAppsHook , wrapGAppsHook
, xorg
}: }:
let let
# get cccl from source to avoid license issues # get cccl from source to avoid license issues
@ -79,24 +81,25 @@ in
# clang consume much less RAM than GCC # clang consume much less RAM than GCC
clangStdenv.mkDerivation rec { clangStdenv.mkDerivation rec {
pname = "openscad-unstable"; pname = "openscad-unstable";
version = "2024-02-18"; version = "2024-03-10";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "openscad"; owner = "openscad";
repo = "openscad"; repo = "openscad";
rev = "f5688998760d6b85d7b280300388448c162edc42"; rev = "db167b1df31fbd8a2101cf3a13dac148b0c2165d";
hash = "sha256-rQnih7Am7NvlrTwIGAN4QbZCcziFm6YOOT27wmjcY8A="; hash = "sha256-i2ZGYsNfMLDi3wRd/lohs9BuO2KuQ/7kJIXGtV65OQU=";
fetchSubmodules = true; fetchSubmodules = true;
}; };
patches = [ ./test.diff ];
nativeBuildInputs = [ nativeBuildInputs = [
pkg-config (python3.withPackages (ps: with ps; [ numpy pillow ]))
cmake
ninja
bison bison
cmake
flex flex
python3
libsForQt5.qt5.wrapQtAppsHook libsForQt5.qt5.wrapQtAppsHook
llvmPackages.bintools llvmPackages.bintools
wrapGAppsHook wrapGAppsHook
ninja
pkg-config
]; ];
buildInputs = with libsForQt5; with qt5; [ buildInputs = with libsForQt5; with qt5; [
# manifold dependencies # manifold dependencies
@ -112,6 +115,7 @@ clangStdenv.mkDerivation rec {
eigen eigen
fontconfig fontconfig
freetype freetype
ghostscript
glib glib
gmp gmp
harfbuzz harfbuzz
@ -124,7 +128,15 @@ clangStdenv.mkDerivation rec {
qtbase qtbase
qtmultimedia qtmultimedia
] ]
++ lib.optionals clangStdenv.isLinux [ libICE libSM libGLU libGL wayland wayland-protocols qtwayland ] ++ lib.optionals clangStdenv.isLinux [
xorg.libXdmcp
libICE
libSM
wayland
wayland-protocols
qtwayland
libGLU
]
++ lib.optional clangStdenv.isDarwin qtmacextras ++ lib.optional clangStdenv.isDarwin qtmacextras
; ;
cmakeFlags = [ cmakeFlags = [
@ -133,11 +145,18 @@ clangStdenv.mkDerivation rec {
"-DUSE_BUILTIN_OPENCSG=ON" # bundled latest opencsg "-DUSE_BUILTIN_OPENCSG=ON" # bundled latest opencsg
"-DOPENSCAD_VERSION=\"${builtins.replaceStrings ["-"] ["."] version}\"" "-DOPENSCAD_VERSION=\"${builtins.replaceStrings ["-"] ["."] version}\""
"-DCMAKE_UNITY_BUILD=ON" # faster build "-DCMAKE_UNITY_BUILD=ON" # faster build
"-DENABLE_TESTS=OFF" # tests do not work for now
# IPO # IPO
"-DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld" "-DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld"
"-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON" "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON"
]; ];
doCheck = true;
checkPhase = ''
# for running mesa llvmpipe
export __EGL_VENDOR_LIBRARY_FILENAMES=${mesa.drivers}/share/glvnd/egl_vendor.d/50_mesa.json
export LIBGL_DRIVERS_PATH=${mesa.drivers}/lib:${mesa.drivers}/lib/dri
# some fontconfig issues cause pdf output to have wrong font
ctest -j$NIX_BUILD_CORES -E pdfexporttest.\*
'';
meta = with lib; { meta = with lib; {
description = "3D parametric model compiler (unstable)"; description = "3D parametric model compiler (unstable)";
longDescription = '' longDescription = ''

View file

@ -0,0 +1,42 @@
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 5c1b40af4..917451dee 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -59,13 +59,14 @@ if(USE_IMAGE_COMPARE_PY)
# Since msys2 on Windows prefers bin/ over Scripts, we need to look for the actual folder to determine
# how to utilize the venv
- find_path(VENV_BIN_PATH activate PATHS "${VENV_DIR}/bin" "${VENV_DIR}/Scripts" NO_DEFAULT_PATH NO_CACHE)
- if(WIN32)
- set(IMAGE_COMPARE_EXE "${VENV_BIN_PATH}/python.exe")
- else()
- set(IMAGE_COMPARE_EXE "${VENV_BIN_PATH}/python")
- endif()
- if(EXISTS "${IMAGE_COMPARE_EXE}")
+ # find_path(VENV_BIN_PATH activate PATHS "${VENV_DIR}/bin" "${VENV_DIR}/Scripts" NO_DEFAULT_PATH NO_CACHE)
+ # if(WIN32)
+ # set(IMAGE_COMPARE_EXE "${VENV_BIN_PATH}/python.exe")
+ # else()
+ # set(IMAGE_COMPARE_EXE "${VENV_BIN_PATH}/python")
+ # endif()
+ set(IMAGE_COMPARE_EXE "python3")
+ # if(EXISTS "${IMAGE_COMPARE_EXE}")
message(STATUS "venv found, testing libraries")
execute_process(
COMMAND "${IMAGE_COMPARE_EXE}" "${CCSD}/image_compare.py" "--status"
@@ -77,10 +78,10 @@ if(USE_IMAGE_COMPARE_PY)
message(STATUS "venv libraries complete")
set(BUILD_VENV FALSE)
endif()
- else()
- message(STATUS "venv not found")
- set(BUILD_VENV TRUE)
- endif()
+ # else()
+ # message(STATUS "venv not found")
+ # set(BUILD_VENV TRUE)
+ # endif()
if(BUILD_VENV)
message(STATUS "Setting up testing venv for image comparison")
execute_process(

View file

@ -0,0 +1,26 @@
{ lib
, rustPlatform
, fetchFromGitHub
}:
rustPlatform.buildRustPackage rec {
pname = "ren-find";
version = "0-unstable-2024-01-11";
src = fetchFromGitHub {
owner = "robenkleene";
repo = "ren-find";
rev = "50c40172e354caffee48932266edd7c7a76a20f";
hash = "sha256-zVIt6Xp+Mvym6gySvHIZJt1QgzKVP/wbTGTubWk6kzI=";
};
cargoHash = "sha256-pUy8850v4m9P5OuL15qxmDDQYYyae9HFXRbg3b4f3Lw=";
meta = with lib; {
description = "A command-line utility that takes find-formatted lines and batch renames them.";
homepage = "https://github.com/robenkleene/ren-find";
license = licenses.mit;
maintainers = with maintainers; [ philiptaron ];
mainProgram = "ren";
};
}

View file

@ -0,0 +1,26 @@
{ lib
, rustPlatform
, fetchFromGitHub
}:
rustPlatform.buildRustPackage rec {
pname = "rep-grep";
version = "0-unstable-2024-02-06";
src = fetchFromGitHub {
owner = "robenkleene";
repo = "rep-grep";
rev = "10510d47e392cb9d30a861c69f702fd194b3fa88";
hash = "sha256-/dH+mNtNHaYFndVhoqmz4Sc3HeemoQt1HGD98mb9Qhw=";
};
cargoHash = "sha256-ch+RMLc+xogL0gkrnw+n+bmUVIcixdPTaNPHPuJ0/EI=";
meta = with lib; {
description = "A command-line utility that takes grep-formatted lines and performs a find-and-replace on them.";
homepage = "https://github.com/robenkleene/rep-grep";
license = licenses.mit;
maintainers = with maintainers; [ philiptaron ];
mainProgram = "rep";
};
}

View file

@ -0,0 +1,37 @@
{ lib, stdenv, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "reproxy";
version = "1.1.1";
src = fetchFromGitHub {
owner = "umputun";
repo = "reproxy";
rev = "v${version}";
hash = "sha256-/ydpqi7O4z41YxYb/RngPWk/79h3MIxAopzqIDMgw1g=";
};
vendorHash = null;
ldflags = [
"-s" "-w" "-X main.revision=${version}"
];
checkFlags = [
# Requires network access or fluky
"-skip=^Test(_MainWithPlugin|_MainWithSSL|_Main|Http_matchHandler|Http_withBasicAuth|File_Events|File_Events_BusyListener)$"
];
postInstall = ''
mv $out/bin/{app,reproxy}
'';
meta = with lib; {
description = "Simple edge server / reverse proxy";
homepage = "https://reproxy.io/";
changelog = "https://github.com/umputun/reproxy/releases/tag/${src.rev}";
license = licenses.mit;
maintainers = with maintainers; [ sikmir ];
mainProgram = "reproxy";
};
}

View file

@ -39,7 +39,7 @@
sharedLibraryExt = rustc.stdenv.hostPlatform.extensions.sharedLibrary; sharedLibraryExt = rustc.stdenv.hostPlatform.extensions.sharedLibrary;
in flutter316.buildFlutterApplication { in flutter316.buildFlutterApplication rec {
pname = "rustdesk"; pname = "rustdesk";
version = "1.2.3-unstable-2024-02-11"; version = "1.2.3-unstable-2024-02-11";
src = fetchFromGitHub { src = fetchFromGitHub {
@ -52,7 +52,7 @@ in flutter316.buildFlutterApplication {
strictDeps = true; strictDeps = true;
# Configure the Flutter/Dart build # Configure the Flutter/Dart build
sourceRoot = "source/flutter"; sourceRoot = "${src.name}/flutter";
# curl https://raw.githubusercontent.com/rustdesk/rustdesk/16db977fd81e14af62ec5ac7760a7661a5c24be8/flutter/pubspec.lock | yq # curl https://raw.githubusercontent.com/rustdesk/rustdesk/16db977fd81e14af62ec5ac7760a7661a5c24be8/flutter/pubspec.lock | yq
pubspecLock = lib.importJSON ./pubspec.lock.json; pubspecLock = lib.importJSON ./pubspec.lock.json;
gitHashes = { gitHashes = {

View file

@ -5,13 +5,13 @@
}: }:
buildGoModule rec { buildGoModule rec {
pname = "sesh"; pname = "sesh";
version = "0.12.0"; version = "0.15.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "joshmedeski"; owner = "joshmedeski";
repo = "sesh"; repo = "sesh";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-m/EcWh4wfna9PB/NN+MCRUsz5Er0OZ70AAumlKdrm/s="; hash = "sha256-vV1b0YhDBt/dJJCrxvVV/FIuOIleTg4mI496n4/Y/Hk=";
}; };
vendorHash = "sha256-zt1/gE4bVj+3yr9n0kT2FMYMEmiooy3k1lQ77rN6sTk="; vendorHash = "sha256-zt1/gE4bVj+3yr9n0kT2FMYMEmiooy3k1lQ77rN6sTk=";

View file

@ -8,16 +8,16 @@
php.buildComposerProject (finalAttrs: { php.buildComposerProject (finalAttrs: {
pname = "snipe-it"; pname = "snipe-it";
version = "6.2.2"; version = "6.3.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "snipe"; owner = "snipe";
repo = "snipe-it"; repo = "snipe-it";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-EU+teGxo7YZkD7kNXk9jRyARpzWz5OMRmaWqQ6eMKYY="; hash = "sha256-ePE55mK8woopNuRXox51I0sJGBmjF6XDfjE+k+ncoJ0=";
}; };
vendorHash = "sha256-JcBcrETbjGJFlG1dH/XXqmb9MlKr0ICdnEx7/61Z5io="; vendorHash = "sha256-wO+hKttiI7T7C+4oSl8G0I4pQEfZpXjYspUhoaaLrAQ=";
postInstall = '' postInstall = ''
snipe_it_out="$out/share/php/snipe-it" snipe_it_out="$out/share/php/snipe-it"

View file

@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
pname = "snippetexpanderx"; pname = "snippetexpanderx";
sourceRoot = "source/cmd/snippetexpanderx"; sourceRoot = "${src.name}/cmd/snippetexpanderx";
nativeBuildInputs = [ nativeBuildInputs = [
pkg-config pkg-config

View file

@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec {
hash = "sha256-6758ej7bTvwZPWifl239rQMazM8uw+Y4+3EbjE8XsTg="; hash = "sha256-6758ej7bTvwZPWifl239rQMazM8uw+Y4+3EbjE8XsTg=";
}; };
sourceRoot = "source/server"; sourceRoot = "${src.name}/server";
cargoLock = { cargoLock = {
lockFile = ./Cargo.lock; lockFile = ./Cargo.lock;

View file

@ -14,7 +14,7 @@ buildNpmPackage rec {
hash = "sha256-DPGigs6DifTRa7VQVHgizZ3BUy3FPX3YhZi++yoBFBA="; hash = "sha256-DPGigs6DifTRa7VQVHgizZ3BUy3FPX3YhZi++yoBFBA=";
}; };
sourceRoot = "source/tools/syn2mas"; sourceRoot = "${src.name}/tools/syn2mas";
npmDepsHash = "sha256-HvBFuRyP1APg5V+yhvlODAJ02MEkdpuLfNjWB/UT2vg="; npmDepsHash = "sha256-HvBFuRyP1APg5V+yhvlODAJ02MEkdpuLfNjWB/UT2vg=";

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "tippecanoe"; pname = "tippecanoe";
version = "2.49.0"; version = "2.51.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "felt"; owner = "felt";
repo = "tippecanoe"; repo = "tippecanoe";
rev = finalAttrs.version; rev = finalAttrs.version;
hash = "sha256-Wu6TSld/mxCb4CFXf2oIZpDvX/j3Ujm7Vli4kp04u7c="; hash = "sha256-5Cu+0Tn+ExxJTO5AjeTnIJtnpBNKR7nxudD77X696H0=";
}; };
buildInputs = [ sqlite zlib ]; buildInputs = [ sqlite zlib ];

View file

@ -16,7 +16,7 @@ buildDotnetModule rec {
hash = "sha256-41zlzrQ+YGY2wEvq4Su/lp6lOmGW4u0F37ub2a3z+7o="; hash = "sha256-41zlzrQ+YGY2wEvq4Su/lp6lOmGW4u0F37ub2a3z+7o=";
}; };
sourceRoot = "source/src"; sourceRoot = "${src.name}/src";
projectFile = "TorrentStream.sln"; projectFile = "TorrentStream.sln";
nugetDeps = ./deps.nix; nugetDeps = ./deps.nix;

View file

@ -915,6 +915,7 @@ version = "0.0.1"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"cache-key", "cache-key",
"chrono",
"data-encoding", "data-encoding",
"distribution-filename", "distribution-filename",
"fs-err", "fs-err",
@ -972,6 +973,15 @@ dependencies = [
"cfg-if", "cfg-if",
] ]
[[package]]
name = "encoding_rs_io"
version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1cc3c5651fb62ab8aa3103998dade57efdd028544bd300516baa31840c252a83"
dependencies = [
"encoding_rs",
]
[[package]] [[package]]
name = "equivalent" name = "equivalent"
version = "1.0.1" version = "1.0.1"
@ -2882,16 +2892,6 @@ dependencies = [
"thiserror", "thiserror",
] ]
[[package]]
name = "reqwest-netrc"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eca0c58cd4b2978f9697dea94302e772399f559cd175356eb631cb6daaa0b6db"
dependencies = [
"reqwest-middleware",
"rust-netrc",
]
[[package]] [[package]]
name = "reqwest-retry" name = "reqwest-retry"
version = "0.3.0" version = "0.3.0"
@ -4179,13 +4179,14 @@ checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a"
[[package]] [[package]]
name = "uv" name = "uv"
version = "0.1.16" version = "0.1.17"
dependencies = [ dependencies = [
"anstream", "anstream",
"anyhow", "anyhow",
"assert_cmd", "assert_cmd",
"assert_fs", "assert_fs",
"base64 0.21.7", "base64 0.21.7",
"byteorder",
"chrono", "chrono",
"clap", "clap",
"clap_complete_command", "clap_complete_command",
@ -4282,7 +4283,6 @@ dependencies = [
"tokio", "tokio",
"toml", "toml",
"tracing", "tracing",
"uv-extract",
"uv-fs", "uv-fs",
"uv-interpreter", "uv-interpreter",
"uv-traits", "uv-traits",
@ -4318,6 +4318,7 @@ dependencies = [
"async-trait", "async-trait",
"async_http_range_reader", "async_http_range_reader",
"async_zip", "async_zip",
"base64 0.21.7",
"cache-key", "cache-key",
"chrono", "chrono",
"distribution-filename", "distribution-filename",
@ -4335,10 +4336,10 @@ dependencies = [
"pypi-types", "pypi-types",
"reqwest", "reqwest",
"reqwest-middleware", "reqwest-middleware",
"reqwest-netrc",
"reqwest-retry", "reqwest-retry",
"rkyv", "rkyv",
"rmp-serde", "rmp-serde",
"rust-netrc",
"rustc-hash", "rustc-hash",
"serde", "serde",
"serde_json", "serde_json",
@ -4500,10 +4501,12 @@ name = "uv-fs"
version = "0.0.1" version = "0.0.1"
dependencies = [ dependencies = [
"dunce", "dunce",
"encoding_rs_io",
"fs-err", "fs-err",
"fs2", "fs2",
"junction", "junction",
"tempfile", "tempfile",
"tokio",
"tracing", "tracing",
"urlencoding", "urlencoding",
"uv-warnings", "uv-warnings",
@ -4688,7 +4691,7 @@ dependencies = [
[[package]] [[package]]
name = "uv-version" name = "uv-version"
version = "0.1.16" version = "0.1.17"
[[package]] [[package]]
name = "uv-virtualenv" name = "uv-virtualenv"

View file

@ -10,13 +10,13 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "uv"; pname = "uv";
version = "0.1.16"; version = "0.1.17";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "astral-sh"; owner = "astral-sh";
repo = "uv"; repo = "uv";
rev = version; rev = version;
hash = "sha256-CvaYXtgd8eqzPNoXukjPwaoT/QOlUVKYNzD8Db6on9Q="; hash = "sha256-nXH/9/c2UeG7LOJo0ZnozdI9df5cmVwICvgi0kRjgMU=";
}; };
cargoLock = { cargoLock = {

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