forked from mirrors/nixpkgs
Merge branch 'master' into staging-next
; Conflicts: ; pkgs/development/lua-modules/generated-packages.nix ; pkgs/development/lua-modules/overrides.nix
This commit is contained in:
commit
80020c7db4
28
flake.nix
28
flake.nix
|
@ -21,16 +21,38 @@
|
||||||
|
|
||||||
nixosSystem = args:
|
nixosSystem = args:
|
||||||
import ./nixos/lib/eval-config.nix (
|
import ./nixos/lib/eval-config.nix (
|
||||||
args // { inherit (self) lib; } // lib.optionalAttrs (! args?system) {
|
{
|
||||||
|
lib = final;
|
||||||
# Allow system to be set modularly in nixpkgs.system.
|
# Allow system to be set modularly in nixpkgs.system.
|
||||||
# We set it to null, to remove the "legacy" entrypoint's
|
# We set it to null, to remove the "legacy" entrypoint's
|
||||||
# non-hermetic default.
|
# non-hermetic default.
|
||||||
system = null;
|
system = null;
|
||||||
}
|
} // args
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
checks.x86_64-linux.tarball = jobs.tarball;
|
checks.x86_64-linux = {
|
||||||
|
tarball = jobs.tarball;
|
||||||
|
# Test that ensures that the nixosSystem function can accept a lib argument
|
||||||
|
# Note: prefer not to extend or modify `lib`, especially if you want to share reusable modules
|
||||||
|
# alternatives include: `import` a file, or put a custom library in an option or in `_module.args.<libname>`
|
||||||
|
nixosSystemAcceptsLib = (self.lib.nixosSystem {
|
||||||
|
lib = self.lib.extend (final: prev: {
|
||||||
|
ifThisFunctionIsMissingTheTestFails = final.id;
|
||||||
|
});
|
||||||
|
modules = [
|
||||||
|
./nixos/modules/profiles/minimal.nix
|
||||||
|
({ lib, ... }: lib.ifThisFunctionIsMissingTheTestFails {
|
||||||
|
# Define a minimal config without eval warnings
|
||||||
|
nixpkgs.hostPlatform = "x86_64-linux";
|
||||||
|
boot.loader.grub.enable = false;
|
||||||
|
fileSystems."/".device = "nodev";
|
||||||
|
# See https://search.nixos.org/options?show=system.stateVersion&query=stateversion
|
||||||
|
system.stateVersion = lib.versions.majorMinor lib.version; # DON'T do this in real configs!
|
||||||
|
})
|
||||||
|
];
|
||||||
|
}).config.system.build.toplevel;
|
||||||
|
};
|
||||||
|
|
||||||
htmlDocs = {
|
htmlDocs = {
|
||||||
nixpkgsManual = jobs.manual;
|
nixpkgsManual = jobs.manual;
|
||||||
|
|
|
@ -1959,6 +1959,18 @@ runTests {
|
||||||
expr = (with types; int).description;
|
expr = (with types; int).description;
|
||||||
expected = "signed integer";
|
expected = "signed integer";
|
||||||
};
|
};
|
||||||
|
testTypeDescriptionIntsPositive = {
|
||||||
|
expr = (with types; ints.positive).description;
|
||||||
|
expected = "positive integer, meaning >0";
|
||||||
|
};
|
||||||
|
testTypeDescriptionIntsPositiveOrEnumAuto = {
|
||||||
|
expr = (with types; either ints.positive (enum ["auto"])).description;
|
||||||
|
expected = ''positive integer, meaning >0, or value "auto" (singular enum)'';
|
||||||
|
};
|
||||||
|
testTypeDescriptionListOfPositive = {
|
||||||
|
expr = (with types; listOf ints.positive).description;
|
||||||
|
expected = "list of (positive integer, meaning >0)";
|
||||||
|
};
|
||||||
testTypeDescriptionListOfInt = {
|
testTypeDescriptionListOfInt = {
|
||||||
expr = (with types; listOf int).description;
|
expr = (with types; listOf int).description;
|
||||||
expected = "list of signed integer";
|
expected = "list of signed integer";
|
||||||
|
|
|
@ -113,9 +113,14 @@ rec {
|
||||||
, # Description of the type, defined recursively by embedding the wrapped type if any.
|
, # Description of the type, defined recursively by embedding the wrapped type if any.
|
||||||
description ? null
|
description ? null
|
||||||
# A hint for whether or not this description needs parentheses. Possible values:
|
# A hint for whether or not this description needs parentheses. Possible values:
|
||||||
# - "noun": a simple noun phrase such as "positive integer"
|
# - "noun": a noun phrase
|
||||||
# - "conjunction": a phrase with a potentially ambiguous "or" connective.
|
# Example description: "positive integer",
|
||||||
|
# - "conjunction": a phrase with a potentially ambiguous "or" connective
|
||||||
|
# Example description: "int or string"
|
||||||
# - "composite": a phrase with an "of" connective
|
# - "composite": a phrase with an "of" connective
|
||||||
|
# Example description: "list of string"
|
||||||
|
# - "nonRestrictiveClause": a noun followed by a comma and a clause
|
||||||
|
# Example description: "positive integer, meaning >0"
|
||||||
# See the `optionDescriptionPhrase` function.
|
# See the `optionDescriptionPhrase` function.
|
||||||
, descriptionClass ? null
|
, descriptionClass ? null
|
||||||
, # DO NOT USE WITHOUT KNOWING WHAT YOU ARE DOING!
|
, # DO NOT USE WITHOUT KNOWING WHAT YOU ARE DOING!
|
||||||
|
@ -338,10 +343,12 @@ rec {
|
||||||
unsigned = addCheck types.int (x: x >= 0) // {
|
unsigned = addCheck types.int (x: x >= 0) // {
|
||||||
name = "unsignedInt";
|
name = "unsignedInt";
|
||||||
description = "unsigned integer, meaning >=0";
|
description = "unsigned integer, meaning >=0";
|
||||||
|
descriptionClass = "nonRestrictiveClause";
|
||||||
};
|
};
|
||||||
positive = addCheck types.int (x: x > 0) // {
|
positive = addCheck types.int (x: x > 0) // {
|
||||||
name = "positiveInt";
|
name = "positiveInt";
|
||||||
description = "positive integer, meaning >0";
|
description = "positive integer, meaning >0";
|
||||||
|
descriptionClass = "nonRestrictiveClause";
|
||||||
};
|
};
|
||||||
u8 = unsign 8 256;
|
u8 = unsign 8 256;
|
||||||
u16 = unsign 16 65536;
|
u16 = unsign 16 65536;
|
||||||
|
@ -383,10 +390,12 @@ rec {
|
||||||
nonnegative = addCheck number (x: x >= 0) // {
|
nonnegative = addCheck number (x: x >= 0) // {
|
||||||
name = "numberNonnegative";
|
name = "numberNonnegative";
|
||||||
description = "nonnegative integer or floating point number, meaning >=0";
|
description = "nonnegative integer or floating point number, meaning >=0";
|
||||||
|
descriptionClass = "nonRestrictiveClause";
|
||||||
};
|
};
|
||||||
positive = addCheck number (x: x > 0) // {
|
positive = addCheck number (x: x > 0) // {
|
||||||
name = "numberPositive";
|
name = "numberPositive";
|
||||||
description = "positive integer or floating point number, meaning >0";
|
description = "positive integer or floating point number, meaning >0";
|
||||||
|
descriptionClass = "nonRestrictiveClause";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -463,6 +472,7 @@ rec {
|
||||||
passwdEntry = entryType: addCheck entryType (str: !(hasInfix ":" str || hasInfix "\n" str)) // {
|
passwdEntry = entryType: addCheck entryType (str: !(hasInfix ":" str || hasInfix "\n" str)) // {
|
||||||
name = "passwdEntry ${entryType.name}";
|
name = "passwdEntry ${entryType.name}";
|
||||||
description = "${optionDescriptionPhrase (class: class == "noun") entryType}, not containing newlines or colons";
|
description = "${optionDescriptionPhrase (class: class == "noun") entryType}, not containing newlines or colons";
|
||||||
|
descriptionClass = "nonRestrictiveClause";
|
||||||
};
|
};
|
||||||
|
|
||||||
attrs = mkOptionType {
|
attrs = mkOptionType {
|
||||||
|
@ -870,7 +880,13 @@ rec {
|
||||||
# Either value of type `t1` or `t2`.
|
# Either value of type `t1` or `t2`.
|
||||||
either = t1: t2: mkOptionType rec {
|
either = t1: t2: mkOptionType rec {
|
||||||
name = "either";
|
name = "either";
|
||||||
description = "${optionDescriptionPhrase (class: class == "noun" || class == "conjunction") t1} or ${optionDescriptionPhrase (class: class == "noun" || class == "conjunction" || class == "composite") t2}";
|
description =
|
||||||
|
if t1.descriptionClass or null == "nonRestrictiveClause"
|
||||||
|
then
|
||||||
|
# Plain, but add comma
|
||||||
|
"${t1.description}, or ${optionDescriptionPhrase (class: class == "noun" || class == "conjunction") t2}"
|
||||||
|
else
|
||||||
|
"${optionDescriptionPhrase (class: class == "noun" || class == "conjunction") t1} or ${optionDescriptionPhrase (class: class == "noun" || class == "conjunction" || class == "composite") t2}";
|
||||||
descriptionClass = "conjunction";
|
descriptionClass = "conjunction";
|
||||||
check = x: t1.check x || t2.check x;
|
check = x: t1.check x || t2.check x;
|
||||||
merge = loc: defs:
|
merge = loc: defs:
|
||||||
|
|
|
@ -19021,7 +19021,7 @@
|
||||||
};
|
};
|
||||||
uakci = {
|
uakci = {
|
||||||
name = "uakci";
|
name = "uakci";
|
||||||
email = "uakci@uakci.pl";
|
email = "git@uakci.space";
|
||||||
github = "uakci";
|
github = "uakci";
|
||||||
githubId = 6961268;
|
githubId = 6961268;
|
||||||
};
|
};
|
||||||
|
|
|
@ -30,6 +30,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
|
|
||||||
- [rspamd-trainer](https://gitlab.com/onlime/rspamd-trainer), script triggered by a helper which reads mails from a specific mail inbox and feeds them into rspamd for spam/ham training.
|
- [rspamd-trainer](https://gitlab.com/onlime/rspamd-trainer), script triggered by a helper which reads mails from a specific mail inbox and feeds them into rspamd for spam/ham training.
|
||||||
|
|
||||||
|
- [ollama](https://ollama.ai), server for running large language models locally.
|
||||||
|
|
||||||
- [Anki Sync Server](https://docs.ankiweb.net/sync-server.html), the official sync server built into recent versions of Anki. Available as [services.anki-sync-server](#opt-services.anki-sync-server.enable).
|
- [Anki Sync Server](https://docs.ankiweb.net/sync-server.html), the official sync server built into recent versions of Anki. Available as [services.anki-sync-server](#opt-services.anki-sync-server.enable).
|
||||||
The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been marked deprecated and will be dropped after 24.05 due to lack of maintenance of the anki-sync-server softwares.
|
The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been marked deprecated and will be dropped after 24.05 due to lack of maintenance of the anki-sync-server softwares.
|
||||||
|
|
||||||
|
@ -76,6 +78,17 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
|
||||||
|
|
||||||
`CONFIG_FILE_NAME` includes `bpf_pinning`, `ematch_map`, `group`, `nl_protos`, `rt_dsfield`, `rt_protos`, `rt_realms`, `rt_scopes`, and `rt_tables`.
|
`CONFIG_FILE_NAME` includes `bpf_pinning`, `ematch_map`, `group`, `nl_protos`, `rt_dsfield`, `rt_protos`, `rt_realms`, `rt_scopes`, and `rt_tables`.
|
||||||
|
|
||||||
|
- The `systemd.oomd` module behavior is changed as:
|
||||||
|
|
||||||
|
- Raise ManagedOOMMemoryPressureLimit from 50% to 80%. This should make systemd-oomd kill things less often, and fix issues like [this](https://pagure.io/fedora-workstation/issue/358).
|
||||||
|
Reference: [commit](https://src.fedoraproject.org/rpms/systemd/c/806c95e1c70af18f81d499b24cd7acfa4c36ffd6?branch=806c95e1c70af18f81d499b24cd7acfa4c36ffd6)
|
||||||
|
|
||||||
|
- Remove swap policy. This helps prevent killing processes when user's swap is small.
|
||||||
|
|
||||||
|
- Expand the memory pressure policy to system.slice, user-.slice, and all user owned slices. Reference: [commit](https://src.fedoraproject.org/rpms/systemd/c/7665e1796f915dedbf8e014f0a78f4f576d609bb)
|
||||||
|
|
||||||
|
- `systemd.oomd.enableUserServices` is renamed to `systemd.oomd.enableUserSlices`.
|
||||||
|
|
||||||
## Other Notable Changes {#sec-release-24.05-notable-changes}
|
## Other Notable Changes {#sec-release-24.05-notable-changes}
|
||||||
|
|
||||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||||
|
@ -91,8 +104,23 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
|
||||||
The `nimPackages` and `nim2Packages` sets have been removed.
|
The `nimPackages` and `nim2Packages` sets have been removed.
|
||||||
See https://nixos.org/manual/nixpkgs/unstable#nim for more information.
|
See https://nixos.org/manual/nixpkgs/unstable#nim for more information.
|
||||||
|
|
||||||
|
- [Portunus](https://github.com/majewsky/portunus) has been updated to 2.0.
|
||||||
|
This version of Portunus supports strong password hashes, but the legacy hash SHA-256 is also still supported to ensure a smooth migration of existing user accounts.
|
||||||
|
After upgrading, follow the instructions on the [upstream release notes](https://github.com/majewsky/portunus/releases/tag/v2.0.0) to upgrade all user accounts to strong password hashes.
|
||||||
|
Support for weak password hashes will be removed in NixOS 24.11.
|
||||||
|
|
||||||
- `libass` now uses the native CoreText backend on Darwin, which may fix subtitle rendering issues with `mpv`, `ffmpeg`, etc.
|
- `libass` now uses the native CoreText backend on Darwin, which may fix subtitle rendering issues with `mpv`, `ffmpeg`, etc.
|
||||||
|
|
||||||
|
- The following options of the Nextcloud module were moved into [`services.nextcloud.extraOptions`](#opt-services.nextcloud.extraOptions) and renamed to match the name from Nextcloud's `config.php`:
|
||||||
|
- `logLevel` -> [`loglevel`](#opt-services.nextcloud.extraOptions.loglevel),
|
||||||
|
- `logType` -> [`log_type`](#opt-services.nextcloud.extraOptions.log_type),
|
||||||
|
- `defaultPhoneRegion` -> [`default_phone_region`](#opt-services.nextcloud.extraOptions.default_phone_region),
|
||||||
|
- `overwriteProtocol` -> [`overwriteprotocol`](#opt-services.nextcloud.extraOptions.overwriteprotocol),
|
||||||
|
- `skeletonDirectory` -> [`skeletondirectory`](#opt-services.nextcloud.extraOptions.skeletondirectory),
|
||||||
|
- `globalProfiles` -> [`profile.enabled`](#opt-services.nextcloud.extraOptions._profile.enabled_),
|
||||||
|
- `extraTrustedDomains` -> [`trusted_domains`](#opt-services.nextcloud.extraOptions.trusted_domains) and
|
||||||
|
- `trustedProxies` -> [`trusted_proxies`](#opt-services.nextcloud.extraOptions.trusted_proxies).
|
||||||
|
|
||||||
- The Yama LSM is now enabled by default in the kernel, which prevents ptracing
|
- The Yama LSM is now enabled by default in the kernel, which prevents ptracing
|
||||||
non-child processes. This means you will not be able to attach gdb to an
|
non-child processes. This means you will not be able to attach gdb to an
|
||||||
existing process, but will need to start that process from gdb (so it is a
|
existing process, but will need to start that process from gdb (so it is a
|
||||||
|
|
|
@ -34,6 +34,7 @@ with lib;
|
||||||
ffmpeg_5 = super.ffmpeg_5.override { ffmpegVariant = "headless"; };
|
ffmpeg_5 = super.ffmpeg_5.override { ffmpegVariant = "headless"; };
|
||||||
# dep of graphviz, libXpm is optional for Xpm support
|
# dep of graphviz, libXpm is optional for Xpm support
|
||||||
gd = super.gd.override { withXorg = false; };
|
gd = super.gd.override { withXorg = false; };
|
||||||
|
ghostscript = super.ghostscript.override { cupsSupport = false; x11Support = false; };
|
||||||
gobject-introspection = super.gobject-introspection.override { x11Support = false; };
|
gobject-introspection = super.gobject-introspection.override { x11Support = false; };
|
||||||
gpsd = super.gpsd.override { guiSupport = false; };
|
gpsd = super.gpsd.override { guiSupport = false; };
|
||||||
graphviz = super.graphviz-nox;
|
graphviz = super.graphviz-nox;
|
||||||
|
|
|
@ -723,6 +723,7 @@
|
||||||
./services/misc/nzbget.nix
|
./services/misc/nzbget.nix
|
||||||
./services/misc/nzbhydra2.nix
|
./services/misc/nzbhydra2.nix
|
||||||
./services/misc/octoprint.nix
|
./services/misc/octoprint.nix
|
||||||
|
./services/misc/ollama.nix
|
||||||
./services/misc/ombi.nix
|
./services/misc/ombi.nix
|
||||||
./services/misc/osrm.nix
|
./services/misc/osrm.nix
|
||||||
./services/misc/owncast.nix
|
./services/misc/owncast.nix
|
||||||
|
|
|
@ -78,7 +78,13 @@ let
|
||||||
mkName = name: "kanata-${name}";
|
mkName = name: "kanata-${name}";
|
||||||
|
|
||||||
mkDevices = devices:
|
mkDevices = devices:
|
||||||
optionalString ((length devices) > 0) "linux-dev ${concatStringsSep ":" devices}";
|
let
|
||||||
|
devicesString = pipe devices [
|
||||||
|
(map (device: "\"" + device + "\""))
|
||||||
|
(concatStringsSep " ")
|
||||||
|
];
|
||||||
|
in
|
||||||
|
optionalString ((length devices) > 0) "linux-dev (${devicesString})";
|
||||||
|
|
||||||
mkConfig = name: keyboard: pkgs.writeText "${mkName name}-config.kdb" ''
|
mkConfig = name: keyboard: pkgs.writeText "${mkName name}-config.kdb" ''
|
||||||
(defcfg
|
(defcfg
|
||||||
|
|
|
@ -1,10 +1,14 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
cfg = config.services.matrix-synapse.sliding-sync;
|
cfg = config.services.matrix-sliding-sync;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.services.matrix-synapse.sliding-sync = {
|
imports = [
|
||||||
|
(lib.mkRenamedOptionModule [ "services" "matrix-synapse" "sliding-sync" ] [ "services" "matrix-sliding-sync" ])
|
||||||
|
];
|
||||||
|
|
||||||
|
options.services.matrix-sliding-sync = {
|
||||||
enable = lib.mkEnableOption (lib.mdDoc "sliding sync");
|
enable = lib.mkEnableOption (lib.mdDoc "sliding sync");
|
||||||
|
|
||||||
package = lib.mkPackageOption pkgs "matrix-sliding-sync" { };
|
package = lib.mkPackageOption pkgs "matrix-sliding-sync" { };
|
||||||
|
@ -83,6 +87,7 @@ in
|
||||||
systemd.services.matrix-sliding-sync = rec {
|
systemd.services.matrix-sliding-sync = rec {
|
||||||
after =
|
after =
|
||||||
lib.optional cfg.createDatabase "postgresql.service"
|
lib.optional cfg.createDatabase "postgresql.service"
|
||||||
|
++ lib.optional config.services.dendrite.enable "dendrite.service"
|
||||||
++ lib.optional config.services.matrix-synapse.enable config.services.matrix-synapse.serviceUnit;
|
++ lib.optional config.services.matrix-synapse.enable config.services.matrix-synapse.serviceUnit;
|
||||||
wants = after;
|
wants = after;
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
|
42
nixos/modules/services/misc/ollama.nix
Normal file
42
nixos/modules/services/misc/ollama.nix
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
{ config, lib, pkgs, ... }: let
|
||||||
|
|
||||||
|
cfg = config.services.ollama;
|
||||||
|
|
||||||
|
in {
|
||||||
|
|
||||||
|
options = {
|
||||||
|
services.ollama = {
|
||||||
|
enable = lib.mkEnableOption (
|
||||||
|
lib.mdDoc "Server for local large language models"
|
||||||
|
);
|
||||||
|
package = lib.mkPackageOption pkgs "ollama" { };
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
|
||||||
|
systemd = {
|
||||||
|
services.ollama = {
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
description = "Server for local large language models";
|
||||||
|
after = [ "network.target" ];
|
||||||
|
environment = {
|
||||||
|
HOME = "%S/ollama";
|
||||||
|
OLLAMA_MODELS = "%S/ollama/models";
|
||||||
|
};
|
||||||
|
serviceConfig = {
|
||||||
|
ExecStart = "${lib.getExe cfg.package} serve";
|
||||||
|
WorkingDirectory = "/var/lib/ollama";
|
||||||
|
StateDirectory = [ "ollama" ];
|
||||||
|
DynamicUser = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = [ cfg.package ];
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
meta.maintainers = with lib.maintainers; [ onny ];
|
||||||
|
|
||||||
|
}
|
|
@ -102,7 +102,9 @@ in
|
||||||
ldap = {
|
ldap = {
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
type = types.package;
|
type = types.package;
|
||||||
# needs openldap built with a libxcrypt that support crypt sha256 until https://github.com/majewsky/portunus/issues/2 is solved
|
# needs openldap built with a libxcrypt that support crypt sha256 until users have had time to migrate to newer hashes
|
||||||
|
# Ref: <https://github.com/majewsky/portunus/issues/2>
|
||||||
|
# TODO: remove in NixOS 24.11 (cf. same note on pkgs/servers/portunus/default.nix)
|
||||||
default = pkgs.openldap.override { libxcrypt = pkgs.libxcrypt-legacy; };
|
default = pkgs.openldap.override { libxcrypt = pkgs.libxcrypt-legacy; };
|
||||||
defaultText = lib.literalExpression "pkgs.openldap.override { libxcrypt = pkgs.libxcrypt-legacy; }";
|
defaultText = lib.literalExpression "pkgs.openldap.override { libxcrypt = pkgs.libxcrypt-legacy; }";
|
||||||
description = lib.mdDoc "The OpenLDAP package to use.";
|
description = lib.mdDoc "The OpenLDAP package to use.";
|
||||||
|
|
|
@ -45,19 +45,25 @@ in
|
||||||
|
|
||||||
systemd.services.munged = {
|
systemd.services.munged = {
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
after = [ "network.target" ];
|
wants = [
|
||||||
|
"network-online.target"
|
||||||
|
"time-sync.target"
|
||||||
|
];
|
||||||
|
after = [
|
||||||
|
"network-online.target"
|
||||||
|
"time-sync.target"
|
||||||
|
];
|
||||||
|
|
||||||
path = [ pkgs.munge pkgs.coreutils ];
|
path = [ pkgs.munge pkgs.coreutils ];
|
||||||
|
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStartPre = "+${pkgs.coreutils}/bin/chmod 0400 ${cfg.password}";
|
ExecStartPre = "+${pkgs.coreutils}/bin/chmod 0400 ${cfg.password}";
|
||||||
ExecStart = "${pkgs.munge}/bin/munged --syslog --key-file ${cfg.password}";
|
ExecStart = "${pkgs.munge}/bin/munged --foreground --key-file ${cfg.password}";
|
||||||
PIDFile = "/run/munge/munged.pid";
|
|
||||||
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
|
|
||||||
User = "munge";
|
User = "munge";
|
||||||
Group = "munge";
|
Group = "munge";
|
||||||
StateDirectory = "munge";
|
StateDirectory = "munge";
|
||||||
StateDirectoryMode = "0711";
|
StateDirectoryMode = "0711";
|
||||||
|
Restart = "on-failure";
|
||||||
RuntimeDirectory = "munge";
|
RuntimeDirectory = "munge";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -23,6 +23,14 @@ in
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
signingKeyFile = mkOption {
|
||||||
|
type = types.nullOr types.path;
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Optional file containing a self-managed signing key to sign uploaded store paths.
|
||||||
|
'';
|
||||||
|
default = null;
|
||||||
|
};
|
||||||
|
|
||||||
compressionLevel = mkOption {
|
compressionLevel = mkOption {
|
||||||
type = types.nullOr types.int;
|
type = types.nullOr types.int;
|
||||||
description = lib.mdDoc "The compression level for ZSTD compression (between 0 and 16)";
|
description = lib.mdDoc "The compression level for ZSTD compression (between 0 and 16)";
|
||||||
|
@ -69,7 +77,8 @@ in
|
||||||
DynamicUser = true;
|
DynamicUser = true;
|
||||||
LoadCredential = [
|
LoadCredential = [
|
||||||
"cachix-token:${toString cfg.cachixTokenFile}"
|
"cachix-token:${toString cfg.cachixTokenFile}"
|
||||||
];
|
]
|
||||||
|
++ lib.optional (cfg.signingKeyFile != null) "signing-key:${toString cfg.signingKeyFile}";
|
||||||
};
|
};
|
||||||
script =
|
script =
|
||||||
let
|
let
|
||||||
|
@ -80,6 +89,7 @@ in
|
||||||
in
|
in
|
||||||
''
|
''
|
||||||
export CACHIX_AUTH_TOKEN="$(<"$CREDENTIALS_DIRECTORY/cachix-token")"
|
export CACHIX_AUTH_TOKEN="$(<"$CREDENTIALS_DIRECTORY/cachix-token")"
|
||||||
|
${lib.optionalString (cfg.signingKeyFile != null) ''export CACHIX_SIGNING_KEY="$(<"$CREDENTIALS_DIRECTORY/signing-key")"''}
|
||||||
${lib.escapeShellArgs command}
|
${lib.escapeShellArgs command}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
|
@ -51,7 +51,7 @@ to ensure that changes can be applied by changing the module's options.
|
||||||
In case the application serves multiple domains (those are checked with
|
In case the application serves multiple domains (those are checked with
|
||||||
[`$_SERVER['HTTP_HOST']`](https://www.php.net/manual/en/reserved.variables.server.php))
|
[`$_SERVER['HTTP_HOST']`](https://www.php.net/manual/en/reserved.variables.server.php))
|
||||||
it's needed to add them to
|
it's needed to add them to
|
||||||
[`services.nextcloud.config.extraTrustedDomains`](#opt-services.nextcloud.config.extraTrustedDomains).
|
[`services.nextcloud.extraOptions.trusted_domains`](#opt-services.nextcloud.extraOptions.trusted_domains).
|
||||||
|
|
||||||
Auto updates for Nextcloud apps can be enabled using
|
Auto updates for Nextcloud apps can be enabled using
|
||||||
[`services.nextcloud.autoUpdateApps`](#opt-services.nextcloud.autoUpdateApps.enable).
|
[`services.nextcloud.autoUpdateApps`](#opt-services.nextcloud.autoUpdateApps.enable).
|
||||||
|
|
|
@ -23,6 +23,43 @@ let
|
||||||
catch_workers_output = "yes";
|
catch_workers_output = "yes";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
appStores = {
|
||||||
|
# default apps bundled with pkgs.nextcloudXX, e.g. files, contacts
|
||||||
|
apps = {
|
||||||
|
enabled = true;
|
||||||
|
writable = false;
|
||||||
|
};
|
||||||
|
# apps installed via cfg.extraApps
|
||||||
|
nix-apps = {
|
||||||
|
enabled = cfg.extraApps != { };
|
||||||
|
linkTarget = pkgs.linkFarm "nix-apps"
|
||||||
|
(mapAttrsToList (name: path: { inherit name path; }) cfg.extraApps);
|
||||||
|
writable = false;
|
||||||
|
};
|
||||||
|
# apps installed via the app store.
|
||||||
|
store-apps = {
|
||||||
|
enabled = cfg.appstoreEnable == null || cfg.appstoreEnable;
|
||||||
|
linkTarget = "${cfg.home}/store-apps";
|
||||||
|
writable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
webroot = pkgs.runCommand
|
||||||
|
"${cfg.package.name or "nextcloud"}-with-apps"
|
||||||
|
{ }
|
||||||
|
''
|
||||||
|
mkdir $out
|
||||||
|
ln -sfv "${cfg.package}"/* "$out"
|
||||||
|
${concatStrings
|
||||||
|
(mapAttrsToList (name: store: optionalString (store.enabled && store?linkTarget) ''
|
||||||
|
if [ -e "$out"/${name} ]; then
|
||||||
|
echo "Didn't expect ${name} already in $out!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
ln -sfTv ${store.linkTarget} "$out"/${name}
|
||||||
|
'') appStores)}
|
||||||
|
'';
|
||||||
|
|
||||||
inherit (cfg) datadir;
|
inherit (cfg) datadir;
|
||||||
|
|
||||||
phpPackage = cfg.phpPackage.buildEnv {
|
phpPackage = cfg.phpPackage.buildEnv {
|
||||||
|
@ -45,7 +82,7 @@ let
|
||||||
|
|
||||||
occ = pkgs.writeScriptBin "nextcloud-occ" ''
|
occ = pkgs.writeScriptBin "nextcloud-occ" ''
|
||||||
#! ${pkgs.runtimeShell}
|
#! ${pkgs.runtimeShell}
|
||||||
cd ${cfg.package}
|
cd ${webroot}
|
||||||
sudo=exec
|
sudo=exec
|
||||||
if [[ "$USER" != nextcloud ]]; then
|
if [[ "$USER" != nextcloud ]]; then
|
||||||
sudo='exec /run/wrappers/bin/sudo -u nextcloud --preserve-env=NEXTCLOUD_CONFIG_DIR --preserve-env=OC_PASS'
|
sudo='exec /run/wrappers/bin/sudo -u nextcloud --preserve-env=NEXTCLOUD_CONFIG_DIR --preserve-env=OC_PASS'
|
||||||
|
@ -94,6 +131,22 @@ in {
|
||||||
(mkRemovedOptionModule [ "services" "nextcloud" "disableImagemagick" ] ''
|
(mkRemovedOptionModule [ "services" "nextcloud" "disableImagemagick" ] ''
|
||||||
Use services.nextcloud.enableImagemagick instead.
|
Use services.nextcloud.enableImagemagick instead.
|
||||||
'')
|
'')
|
||||||
|
(mkRenamedOptionModule
|
||||||
|
[ "services" "nextcloud" "logLevel" ] [ "services" "nextcloud" "extraOptions" "loglevel" ])
|
||||||
|
(mkRenamedOptionModule
|
||||||
|
[ "services" "nextcloud" "logType" ] [ "services" "nextcloud" "extraOptions" "log_type" ])
|
||||||
|
(mkRenamedOptionModule
|
||||||
|
[ "services" "nextcloud" "config" "defaultPhoneRegion" ] [ "services" "nextcloud" "extraOptions" "default_phone_region" ])
|
||||||
|
(mkRenamedOptionModule
|
||||||
|
[ "services" "nextcloud" "config" "overwriteProtocol" ] [ "services" "nextcloud" "extraOptions" "overwriteprotocol" ])
|
||||||
|
(mkRenamedOptionModule
|
||||||
|
[ "services" "nextcloud" "skeletonDirectory" ] [ "services" "nextcloud" "extraOptions" "skeletondirectory" ])
|
||||||
|
(mkRenamedOptionModule
|
||||||
|
[ "services" "nextcloud" "config" "globalProfiles" ] [ "services" "nextcloud" "extraOptions" "profile.enabled" ])
|
||||||
|
(mkRenamedOptionModule
|
||||||
|
[ "services" "nextcloud" "config" "extraTrustedDomains" ] [ "services" "nextcloud" "extraOptions" "trusted_domains" ])
|
||||||
|
(mkRenamedOptionModule
|
||||||
|
[ "services" "nextcloud" "config" "trustedProxies" ] [ "services" "nextcloud" "extraOptions" "trusted_proxies" ])
|
||||||
];
|
];
|
||||||
|
|
||||||
options.services.nextcloud = {
|
options.services.nextcloud = {
|
||||||
|
@ -157,32 +210,6 @@ in {
|
||||||
Set this to false to disable the installation of apps from the global appstore. App management is always enabled regardless of this setting.
|
Set this to false to disable the installation of apps from the global appstore. App management is always enabled regardless of this setting.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
logLevel = mkOption {
|
|
||||||
type = types.ints.between 0 4;
|
|
||||||
default = 2;
|
|
||||||
description = lib.mdDoc ''
|
|
||||||
Log level value between 0 (DEBUG) and 4 (FATAL).
|
|
||||||
|
|
||||||
- 0 (debug): Log all activity.
|
|
||||||
|
|
||||||
- 1 (info): Log activity such as user logins and file activities, plus warnings, errors, and fatal errors.
|
|
||||||
|
|
||||||
- 2 (warn): Log successful operations, as well as warnings of potential problems, errors and fatal errors.
|
|
||||||
|
|
||||||
- 3 (error): Log failed operations and fatal errors.
|
|
||||||
|
|
||||||
- 4 (fatal): Log only fatal errors that cause the server to stop.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
logType = mkOption {
|
|
||||||
type = types.enum [ "errorlog" "file" "syslog" "systemd" ];
|
|
||||||
default = "syslog";
|
|
||||||
description = lib.mdDoc ''
|
|
||||||
Logging backend to use.
|
|
||||||
systemd requires the php-systemd package to be added to services.nextcloud.phpExtraExtensions.
|
|
||||||
See the [nextcloud documentation](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/logging_configuration.html) for details.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
https = mkOption {
|
https = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = false;
|
default = false;
|
||||||
|
@ -206,16 +233,6 @@ in {
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
skeletonDirectory = mkOption {
|
|
||||||
default = "";
|
|
||||||
type = types.str;
|
|
||||||
description = lib.mdDoc ''
|
|
||||||
The directory where the skeleton files are located. These files will be
|
|
||||||
copied to the data directory of new users. Leave empty to not copy any
|
|
||||||
skeleton files.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
webfinger = mkOption {
|
webfinger = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = false;
|
default = false;
|
||||||
|
@ -315,7 +332,6 @@ in {
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
dbtype = mkOption {
|
dbtype = mkOption {
|
||||||
type = types.enum [ "sqlite" "pgsql" "mysql" ];
|
type = types.enum [ "sqlite" "pgsql" "mysql" ];
|
||||||
|
@ -380,53 +396,6 @@ in {
|
||||||
setup of Nextcloud by the systemd service `nextcloud-setup.service`.
|
setup of Nextcloud by the systemd service `nextcloud-setup.service`.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
extraTrustedDomains = mkOption {
|
|
||||||
type = types.listOf types.str;
|
|
||||||
default = [];
|
|
||||||
description = lib.mdDoc ''
|
|
||||||
Trusted domains from which the Nextcloud installation will be
|
|
||||||
accessible. You don't need to add
|
|
||||||
`services.nextcloud.hostname` here.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
trustedProxies = mkOption {
|
|
||||||
type = types.listOf types.str;
|
|
||||||
default = [];
|
|
||||||
description = lib.mdDoc ''
|
|
||||||
Trusted proxies to provide if the Nextcloud installation is being
|
|
||||||
proxied to secure against, e.g. spoofing.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
overwriteProtocol = mkOption {
|
|
||||||
type = types.nullOr (types.enum [ "http" "https" ]);
|
|
||||||
default = null;
|
|
||||||
example = "https";
|
|
||||||
|
|
||||||
description = lib.mdDoc ''
|
|
||||||
Force Nextcloud to always use HTTP or HTTPS i.e. for link generation.
|
|
||||||
Nextcloud uses the currently used protocol by default, but when
|
|
||||||
behind a reverse-proxy, it may use `http` for everything although
|
|
||||||
Nextcloud may be served via HTTPS.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
defaultPhoneRegion = mkOption {
|
|
||||||
default = null;
|
|
||||||
type = types.nullOr types.str;
|
|
||||||
example = "DE";
|
|
||||||
description = lib.mdDoc ''
|
|
||||||
An [ISO 3166-1](https://www.iso.org/iso-3166-country-codes.html)
|
|
||||||
country code which replaces automatic phone-number detection
|
|
||||||
without a country code.
|
|
||||||
|
|
||||||
As an example, with `DE` set as the default phone region,
|
|
||||||
the `+49` prefix can be omitted for phone numbers.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
objectstore = {
|
objectstore = {
|
||||||
s3 = {
|
s3 = {
|
||||||
enable = mkEnableOption (lib.mdDoc ''
|
enable = mkEnableOption (lib.mdDoc ''
|
||||||
|
@ -609,30 +578,109 @@ in {
|
||||||
The nextcloud-occ program preconfigured to target this Nextcloud instance.
|
The nextcloud-occ program preconfigured to target this Nextcloud instance.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
globalProfiles = mkEnableOption (lib.mdDoc "global profiles") // {
|
|
||||||
description = lib.mdDoc ''
|
|
||||||
Makes user-profiles globally available under `nextcloud.tld/u/user.name`.
|
|
||||||
Even though it's enabled by default in Nextcloud, it must be explicitly enabled
|
|
||||||
here because it has the side-effect that personal information is even accessible to
|
|
||||||
unauthenticated users by default.
|
|
||||||
|
|
||||||
By default, the following properties are set to “Show to everyone”
|
|
||||||
if this flag is enabled:
|
|
||||||
- About
|
|
||||||
- Full name
|
|
||||||
- Headline
|
|
||||||
- Organisation
|
|
||||||
- Profile picture
|
|
||||||
- Role
|
|
||||||
- Twitter
|
|
||||||
- Website
|
|
||||||
|
|
||||||
Only has an effect in Nextcloud 23 and later.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
extraOptions = mkOption {
|
extraOptions = mkOption {
|
||||||
type = jsonFormat.type;
|
type = types.submodule {
|
||||||
|
freeformType = jsonFormat.type;
|
||||||
|
options = {
|
||||||
|
|
||||||
|
loglevel = mkOption {
|
||||||
|
type = types.ints.between 0 4;
|
||||||
|
default = 2;
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Log level value between 0 (DEBUG) and 4 (FATAL).
|
||||||
|
|
||||||
|
- 0 (debug): Log all activity.
|
||||||
|
|
||||||
|
- 1 (info): Log activity such as user logins and file activities, plus warnings, errors, and fatal errors.
|
||||||
|
|
||||||
|
- 2 (warn): Log successful operations, as well as warnings of potential problems, errors and fatal errors.
|
||||||
|
|
||||||
|
- 3 (error): Log failed operations and fatal errors.
|
||||||
|
|
||||||
|
- 4 (fatal): Log only fatal errors that cause the server to stop.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
log_type = mkOption {
|
||||||
|
type = types.enum [ "errorlog" "file" "syslog" "systemd" ];
|
||||||
|
default = "syslog";
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Logging backend to use.
|
||||||
|
systemd requires the php-systemd package to be added to services.nextcloud.phpExtraExtensions.
|
||||||
|
See the [nextcloud documentation](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/logging_configuration.html) for details.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
skeletondirectory = mkOption {
|
||||||
|
default = "";
|
||||||
|
type = types.str;
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
The directory where the skeleton files are located. These files will be
|
||||||
|
copied to the data directory of new users. Leave empty to not copy any
|
||||||
|
skeleton files.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
trusted_domains = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [];
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Trusted domains, from which the nextcloud installation will be
|
||||||
|
accessible. You don't need to add
|
||||||
|
`services.nextcloud.hostname` here.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
trusted_proxies = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [];
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Trusted proxies, to provide if the nextcloud installation is being
|
||||||
|
proxied to secure against e.g. spoofing.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
overwriteprotocol = mkOption {
|
||||||
|
type = types.enum [ "" "http" "https" ];
|
||||||
|
default = "";
|
||||||
|
example = "https";
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Force Nextcloud to always use HTTP or HTTPS i.e. for link generation.
|
||||||
|
Nextcloud uses the currently used protocol by default, but when
|
||||||
|
behind a reverse-proxy, it may use `http` for everything although
|
||||||
|
Nextcloud may be served via HTTPS.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
default_phone_region = mkOption {
|
||||||
|
default = "";
|
||||||
|
type = types.str;
|
||||||
|
example = "DE";
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
An [ISO 3166-1](https://www.iso.org/iso-3166-country-codes.html)
|
||||||
|
country code which replaces automatic phone-number detection
|
||||||
|
without a country code.
|
||||||
|
|
||||||
|
As an example, with `DE` set as the default phone region,
|
||||||
|
the `+49` prefix can be omitted for phone numbers.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
"profile.enabled" = mkEnableOption (lib.mdDoc "global profiles") // {
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Makes user-profiles globally available under `nextcloud.tld/u/user.name`.
|
||||||
|
Even though it's enabled by default in Nextcloud, it must be explicitly enabled
|
||||||
|
here because it has the side-effect that personal information is even accessible to
|
||||||
|
unauthenticated users by default.
|
||||||
|
By default, the following properties are set to “Show to everyone”
|
||||||
|
if this flag is enabled:
|
||||||
|
- About
|
||||||
|
- Full name
|
||||||
|
- Headline
|
||||||
|
- Organisation
|
||||||
|
- Profile picture
|
||||||
|
- Role
|
||||||
|
- Twitter
|
||||||
|
- Website
|
||||||
|
Only has an effect in Nextcloud 23 and later.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
default = {};
|
default = {};
|
||||||
description = lib.mdDoc ''
|
description = lib.mdDoc ''
|
||||||
Extra options which should be appended to Nextcloud's config.php file.
|
Extra options which should be appended to Nextcloud's config.php file.
|
||||||
|
@ -766,11 +814,10 @@ in {
|
||||||
# When upgrading the Nextcloud package, Nextcloud can report errors such as
|
# When upgrading the Nextcloud package, Nextcloud can report errors such as
|
||||||
# "The files of the app [all apps in /var/lib/nextcloud/apps] were not replaced correctly"
|
# "The files of the app [all apps in /var/lib/nextcloud/apps] were not replaced correctly"
|
||||||
# Restarting phpfpm on Nextcloud package update fixes these issues (but this is a workaround).
|
# Restarting phpfpm on Nextcloud package update fixes these issues (but this is a workaround).
|
||||||
phpfpm-nextcloud.restartTriggers = [ cfg.package ];
|
phpfpm-nextcloud.restartTriggers = [ webroot ];
|
||||||
|
|
||||||
nextcloud-setup = let
|
nextcloud-setup = let
|
||||||
c = cfg.config;
|
c = cfg.config;
|
||||||
writePhpArray = a: "[${concatMapStringsSep "," (val: ''"${toString val}"'') a}]";
|
|
||||||
requiresReadSecretFunction = c.dbpassFile != null || c.objectstore.s3.enable;
|
requiresReadSecretFunction = c.dbpassFile != null || c.objectstore.s3.enable;
|
||||||
objectstoreConfig = let s3 = c.objectstore.s3; in optionalString s3.enable ''
|
objectstoreConfig = let s3 = c.objectstore.s3; in optionalString s3.enable ''
|
||||||
'objectstore' => [
|
'objectstore' => [
|
||||||
|
@ -800,6 +847,10 @@ in {
|
||||||
|
|
||||||
nextcloudGreaterOrEqualThan = req: versionAtLeast cfg.package.version req;
|
nextcloudGreaterOrEqualThan = req: versionAtLeast cfg.package.version req;
|
||||||
|
|
||||||
|
mkAppStoreConfig = name: { enabled, writable, ... }: optionalString enabled ''
|
||||||
|
[ 'path' => '${webroot}/${name}', 'url' => '/${name}', 'writable' => ${boolToString writable} ],
|
||||||
|
'';
|
||||||
|
|
||||||
overrideConfig = pkgs.writeText "nextcloud-config.php" ''
|
overrideConfig = pkgs.writeText "nextcloud-config.php" ''
|
||||||
<?php
|
<?php
|
||||||
${optionalString requiresReadSecretFunction ''
|
${optionalString requiresReadSecretFunction ''
|
||||||
|
@ -828,17 +879,10 @@ in {
|
||||||
}
|
}
|
||||||
$CONFIG = [
|
$CONFIG = [
|
||||||
'apps_paths' => [
|
'apps_paths' => [
|
||||||
${optionalString (cfg.extraApps != { }) "[ 'path' => '${cfg.home}/nix-apps', 'url' => '/nix-apps', 'writable' => false ],"}
|
${concatStrings (mapAttrsToList mkAppStoreConfig appStores)}
|
||||||
[ 'path' => '${cfg.home}/apps', 'url' => '/apps', 'writable' => false ],
|
|
||||||
[ 'path' => '${cfg.home}/store-apps', 'url' => '/store-apps', 'writable' => true ],
|
|
||||||
],
|
],
|
||||||
${optionalString (showAppStoreSetting) "'appstoreenabled' => ${renderedAppStoreSetting},"}
|
${optionalString (showAppStoreSetting) "'appstoreenabled' => ${renderedAppStoreSetting},"}
|
||||||
'datadirectory' => '${datadir}/data',
|
|
||||||
'skeletondirectory' => '${cfg.skeletonDirectory}',
|
|
||||||
${optionalString cfg.caching.apcu "'memcache.local' => '\\OC\\Memcache\\APCu',"}
|
${optionalString cfg.caching.apcu "'memcache.local' => '\\OC\\Memcache\\APCu',"}
|
||||||
'log_type' => '${cfg.logType}',
|
|
||||||
'loglevel' => '${builtins.toString cfg.logLevel}',
|
|
||||||
${optionalString (c.overwriteProtocol != null) "'overwriteprotocol' => '${c.overwriteProtocol}',"}
|
|
||||||
${optionalString (c.dbname != null) "'dbname' => '${c.dbname}',"}
|
${optionalString (c.dbname != null) "'dbname' => '${c.dbname}',"}
|
||||||
${optionalString (c.dbhost != null) "'dbhost' => '${c.dbhost}',"}
|
${optionalString (c.dbhost != null) "'dbhost' => '${c.dbhost}',"}
|
||||||
${optionalString (c.dbport != null) "'dbport' => '${toString c.dbport}',"}
|
${optionalString (c.dbport != null) "'dbport' => '${toString c.dbport}',"}
|
||||||
|
@ -851,10 +895,6 @@ in {
|
||||||
''
|
''
|
||||||
}
|
}
|
||||||
'dbtype' => '${c.dbtype}',
|
'dbtype' => '${c.dbtype}',
|
||||||
'trusted_domains' => ${writePhpArray ([ cfg.hostName ] ++ c.extraTrustedDomains)},
|
|
||||||
'trusted_proxies' => ${writePhpArray (c.trustedProxies)},
|
|
||||||
${optionalString (c.defaultPhoneRegion != null) "'default_phone_region' => '${c.defaultPhoneRegion}',"}
|
|
||||||
${optionalString (nextcloudGreaterOrEqualThan "23") "'profile.enabled' => ${boolToString cfg.globalProfiles},"}
|
|
||||||
${objectstoreConfig}
|
${objectstoreConfig}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -907,7 +947,7 @@ in {
|
||||||
(i: v: ''
|
(i: v: ''
|
||||||
${occ}/bin/nextcloud-occ config:system:set trusted_domains \
|
${occ}/bin/nextcloud-occ config:system:set trusted_domains \
|
||||||
${toString i} --value="${toString v}"
|
${toString i} --value="${toString v}"
|
||||||
'') ([ cfg.hostName ] ++ cfg.config.extraTrustedDomains));
|
'') ([ cfg.hostName ] ++ cfg.extraOptions.trusted_domains));
|
||||||
|
|
||||||
in {
|
in {
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
@ -935,17 +975,16 @@ in {
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
ln -sf ${cfg.package}/apps ${cfg.home}/
|
${concatMapStrings (name: ''
|
||||||
|
if [ -d "${cfg.home}"/${name} ]; then
|
||||||
# Install extra apps
|
echo "Cleaning up ${name}; these are now bundled in the webroot store-path!"
|
||||||
ln -sfT \
|
rm -r "${cfg.home}"/${name}
|
||||||
${pkgs.linkFarm "nix-apps"
|
fi
|
||||||
(mapAttrsToList (name: path: { inherit name path; }) cfg.extraApps)} \
|
'') [ "nix-apps" "apps" ]}
|
||||||
${cfg.home}/nix-apps
|
|
||||||
|
|
||||||
# create nextcloud directories.
|
# create nextcloud directories.
|
||||||
# if the directories exist already with wrong permissions, we fix that
|
# if the directories exist already with wrong permissions, we fix that
|
||||||
for dir in ${datadir}/config ${datadir}/data ${cfg.home}/store-apps ${cfg.home}/nix-apps; do
|
for dir in ${datadir}/config ${datadir}/data ${cfg.home}/store-apps; do
|
||||||
if [ ! -e $dir ]; then
|
if [ ! -e $dir ]; then
|
||||||
install -o nextcloud -g nextcloud -d $dir
|
install -o nextcloud -g nextcloud -d $dir
|
||||||
elif [ $(stat -c "%G" $dir) != "nextcloud" ]; then
|
elif [ $(stat -c "%G" $dir) != "nextcloud" ]; then
|
||||||
|
@ -982,7 +1021,7 @@ in {
|
||||||
environment.NEXTCLOUD_CONFIG_DIR = "${datadir}/config";
|
environment.NEXTCLOUD_CONFIG_DIR = "${datadir}/config";
|
||||||
serviceConfig.Type = "oneshot";
|
serviceConfig.Type = "oneshot";
|
||||||
serviceConfig.User = "nextcloud";
|
serviceConfig.User = "nextcloud";
|
||||||
serviceConfig.ExecStart = "${phpPackage}/bin/php -f ${cfg.package}/cron.php";
|
serviceConfig.ExecStart = "${phpPackage}/bin/php -f ${webroot}/cron.php";
|
||||||
};
|
};
|
||||||
nextcloud-update-plugins = mkIf cfg.autoUpdateApps.enable {
|
nextcloud-update-plugins = mkIf cfg.autoUpdateApps.enable {
|
||||||
after = [ "nextcloud-setup.service" ];
|
after = [ "nextcloud-setup.service" ];
|
||||||
|
@ -1043,22 +1082,25 @@ in {
|
||||||
user = "nextcloud";
|
user = "nextcloud";
|
||||||
};
|
};
|
||||||
|
|
||||||
services.nextcloud = lib.mkIf cfg.configureRedis {
|
services.nextcloud = {
|
||||||
caching.redis = true;
|
caching.redis = lib.mkIf cfg.configureRedis true;
|
||||||
extraOptions = {
|
extraOptions = mkMerge [({
|
||||||
|
datadirectory = lib.mkDefault "${datadir}/data";
|
||||||
|
trusted_domains = [ cfg.hostName ];
|
||||||
|
}) (lib.mkIf cfg.configureRedis {
|
||||||
"memcache.distributed" = ''\OC\Memcache\Redis'';
|
"memcache.distributed" = ''\OC\Memcache\Redis'';
|
||||||
"memcache.locking" = ''\OC\Memcache\Redis'';
|
"memcache.locking" = ''\OC\Memcache\Redis'';
|
||||||
redis = {
|
redis = {
|
||||||
host = config.services.redis.servers.nextcloud.unixSocket;
|
host = config.services.redis.servers.nextcloud.unixSocket;
|
||||||
port = 0;
|
port = 0;
|
||||||
};
|
};
|
||||||
};
|
})];
|
||||||
};
|
};
|
||||||
|
|
||||||
services.nginx.enable = mkDefault true;
|
services.nginx.enable = mkDefault true;
|
||||||
|
|
||||||
services.nginx.virtualHosts.${cfg.hostName} = {
|
services.nginx.virtualHosts.${cfg.hostName} = {
|
||||||
root = cfg.package;
|
root = webroot;
|
||||||
locations = {
|
locations = {
|
||||||
"= /robots.txt" = {
|
"= /robots.txt" = {
|
||||||
priority = 100;
|
priority = 100;
|
||||||
|
@ -1075,14 +1117,6 @@ in {
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"~ ^/store-apps" = {
|
|
||||||
priority = 201;
|
|
||||||
extraConfig = "root ${cfg.home};";
|
|
||||||
};
|
|
||||||
"~ ^/nix-apps" = {
|
|
||||||
priority = 201;
|
|
||||||
extraConfig = "root ${cfg.home};";
|
|
||||||
};
|
|
||||||
"^~ /.well-known" = {
|
"^~ /.well-known" = {
|
||||||
priority = 210;
|
priority = 210;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
|
|
|
@ -3,14 +3,18 @@
|
||||||
cfg = config.systemd.oomd;
|
cfg = config.systemd.oomd;
|
||||||
|
|
||||||
in {
|
in {
|
||||||
|
imports = [
|
||||||
|
(lib.mkRemovedOptionModule [ "systemd" "oomd" "enableUserServices" ] "Use systemd.oomd.enableUserSlices instead.")
|
||||||
|
];
|
||||||
|
|
||||||
options.systemd.oomd = {
|
options.systemd.oomd = {
|
||||||
enable = lib.mkEnableOption (lib.mdDoc "the `systemd-oomd` OOM killer") // { default = true; };
|
enable = lib.mkEnableOption (lib.mdDoc "the `systemd-oomd` OOM killer") // { default = true; };
|
||||||
|
|
||||||
# Fedora enables the first and third option by default. See the 10-oomd-* files here:
|
# Fedora enables the first and third option by default. See the 10-oomd-* files here:
|
||||||
# https://src.fedoraproject.org/rpms/systemd/tree/acb90c49c42276b06375a66c73673ac351025597
|
# https://src.fedoraproject.org/rpms/systemd/tree/806c95e1c70af18f81d499b24cd7acfa4c36ffd6
|
||||||
enableRootSlice = lib.mkEnableOption (lib.mdDoc "oomd on the root slice (`-.slice`)");
|
enableRootSlice = lib.mkEnableOption (lib.mdDoc "oomd on the root slice (`-.slice`)");
|
||||||
enableSystemSlice = lib.mkEnableOption (lib.mdDoc "oomd on the system slice (`system.slice`)");
|
enableSystemSlice = lib.mkEnableOption (lib.mdDoc "oomd on the system slice (`system.slice`)");
|
||||||
enableUserServices = lib.mkEnableOption (lib.mdDoc "oomd on all user services (`user@.service`)");
|
enableUserSlices = lib.mkEnableOption (lib.mdDoc "oomd on all user slices (`user@.slice`) and all user owned slices");
|
||||||
|
|
||||||
extraConfig = lib.mkOption {
|
extraConfig = lib.mkOption {
|
||||||
type = with lib.types; attrsOf (oneOf [ str int bool ]);
|
type = with lib.types; attrsOf (oneOf [ str int bool ]);
|
||||||
|
@ -44,14 +48,23 @@ in {
|
||||||
users.groups.systemd-oom = { };
|
users.groups.systemd-oom = { };
|
||||||
|
|
||||||
systemd.slices."-".sliceConfig = lib.mkIf cfg.enableRootSlice {
|
systemd.slices."-".sliceConfig = lib.mkIf cfg.enableRootSlice {
|
||||||
ManagedOOMSwap = "kill";
|
ManagedOOMMemoryPressure = "kill";
|
||||||
|
ManagedOOMMemoryPressureLimit = "80%";
|
||||||
};
|
};
|
||||||
systemd.slices."system".sliceConfig = lib.mkIf cfg.enableSystemSlice {
|
systemd.slices."system".sliceConfig = lib.mkIf cfg.enableSystemSlice {
|
||||||
ManagedOOMSwap = "kill";
|
|
||||||
};
|
|
||||||
systemd.services."user@".serviceConfig = lib.mkIf cfg.enableUserServices {
|
|
||||||
ManagedOOMMemoryPressure = "kill";
|
ManagedOOMMemoryPressure = "kill";
|
||||||
ManagedOOMMemoryPressureLimit = "50%";
|
ManagedOOMMemoryPressureLimit = "80%";
|
||||||
|
};
|
||||||
|
systemd.slices."user-".sliceConfig = lib.mkIf cfg.enableUserSlices {
|
||||||
|
ManagedOOMMemoryPressure = "kill";
|
||||||
|
ManagedOOMMemoryPressureLimit = "80%";
|
||||||
|
};
|
||||||
|
systemd.user.units."slice" = lib.mkIf cfg.enableUserSlices {
|
||||||
|
text = ''
|
||||||
|
ManagedOOMMemoryPressure=kill
|
||||||
|
ManagedOOMMemoryPressureLimit=80%
|
||||||
|
'';
|
||||||
|
overrideStrategy = "asDropin";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,7 +58,9 @@ in {
|
||||||
systemd.services.lxd-agent = {
|
systemd.services.lxd-agent = {
|
||||||
enable = true;
|
enable = true;
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
before = [ "shutdown.target" ];
|
before = [ "shutdown.target" ] ++ lib.optionals config.services.cloud-init.enable [
|
||||||
|
"cloud-init.target" "cloud-init.service" "cloud-init-local.service"
|
||||||
|
];
|
||||||
conflicts = [ "shutdown.target" ];
|
conflicts = [ "shutdown.target" ];
|
||||||
path = [
|
path = [
|
||||||
pkgs.kmod
|
pkgs.kmod
|
||||||
|
@ -78,7 +80,6 @@ in {
|
||||||
Description = "LXD - agent";
|
Description = "LXD - agent";
|
||||||
Documentation = "https://documentation.ubuntu.com/lxd/en/latest";
|
Documentation = "https://documentation.ubuntu.com/lxd/en/latest";
|
||||||
ConditionPathExists = "/dev/virtio-ports/org.linuxcontainers.lxd";
|
ConditionPathExists = "/dev/virtio-ports/org.linuxcontainers.lxd";
|
||||||
Before = lib.optionals config.services.cloud-init.enable [ "cloud-init.target" "cloud-init.service" "cloud-init-local.service" ];
|
|
||||||
DefaultDependencies = "no";
|
DefaultDependencies = "no";
|
||||||
StartLimitInterval = "60";
|
StartLimitInterval = "60";
|
||||||
StartLimitBurst = "10";
|
StartLimitBurst = "10";
|
||||||
|
|
|
@ -164,7 +164,7 @@ in {
|
||||||
btrbk-no-timer = handleTest ./btrbk-no-timer.nix {};
|
btrbk-no-timer = handleTest ./btrbk-no-timer.nix {};
|
||||||
btrbk-section-order = handleTest ./btrbk-section-order.nix {};
|
btrbk-section-order = handleTest ./btrbk-section-order.nix {};
|
||||||
budgie = handleTest ./budgie.nix {};
|
budgie = handleTest ./budgie.nix {};
|
||||||
buildbot = handleTestOn [ "x86_64-linux" ] ./buildbot.nix {};
|
buildbot = handleTest ./buildbot.nix {};
|
||||||
buildkite-agents = handleTest ./buildkite-agents.nix {};
|
buildkite-agents = handleTest ./buildkite-agents.nix {};
|
||||||
c2fmzq = handleTest ./c2fmzq.nix {};
|
c2fmzq = handleTest ./c2fmzq.nix {};
|
||||||
caddy = handleTest ./caddy.nix {};
|
caddy = handleTest ./caddy.nix {};
|
||||||
|
|
|
@ -32,7 +32,6 @@ in {
|
||||||
adminpassFile = toString (pkgs.writeText "admin-pass-file" ''
|
adminpassFile = toString (pkgs.writeText "admin-pass-file" ''
|
||||||
${adminpass}
|
${adminpass}
|
||||||
'');
|
'');
|
||||||
trustedProxies = [ "::1" ];
|
|
||||||
};
|
};
|
||||||
notify_push = {
|
notify_push = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -42,6 +41,7 @@ in {
|
||||||
extraApps = {
|
extraApps = {
|
||||||
inherit (pkgs."nextcloud${lib.versions.major config.services.nextcloud.package.version}Packages".apps) notify_push;
|
inherit (pkgs."nextcloud${lib.versions.major config.services.nextcloud.package.version}Packages".apps) notify_push;
|
||||||
};
|
};
|
||||||
|
extraOptions.trusted_proxies = [ "::1" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
services.redis.servers."nextcloud".enable = true;
|
services.redis.servers."nextcloud".enable = true;
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "contrast";
|
pname = "contrast";
|
||||||
version = "0.0.8";
|
version = "0.0.10";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.gnome.org";
|
domain = "gitlab.gnome.org";
|
||||||
|
@ -27,13 +27,13 @@ stdenv.mkDerivation rec {
|
||||||
owner = "design";
|
owner = "design";
|
||||||
repo = "contrast";
|
repo = "contrast";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-5OFmLsP+Xk3sKJcUG/s8KwedvfS8ri+JoinliyJSmrY=";
|
hash = "sha256-Y0CynBvnCOBesONpxUicR7PgMJgmM0ZQX/uOwIppj7w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||||
inherit src;
|
inherit src;
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
hash = "sha256-8WukhoKMyApkwqPQ6KeWMsL40sMUcD4I4l7UqXf2Ld0=";
|
hash = "sha256-BdwY2YDJyDApGgE0Whz3xRU/0gRbkwbKUvPbWEObXE8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -1,5 +1,18 @@
|
||||||
{ lib, stdenv, fetchurl, libX11, libXext, libXcursor, libXrandr, libjack2, alsa-lib
|
{ lib
|
||||||
, mpg123, releasePath ? null }:
|
, stdenv
|
||||||
|
, alsa-lib
|
||||||
|
, fetchurl
|
||||||
|
, libjack2
|
||||||
|
, libX11
|
||||||
|
, libXcursor
|
||||||
|
, libXext
|
||||||
|
, libXinerama
|
||||||
|
, libXrandr
|
||||||
|
, libXtst
|
||||||
|
, mpg123
|
||||||
|
, pipewire
|
||||||
|
, releasePath ? null
|
||||||
|
}:
|
||||||
|
|
||||||
# To use the full release version:
|
# To use the full release version:
|
||||||
# 1) Sign into https://backstage.renoise.com and download the release version to some stable location.
|
# 1) Sign into https://backstage.renoise.com and download the release version to some stable location.
|
||||||
|
@ -7,28 +20,44 @@
|
||||||
# Note: Renoise creates an individual build for each license which screws somewhat with the
|
# Note: Renoise creates an individual build for each license which screws somewhat with the
|
||||||
# use of functions like requireFile as the hash will be different for every user.
|
# use of functions like requireFile as the hash will be different for every user.
|
||||||
let
|
let
|
||||||
urlVersion = lib.replaceStrings [ "." ] [ "_" ];
|
platforms = {
|
||||||
in
|
x86_64-linux = {
|
||||||
|
archSuffix = "x86_64";
|
||||||
|
hash = "sha256-Etz6NaeLMysSkcQGC3g+IqUy9QrONCrbkyej63uLflo=";
|
||||||
|
};
|
||||||
|
aarch64-linux = {
|
||||||
|
archSuffix = "arm64";
|
||||||
|
hash = "sha256-PVpgxhJU8RY6QepydqImQnisWBjbrsuW4j49Xot3C6Y=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "renoise";
|
pname = "renoise";
|
||||||
version = "3.3.2";
|
version = "3.4.3";
|
||||||
|
|
||||||
src =
|
src = if releasePath != null then
|
||||||
if stdenv.hostPlatform.system == "x86_64-linux" then
|
releasePath
|
||||||
if releasePath == null then
|
else
|
||||||
fetchurl {
|
let
|
||||||
urls = [
|
platform = platforms.${stdenv.system};
|
||||||
"https://files.renoise.com/demo/Renoise_${urlVersion version}_Demo_Linux.tar.gz"
|
urlVersion = lib.replaceStrings [ "." ] [ "_" ] version;
|
||||||
"https://web.archive.org/web/https://files.renoise.com/demo/Renoise_${urlVersion version}_Demo_Linux.tar.gz"
|
in fetchurl {
|
||||||
];
|
url =
|
||||||
sha256 = "0d9pnrvs93d4bwbfqxwyr3lg3k6gnzmp81m95gglzwdzczxkw38k";
|
"https://files.renoise.com/demo/Renoise_${urlVersion}_Demo_Linux_${platform.archSuffix}.tar.gz";
|
||||||
}
|
hash = platform.hash;
|
||||||
else
|
};
|
||||||
releasePath
|
|
||||||
else throw "Platform is not supported. Use installation native to your platform https://www.renoise.com/";
|
|
||||||
|
|
||||||
buildInputs = [ alsa-lib libjack2 libX11 libXcursor libXext libXrandr ];
|
buildInputs = [
|
||||||
|
alsa-lib
|
||||||
|
libjack2
|
||||||
|
libX11
|
||||||
|
libXcursor
|
||||||
|
libXext
|
||||||
|
libXinerama
|
||||||
|
libXrandr
|
||||||
|
libXtst
|
||||||
|
pipewire
|
||||||
|
];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
cp -r Resources $out
|
cp -r Resources $out
|
||||||
|
@ -79,7 +108,8 @@ stdenv.mkDerivation rec {
|
||||||
homepage = "https://www.renoise.com/";
|
homepage = "https://www.renoise.com/";
|
||||||
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
|
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
|
||||||
license = lib.licenses.unfree;
|
license = lib.licenses.unfree;
|
||||||
maintainers = [];
|
maintainers = with lib.maintainers; [ uakci ];
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = lib.attrNames platforms;
|
||||||
|
mainProgram = "renoise";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,7 +25,7 @@ buildGoModule rec {
|
||||||
];
|
];
|
||||||
|
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
go generate ./runtime
|
GOOS= GOARCH= go generate ./runtime
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
|
|
|
@ -1067,12 +1067,12 @@
|
||||||
|
|
||||||
sniprun =
|
sniprun =
|
||||||
let
|
let
|
||||||
version = "1.3.9";
|
version = "1.3.10";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "michaelb";
|
owner = "michaelb";
|
||||||
repo = "sniprun";
|
repo = "sniprun";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-g2zPGAJIjMDWn8FCsuRPZyYHDk+ZHCd04lGlYHvb4OI=";
|
hash = "sha256-7tDREZ8ZXYySHrXVOh+ANT23CknJQvZJ8WtU5r0pOOQ=";
|
||||||
};
|
};
|
||||||
sniprun-bin = rustPlatform.buildRustPackage {
|
sniprun-bin = rustPlatform.buildRustPackage {
|
||||||
pname = "sniprun-bin";
|
pname = "sniprun-bin";
|
||||||
|
@ -1082,7 +1082,7 @@
|
||||||
darwin.apple_sdk.frameworks.Security
|
darwin.apple_sdk.frameworks.Security
|
||||||
];
|
];
|
||||||
|
|
||||||
cargoHash = "sha256-h/NhDFp+Yiyx37Tlfu0W9rMnd+ZmQp5gt+qhY3PB7DE=";
|
cargoHash = "sha256-n/HW+q4Xrme/ssS9Th5uFEUsDgkxRxKt2wSR8k08uHY=";
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
|
|
@ -1151,8 +1151,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "theme-dracula";
|
name = "theme-dracula";
|
||||||
publisher = "dracula-theme";
|
publisher = "dracula-theme";
|
||||||
version = "2.24.2";
|
version = "2.24.3";
|
||||||
sha256 = "sha256-YNqWEIvlEI29mfPxOQVdd4db9G2qNodhz8B0MCAAWK8=";
|
sha256 = "sha256-3B18lEu8rXVXySdF3+xsPnAyruIuEQJDhlNw82Xm6b0=";
|
||||||
};
|
};
|
||||||
meta = {
|
meta = {
|
||||||
changelog = "https://marketplace.visualstudio.com/items/dracula-theme.theme-dracula/changelog";
|
changelog = "https://marketplace.visualstudio.com/items/dracula-theme.theme-dracula/changelog";
|
||||||
|
@ -3111,8 +3111,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "crates";
|
name = "crates";
|
||||||
publisher = "serayuzgur";
|
publisher = "serayuzgur";
|
||||||
version = "0.6.0";
|
version = "0.6.5";
|
||||||
sha256 = "080zd103vjrz86vllr1ricq2vi3hawn4534n492m7xdcry9l9dpc";
|
sha256 = "sha256-HgqM4PKGk3R5MLY4cVjKxv79p5KlOkVDeDbv7/6FmpM=";
|
||||||
};
|
};
|
||||||
meta = {
|
meta = {
|
||||||
license = lib.licenses.mit;
|
license = lib.licenses.mit;
|
||||||
|
|
|
@ -28,13 +28,13 @@
|
||||||
|
|
||||||
buildDotnetModule rec {
|
buildDotnetModule rec {
|
||||||
pname = "ryujinx";
|
pname = "ryujinx";
|
||||||
version = "1.1.1100"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml
|
version = "1.1.1102"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Ryujinx";
|
owner = "Ryujinx";
|
||||||
repo = "Ryujinx";
|
repo = "Ryujinx";
|
||||||
rev = "06bff0159c9eddc5111859d1ca315708152ac61b";
|
rev = "f11d663df73f68350820dfa65aa51a8a9b9ffd0f";
|
||||||
sha256 = "1fxslad3i6cbd4kcjal1pzbr472az834ahyg7k8yf34b7syljswq";
|
sha256 = "15yai8zwwy2537ng6iqyg2jhv0q2w1c9rahkdkbvgkwiycsl7rjy";
|
||||||
};
|
};
|
||||||
|
|
||||||
dotnet-sdk = dotnetCorePackages.sdk_8_0;
|
dotnet-sdk = dotnetCorePackages.sdk_8_0;
|
||||||
|
|
|
@ -14,17 +14,17 @@
|
||||||
|
|
||||||
buildDotnetModule rec {
|
buildDotnetModule rec {
|
||||||
pname = "denaro";
|
pname = "denaro";
|
||||||
version = "2023.9.2";
|
version = "2023.11.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "NickvisionApps";
|
owner = "NickvisionApps";
|
||||||
repo = "Denaro";
|
repo = "Denaro";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-3Atdi0R7OHpP1HUBWGu2Y4L8hr9jLPMIFYCEWeoEq6A=";
|
hash = "sha256-buMoB6ZTmzGjjSCOfdUvKbJ7xJmK/zHH8sz5iO3SJXo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
dotnet-sdk = dotnetCorePackages.sdk_7_0;
|
dotnet-sdk = dotnetCorePackages.sdk_8_0;
|
||||||
dotnet-runtime = dotnetCorePackages.runtime_7_0;
|
dotnet-runtime = dotnetCorePackages.runtime_8_0;
|
||||||
|
|
||||||
projectFile = "NickvisionMoney.GNOME/NickvisionMoney.GNOME.csproj";
|
projectFile = "NickvisionMoney.GNOME/NickvisionMoney.GNOME.csproj";
|
||||||
nugetDeps = ./deps.nix;
|
nugetDeps = ./deps.nix;
|
||||||
|
@ -44,10 +44,10 @@ buildDotnetModule rec {
|
||||||
# Denaro switches installation tool frequently (bash -> just -> cake)
|
# Denaro switches installation tool frequently (bash -> just -> cake)
|
||||||
# For maintainability, let's do it ourselves
|
# For maintainability, let's do it ourselves
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
substituteInPlace NickvisionMoney.Shared/org.nickvision.money.desktop.in --replace '@EXEC@' "NickvisionMoney.GNOME"
|
substituteInPlace NickvisionMoney.Shared/Linux/org.nickvision.money.desktop.in --replace '@EXEC@' "NickvisionMoney.GNOME"
|
||||||
install -Dm444 NickvisionMoney.Shared/Resources/org.nickvision.money.svg -t $out/share/icons/hicolor/scalable/apps/
|
install -Dm444 NickvisionMoney.Shared/Resources/org.nickvision.money.svg -t $out/share/icons/hicolor/scalable/apps/
|
||||||
install -Dm444 NickvisionMoney.Shared/Resources/org.nickvision.money-symbolic.svg -t $out/share/icons/hicolor/symbolic/apps/
|
install -Dm444 NickvisionMoney.Shared/Resources/org.nickvision.money-symbolic.svg -t $out/share/icons/hicolor/symbolic/apps/
|
||||||
install -Dm444 NickvisionMoney.Shared/org.nickvision.money.desktop.in -T $out/share/applications/org.nickvision.money.desktop
|
install -Dm444 NickvisionMoney.Shared/Linux/org.nickvision.money.desktop.in -T $out/share/applications/org.nickvision.money.desktop
|
||||||
'';
|
'';
|
||||||
|
|
||||||
runtimeDeps = [
|
runtimeDeps = [
|
||||||
|
|
96
pkgs/applications/finance/denaro/deps.nix
generated
96
pkgs/applications/finance/denaro/deps.nix
generated
|
@ -2,48 +2,45 @@
|
||||||
# Please dont edit it manually, your changes might get overwritten!
|
# Please dont edit it manually, your changes might get overwritten!
|
||||||
|
|
||||||
{ fetchNuGet }: [
|
{ fetchNuGet }: [
|
||||||
(fetchNuGet { pname = "Ace4896.DBus.Services.Secrets"; version = "1.1.0"; sha256 = "03rs3f71vgzk3pp0mx83rx6aqg2aq7xwk0p42mj5701m3592x49d"; })
|
(fetchNuGet { pname = "Ace4896.DBus.Services.Secrets"; version = "1.2.0"; sha256 = "1i1rwv8z2dx0mjib7vair2w7ylngmrcpbd012sdlpvdjpx0af0bn"; })
|
||||||
(fetchNuGet { pname = "Cake.Tool"; version = "3.1.0"; sha256 = "1kv9zz0qsx40wiygydw5z6vkj8hfayvgy9bsii2lamdas9z0vmbc"; })
|
(fetchNuGet { pname = "Cake.Tool"; version = "3.2.0"; sha256 = "0jvf3r0rr15q650182c3y6a4c21k84rzl2f0nida878j6fhmk6v7"; })
|
||||||
(fetchNuGet { pname = "Docnet.Core"; version = "2.3.1"; sha256 = "03b39x0vlymdknwgwhsmnpw4gj3njmbl9pd57ls3rhfn9r832d44"; })
|
(fetchNuGet { pname = "Docnet.Core"; version = "2.6.0"; sha256 = "1b1nj984ly4zgj28fri1a6ych9sdiacxkms8pvzsclvyxkf0ri8m"; })
|
||||||
(fetchNuGet { pname = "FuzzySharp"; version = "2.0.2"; sha256 = "1xq3q4s9d5p1yn4j91a90hawk9wcrz1bl6zj9866y01yx9aamr8s"; })
|
(fetchNuGet { pname = "FuzzySharp"; version = "2.0.2"; sha256 = "1xq3q4s9d5p1yn4j91a90hawk9wcrz1bl6zj9866y01yx9aamr8s"; })
|
||||||
(fetchNuGet { pname = "GetText.NET"; version = "1.8.7"; sha256 = "0djn5sc7p33ayjmxmxs4hqagh51bg70wqs6mwbhlhsrc67bvgj9a"; })
|
(fetchNuGet { pname = "GetText.NET"; version = "1.9.14"; sha256 = "18z4cf0dldcf41z8xgj3gdlvj9w5a9ikgj72623r0i740ndnl094"; })
|
||||||
(fetchNuGet { pname = "GirCore.Adw-1"; version = "0.4.0"; sha256 = "1wy780mwvl7n1kr85r2icwsz9p3vsw749603x0wm3ka5ywbzv91k"; })
|
(fetchNuGet { pname = "GirCore.Adw-1"; version = "0.5.0-preview.3"; sha256 = "090kg5v99myd7hi49cz933cl36hk5n586ywy78gf5djn5im3v19l"; })
|
||||||
(fetchNuGet { pname = "GirCore.Cairo-1.0"; version = "0.4.0"; sha256 = "11rg8hgran23b4m1116sfvfss0fgz874imafrv3h9w7c76f6hhci"; })
|
(fetchNuGet { pname = "GirCore.Cairo-1.0"; version = "0.5.0-preview.3"; sha256 = "0bh1h2hr6givrq6096bvzcsg4lab1hlm7r7h4bqifbw0zmmcfb7k"; })
|
||||||
(fetchNuGet { pname = "GirCore.FreeType2-2.0"; version = "0.4.0"; sha256 = "101qr6kijslzqd6dcmpjzrbdp8nr6ibi8958frvkpxifqa4xyp4c"; })
|
(fetchNuGet { pname = "GirCore.FreeType2-2.0"; version = "0.5.0-preview.3"; sha256 = "194p44gd7r69x70j3qynv5v8awlyxmdazmzpwzgj5ayy2xpdk3hy"; })
|
||||||
(fetchNuGet { pname = "GirCore.Gdk-4.0"; version = "0.4.0"; sha256 = "1bws3zry4awy73lwzllbdljl8wybmxfm870m175wl38c7pa18sav"; })
|
(fetchNuGet { pname = "GirCore.Gdk-4.0"; version = "0.5.0-preview.3"; sha256 = "09p097nvs7vi7l14l024m39qyhg1gyqihanq7zv66xqys4hzim1g"; })
|
||||||
(fetchNuGet { pname = "GirCore.GdkPixbuf-2.0"; version = "0.4.0"; sha256 = "05maiqg2qxsg56zb8zamv241gqkskli8laa7i0dxl3f93ddc78f6"; })
|
(fetchNuGet { pname = "GirCore.GdkPixbuf-2.0"; version = "0.5.0-preview.3"; sha256 = "0lspyra1g1rd8hj3f3daxspin5dhgplzgjh4jwhlgzzn648942j0"; })
|
||||||
(fetchNuGet { pname = "GirCore.Gio-2.0"; version = "0.4.0"; sha256 = "1gy8gx7vy070nc2afj1zsn3d004y9d3gwn7zdj9g2fbhavbc4snk"; })
|
(fetchNuGet { pname = "GirCore.Gio-2.0"; version = "0.5.0-preview.3"; sha256 = "090svrddgpliks5r29yncih3572w7gdc552nl16qbviqbmhr0lbs"; })
|
||||||
(fetchNuGet { pname = "GirCore.GLib-2.0"; version = "0.4.0"; sha256 = "05q00p06kn97143az2xi5zhfpi30qqcds1n1zfj87gi5w0jla4ib"; })
|
(fetchNuGet { pname = "GirCore.GLib-2.0"; version = "0.5.0-preview.3"; sha256 = "1wxwf24gabd69yxpnhv30rn7pcv49w885jdw3nqbrakl7pvv9fza"; })
|
||||||
(fetchNuGet { pname = "GirCore.GObject-2.0"; version = "0.4.0"; sha256 = "06vrkjyzj4rjvlni3ixj12zpky2mah8v1q8nbbkfwca08k5hdz7p"; })
|
(fetchNuGet { pname = "GirCore.GObject-2.0"; version = "0.5.0-preview.3"; sha256 = "0iajydyx79f3khx0fhv8izbxlzxwn6gpps2xzmi9c4v98ly221j3"; })
|
||||||
(fetchNuGet { pname = "GirCore.Graphene-1.0"; version = "0.4.0"; sha256 = "06b2c35ynmkknk5zbhs75081dki0zm165xa659mg8i88cyxsgrh4"; })
|
(fetchNuGet { pname = "GirCore.Graphene-1.0"; version = "0.5.0-preview.3"; sha256 = "114fbgxils50jdy891nwj70yr43lnwgbq9fzxqzywd1kk70k7mww"; })
|
||||||
(fetchNuGet { pname = "GirCore.Gsk-4.0"; version = "0.4.0"; sha256 = "1hwmd3j4gllzjwkqq3m4wbl3v7hh2nsa7i1d2ziw3fvgbnbnb1vi"; })
|
(fetchNuGet { pname = "GirCore.Gsk-4.0"; version = "0.5.0-preview.3"; sha256 = "0f5s6f6pwc9vc3nm7xfaa06z2klgpg4rv5cdf0cwis3vlncd7dnj"; })
|
||||||
(fetchNuGet { pname = "GirCore.Gtk-4.0"; version = "0.4.0"; sha256 = "1r8hkr7vm32cjmw092l67kaysqa5jzyn7v518502nljlm9ivil6f"; })
|
(fetchNuGet { pname = "GirCore.Gtk-4.0"; version = "0.5.0-preview.3"; sha256 = "1fn0b8lwlrmjm9phjq4amqnq3q70fl214115652cap5rz4rjmpgg"; })
|
||||||
(fetchNuGet { pname = "GirCore.HarfBuzz-0.0"; version = "0.4.0"; sha256 = "1wyq9s18gfs73z01gaqm87i7h71ir2n0jz1dyi26hj6b3qp0p34a"; })
|
(fetchNuGet { pname = "GirCore.HarfBuzz-0.0"; version = "0.5.0-preview.3"; sha256 = "0xska2l44l0j38mlgmrwly1qal9wzbv2w2jjj8gn90sxbygb8zky"; })
|
||||||
(fetchNuGet { pname = "GirCore.Pango-1.0"; version = "0.4.0"; sha256 = "0qifms5nlljzccgzvnyx5vcdgvfdyp2q7s0zdglay5x5g4zrl8fv"; })
|
(fetchNuGet { pname = "GirCore.Pango-1.0"; version = "0.5.0-preview.3"; sha256 = "0ccw3bd3kl24mnxbjzhya11i0ln6g1g7q876pyy54cwh48x4mdia"; })
|
||||||
(fetchNuGet { pname = "GirCore.PangoCairo-1.0"; version = "0.4.0"; sha256 = "1vn8bgi9ijnw25id5vis15gv9h0d4y03scr4jv03scisv411jrl8"; })
|
(fetchNuGet { pname = "GirCore.PangoCairo-1.0"; version = "0.5.0-preview.3"; sha256 = "0lds340p5cci7sjp58nh94jxkjvzfky9cbs2h4q98hglxndjm7r9"; })
|
||||||
(fetchNuGet { pname = "HarfBuzzSharp"; version = "2.8.2.3"; sha256 = "115aybicqs9ijjlcv6k6r5v0agkjm1bm1nkd0rj3jglv8s0xvmp2"; })
|
(fetchNuGet { pname = "HarfBuzzSharp"; version = "7.3.0"; sha256 = "1rqcmdyzxz9kc0k8594hbpksjc23mkakmjybi4b8702qycxx0lrf"; })
|
||||||
(fetchNuGet { pname = "HarfBuzzSharp"; version = "2.8.2.4-preview.84"; sha256 = "1kk2ja6lsfmx00sliniyky9fimrk9pcq2ql7j72310kx3qaad45v"; })
|
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Linux"; version = "7.3.0"; sha256 = "0i9gaiyjgmcpnfn1fixbxq8shqlh4ahng7j4dxlf38zlln1f6h80"; })
|
||||||
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Linux"; version = "2.8.2.3"; sha256 = "1f18ahwkaginrg0vwsi6s56lvnqvvxv7pzklfs5lnknasxy1a76z"; })
|
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.macOS"; version = "7.3.0"; sha256 = "1b5ng37bwk75cifw7p1hzn8z6sswi8h7h510qgwlbvgmlrs5r0ga"; })
|
||||||
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.macOS"; version = "2.8.2.3"; sha256 = "052d8frpkj4ijs6fm6xp55xbv95b1s9biqwa0w8zp3rgm88m9236"; })
|
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Win32"; version = "7.3.0"; sha256 = "1hyvmz7rfbrxbcpnwyvb64gdk1hifcpz3rln58yyb7g1pnbpnw2s"; })
|
||||||
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.macOS"; version = "2.8.2.4-preview.84"; sha256 = "0q5nmqhvdyg112c6q5h2h407d11g7sickbrn3fc5036n7svij13z"; })
|
|
||||||
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Win32"; version = "2.8.2.3"; sha256 = "08khd2jqm8sw58ljz5srangzfm2sz3gd2q1jzc5fr80lj8rv6r74"; })
|
|
||||||
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Win32"; version = "2.8.2.4-preview.84"; sha256 = "1jkkjj2p8wiabc6m5m88kf1ykq5wdjihyn27279mvw8vyrp4zp5d"; })
|
|
||||||
(fetchNuGet { pname = "Hazzik.Qif"; version = "1.0.3"; sha256 = "16v6cfy3pa0qy699v843pss3418rvq5agz6n43sikzh69vzl2azy"; })
|
(fetchNuGet { pname = "Hazzik.Qif"; version = "1.0.3"; sha256 = "16v6cfy3pa0qy699v843pss3418rvq5agz6n43sikzh69vzl2azy"; })
|
||||||
(fetchNuGet { pname = "LiveChartsCore"; version = "2.0.0-beta.910"; sha256 = "0yw54yd1kp4j8js1g405m4lvv84zx4zkx4m64iiqsc765a4alvvy"; })
|
(fetchNuGet { pname = "LiveChartsCore"; version = "2.0.0-rc2"; sha256 = "02ywlv67525qnnx7x2xaz52gs8195zvvjlmcz7ql1gff05pkcb15"; })
|
||||||
(fetchNuGet { pname = "LiveChartsCore.SkiaSharpView"; version = "2.0.0-beta.910"; sha256 = "1ifhvcsa0319mip98xbmlib3k7fkn24igfxxyfi2d31rajqv970r"; })
|
(fetchNuGet { pname = "LiveChartsCore.SkiaSharpView"; version = "2.0.0-rc2"; sha256 = "1p35mli6wxq5jn7h27564a8dgv4qyj95isihs9lbmvs1pr7m785l"; })
|
||||||
(fetchNuGet { pname = "Markdig"; version = "0.31.0"; sha256 = "0iic44i47wp18jbbpl44iifhj2mfnil9gakkw3bzp7zif3rhl19m"; })
|
(fetchNuGet { pname = "Markdig"; version = "0.33.0"; sha256 = "1dj06wgdqmjji4nfr1dysz7hwp5bjgsrk9qjkdq82d7gk6nmhs9r"; })
|
||||||
(fetchNuGet { pname = "Meziantou.Framework.Win32.CredentialManager"; version = "1.4.2"; sha256 = "0x7xlym8jsm0zgbb75ip74gnw3fssb30phc48xf35yx6i0sfb2dh"; })
|
(fetchNuGet { pname = "Meziantou.Framework.Win32.CredentialManager"; version = "1.4.5"; sha256 = "1ikjxj6wir2jcjwlmd4q7zz0b4g40808gx59alvad31sb2aqp738"; })
|
||||||
(fetchNuGet { pname = "Microsoft.Data.Sqlite.Core"; version = "7.0.5"; sha256 = "11gkdlf2apnzvwfd7bxdhjvb4qd0p2ridp4rrz44f7h76x1sb0gk"; })
|
(fetchNuGet { pname = "Microsoft.Data.Sqlite.Core"; version = "8.0.0"; sha256 = "05qjnzk1fxybks92y93487l3mj5nghjcwiy360xjgk3jykz3rv39"; })
|
||||||
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
|
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
|
||||||
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
|
|
||||||
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "5.0.0"; sha256 = "0z3qyv7qal5irvabc8lmkh58zsl42mrzd1i0sssvzhv4q4kl3cg6"; })
|
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "5.0.0"; sha256 = "0z3qyv7qal5irvabc8lmkh58zsl42mrzd1i0sssvzhv4q4kl3cg6"; })
|
||||||
(fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
|
(fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "8.0.0"; sha256 = "05392f41ijgn17y8pbjcx535l1k09krnq3xdp60kyq568sn6xk2i"; })
|
||||||
(fetchNuGet { pname = "NETStandard.Library"; version = "1.6.1"; sha256 = "1z70wvsx2d847a2cjfii7b83pjfs34q05gb037fdjikv5kbagml8"; })
|
(fetchNuGet { pname = "NETStandard.Library"; version = "1.6.1"; sha256 = "1z70wvsx2d847a2cjfii7b83pjfs34q05gb037fdjikv5kbagml8"; })
|
||||||
(fetchNuGet { pname = "Nickvision.Aura"; version = "2023.9.3"; sha256 = "0j3fqjl8nskqqwmkc41h3pgnvl63nq9w443b571j154xibly5iw7"; })
|
(fetchNuGet { pname = "Nickvision.Aura"; version = "2023.11.3"; sha256 = "06g63k1p8maskg8hicjbi00fyyxh95fkykvv205p9vr0803bjqrd"; })
|
||||||
(fetchNuGet { pname = "Nickvision.GirExt"; version = "2023.7.3"; sha256 = "1ahf4mld9khk2gaja30zfcjmhclz2l2nims0q4l7jk2nm9p7rzi9"; })
|
(fetchNuGet { pname = "Octokit"; version = "9.0.0"; sha256 = "0kw49w1hxk4d2x9598012z9q1yr3ml5rm06fy1jnmhy44s3d3jp5"; })
|
||||||
(fetchNuGet { pname = "OfxSharp.NetStandard"; version = "1.0.0"; sha256 = "1v7yw2glyywb4s0y5fw306bzh2vw175bswrhi5crvd92wf93makj"; })
|
(fetchNuGet { pname = "OfxSharp.NetStandard"; version = "1.0.0"; sha256 = "1v7yw2glyywb4s0y5fw306bzh2vw175bswrhi5crvd92wf93makj"; })
|
||||||
(fetchNuGet { pname = "PdfSharpCore"; version = "1.3.56"; sha256 = "0a01b2a14gygh25rq3509rky85331l8808q052br2fzidhb2vc10"; })
|
(fetchNuGet { pname = "PdfSharpCore"; version = "1.3.62"; sha256 = "1wxm642fx0pgiidd5x35iifayq7nicykycpwpvs0814xfjm0zw63"; })
|
||||||
(fetchNuGet { pname = "QuestPDF"; version = "2023.5.1"; sha256 = "1yfjwb7aj975aars7mcp1dxvarxl8aq122bndpw808b4cx3058gl"; })
|
(fetchNuGet { pname = "QuestPDF"; version = "2023.10.2"; sha256 = "08jy42k8nxbkbdc2z013vk28r5ckmg7lpzvnah0shrjmwfq34v4j"; })
|
||||||
(fetchNuGet { pname = "ReadSharp.Ports.SgmlReader.Core"; version = "1.0.0"; sha256 = "0pcvlh0gq513vw6y12lfn90a0br56a6f26lvppcj4qb839zmh3id"; })
|
(fetchNuGet { pname = "ReadSharp.Ports.SgmlReader.Core"; version = "1.0.0"; sha256 = "0pcvlh0gq513vw6y12lfn90a0br56a6f26lvppcj4qb839zmh3id"; })
|
||||||
(fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
|
(fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
|
||||||
(fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
|
(fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
|
||||||
|
@ -63,21 +60,16 @@
|
||||||
(fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
|
(fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
|
||||||
(fetchNuGet { pname = "SharpZipLib"; version = "1.3.3"; sha256 = "1gij11wfj1mqm10631cjpnhzw882bnzx699jzwhdqakxm1610q8x"; })
|
(fetchNuGet { pname = "SharpZipLib"; version = "1.3.3"; sha256 = "1gij11wfj1mqm10631cjpnhzw882bnzx699jzwhdqakxm1610q8x"; })
|
||||||
(fetchNuGet { pname = "SixLabors.Fonts"; version = "1.0.0-beta17"; sha256 = "1qm8q82wzj54nbv63kx3ybln51k47sl18hia3jnzk1zrb6wdsw9a"; })
|
(fetchNuGet { pname = "SixLabors.Fonts"; version = "1.0.0-beta17"; sha256 = "1qm8q82wzj54nbv63kx3ybln51k47sl18hia3jnzk1zrb6wdsw9a"; })
|
||||||
(fetchNuGet { pname = "SixLabors.ImageSharp"; version = "2.1.3"; sha256 = "12qb0r7v2v91vw8q8ygr67y527gwhbas6d6zdvrv4ksxwjx9dzp9"; })
|
(fetchNuGet { pname = "SixLabors.ImageSharp"; version = "3.0.2"; sha256 = "1r654m3ga9al9q4qjr1104rp6lk7j9blmf4j0104zq8893hhq727"; })
|
||||||
(fetchNuGet { pname = "SkiaSharp"; version = "2.88.3"; sha256 = "1yq694myq2rhfp2hwwpyzcg1pzpxcp7j72wib8p9pw9dfj7008sv"; })
|
(fetchNuGet { pname = "SkiaSharp"; version = "2.88.6"; sha256 = "0xs11zjw9ha68maw3l825kfwlrid43qwy0mswljxhpjh0y1k6k6b"; })
|
||||||
(fetchNuGet { pname = "SkiaSharp"; version = "2.88.4-preview.84"; sha256 = "1isyjmmfqzbvqiypsvvnqrwf6ifr2ypngzvzj41m5nbk1jr8nn6m"; })
|
(fetchNuGet { pname = "SkiaSharp.HarfBuzz"; version = "2.88.6"; sha256 = "1h61vk9ibavwwrxqgclzsxmchighvfaqlcqrj0dpi2fzw57f54c2"; })
|
||||||
(fetchNuGet { pname = "SkiaSharp.HarfBuzz"; version = "2.88.3"; sha256 = "0axz2zfyg0h3zis7rr86ikrm2jbxxy0gqb3bbawpgynf1k0fsi6a"; })
|
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.6"; sha256 = "0cg38xgddww1y93xrnbfn40sin63yl39j5zm7gm5pdgp5si0cf2n"; })
|
||||||
(fetchNuGet { pname = "SkiaSharp.HarfBuzz"; version = "2.88.4-preview.84"; sha256 = "132n0sq2fjk53mc89yx6qn20w194145sv9367s623di7ysz467br"; })
|
(fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.6"; sha256 = "1fp9h8c8k6sbsh48b69dc6461isd4dajq7yw5i7j6fhkas78q4zf"; })
|
||||||
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.3"; sha256 = "0dajvr60nwvnv7s6kcqgw1w97zxdpz1c5lb7kcq7r0hi0l05ck3q"; })
|
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.6"; sha256 = "1w2mwcwkqvrg4x4ybc4674xnkqwh1n2ihg520gqgpnqfc11ghc4n"; })
|
||||||
(fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.3"; sha256 = "191ajgi6fnfqcvqvkayjsxasiz6l0bv3pps8vv9abbyc4b12qvph"; })
|
(fetchNuGet { pname = "SQLitePCLRaw.bundle_e_sqlcipher"; version = "2.1.6"; sha256 = "15v2x7y4k7cl47a9jccbvgbwngwi5dz6qhv0cxpcasx4v5i9aila"; })
|
||||||
(fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.4-preview.84"; sha256 = "0vqwc2wh8brzn99cc61qgcyf3gd8vqlbdkjcmc3bcb07bc8k16v7"; })
|
(fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.1.6"; sha256 = "1w8zsgz2w2q0a9cw9cl1rzrpv48a04nhyq67ywan6xlgknds65a7"; })
|
||||||
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.3"; sha256 = "03wwfbarsxjnk70qhqyd1dw65098dncqk2m0vksx92j70i7lry6q"; })
|
(fetchNuGet { pname = "SQLitePCLRaw.lib.e_sqlcipher"; version = "2.1.6"; sha256 = "0dl5an15whs4yl5hm2wibzbfigzck0flah8a07k99y1bhbmv080z"; })
|
||||||
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.4-preview.84"; sha256 = "0m48d87cp2kvrhxvykxnhbzgm7xrw8jkdagvma80bag5gzdiicy2"; })
|
(fetchNuGet { pname = "SQLitePCLRaw.provider.e_sqlcipher"; version = "2.1.6"; sha256 = "1jx8d4dq5w2951b7w722gnxbfgdklwazc48kcbdzylkglwkrqgrq"; })
|
||||||
(fetchNuGet { pname = "SQLitePCLRaw.bundle_e_sqlcipher"; version = "2.1.5"; sha256 = "0xnzpkhm9z09yay76wxgn4j8js260pansx8r10lrksxv2b4b0n4x"; })
|
|
||||||
(fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.1.4"; sha256 = "09akxz92qipr1cj8mk2hw99i0b81wwbwx26gpk21471zh543f8ld"; })
|
|
||||||
(fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.1.5"; sha256 = "03181hahmxv8jlaikx0nkzfc2q1l1cdp3chgx5q6780nhqyjkhhx"; })
|
|
||||||
(fetchNuGet { pname = "SQLitePCLRaw.lib.e_sqlcipher"; version = "2.1.5"; sha256 = "1chij7jlpi2mdm55chrkn8bmlda5qb3q6idkljgc3rz26n6c2l5b"; })
|
|
||||||
(fetchNuGet { pname = "SQLitePCLRaw.provider.e_sqlcipher"; version = "2.1.5"; sha256 = "11xah1nfzryh52zfwhlvfm2ra7d3an5ygff2brylp75wa685gm7g"; })
|
|
||||||
(fetchNuGet { pname = "System.AppContext"; version = "4.3.0"; sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya"; })
|
(fetchNuGet { pname = "System.AppContext"; version = "4.3.0"; sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya"; })
|
||||||
(fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
|
(fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
|
||||||
(fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
|
(fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
|
||||||
|
@ -87,6 +79,7 @@
|
||||||
(fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.3.0"; sha256 = "0z6m3pbiy0qw6rn3n209rrzf9x1k4002zh90vwcrsym09ipm2liq"; })
|
(fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.3.0"; sha256 = "0z6m3pbiy0qw6rn3n209rrzf9x1k4002zh90vwcrsym09ipm2liq"; })
|
||||||
(fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "0in3pic3s2ddyibi8cvgl102zmvp9r9mchh82ns9f0ms4basylw1"; })
|
(fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "0in3pic3s2ddyibi8cvgl102zmvp9r9mchh82ns9f0ms4basylw1"; })
|
||||||
(fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4"; })
|
(fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4"; })
|
||||||
|
(fetchNuGet { pname = "System.Drawing.Common"; version = "8.0.0"; sha256 = "1j4rsm36bnwqmh5br9mzmj0ikjnc39k26q6l9skjlrnw8hlngwy4"; })
|
||||||
(fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
|
(fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
|
||||||
(fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1xwl230bkakzzkrggy1l1lxmm3xlhk4bq2pkv790j5lm8g887lxq"; })
|
(fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1xwl230bkakzzkrggy1l1lxmm3xlhk4bq2pkv790j5lm8g887lxq"; })
|
||||||
(fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.3.0"; sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls"; })
|
(fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.3.0"; sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls"; })
|
||||||
|
@ -99,6 +92,7 @@
|
||||||
(fetchNuGet { pname = "System.Linq"; version = "4.3.0"; sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7"; })
|
(fetchNuGet { pname = "System.Linq"; version = "4.3.0"; sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7"; })
|
||||||
(fetchNuGet { pname = "System.Linq.Expressions"; version = "4.3.0"; sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv"; })
|
(fetchNuGet { pname = "System.Linq.Expressions"; version = "4.3.0"; sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv"; })
|
||||||
(fetchNuGet { pname = "System.Memory"; version = "4.5.3"; sha256 = "0naqahm3wljxb5a911d37mwjqjdxv9l0b49p5dmfyijvni2ppy8a"; })
|
(fetchNuGet { pname = "System.Memory"; version = "4.5.3"; sha256 = "0naqahm3wljxb5a911d37mwjqjdxv9l0b49p5dmfyijvni2ppy8a"; })
|
||||||
|
(fetchNuGet { pname = "System.Memory"; version = "4.5.5"; sha256 = "08jsfwimcarfzrhlyvjjid61j02irx6xsklf32rv57x2aaikvx0h"; })
|
||||||
(fetchNuGet { pname = "System.Net.Http"; version = "4.3.0"; sha256 = "1i4gc757xqrzflbk7kc5ksn20kwwfjhw9w7pgdkn19y3cgnl302j"; })
|
(fetchNuGet { pname = "System.Net.Http"; version = "4.3.0"; sha256 = "1i4gc757xqrzflbk7kc5ksn20kwwfjhw9w7pgdkn19y3cgnl302j"; })
|
||||||
(fetchNuGet { pname = "System.Net.Primitives"; version = "4.3.0"; sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii"; })
|
(fetchNuGet { pname = "System.Net.Primitives"; version = "4.3.0"; sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii"; })
|
||||||
(fetchNuGet { pname = "System.Net.Requests"; version = "4.3.0"; sha256 = "0pcznmwqqk0qzp0gf4g4xw7arhb0q8v9cbzh3v8h8qp6rjcr339a"; })
|
(fetchNuGet { pname = "System.Net.Requests"; version = "4.3.0"; sha256 = "0pcznmwqqk0qzp0gf4g4xw7arhb0q8v9cbzh3v8h8qp6rjcr339a"; })
|
||||||
|
@ -114,7 +108,6 @@
|
||||||
(fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.3.0"; sha256 = "0y2ssg08d817p0vdag98vn238gyrrynjdj4181hdg780sif3ykp1"; })
|
(fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.3.0"; sha256 = "0y2ssg08d817p0vdag98vn238gyrrynjdj4181hdg780sif3ykp1"; })
|
||||||
(fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49"; })
|
(fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49"; })
|
||||||
(fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; })
|
(fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; })
|
||||||
(fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "5.0.0"; sha256 = "02k25ivn50dmqx5jn8hawwmz24yf0454fjd823qk6lygj9513q4x"; })
|
|
||||||
(fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60"; })
|
(fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60"; })
|
||||||
(fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8"; })
|
(fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8"; })
|
||||||
(fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; })
|
(fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; })
|
||||||
|
@ -128,7 +121,6 @@
|
||||||
(fetchNuGet { pname = "System.Security.Cryptography.Primitives"; version = "4.3.0"; sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby"; })
|
(fetchNuGet { pname = "System.Security.Cryptography.Primitives"; version = "4.3.0"; sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby"; })
|
||||||
(fetchNuGet { pname = "System.Security.Cryptography.X509Certificates"; version = "4.3.0"; sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h"; })
|
(fetchNuGet { pname = "System.Security.Cryptography.X509Certificates"; version = "4.3.0"; sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h"; })
|
||||||
(fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
|
(fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
|
||||||
(fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "5.0.0"; sha256 = "1bn2pzaaq4wx9ixirr8151vm5hynn3lmrljcgjx9yghmm4k677k0"; })
|
|
||||||
(fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy"; })
|
(fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy"; })
|
||||||
(fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.3.0"; sha256 = "1bgq51k7fwld0njylfn7qc5fmwrk2137gdq7djqdsw347paa9c2l"; })
|
(fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.3.0"; sha256 = "1bgq51k7fwld0njylfn7qc5fmwrk2137gdq7djqdsw347paa9c2l"; })
|
||||||
(fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
|
(fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
|
||||||
|
|
|
@ -76,14 +76,14 @@ let
|
||||||
urllib3
|
urllib3
|
||||||
];
|
];
|
||||||
in mkDerivation rec {
|
in mkDerivation rec {
|
||||||
version = "3.28.13";
|
version = "3.28.14";
|
||||||
pname = "qgis-ltr-unwrapped";
|
pname = "qgis-ltr-unwrapped";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "qgis";
|
owner = "qgis";
|
||||||
repo = "QGIS";
|
repo = "QGIS";
|
||||||
rev = "final-${lib.replaceStrings [ "." ] [ "_" ] version}";
|
rev = "final-${lib.replaceStrings [ "." ] [ "_" ] version}";
|
||||||
hash = "sha256-5UHyRxWFqhTq97VNb8AU8QYGaY0lmGB8bo8yXp1vnFQ=";
|
hash = "sha256-BiBrnma6HlaRF2kC/AwbdhRaZOYrJ7lzDLdJfjkDmfk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
|
|
|
@ -77,14 +77,14 @@ let
|
||||||
urllib3
|
urllib3
|
||||||
];
|
];
|
||||||
in mkDerivation rec {
|
in mkDerivation rec {
|
||||||
version = "3.34.1";
|
version = "3.34.2";
|
||||||
pname = "qgis-unwrapped";
|
pname = "qgis-unwrapped";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "qgis";
|
owner = "qgis";
|
||||||
repo = "QGIS";
|
repo = "QGIS";
|
||||||
rev = "final-${lib.replaceStrings [ "." ] [ "_" ] version}";
|
rev = "final-${lib.replaceStrings [ "." ] [ "_" ] version}";
|
||||||
hash = "sha256-y+MATjhGUh0Qu4mNRALmP04Zd2/ozvaJnJDdM38Cy+w=";
|
hash = "sha256-RKxIJpp0lmRqyMYJuX2U4/GJh0FTnklFOcUft6LsuHc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
|
|
|
@ -31,11 +31,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "saga";
|
pname = "saga";
|
||||||
version = "9.2.0";
|
version = "9.3.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/saga-gis/saga-${version}.tar.gz";
|
url = "mirror://sourceforge/saga-gis/saga-${version}.tar.gz";
|
||||||
sha256 = "sha256-jHZi1c1M5WQfqBmtIvI7S9mWNXmzGUsvgJICvXbSjVc=";
|
sha256 = "sha256-zBdp4Eyzpc21zhA2+UD6LrXNH+sSfb0avOscxCbGxjE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
sourceRoot = "saga-${version}/saga-gis";
|
sourceRoot = "saga-${version}/saga-gis";
|
||||||
|
|
|
@ -3,13 +3,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "goxel";
|
pname = "goxel";
|
||||||
version = "0.12.0";
|
version = "0.13.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "guillaumechereau";
|
owner = "guillaumechereau";
|
||||||
repo = "goxel";
|
repo = "goxel";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-taDe5xJU6ijikHaSMDYs/XE2O66X3J7jOKWzbj7hrN0=";
|
hash = "sha256-mB4ln2uIhK/hsX+hUpeZ8H4aumaAUl5vaFkqolJtLRg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ scons pkg-config wrapGAppsHook ];
|
nativeBuildInputs = [ scons pkg-config wrapGAppsHook ];
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, makeWrapper, cmake, ninja, pkg-config, m4, bash
|
{ lib, stdenv, fetchFromGitHub, makeWrapper, cmake, ninja, pkg-config, m4, perl, bash
|
||||||
, xdg-utils, zip, unzip, gzip, bzip2, gnutar, p7zip, xz
|
, xdg-utils, zip, unzip, gzip, bzip2, gnutar, p7zip, xz
|
||||||
, IOKit, Carbon, Cocoa, AudioToolbox, OpenGL, System
|
, IOKit, Carbon, Cocoa, AudioToolbox, OpenGL, System
|
||||||
, withTTYX ? true, libX11
|
, withTTYX ? true, libX11
|
||||||
|
@ -14,18 +14,16 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "far2l";
|
pname = "far2l";
|
||||||
version = "2.4.1";
|
version = "2.5.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "elfmz";
|
owner = "elfmz";
|
||||||
repo = "far2l";
|
repo = "far2l";
|
||||||
rev = "v_${version}";
|
rev = "v_${version}";
|
||||||
sha256 = "sha256-0t1ND6LmDcivfrZ8RaEr1vjeS5JtaeWkoHkl2e7Xr5s=";
|
sha256 = "sha256-aK6+7ChFAkeDiEYU2llBb//PBej2Its/wBeuG7ys/ew=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./python_prebuild.patch ];
|
nativeBuildInputs = [ cmake ninja pkg-config m4 perl makeWrapper ];
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ninja pkg-config m4 makeWrapper ];
|
|
||||||
|
|
||||||
buildInputs = lib.optional withTTYX libX11
|
buildInputs = lib.optional withTTYX libX11
|
||||||
++ lib.optional withGUI wxGTK32
|
++ lib.optional withGUI wxGTK32
|
||||||
|
@ -39,21 +37,21 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
patchShebangs python/src/prebuild.sh
|
patchShebangs python/src/prebuild.sh
|
||||||
substituteInPlace far2l/src/vt/vtcompletor.cpp \
|
patchShebangs far2l/bootstrap/view.sh
|
||||||
--replace '"/bin/bash"' '"${bash}/bin/bash"'
|
|
||||||
substituteInPlace far2l/src/cfg/config.cpp \
|
|
||||||
--replace '"/bin/bash"' '"${bash}/bin/bash"'
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
cmakeFlags = lib.mapAttrsToList (k: v: "-D${k}=${if v then "yes" else "no"}") {
|
cmakeFlags = [
|
||||||
TTYX = withTTYX;
|
(lib.cmakeBool "TTYX" withTTYX)
|
||||||
USEWX = withGUI;
|
(lib.cmakeBool "USEWX" withGUI)
|
||||||
USEUCD = withUCD;
|
(lib.cmakeBool "USEUCD" withUCD)
|
||||||
COLORER = withColorer;
|
(lib.cmakeBool "COLORER" withColorer)
|
||||||
MULTIARC = withMultiArc;
|
(lib.cmakeBool "MULTIARC" withMultiArc)
|
||||||
NETROCKS = withNetRocks;
|
(lib.cmakeBool "NETROCKS" withNetRocks)
|
||||||
PYTHON = withPython;
|
(lib.cmakeBool "PYTHON" withPython)
|
||||||
};
|
] ++ lib.optionals withPython [
|
||||||
|
(lib.cmakeFeature "VIRTUAL_PYTHON" "python")
|
||||||
|
(lib.cmakeFeature "VIRTUAL_PYTHON_VERSION" "python")
|
||||||
|
];
|
||||||
|
|
||||||
runtimeDeps = [ unzip zip p7zip xz gzip bzip2 gnutar ];
|
runtimeDeps = [ unzip zip p7zip xz gzip bzip2 gnutar ];
|
||||||
|
|
||||||
|
|
|
@ -1,20 +0,0 @@
|
||||||
diff --git i/python/src/prebuild.sh w/python/src/prebuild.sh
|
|
||||||
index d2847ee5..aa1ecc53 100755
|
|
||||||
--- i/python/src/prebuild.sh
|
|
||||||
+++ w/python/src/prebuild.sh
|
|
||||||
@@ -12,9 +12,6 @@ mkdir -p "$DST/incpy"
|
|
||||||
if [ ! -f "$DST/python/.prepared" ]; then
|
|
||||||
echo "Preparing python virtual env at $DST/python using $PYTHON"
|
|
||||||
mkdir -p "$DST/python"
|
|
||||||
- $PYTHON -m venv --system-site-packages "$DST/python"
|
|
||||||
- "$DST/python/bin/python" -m pip install --upgrade pip || true
|
|
||||||
- "$DST/python/bin/python" -m pip install --ignore-installed cffi debugpy pcpp
|
|
||||||
$PREPROCESSOR "$SRC/python/src/consts.gen" | sh > "${DST}/incpy/consts.h"
|
|
||||||
|
|
||||||
echo "1" > "$DST/python/.prepared"
|
|
||||||
@@ -26,4 +23,4 @@ cp -f -R \
|
|
||||||
"$SRC/python/configs/plug/far2l/"* \
|
|
||||||
"$DST/incpy/"
|
|
||||||
|
|
||||||
-"$DST/python/bin/python" "$SRC/python/src/pythongen.py" "${SRC}" "${DST}/incpy"
|
|
||||||
+"python" "$SRC/python/src/pythongen.py" "${SRC}" "${DST}/incpy"
|
|
|
@ -480,5 +480,5 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
} // lib.optionalAttrs config.allowAliases {
|
} // lib.optionalAttrs config.allowAliases {
|
||||||
octoprint-dashboard = self.dashboard;
|
octoprint-dashboard = super.dashboard;
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,13 +29,13 @@ let
|
||||||
};
|
};
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "organicmaps";
|
pname = "organicmaps";
|
||||||
version = "2023.11.17-17";
|
version = "2023.12.20-4";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "organicmaps";
|
owner = "organicmaps";
|
||||||
repo = "organicmaps";
|
repo = "organicmaps";
|
||||||
rev = "${version}-android";
|
rev = "${version}-android";
|
||||||
hash = "sha256-3oGcupO49+ZXyW+ii4T+wov4qweDnLO+VkXSAIh7qJ4=";
|
hash = "sha256-9yQMBP5Jta6P/FmYL6Ek3MzU1DKtVEwlwYAkNxC5pn4=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "revanced-cli";
|
pname = "revanced-cli";
|
||||||
version = "4.3.0";
|
version = "4.4.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/revanced/revanced-cli/releases/download/v${version}/revanced-cli-${version}-all.jar";
|
url = "https://github.com/revanced/revanced-cli/releases/download/v${version}/revanced-cli-${version}-all.jar";
|
||||||
hash = "sha256-D/4zR5PvcZqv8yyNIzbnYnGoHDrPQAeHyrN/G4QsTB0=";
|
hash = "sha256-ydP9iPClWNKlbBhsNC1bzqfJYRyit1WsxIgwbQQbgi8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
|
@ -2,23 +2,23 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "sqls";
|
pname = "sqls";
|
||||||
version = "0.2.22";
|
version = "0.2.28";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "lighttiger2505";
|
owner = "sqls-server";
|
||||||
repo = pname;
|
repo = "sqls";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-xtvm/NVL98dRzQL1id/WwT/NdsnB7qTRVR7jfrRsabY=";
|
hash = "sha256-b3zLyj2n+eKOPBRooS68GfM0bsiTVXDblYKyBYKiYug=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-sowzyhvNr7Ek3ex4BP415HhHSKnqPHy5EbnECDVZOGw=";
|
vendorHash = "sha256-6IFJvdT7YLnWsg7Icd3nKXXHM6TZKZ+IG9nEBosRCwA=";
|
||||||
|
|
||||||
ldflags = [ "-s" "-w" "-X main.version=${version}" "-X main.revision=${src.rev}" ];
|
ldflags = [ "-s" "-w" "-X main.version=${version}" "-X main.revision=${src.rev}" ];
|
||||||
|
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = "https://github.com/lighttiger2505/sqls";
|
homepage = "https://github.com/sqls-server/sqls";
|
||||||
description = "SQL language server written in Go";
|
description = "SQL language server written in Go";
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
maintainers = [ maintainers.marsam ];
|
maintainers = [ maintainers.marsam ];
|
||||||
|
|
|
@ -1,66 +0,0 @@
|
||||||
{ lib, buildGoPackage, fetchFromGitHub, go-bindata, pkg-config, makeWrapper
|
|
||||||
, glib, gtk3, libappindicator-gtk3, gpgme, openshift, ostree, libselinux, btrfs-progs
|
|
||||||
, lvm2, docker-machine-kvm
|
|
||||||
}:
|
|
||||||
|
|
||||||
let
|
|
||||||
version = "1.34.3";
|
|
||||||
|
|
||||||
# Update these on version bumps according to Makefile
|
|
||||||
centOsIsoVersion = "v1.17.0";
|
|
||||||
openshiftVersion = "v3.11.0";
|
|
||||||
|
|
||||||
in buildGoPackage rec {
|
|
||||||
pname = "minishift";
|
|
||||||
inherit version;
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "minishift";
|
|
||||||
repo = "minishift";
|
|
||||||
rev = "v${version}";
|
|
||||||
sha256 = "0yhln3kyc0098hbnjyxhbd915g6j7s692c0z8yrhh9gdpc5cr2aa";
|
|
||||||
};
|
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config go-bindata makeWrapper ];
|
|
||||||
buildInputs = [ glib gtk3 libappindicator-gtk3 gpgme ostree libselinux btrfs-progs lvm2 ];
|
|
||||||
|
|
||||||
goPackagePath = "github.com/minishift/minishift";
|
|
||||||
subPackages = [ "cmd/minishift" ];
|
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
# minishift downloads openshift if not found therefore set the cache to /nix/store/...
|
|
||||||
substituteInPlace pkg/minishift/cache/oc_caching.go \
|
|
||||||
--replace 'filepath.Join(oc.MinishiftCacheDir, OC_CACHE_DIR, oc.OpenShiftVersion, runtime.GOOS)' '"${openshift}/bin"' \
|
|
||||||
--replace '"runtime"' ""
|
|
||||||
'';
|
|
||||||
|
|
||||||
ldflags = [
|
|
||||||
"-X ${goPackagePath}/pkg/version.minishiftVersion=${version}"
|
|
||||||
"-X ${goPackagePath}/pkg/version.centOsIsoVersion=${centOsIsoVersion}"
|
|
||||||
"-X ${goPackagePath}/pkg/version.openshiftVersion=${openshiftVersion}"
|
|
||||||
];
|
|
||||||
|
|
||||||
preBuild = ''
|
|
||||||
(cd go/src/github.com/minishift/minishift
|
|
||||||
mkdir -p out/bindata
|
|
||||||
go-bindata -prefix addons -o out/bindata/addon_assets.go -pkg bindata addons/...)
|
|
||||||
'';
|
|
||||||
|
|
||||||
postInstall = ''
|
|
||||||
wrapProgram "$out/bin/minishift" \
|
|
||||||
--prefix PATH ':' '${lib.makeBinPath [ docker-machine-kvm openshift ]}'
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
description = "Run OpenShift locally";
|
|
||||||
longDescription = ''
|
|
||||||
Minishift is a tool that helps you run OpenShift locally by running
|
|
||||||
a single-node OpenShift cluster inside a VM. You can try out OpenShift
|
|
||||||
or develop with it, day-to-day, on your local host.
|
|
||||||
'';
|
|
||||||
homepage = "https://github.com/minishift/minishift";
|
|
||||||
maintainers = with maintainers; [ vdemeester ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.asl20;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "talosctl";
|
pname = "talosctl";
|
||||||
version = "1.6.0";
|
version = "1.6.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "siderolabs";
|
owner = "siderolabs";
|
||||||
repo = "talos";
|
repo = "talos";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-Mcc9lfnhSbVA5tNHUtBgfQEGVyen4KZ/V9OeV8PxAYQ=";
|
hash = "sha256-xJKYnKJ0qvgVZ2I7O+qYO/ujuW03B+DykXO/ZYLgoyU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-VeUDyiJ0R27Xrf+79f0soELKvR2xaK5ocbvhCzP9eFk=";
|
vendorHash = "sha256-CIDCUIk0QFSHM2gc1XpD6Ih11zXbCDDeSf5vf6loI9w=";
|
||||||
|
|
||||||
ldflags = [ "-s" "-w" ];
|
ldflags = [ "-s" "-w" ];
|
||||||
|
|
||||||
|
|
|
@ -5,16 +5,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "terragrunt";
|
pname = "terragrunt";
|
||||||
version = "0.54.10";
|
version = "0.54.12";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "gruntwork-io";
|
owner = "gruntwork-io";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-0cciBPMK2ceRSyV0zt5o/SgHDUzbtMj/BmLzqsMf/7g=";
|
hash = "sha256-fKZd4WlU011LCrh6jLyEecm5jEbX/CF5Vk0PMQbznx0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-nz/mIMLgYF2HjN0jalCqUni143VKjFUMBc/0GaEG20U=";
|
vendorHash = "sha256-ey2PHpNK4GBE6FlXTYlbYhtG1re3OflbYnQmti9fS9k=";
|
||||||
|
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
|
|
|
@ -14,8 +14,8 @@ let
|
||||||
src-cmake = fetchFromGitHub {
|
src-cmake = fetchFromGitHub {
|
||||||
owner = "zeek";
|
owner = "zeek";
|
||||||
repo = "cmake";
|
repo = "cmake";
|
||||||
rev = "b191c36167bc0d6bd9f059b01ad4c99be98488d9";
|
rev = "1be78cc8a889d95db047f473a0f48e0baee49f33";
|
||||||
hash = "sha256-h6xPCcdTnREeDsGQhWt2w4yJofpr7g4a8xCOB2e0/qQ=";
|
hash = "sha256-zcXWP8CHx0RSDGpRTrYD99lHlqSbvaliXrtFowPfhBk=";
|
||||||
};
|
};
|
||||||
src-3rdparty = fetchFromGitHub {
|
src-3rdparty = fetchFromGitHub {
|
||||||
owner = "zeek";
|
owner = "zeek";
|
||||||
|
@ -37,9 +37,9 @@ let
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
});
|
});
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation rec {
|
||||||
pname = "zeek-broker";
|
pname = "zeek-broker";
|
||||||
version = "unstable-2023-02-01";
|
version = "2.7.0";
|
||||||
outputs = [ "out" "py" ];
|
outputs = [ "out" "py" ];
|
||||||
|
|
||||||
strictDeps = true;
|
strictDeps = true;
|
||||||
|
@ -47,8 +47,8 @@ stdenv.mkDerivation {
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "zeek";
|
owner = "zeek";
|
||||||
repo = "broker";
|
repo = "broker";
|
||||||
rev = "3df8d35732d51e3bd41db067260998e79e93f366";
|
rev = "v${version}";
|
||||||
hash = "sha256-37JIgbG12zd13YhfgVb4egzi80fUcZVj/s+yvsjcP7E=";
|
hash = "sha256-fwLqw7PPYUDm+eJxDpCtY/W6XianqBDPHOhzDQoooYo=";
|
||||||
};
|
};
|
||||||
postUnpack = ''
|
postUnpack = ''
|
||||||
rmdir $sourceRoot/cmake $sourceRoot/3rdparty
|
rmdir $sourceRoot/cmake $sourceRoot/3rdparty
|
||||||
|
@ -64,6 +64,10 @@ stdenv.mkDerivation {
|
||||||
./0001-Fix-include-path-in-exported-CMake-targets.patch
|
./0001-Fix-include-path-in-exported-CMake-targets.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
|
postPatch = lib.optionalString stdenv.isDarwin ''
|
||||||
|
substituteInPlace bindings/python/CMakeLists.txt --replace " -u -r" ""
|
||||||
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
buildInputs = [ openssl python3.pkgs.pybind11 ];
|
buildInputs = [ openssl python3.pkgs.pybind11 ];
|
||||||
propagatedBuildInputs = [ caf' ];
|
propagatedBuildInputs = [ caf' ];
|
||||||
|
|
|
@ -26,11 +26,11 @@ let
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "zeek";
|
pname = "zeek";
|
||||||
version = "6.0.2";
|
version = "6.1.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.zeek.org/zeek-${version}.tar.gz";
|
url = "https://download.zeek.org/zeek-${version}.tar.gz";
|
||||||
sha256 = "sha256-JCGYmtzuain0io9ycvcZ7b6VTWbC6G46Uuecrhd/iHw=";
|
sha256 = "sha256-+3VvS5eAl1W13sOJJ8SUd/8GqmR9/NK4gCWxvhtqNY4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
strictDeps = true;
|
strictDeps = true;
|
||||||
|
|
|
@ -2,7 +2,7 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
index 4d3da0c90..d37931c1b 100644
|
index 4d3da0c90..d37931c1b 100644
|
||||||
--- a/CMakeLists.txt
|
--- a/CMakeLists.txt
|
||||||
+++ b/CMakeLists.txt
|
+++ b/CMakeLists.txt
|
||||||
@@ -503,11 +503,6 @@ if (NOT MSVC)
|
@@ -508,11 +508,6 @@ if (NOT MSVC)
|
||||||
set(HAVE_SUPERVISOR true)
|
set(HAVE_SUPERVISOR true)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
|
@ -11,11 +11,11 @@ index 4d3da0c90..d37931c1b 100644
|
||||||
-install(DIRECTORY DESTINATION ${ZEEK_SPOOL_DIR})
|
-install(DIRECTORY DESTINATION ${ZEEK_SPOOL_DIR})
|
||||||
-install(DIRECTORY DESTINATION ${ZEEK_LOG_DIR})
|
-install(DIRECTORY DESTINATION ${ZEEK_LOG_DIR})
|
||||||
-
|
-
|
||||||
configure_file(zeek-path-dev.in ${CMAKE_CURRENT_BINARY_DIR}/zeek-path-dev)
|
configure_file(cmake_templates/zeek-path-dev.in ${CMAKE_CURRENT_BINARY_DIR}/zeek-path-dev)
|
||||||
|
|
||||||
file(
|
file(
|
||||||
@@ -1198,7 +1193,7 @@ if (INSTALL_ZKG)
|
@@ -1201,7 +1201,7 @@ if (INSTALL_ZKG)
|
||||||
@ONLY)
|
${CMAKE_CURRENT_BINARY_DIR}/zkg-config @ONLY)
|
||||||
|
|
||||||
install(DIRECTORY DESTINATION var/lib/zkg)
|
install(DIRECTORY DESTINATION var/lib/zkg)
|
||||||
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/zkg-config DESTINATION ${ZEEK_ZKG_CONFIG_DIR}
|
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/zkg-config DESTINATION ${ZEEK_ZKG_CONFIG_DIR}
|
||||||
|
@ -37,7 +37,7 @@ index 1ebe7c2..1435509 100644
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
## Dependency Configuration
|
## Dependency Configuration
|
||||||
@@ -200,38 +200,9 @@ else ()
|
@@ -186,38 +186,9 @@ else ()
|
||||||
set(LOGS ${VAR}/logs)
|
set(LOGS ${VAR}/logs)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
|
|
|
@ -13,16 +13,16 @@
|
||||||
|
|
||||||
buildNpmPackage rec {
|
buildNpmPackage rec {
|
||||||
pname = "webcord";
|
pname = "webcord";
|
||||||
version = "4.6.0";
|
version = "4.6.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "SpacingBat3";
|
owner = "SpacingBat3";
|
||||||
repo = "WebCord";
|
repo = "WebCord";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-d/+ATnDh+c3Jr3VY+KrMxTuNtB9o14wn2Z5KXtk1B2c=";
|
hash = "sha256-4ePjRs9CEnDHq9iVcQNEkefl0YP/tc1ePLhW/w9NPDs=";
|
||||||
};
|
};
|
||||||
|
|
||||||
npmDepsHash = "sha256-XfACVvK7nOrgduGO71pCEAXtYPqjXA9/1y+w4hahdi0=";
|
npmDepsHash = "sha256-UzwLORlUeTMq3RyOHpvBrbxbwgpMBsbmfyXBhpB6pOQ=";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
copyDesktopItems
|
copyDesktopItems
|
||||||
|
|
|
@ -18,17 +18,19 @@
|
||||||
, indilib
|
, indilib
|
||||||
, libnova
|
, libnova
|
||||||
, qttools
|
, qttools
|
||||||
|
, exiv2
|
||||||
|
, nlopt
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "stellarium";
|
pname = "stellarium";
|
||||||
version = "23.3";
|
version = "23.4";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Stellarium";
|
owner = "Stellarium";
|
||||||
repo = "stellarium";
|
repo = "stellarium";
|
||||||
rev = "v${version}";
|
rev = "v${finalAttrs.version}";
|
||||||
hash = "sha256-bYvGmYu9jMHk2IUICz2kCVh56Ymz8JHqurdWV+xEdJY=";
|
hash = "sha256-rDqDs6sFaZQbqJcCRhY5w8sFM2mYHHvw0Ud2Niimg4Y=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
@ -66,12 +68,14 @@ stdenv.mkDerivation rec {
|
||||||
qxlsx
|
qxlsx
|
||||||
indilib
|
indilib
|
||||||
libnova
|
libnova
|
||||||
|
exiv2
|
||||||
|
nlopt
|
||||||
] ++ lib.optionals stdenv.isLinux [
|
] ++ lib.optionals stdenv.isLinux [
|
||||||
qtwayland
|
qtwayland
|
||||||
];
|
];
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
export SOURCE_DATE_EPOCH=$(date -d 20${lib.versions.major version}0101 +%s)
|
export SOURCE_DATE_EPOCH=$(date -d 20${lib.versions.major finalAttrs.version}0101 +%s)
|
||||||
'' + lib.optionalString stdenv.isDarwin ''
|
'' + lib.optionalString stdenv.isDarwin ''
|
||||||
export LC_ALL=en_US.UTF-8
|
export LC_ALL=en_US.UTF-8
|
||||||
'';
|
'';
|
||||||
|
@ -89,11 +93,11 @@ stdenv.mkDerivation rec {
|
||||||
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
|
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
description = "Free open-source planetarium";
|
description = "Free open-source planetarium";
|
||||||
homepage = "https://stellarium.org/";
|
homepage = "https://stellarium.org/";
|
||||||
license = licenses.gpl2Plus;
|
license = lib.licenses.gpl2Plus;
|
||||||
platforms = platforms.unix;
|
platforms = lib.platforms.unix;
|
||||||
maintainers = with maintainers; [ kilianar ];
|
maintainers = with lib.maintainers; [ kilianar ];
|
||||||
};
|
};
|
||||||
}
|
})
|
||||||
|
|
|
@ -18,15 +18,15 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "stgit";
|
pname = "stgit";
|
||||||
version = "2.4.1";
|
version = "2.4.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "stacked-git";
|
owner = "stacked-git";
|
||||||
repo = "stgit";
|
repo = "stgit";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-5fMGWqvGbpRVAgarNO0zV8ID+X/RnguGHF927syCXGg=";
|
hash = "sha256-Rdpi20FRtSYQtYfBvLr+2hghpHKSSDoUZBQqm2nxZxk=";
|
||||||
};
|
};
|
||||||
cargoHash = "sha256-U63r0tcxBTQMONHJp6WswqxTUH7uzw6a7Vc4Np1bATY=";
|
cargoHash = "sha256-vd2y6XYBlFU9gxd8hNj0srWqEuJAuXTOzt9GPD9q0yc=";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
pkg-config installShellFiles makeWrapper asciidoc xmlto docbook_xsl
|
pkg-config installShellFiles makeWrapper asciidoc xmlto docbook_xsl
|
||||||
|
|
5084
pkgs/applications/video/gyroflow/Cargo.lock
generated
Normal file
5084
pkgs/applications/video/gyroflow/Cargo.lock
generated
Normal file
File diff suppressed because it is too large
Load diff
126
pkgs/applications/video/gyroflow/default.nix
Normal file
126
pkgs/applications/video/gyroflow/default.nix
Normal file
|
@ -0,0 +1,126 @@
|
||||||
|
{ lib, rustPlatform, fetchFromGitHub, callPackage, makeDesktopItem
|
||||||
|
, clang, copyDesktopItems, patchelf, pkg-config, wrapQtAppsHook
|
||||||
|
, alsa-lib, bash, ffmpeg, mdk-sdk, ocl-icd, opencv, qtbase, qtdeclarative, qtsvg
|
||||||
|
}:
|
||||||
|
|
||||||
|
rustPlatform.buildRustPackage rec {
|
||||||
|
pname = "gyroflow";
|
||||||
|
version = "1.5.4-2023-12-25";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "gyroflow";
|
||||||
|
repo = "gyroflow";
|
||||||
|
rev = "e0869ffe648cb3fd88d81c807b1f7fa2e18d7430";
|
||||||
|
hash = "sha256-KB/uoQR43im/m5uJhheAPCqUH9oIx85JaIUwW9rhAAw=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoLock = {
|
||||||
|
lockFile = ./Cargo.lock;
|
||||||
|
outputHashes = {
|
||||||
|
"ahrs-0.6.0" = "sha256-CxWyX8t+BjqIyNj1p1LdkCmNrtJkudmKgZPv0MVcghY=";
|
||||||
|
"akaze-0.7.0" = "sha256-KkGXKoVRZZ7HUTtWYBerrN36a7RqsHjYQb+bwG1JagY=";
|
||||||
|
"d3d12-0.7.0" = "sha256-FqAVwW2jtDE1BV31OfrCJljGhj5iD0OfN2fANQ1wasc=";
|
||||||
|
"fc-blackbox-0.2.0" = "sha256-gL8m9DpHJPVD8vvrmuYv+biJT4PA5LmtohJwFVO+khU=";
|
||||||
|
"glow-0.13.0" = "sha256-vhPWzsm7NZx9JiRZcVoUslTGySQbASRh/wNlo1nK5jg=";
|
||||||
|
"keep-awake-0.1.0" = "sha256-EoXhK4/Aij70f73+5NBUoCXqZISG1+n2eVavNqe8mq4=";
|
||||||
|
"nshare-0.9.0" = "sha256-PAV41mMLDmhkAz4+qyf+MZnYTAdMwjk83+f+RdaJji8=";
|
||||||
|
"qmetaobject-0.2.10" = "sha256-ldmpbOYoCOaAoipfcCSwuV+fzF9gg1PTbRz2Jm4zJvA=";
|
||||||
|
"qml-video-rs-0.1.0" = "sha256-rwdci0QhGYOnCf04u61xuon06p8Zm2wKCNrW/qti9+U=";
|
||||||
|
"rs-sync-0.1.0" = "sha256-sfym7zv5SUitopqNJ6uFP6AMzAGf4Y7U0dzXAKlvuGA=";
|
||||||
|
"simplelog-0.12.0" = "sha256-NvmtLbzahSw1WMS3LY+jWiX4SxfSRwidTMvICGcmDO4=";
|
||||||
|
"system_shutdown-4.0.1" = "sha256-arJWmEjDdaig/oAfwSolVmk9s1UovrQ5LNUgTpUvoOQ=";
|
||||||
|
"telemetry-parser-0.2.8" = "sha256-Nr4SWEERKEAiZppqzjn1LIuMiZ2BTQEOKOlSnLVAXAg=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
lens-profiles = callPackage ./lens-profiles.nix { };
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
clang copyDesktopItems patchelf pkg-config rustPlatform.bindgenHook wrapQtAppsHook
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [ alsa-lib bash ffmpeg mdk-sdk ocl-icd opencv qtbase qtdeclarative qtsvg ];
|
||||||
|
|
||||||
|
patches = [ ./no-static-zlib.patch ];
|
||||||
|
|
||||||
|
# qml-video-rs and gyroflow assume that all Qt headers are installed
|
||||||
|
# in a single (qtbase) directory. Apart form QtCore and QtGui from
|
||||||
|
# qtbase they need QtQuick and QtQml public and private headers from
|
||||||
|
# qtdeclarative:
|
||||||
|
# https://github.com/AdrianEddy/qml-video-rs/blob/bbf60090b966f0df2dd016e01da2ea78666ecea2/build.rs#L22-L40
|
||||||
|
# https://github.com/gyroflow/gyroflow/blob/v1.5.4/build.rs#L163-L186
|
||||||
|
# Additionally gyroflow needs QtQuickControls2:
|
||||||
|
# https://github.com/gyroflow/gyroflow/blob/v1.5.4/build.rs#L173
|
||||||
|
env.NIX_CFLAGS_COMPILE = toString [
|
||||||
|
"-I${qtdeclarative}/include/QtQuick"
|
||||||
|
"-I${qtdeclarative}/include/QtQuick/${qtdeclarative.version}"
|
||||||
|
"-I${qtdeclarative}/include/QtQuick/${qtdeclarative.version}/QtQuick"
|
||||||
|
"-I${qtdeclarative}/include/QtQml"
|
||||||
|
"-I${qtdeclarative}/include/QtQml/${qtdeclarative.version}"
|
||||||
|
"-I${qtdeclarative}/include/QtQml/${qtdeclarative.version}/QtQml"
|
||||||
|
"-I${qtdeclarative}/include/QtQuickControls2"
|
||||||
|
];
|
||||||
|
|
||||||
|
# FFMPEG_DIR is used by ffmpeg-sys-next/build.rs and
|
||||||
|
# gyroflow/build.rs. ffmpeg-sys-next fails to build if this dir
|
||||||
|
# does not contain ffmpeg *headers*. gyroflow assumes that it
|
||||||
|
# contains ffmpeg *libraries*, but builds fine as long as it is set
|
||||||
|
# with any value.
|
||||||
|
env.FFMPEG_DIR = ffmpeg.dev;
|
||||||
|
|
||||||
|
# These variables are needed by gyroflow/build.rs.
|
||||||
|
# OPENCV_LINK_LIBS is based on the value in gyroflow/_scripts/common.just, with opencv_dnn added to fix linking.
|
||||||
|
env.OPENCV_LINK_PATHS = "${opencv}/lib";
|
||||||
|
env.OPENCV_LINK_LIBS = "opencv_core,opencv_calib3d,opencv_dnn,opencv_features2d,opencv_imgproc,opencv_video,opencv_flann,opencv_imgcodecs,opencv_objdetect,opencv_stitching,png";
|
||||||
|
|
||||||
|
# For qml-video-rs. It concatenates "lib/" to this value so it needs a trailing "/":
|
||||||
|
env.MDK_SDK = "${mdk-sdk}/";
|
||||||
|
|
||||||
|
preCheck = ''
|
||||||
|
# qml-video-rs/build.rs wants to overwrite it:
|
||||||
|
find target -name libmdk.so.0 -exec chmod +w {} \;
|
||||||
|
'';
|
||||||
|
|
||||||
|
doCheck = false; # No tests.
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
mkdir -p $out/opt/Gyroflow
|
||||||
|
cp -r resources $out/opt/Gyroflow/
|
||||||
|
ln -s ${lens-profiles} $out/opt/Gyroflow/resources/camera_presets
|
||||||
|
|
||||||
|
rm -rf $out/lib
|
||||||
|
patchelf $out/bin/gyroflow --add-rpath ${mdk-sdk}/lib
|
||||||
|
|
||||||
|
mv $out/bin/gyroflow $out/opt/Gyroflow/
|
||||||
|
ln -s ../opt/Gyroflow/gyroflow $out/bin/
|
||||||
|
|
||||||
|
install -D ${./gyroflow-open.sh} $out/bin/gyroflow-open
|
||||||
|
install -Dm644 ${./gyroflow-mime.xml} $out/share/mime/packages/gyroflow.xml
|
||||||
|
install -Dm644 resources/icon.svg $out/share/icons/hicolor/scalable/apps/gyroflow.svg
|
||||||
|
'';
|
||||||
|
|
||||||
|
desktopItems = [
|
||||||
|
(makeDesktopItem (rec {
|
||||||
|
name = "gyroflow";
|
||||||
|
desktopName = "Gyroflow";
|
||||||
|
genericName = "Video stabilization using gyroscope data";
|
||||||
|
comment = meta.description;
|
||||||
|
icon = "gyroflow";
|
||||||
|
exec = "gyroflow-open %u";
|
||||||
|
terminal = false;
|
||||||
|
mimeTypes = [ "application/x-gyroflow" ];
|
||||||
|
categories = [ "AudioVideo" "Video" "AudioVideoEditing" "Qt" ];
|
||||||
|
startupNotify = true;
|
||||||
|
startupWMClass = "gyroflow";
|
||||||
|
prefersNonDefaultGPU = true;
|
||||||
|
}))
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Advanced gyro-based video stabilization tool";
|
||||||
|
homepage = "https://gyroflow.xyz/";
|
||||||
|
license = licenses.gpl3Plus;
|
||||||
|
maintainers = with maintainers; [ orivej ];
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
8
pkgs/applications/video/gyroflow/gyroflow-mime.xml
Normal file
8
pkgs/applications/video/gyroflow/gyroflow-mime.xml
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
|
||||||
|
<mime-type type="application/x-gyroflow">
|
||||||
|
<glob pattern="*.gyroflow"/>
|
||||||
|
<comment xml:lang="en">Gyroflow project</comment>
|
||||||
|
<icon name="gyroflow"/>
|
||||||
|
</mime-type>
|
||||||
|
</mime-info>
|
6
pkgs/applications/video/gyroflow/gyroflow-open.sh
Normal file
6
pkgs/applications/video/gyroflow/gyroflow-open.sh
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
if [ "$#" -ge 1 ]; then
|
||||||
|
exec "$(dirname "$0")"/gyroflow --open "$@"
|
||||||
|
else
|
||||||
|
exec "$(dirname "$0")"/gyroflow "$@"
|
||||||
|
fi
|
19
pkgs/applications/video/gyroflow/lens-profiles.nix
Normal file
19
pkgs/applications/video/gyroflow/lens-profiles.nix
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
{ lib, fetchFromGitHub }:
|
||||||
|
|
||||||
|
fetchFromGitHub {
|
||||||
|
pname = "gyroflow-lens-profiles";
|
||||||
|
version = "2023-12-01";
|
||||||
|
|
||||||
|
owner = "gyroflow";
|
||||||
|
repo = "lens_profiles";
|
||||||
|
rev = "3e72169ae6b8601260497d7216d5fcbbc8b67194";
|
||||||
|
hash = "sha256-18KtunSxTsJhBge+uOGBcNZRG3W26M/Osyxllu+N0UI=";
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Lens profile database for Gyroflow";
|
||||||
|
homepage = "https://github.com/gyroflow/lens_profiles";
|
||||||
|
license = licenses.cc0;
|
||||||
|
maintainers = with maintainers; [ orivej ];
|
||||||
|
platforms = lib.platforms.all;
|
||||||
|
};
|
||||||
|
}
|
6
pkgs/applications/video/gyroflow/no-static-zlib.patch
Normal file
6
pkgs/applications/video/gyroflow/no-static-zlib.patch
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
diff --git a/build.rs b/build.rs
|
||||||
|
index 8ba86bf..f6f00a0 100644
|
||||||
|
--- a/build.rs
|
||||||
|
+++ b/build.rs
|
||||||
|
@@ -203 +202,0 @@ fn main() {
|
||||||
|
- println!("cargo:rustc-link-lib=static:+whole-archive=z");
|
|
@ -7,13 +7,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "obs-move-transition";
|
pname = "obs-move-transition";
|
||||||
version = "2.9.6";
|
version = "2.9.8";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "exeldro";
|
owner = "exeldro";
|
||||||
repo = "obs-move-transition";
|
repo = "obs-move-transition";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-A3R78JvjOdYE9/ZZ+KbZ5Ula9HC5E/u7BrqE2i6VwYs=";
|
sha256 = "sha256-GOLmwXAK2g8IyI+DFH2sBOR2iknYdgYevytZpt3Cc7Q=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
|
@ -2,7 +2,11 @@
|
||||||
|
|
||||||
{ lib, stdenv, emacs, texinfo, writeText, gcc }:
|
{ lib, stdenv, emacs, texinfo, writeText, gcc }:
|
||||||
|
|
||||||
with lib;
|
let
|
||||||
|
handledArgs = [ "files" "fileSpecs" "meta" ];
|
||||||
|
genericBuild = import ./generic.nix { inherit lib stdenv emacs texinfo writeText gcc; };
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
{ pname
|
{ pname
|
||||||
, version
|
, version
|
||||||
|
@ -11,15 +15,7 @@ with lib;
|
||||||
, ...
|
, ...
|
||||||
}@args:
|
}@args:
|
||||||
|
|
||||||
let
|
genericBuild ({
|
||||||
|
|
||||||
defaultMeta = {
|
|
||||||
homepage = args.src.meta.homepage or "https://elpa.gnu.org/packages/${pname}.html";
|
|
||||||
};
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
import ./generic.nix { inherit lib stdenv emacs texinfo writeText gcc; } ({
|
|
||||||
|
|
||||||
dontUnpack = true;
|
dontUnpack = true;
|
||||||
|
|
||||||
|
@ -33,9 +29,9 @@ import ./generic.nix { inherit lib stdenv emacs texinfo writeText gcc; } ({
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = defaultMeta // meta;
|
meta = {
|
||||||
|
homepage = args.src.meta.homepage or "https://elpa.gnu.org/packages/${pname}.html";
|
||||||
|
} // meta;
|
||||||
}
|
}
|
||||||
|
|
||||||
// removeAttrs args [ "files" "fileSpecs"
|
// removeAttrs args handledArgs)
|
||||||
"meta"
|
|
||||||
])
|
|
||||||
|
|
|
@ -2,6 +2,26 @@
|
||||||
|
|
||||||
{ lib, stdenv, emacs, texinfo, writeText, gcc, ... }:
|
{ lib, stdenv, emacs, texinfo, writeText, gcc, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
inherit (lib) optionalAttrs getLib;
|
||||||
|
handledArgs = [ "buildInputs" "packageRequires" "meta" ];
|
||||||
|
|
||||||
|
setupHook = writeText "setup-hook.sh" ''
|
||||||
|
source ${./emacs-funcs.sh}
|
||||||
|
|
||||||
|
if [[ ! -v emacsHookDone ]]; then
|
||||||
|
emacsHookDone=1
|
||||||
|
|
||||||
|
# If this is for a wrapper derivation, emacs and the dependencies are all
|
||||||
|
# run-time dependencies. If this is for precompiling packages into bytecode,
|
||||||
|
# emacs is a compile-time dependency of the package.
|
||||||
|
addEnvHooks "$hostOffset" addEmacsVars
|
||||||
|
addEnvHooks "$targetOffset" addEmacsVars
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
{ pname
|
{ pname
|
||||||
, version
|
, version
|
||||||
, buildInputs ? []
|
, buildInputs ? []
|
||||||
|
@ -10,15 +30,6 @@
|
||||||
, ...
|
, ...
|
||||||
}@args:
|
}@args:
|
||||||
|
|
||||||
let
|
|
||||||
defaultMeta = {
|
|
||||||
broken = false;
|
|
||||||
platforms = emacs.meta.platforms;
|
|
||||||
} // lib.optionalAttrs ((args.src.meta.homepage or "") != "") {
|
|
||||||
homepage = args.src.meta.homepage;
|
|
||||||
};
|
|
||||||
in
|
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: ({
|
stdenv.mkDerivation (finalAttrs: ({
|
||||||
name = "emacs-${pname}-${finalAttrs.version}";
|
name = "emacs-${pname}-${finalAttrs.version}";
|
||||||
|
|
||||||
|
@ -42,28 +53,21 @@ stdenv.mkDerivation (finalAttrs: ({
|
||||||
propagatedBuildInputs = packageRequires;
|
propagatedBuildInputs = packageRequires;
|
||||||
propagatedUserEnvPkgs = packageRequires;
|
propagatedUserEnvPkgs = packageRequires;
|
||||||
|
|
||||||
setupHook = writeText "setup-hook.sh" ''
|
inherit setupHook;
|
||||||
source ${./emacs-funcs.sh}
|
|
||||||
|
|
||||||
if [[ ! -v emacsHookDone ]]; then
|
|
||||||
emacsHookDone=1
|
|
||||||
|
|
||||||
# If this is for a wrapper derivation, emacs and the dependencies are all
|
|
||||||
# run-time dependencies. If this is for precompiling packages into bytecode,
|
|
||||||
# emacs is a compile-time dependency of the package.
|
|
||||||
addEnvHooks "$hostOffset" addEmacsVars
|
|
||||||
addEnvHooks "$targetOffset" addEmacsVars
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
|
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
meta = defaultMeta // meta;
|
meta = {
|
||||||
|
broken = false;
|
||||||
|
platforms = emacs.meta.platforms;
|
||||||
|
} // optionalAttrs ((args.src.meta.homepage or "") != "") {
|
||||||
|
homepage = args.src.meta.homepage;
|
||||||
|
} // meta;
|
||||||
}
|
}
|
||||||
|
|
||||||
// lib.optionalAttrs (emacs.withNativeCompilation or false) {
|
// optionalAttrs (emacs.withNativeCompilation or false) {
|
||||||
|
|
||||||
LIBRARY_PATH = "${lib.getLib stdenv.cc.libc}/lib";
|
LIBRARY_PATH = "${getLib stdenv.cc.libc}/lib";
|
||||||
|
|
||||||
nativeBuildInputs = [ gcc ];
|
nativeBuildInputs = [ gcc ];
|
||||||
|
|
||||||
|
@ -83,4 +87,4 @@ stdenv.mkDerivation (finalAttrs: ({
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|
||||||
// removeAttrs args [ "buildInputs" "packageRequires" "meta" ]))
|
// removeAttrs args handledArgs))
|
||||||
|
|
|
@ -3,37 +3,8 @@
|
||||||
|
|
||||||
{ lib, stdenv, fetchFromGitHub, emacs, texinfo, writeText, gcc }:
|
{ lib, stdenv, fetchFromGitHub, emacs, texinfo, writeText, gcc }:
|
||||||
|
|
||||||
with lib;
|
|
||||||
|
|
||||||
{ /*
|
|
||||||
pname: Nix package name without special symbols and without version or
|
|
||||||
"emacs-" prefix.
|
|
||||||
*/
|
|
||||||
pname
|
|
||||||
/*
|
|
||||||
ename: Original Emacs package name, possibly containing special symbols.
|
|
||||||
*/
|
|
||||||
, ename ? null
|
|
||||||
, version
|
|
||||||
, recipe
|
|
||||||
, meta ? {}
|
|
||||||
, ...
|
|
||||||
}@args:
|
|
||||||
|
|
||||||
let
|
let
|
||||||
|
genericBuild = import ./generic.nix { inherit lib stdenv emacs texinfo writeText gcc; };
|
||||||
defaultMeta = {
|
|
||||||
homepage = args.src.meta.homepage or "https://melpa.org/#/${pname}";
|
|
||||||
};
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
import ./generic.nix { inherit lib stdenv emacs texinfo writeText gcc; } ({
|
|
||||||
|
|
||||||
ename =
|
|
||||||
if ename == null
|
|
||||||
then pname
|
|
||||||
else ename;
|
|
||||||
|
|
||||||
packageBuild = stdenv.mkDerivation {
|
packageBuild = stdenv.mkDerivation {
|
||||||
name = "package-build";
|
name = "package-build";
|
||||||
|
@ -55,9 +26,35 @@ import ./generic.nix { inherit lib stdenv emacs texinfo writeText gcc; } ({
|
||||||
";
|
";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
|
{ /*
|
||||||
|
pname: Nix package name without special symbols and without version or
|
||||||
|
"emacs-" prefix.
|
||||||
|
*/
|
||||||
|
pname
|
||||||
|
/*
|
||||||
|
ename: Original Emacs package name, possibly containing special symbols.
|
||||||
|
*/
|
||||||
|
, ename ? null
|
||||||
|
, version
|
||||||
|
, recipe
|
||||||
|
, meta ? {}
|
||||||
|
, ...
|
||||||
|
}@args:
|
||||||
|
|
||||||
|
genericBuild ({
|
||||||
|
|
||||||
|
ename =
|
||||||
|
if ename == null
|
||||||
|
then pname
|
||||||
|
else ename;
|
||||||
|
|
||||||
elpa2nix = ./elpa2nix.el;
|
elpa2nix = ./elpa2nix.el;
|
||||||
melpa2nix = ./melpa2nix.el;
|
melpa2nix = ./melpa2nix.el;
|
||||||
|
|
||||||
|
inherit packageBuild;
|
||||||
|
|
||||||
preUnpack = ''
|
preUnpack = ''
|
||||||
mkdir -p "$NIX_BUILD_TOP/recipes"
|
mkdir -p "$NIX_BUILD_TOP/recipes"
|
||||||
if [ -n "$recipe" ]; then
|
if [ -n "$recipe" ]; then
|
||||||
|
@ -104,7 +101,9 @@ import ./generic.nix { inherit lib stdenv emacs texinfo writeText gcc; } ({
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = defaultMeta // meta;
|
meta = {
|
||||||
|
homepage = args.src.meta.homepage or "https://melpa.org/#/${pname}";
|
||||||
|
} // meta;
|
||||||
}
|
}
|
||||||
|
|
||||||
// removeAttrs args [ "meta" ])
|
// removeAttrs args [ "meta" ])
|
||||||
|
|
|
@ -2,8 +2,6 @@
|
||||||
|
|
||||||
{ callPackage, lib, ... }@envargs:
|
{ callPackage, lib, ... }@envargs:
|
||||||
|
|
||||||
with lib;
|
|
||||||
|
|
||||||
args:
|
args:
|
||||||
|
|
||||||
callPackage ./generic.nix envargs ({
|
callPackage ./generic.nix envargs ({
|
||||||
|
|
|
@ -289,7 +289,8 @@ let
|
||||||
|
|
||||||
disallowedReferences = lib.optional (!allowGoReference) go;
|
disallowedReferences = lib.optional (!allowGoReference) go;
|
||||||
|
|
||||||
passthru = passthru // { inherit go goModules vendorHash; } // { inherit (args') vendorSha256; };
|
passthru = passthru // { inherit go goModules vendorHash; }
|
||||||
|
// lib.optionalAttrs (args' ? vendorSha256 ) { inherit (args') vendorSha256; };
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
# Add default meta information
|
# Add default meta information
|
||||||
|
|
|
@ -15,11 +15,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "bruno";
|
pname = "bruno";
|
||||||
version = "1.5.0";
|
version = "1.5.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/usebruno/bruno/releases/download/v${version}/bruno_${version}_amd64_linux.deb";
|
url = "https://github.com/usebruno/bruno/releases/download/v${version}/bruno_${version}_amd64_linux.deb";
|
||||||
hash = "sha256-ptrayWDnRXGUC/mgSnQ/8sIEdey+6uoa3LGBGPQYuY8=";
|
hash = "sha256-kJfS3yORwvh7rMGgDV5Bn2L7+7ZMa8ZBpRI1P5y+ShQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ autoPatchelfHook dpkg wrapGAppsHook ];
|
nativeBuildInputs = [ autoPatchelfHook dpkg wrapGAppsHook ];
|
||||||
|
@ -52,10 +52,11 @@ stdenv.mkDerivation rec {
|
||||||
passthru.updateScript = nix-update-script { };
|
passthru.updateScript = nix-update-script { };
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Open-source IDE For exploring and testing APIs.";
|
description = "Open-source IDE For exploring and testing APIs";
|
||||||
homepage = "https://www.usebruno.com";
|
homepage = "https://www.usebruno.com";
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
maintainers = with maintainers; [ water-sucks lucasew kashw2 ];
|
maintainers = with maintainers; [ water-sucks lucasew kashw2 ];
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
|
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
26
pkgs/by-name/ht/htmx-lsp/package.nix
Normal file
26
pkgs/by-name/ht/htmx-lsp/package.nix
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
{ lib
|
||||||
|
, rustPlatform
|
||||||
|
, fetchFromGitHub
|
||||||
|
}:
|
||||||
|
|
||||||
|
rustPlatform.buildRustPackage rec {
|
||||||
|
pname = "htmx-lsp";
|
||||||
|
version = "0.1.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "ThePrimeagen";
|
||||||
|
repo = "htmx-lsp";
|
||||||
|
rev = version;
|
||||||
|
hash = "sha256-CvQ+vgo3+qUOj0SS6/NrapzXkP98tpiZbGhRHJxEqeo=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoHash = "sha256-qKiFUnNUOBakfK3Vplr/bLR+4L/vIViHJYgw9+RoRZQ=";
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Language server implementation for htmx";
|
||||||
|
homepage = "https://github.com/ThePrimeagen/htmx-lsp";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ vinnymeller ];
|
||||||
|
mainProgram = "htmx-lsp";
|
||||||
|
};
|
||||||
|
}
|
|
@ -11,18 +11,18 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "usql";
|
pname = "usql";
|
||||||
version = "0.17.0";
|
version = "0.17.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "xo";
|
owner = "xo";
|
||||||
repo = "usql";
|
repo = "usql";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-AcxtIdPflMT2SGM2dgbbiFx5S+NlM7neMuXrIhysFPo=";
|
hash = "sha256-lGdFxbD8O5kmiMdM0EPJF1jmnyVs1WkK4Y+qC71t4EY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ unixODBC icu ];
|
buildInputs = [ unixODBC icu ];
|
||||||
|
|
||||||
vendorHash = "sha256-UsYEhqsQUhRROe9HX4WIyi0OeMLHE87JOfp6vwbVMMo=";
|
vendorHash = "sha256-2s6DLVUpizFQpOOs0jBinBlIhIRVzLxveUcWCuSgW68=";
|
||||||
proxyVendor = true;
|
proxyVendor = true;
|
||||||
|
|
||||||
# Exclude broken genji, hive & impala drivers (bad group)
|
# Exclude broken genji, hive & impala drivers (bad group)
|
||||||
|
|
|
@ -35,10 +35,6 @@ stdenv.mkDerivation rec {
|
||||||
# TODO: switch to substituteAll with placeholder
|
# TODO: switch to substituteAll with placeholder
|
||||||
# https://github.com/NixOS/nix/issues/1846
|
# https://github.com/NixOS/nix/issues/1846
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace src/gnome-shell/extension.js \
|
|
||||||
--subst-var-by typelibPath "${placeholder "out"}/lib/girepository-1.0"
|
|
||||||
substituteInPlace src/gnome-shell/prefs.js \
|
|
||||||
--subst-var-by typelibPath "${placeholder "out"}/lib/girepository-1.0"
|
|
||||||
substituteInPlace src/libgpaste/gpaste/gpaste-settings.c \
|
substituteInPlace src/libgpaste/gpaste/gpaste-settings.c \
|
||||||
--subst-var-by gschemasCompiled ${glib.makeSchemaPath (placeholder "out") "${pname}-${version}"}
|
--subst-var-by gschemasCompiled ${glib.makeSchemaPath (placeholder "out") "${pname}-${version}"}
|
||||||
'';
|
'';
|
||||||
|
@ -69,6 +65,20 @@ stdenv.mkDerivation rec {
|
||||||
"-Dsystemd-user-unit-dir=${placeholder "out"}/etc/systemd/user"
|
"-Dsystemd-user-unit-dir=${placeholder "out"}/etc/systemd/user"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
# We do not have central location to install typelibs to,
|
||||||
|
# let’s ensure GNOME Shell can still find them.
|
||||||
|
extensionDir="$out/share/gnome-shell/extensions/GPaste@gnome-shell-extensions.gnome.org"
|
||||||
|
mv "$extensionDir/"{extension,.extension-wrapped}.js
|
||||||
|
mv "$extensionDir/"{prefs,.prefs-wrapped}.js
|
||||||
|
substitute "${./wrapper.js}" "$extensionDir/extension.js" \
|
||||||
|
--subst-var-by originalName "extension" \
|
||||||
|
--subst-var-by typelibPath "${placeholder "out"}/lib/girepository-1.0"
|
||||||
|
substitute "${./wrapper.js}" "$extensionDir/prefs.js" \
|
||||||
|
--subst-var-by originalName "prefs" \
|
||||||
|
--subst-var-by typelibPath "${placeholder "out"}/lib/girepository-1.0"
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = "https://github.com/Keruspe/GPaste";
|
homepage = "https://github.com/Keruspe/GPaste";
|
||||||
description = "Clipboard management system with GNOME 3 integration";
|
description = "Clipboard management system with GNOME 3 integration";
|
||||||
|
|
|
@ -1,48 +1,3 @@
|
||||||
diff --git a/src/gnome-shell/__nix-prepend-search-paths.js b/src/gnome-shell/__nix-prepend-search-paths.js
|
|
||||||
new file mode 100644
|
|
||||||
index 00000000..e8e20c67
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/src/gnome-shell/__nix-prepend-search-paths.js
|
|
||||||
@@ -0,0 +1,3 @@
|
|
||||||
+import GIRepository from 'gi://GIRepository';
|
|
||||||
+
|
|
||||||
+GIRepository.Repository.prepend_search_path('@typelibDir@');
|
|
||||||
diff --git a/src/gnome-shell/extension.js b/src/gnome-shell/extension.js
|
|
||||||
index cb862a30..980767c9 100644
|
|
||||||
--- a/src/gnome-shell/extension.js
|
|
||||||
+++ b/src/gnome-shell/extension.js
|
|
||||||
@@ -4,6 +4,8 @@
|
|
||||||
* Copyright (c) 2010-2023, Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
|
|
||||||
*/
|
|
||||||
|
|
||||||
+import './__nix-prepend-search-paths.js';
|
|
||||||
+
|
|
||||||
import * as Main from 'resource:///org/gnome/shell/ui/main.js';
|
|
||||||
import {Extension, gettext as _} from 'resource:///org/gnome/shell/extensions/extension.js';
|
|
||||||
|
|
||||||
diff --git a/src/gnome-shell/meson.build b/src/gnome-shell/meson.build
|
|
||||||
index 86cbb0b2..80fc4d67 100644
|
|
||||||
--- a/src/gnome-shell/meson.build
|
|
||||||
+++ b/src/gnome-shell/meson.build
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
shell_extension_files = [
|
|
||||||
+ '__nix-prepend-search-paths.js',
|
|
||||||
'aboutItem.js',
|
|
||||||
'actionButton.js',
|
|
||||||
'actionButtonActor.js',
|
|
||||||
diff --git a/src/gnome-shell/prefs.js b/src/gnome-shell/prefs.js
|
|
||||||
index 4c0d9bde..58f54f9a 100644
|
|
||||||
--- a/src/gnome-shell/prefs.js
|
|
||||||
+++ b/src/gnome-shell/prefs.js
|
|
||||||
@@ -4,6 +4,8 @@
|
|
||||||
* Copyright (c) 2010-2023, Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
|
|
||||||
*/
|
|
||||||
|
|
||||||
+import './__nix-prepend-search-paths.js';
|
|
||||||
+
|
|
||||||
import { ExtensionPreferences, gettext as _ } from 'resource:///org/gnome/Shell/Extensions/js/extensions/prefs.js';
|
|
||||||
|
|
||||||
import GPasteGtk from 'gi://GPasteGtk?version=4';
|
|
||||||
diff --git a/src/libgpaste/gpaste/gpaste-settings.c b/src/libgpaste/gpaste/gpaste-settings.c
|
diff --git a/src/libgpaste/gpaste/gpaste-settings.c b/src/libgpaste/gpaste/gpaste-settings.c
|
||||||
index 830f5e0b..c8df0e11 100644
|
index 830f5e0b..c8df0e11 100644
|
||||||
--- a/src/libgpaste/gpaste/gpaste-settings.c
|
--- a/src/libgpaste/gpaste/gpaste-settings.c
|
||||||
|
|
5
pkgs/desktops/gnome/misc/gpaste/wrapper.js
Normal file
5
pkgs/desktops/gnome/misc/gpaste/wrapper.js
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
import GIRepository from 'gi://GIRepository';
|
||||||
|
|
||||||
|
GIRepository.Repository.prepend_search_path('@typelibDir@');
|
||||||
|
|
||||||
|
export default (await import('./.@originalName@-wrapped.js')).default;
|
|
@ -21,9 +21,9 @@
|
||||||
let unwrapped = mkXfceDerivation {
|
let unwrapped = mkXfceDerivation {
|
||||||
category = "xfce";
|
category = "xfce";
|
||||||
pname = "thunar";
|
pname = "thunar";
|
||||||
version = "4.18.8";
|
version = "4.18.9";
|
||||||
|
|
||||||
sha256 = "sha256-+VS8Mn9J8VySNEKUMq4xUXXvVgMpWkNVdpv5dzxhZ/M=";
|
sha256 = "sha256-FiJAxELdt/1g5ThTBshTSFK54f9Ncqhn/C+rWQ+zrig=";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
docbook_xsl
|
docbook_xsl
|
||||||
|
|
61
pkgs/development/hare-third-party/hare-toml/default.nix
vendored
Normal file
61
pkgs/development/hare-third-party/hare-toml/default.nix
vendored
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
{ stdenv
|
||||||
|
, hare
|
||||||
|
, scdoc
|
||||||
|
, lib
|
||||||
|
, fetchFromGitea
|
||||||
|
, fetchpatch
|
||||||
|
, nix-update-script
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
|
pname = "hare-toml";
|
||||||
|
version = "0.1.0";
|
||||||
|
|
||||||
|
src = fetchFromGitea {
|
||||||
|
domain = "codeberg.org";
|
||||||
|
owner = "lunacb";
|
||||||
|
repo = "hare-toml";
|
||||||
|
rev = "v${finalAttrs.version}";
|
||||||
|
hash = "sha256-JKK5CcDmAW7FH7AzFwgsr9i13eRSXDUokWfZix7f4yY=";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Remove `abort()` calls from never returning expressions.
|
||||||
|
(fetchpatch {
|
||||||
|
name = "remove-abort-from-never-returning-expressions.patch";
|
||||||
|
url = "https://codeberg.org/lunacb/hare-toml/commit/f26e7cdfdccd2e82c9fce7e9fca8644b825b40f1.patch";
|
||||||
|
hash = "sha256-DFbrxiaV4lQlFmMzo5GbMubIQ4hU3lXgsJqoyeFWf2g=";
|
||||||
|
})
|
||||||
|
# Fix make's install target to install the correct files
|
||||||
|
(fetchpatch {
|
||||||
|
name = "install-correct-files-with-install-target.patch";
|
||||||
|
url = "https://codeberg.org/lunacb/hare-toml/commit/b79021911fe7025a8f5ddd97deb2c4d18c67b25e.patch";
|
||||||
|
hash = "sha256-IL+faumX6BmdyePXTzsSGgUlgDBqOXXzShupVAa7jlQ=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
scdoc
|
||||||
|
hare
|
||||||
|
];
|
||||||
|
|
||||||
|
makeFlags = [
|
||||||
|
"HARECACHE=.harecache"
|
||||||
|
"PREFIX=${builtins.placeholder "out"}"
|
||||||
|
];
|
||||||
|
|
||||||
|
checkTarget = "check_local";
|
||||||
|
|
||||||
|
doCheck = true;
|
||||||
|
|
||||||
|
dontConfigure = true;
|
||||||
|
|
||||||
|
passthru.updateScript = nix-update-script { };
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "A TOML implementation for Hare";
|
||||||
|
homepage = "https://codeberg.org/lunacb/hare-toml";
|
||||||
|
license = lib.licenses.mit;
|
||||||
|
maintainers = with lib.maintainers; [ onemoresuza ];
|
||||||
|
inherit (hare.meta) platforms badPlatforms;
|
||||||
|
};
|
||||||
|
})
|
|
@ -60,8 +60,8 @@ let
|
||||||
passthru = lua.passthru // {
|
passthru = lua.passthru // {
|
||||||
interpreter = "${env}/bin/lua";
|
interpreter = "${env}/bin/lua";
|
||||||
inherit lua;
|
inherit lua;
|
||||||
luaPath = lua.pkgs.lib.genLuaPathAbsStr env;
|
luaPath = lua.pkgs.luaLib.genLuaPathAbsStr env;
|
||||||
luaCpath = lua.pkgs.lib.genLuaCPathAbsStr env;
|
luaCpath = lua.pkgs.luaLib.genLuaCPathAbsStr env;
|
||||||
env = stdenv.mkDerivation {
|
env = stdenv.mkDerivation {
|
||||||
name = "interactive-${lua.name}-environment";
|
name = "interactive-${lua.name}-environment";
|
||||||
nativeBuildInputs = [ env ];
|
nativeBuildInputs = [ env ];
|
||||||
|
|
|
@ -1,20 +1,18 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, unstableGitUpdater }:
|
{ lib, stdenv, fetchFromGitHub }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "zuo";
|
pname = "zuo";
|
||||||
version = "unstable-2023-11-23";
|
version = "1.9";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "racket";
|
owner = "racket";
|
||||||
repo = "zuo";
|
repo = "zuo";
|
||||||
rev = "4d85edb4f221de8a1748ee38dcc6963d8d2da33a";
|
rev = "v${version}";
|
||||||
hash = "sha256-pFEXkByZpVnQgXK1DeFSEnalvhCTwOy75WrRojBM78U=";
|
hash = "sha256-F7ba/4VVVhNDK/wqk+kgJKYxETS2pR9ZiDh0O0aOWn0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
passthru.updateScript = unstableGitUpdater { };
|
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A Tiny Racket for Scripting";
|
description = "A Tiny Racket for Scripting";
|
||||||
homepage = "https://github.com/racket/zuo";
|
homepage = "https://github.com/racket/zuo";
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "jna";
|
pname = "jna";
|
||||||
version = "5.13.0";
|
version = "5.14.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "java-native-access";
|
owner = "java-native-access";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-EIOVmzQcnbL1NmxAaUVCMDvs9wpKqhP5iHAPoBVs3ho=";
|
hash = "sha256-a5l9khKLWfvTHv53utfbw344/UNQOnIU93+wZNQ0ji4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ ant jdk8 ];
|
nativeBuildInputs = [ ant jdk8 ];
|
||||||
|
|
|
@ -5,10 +5,33 @@ import multiprocessing
|
||||||
import subprocess
|
import subprocess
|
||||||
import sys
|
import sys
|
||||||
import toml
|
import toml
|
||||||
|
from urllib.parse import urlparse
|
||||||
import yaml
|
import yaml
|
||||||
|
|
||||||
import dag
|
import dag
|
||||||
|
|
||||||
|
# This should match the behavior of the default unpackPhase.
|
||||||
|
# See https://github.com/NixOS/nixpkgs/blob/59fa082abdbf462515facc8800d517f5728c909d/pkgs/stdenv/generic/setup.sh#L1044
|
||||||
|
archive_extensions = [
|
||||||
|
# xz extensions
|
||||||
|
".tar.xz",
|
||||||
|
".tar.lzma",
|
||||||
|
".txz",
|
||||||
|
|
||||||
|
# *.tar or *.tar.*
|
||||||
|
".tar",
|
||||||
|
".tar.Z",
|
||||||
|
".tar.bz2",
|
||||||
|
".tar.gz",
|
||||||
|
|
||||||
|
# Other tar extensions
|
||||||
|
".tgz",
|
||||||
|
".tbz2",
|
||||||
|
".tbz",
|
||||||
|
|
||||||
|
".zip"
|
||||||
|
]
|
||||||
|
|
||||||
dependencies_path = Path(sys.argv[1])
|
dependencies_path = Path(sys.argv[1])
|
||||||
closure_yaml_path = Path(sys.argv[2])
|
closure_yaml_path = Path(sys.argv[2])
|
||||||
julia_path = Path(sys.argv[3])
|
julia_path = Path(sys.argv[3])
|
||||||
|
@ -33,6 +56,42 @@ with open(closure_yaml_path, "r") as f:
|
||||||
if contents.get("depends_on"):
|
if contents.get("depends_on"):
|
||||||
closure_dependencies_dag.add_node(uuid, dependencies=contents["depends_on"].values())
|
closure_dependencies_dag.add_node(uuid, dependencies=contents["depends_on"].values())
|
||||||
|
|
||||||
|
def get_archive_derivation(uuid, artifact_name, url, sha256):
|
||||||
|
depends_on = set()
|
||||||
|
if closure_dependencies_dag.has_node(uuid):
|
||||||
|
depends_on = set(closure_dependencies_dag.get_dependencies(uuid)).intersection(dependency_uuids)
|
||||||
|
|
||||||
|
other_libs = extra_libs.get(uuid, [])
|
||||||
|
|
||||||
|
fixup = f"""fixupPhase = let
|
||||||
|
libs = lib.concatMap (lib.mapAttrsToList (k: v: v.path))
|
||||||
|
[{" ".join(["uuid-" + x for x in depends_on])}];
|
||||||
|
in ''
|
||||||
|
find $out -type f -executable -exec \
|
||||||
|
patchelf --set-rpath \$ORIGIN:\$ORIGIN/../lib:${{lib.makeLibraryPath (["$out" glibc] ++ libs ++ (with pkgs; [{" ".join(other_libs)}]))}} {{}} \;
|
||||||
|
find $out -type f -executable -exec \
|
||||||
|
patchelf --set-interpreter ${{glibc}}/lib/ld-linux-x86-64.so.2 {{}} \;
|
||||||
|
''"""
|
||||||
|
|
||||||
|
return f"""stdenv.mkDerivation {{
|
||||||
|
name = "{artifact_name}";
|
||||||
|
src = fetchurl {{
|
||||||
|
url = "{url}";
|
||||||
|
sha256 = "{sha256}";
|
||||||
|
}};
|
||||||
|
sourceRoot = ".";
|
||||||
|
dontConfigure = true;
|
||||||
|
dontBuild = true;
|
||||||
|
installPhase = "cp -r . $out";
|
||||||
|
{fixup};
|
||||||
|
}}"""
|
||||||
|
|
||||||
|
def get_plain_derivation(url, sha256):
|
||||||
|
return f"""fetchurl {{
|
||||||
|
url = "{url}";
|
||||||
|
sha256 = "{sha256}";
|
||||||
|
}}"""
|
||||||
|
|
||||||
with open(out_path, "w") as f:
|
with open(out_path, "w") as f:
|
||||||
f.write("{ lib, fetchurl, glibc, pkgs, stdenv }:\n\n")
|
f.write("{ lib, fetchurl, glibc, pkgs, stdenv }:\n\n")
|
||||||
f.write("rec {\n")
|
f.write("rec {\n")
|
||||||
|
@ -53,38 +112,15 @@ with open(out_path, "w") as f:
|
||||||
|
|
||||||
git_tree_sha1 = details["git-tree-sha1"]
|
git_tree_sha1 = details["git-tree-sha1"]
|
||||||
|
|
||||||
depends_on = set()
|
parsed_url = urlparse(url)
|
||||||
if closure_dependencies_dag.has_node(uuid):
|
if any(parsed_url.path.endswith(x) for x in archive_extensions):
|
||||||
depends_on = set(closure_dependencies_dag.get_dependencies(uuid)).intersection(dependency_uuids)
|
derivation = get_archive_derivation(uuid, artifact_name, url, sha256)
|
||||||
|
else:
|
||||||
other_libs = extra_libs.get(uuid, [])
|
derivation = get_plain_derivation(url, sha256)
|
||||||
|
|
||||||
fixup = f"""fixupPhase = let
|
|
||||||
libs = lib.concatMap (lib.mapAttrsToList (k: v: v.path))
|
|
||||||
[{" ".join(["uuid-" + x for x in depends_on])}];
|
|
||||||
in ''
|
|
||||||
find $out -type f -executable -exec \
|
|
||||||
patchelf --set-rpath \$ORIGIN:\$ORIGIN/../lib:${{lib.makeLibraryPath (["$out" glibc] ++ libs ++ (with pkgs; [{" ".join(other_libs)}]))}} {{}} \;
|
|
||||||
find $out -type f -executable -exec \
|
|
||||||
patchelf --set-interpreter ${{glibc}}/lib/ld-linux-x86-64.so.2 {{}} \;
|
|
||||||
''"""
|
|
||||||
|
|
||||||
derivation = f"""{{
|
|
||||||
name = "{artifact_name}";
|
|
||||||
src = fetchurl {{
|
|
||||||
url = "{url}";
|
|
||||||
sha256 = "{sha256}";
|
|
||||||
}};
|
|
||||||
sourceRoot = ".";
|
|
||||||
dontConfigure = true;
|
|
||||||
dontBuild = true;
|
|
||||||
installPhase = "cp -r . $out";
|
|
||||||
{fixup};
|
|
||||||
}}"""
|
|
||||||
|
|
||||||
lines.append(f""" "{artifact_name}" = {{
|
lines.append(f""" "{artifact_name}" = {{
|
||||||
sha1 = "{git_tree_sha1}";
|
sha1 = "{git_tree_sha1}";
|
||||||
path = stdenv.mkDerivation {derivation};
|
path = {derivation};
|
||||||
}};\n""")
|
}};\n""")
|
||||||
|
|
||||||
lines.append(' };\n')
|
lines.append(' };\n')
|
||||||
|
|
|
@ -7,23 +7,31 @@
|
||||||
, maeparser
|
, maeparser
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "coordgenlibs";
|
pname = "coordgenlibs";
|
||||||
version = "3.0.2";
|
version = "3.0.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "schrodinger";
|
owner = "schrodinger";
|
||||||
repo = pname;
|
repo = "coordgenlibs";
|
||||||
rev = "v${version}";
|
rev = "v${finalAttrs.version}";
|
||||||
sha256 = "sha256-casFPNbPv9mkKpzfBENW7INClypuCO1L7clLGBXvSvI=";
|
hash = "sha256-casFPNbPv9mkKpzfBENW7INClypuCO1L7clLGBXvSvI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
buildInputs = [ boost zlib maeparser ];
|
buildInputs = [ boost zlib maeparser ];
|
||||||
|
|
||||||
|
env = lib.optionalAttrs stdenv.cc.isClang {
|
||||||
|
NIX_CFLAGS_COMPILE = "-Wno-unused-but-set-variable";
|
||||||
|
};
|
||||||
|
|
||||||
|
doCheck = true;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Schrodinger-developed 2D Coordinate Generation";
|
description = "Schrodinger-developed 2D Coordinate Generation";
|
||||||
|
homepage = "https://github.com/schrodinger/coordgenlibs";
|
||||||
|
changelog = "https://github.com/schrodinger/coordgenlibs/releases/tag/${finalAttrs.version}";
|
||||||
maintainers = [ maintainers.rmcgibbo ];
|
maintainers = [ maintainers.rmcgibbo ];
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
};
|
};
|
||||||
}
|
})
|
||||||
|
|
|
@ -36,5 +36,6 @@ ffmpeg_6-full.overrideAttrs (old: rec {
|
||||||
homepage = "https://github.com/jellyfin/jellyfin-ffmpeg";
|
homepage = "https://github.com/jellyfin/jellyfin-ffmpeg";
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
maintainers = with maintainers; [ justinas ];
|
maintainers = with maintainers; [ justinas ];
|
||||||
|
pkgConfigModules = [ "libavutil" ];
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|
|
@ -7,13 +7,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "level-zero";
|
pname = "level-zero";
|
||||||
version = "1.15.1";
|
version = "1.15.8";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "oneapi-src";
|
owner = "oneapi-src";
|
||||||
repo = "level-zero";
|
repo = "level-zero";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-jf1sKFfUmeNbLtmawKISmLQK2/95XvSg40se9IEKMT0=";
|
hash = "sha256-n1dcsI2sLeB68HpI5oQ5p3zdAcSvnSY+qpHL9vp6FOk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake addOpenGLRunpath ];
|
nativeBuildInputs = [ cmake addOpenGLRunpath ];
|
||||||
|
|
44
pkgs/development/libraries/mdk-sdk/default.nix
Normal file
44
pkgs/development/libraries/mdk-sdk/default.nix
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
{ lib, stdenv, fetchurl, autoPatchelfHook
|
||||||
|
, alsa-lib, gcc-unwrapped, libX11, libcxx, libdrm, libglvnd, libpulseaudio, libxcb, mesa, wayland, xz, zlib
|
||||||
|
, libva, libvdpau, addOpenGLRunpath
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "mdk-sdk";
|
||||||
|
version = "0.23.1";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/wang-bin/mdk-sdk/releases/download/v${version}/mdk-sdk-linux-x64.tar.xz";
|
||||||
|
hash = "sha256-qC6FL76MJZ2XrrYePQFpWk5VPLTeoRd5ns93AK3iZjw=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ autoPatchelfHook ];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
alsa-lib gcc-unwrapped libX11 libcxx libdrm libglvnd libpulseaudio libxcb mesa wayland xz zlib
|
||||||
|
];
|
||||||
|
|
||||||
|
appendRunpaths = lib.makeLibraryPath [
|
||||||
|
libva libvdpau addOpenGLRunpath.driverLink
|
||||||
|
];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/lib
|
||||||
|
cp -r include $out
|
||||||
|
cp -d lib/amd64/libmdk* $out/lib
|
||||||
|
ln -s . $out/lib/amd64
|
||||||
|
cp -r lib/cmake $out/lib
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "multimedia development kit";
|
||||||
|
homepage = "https://github.com/wang-bin/mdk-sdk";
|
||||||
|
license = licenses.unfree;
|
||||||
|
maintainers = with maintainers; [ orivej ];
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -472,7 +472,13 @@ effectiveStdenv.mkDerivation {
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
sed -i "s|{exec_prefix}/$out|{exec_prefix}|;s|{prefix}/$out|{prefix}|" \
|
sed -i "s|{exec_prefix}/$out|{exec_prefix}|;s|{prefix}/$out|{prefix}|" \
|
||||||
"$out/lib/pkgconfig/opencv4.pc"
|
"$out/lib/pkgconfig/opencv4.pc"
|
||||||
mkdir $cxxdev
|
mkdir "$cxxdev"
|
||||||
|
''
|
||||||
|
# fix deps not progagating from opencv4.cxxdev if cuda is disabled
|
||||||
|
# see https://github.com/NixOS/nixpkgs/issues/276691
|
||||||
|
+ lib.optionalString (!enableCuda) ''
|
||||||
|
mkdir -p "$cxxdev/nix-support"
|
||||||
|
echo "''${!outputDev}" >> "$cxxdev/nix-support/propagated-build-inputs"
|
||||||
''
|
''
|
||||||
# install python distribution information, so other packages can `import opencv`
|
# install python distribution information, so other packages can `import opencv`
|
||||||
+ lib.optionalString enablePython ''
|
+ lib.optionalString enablePython ''
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "thepeg";
|
pname = "thepeg";
|
||||||
version = "2.2.3";
|
version = "2.3.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://www.hepforge.org/archive/thepeg/ThePEG-${version}.tar.bz2";
|
url = "https://www.hepforge.org/archive/thepeg/ThePEG-${version}.tar.bz2";
|
||||||
hash = "sha256-8hRzGXp2H8MpF7CKjSTSv6+T/1fzRB/WBdqZrJ3l1Qs=";
|
hash = "sha256-rDWXmuicKWCMqSwVakn/aKrOeloSoMkvCgGoM9LTRXI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ autoreconfHook ];
|
nativeBuildInputs = [ autoreconfHook ];
|
||||||
|
|
4
pkgs/development/libraries/rure/Cargo.lock
generated
4
pkgs/development/libraries/rure/Cargo.lock
generated
|
@ -19,9 +19,9 @@ checksum = "302d7ab3130588088d277783b1e2d2e10c9e9e4a16dd9050e6ec93fb3e7048f4"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "memchr"
|
name = "memchr"
|
||||||
version = "2.6.4"
|
version = "2.7.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
|
checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "regex"
|
name = "regex"
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "tdlib";
|
pname = "tdlib";
|
||||||
version = "1.8.22";
|
version = "1.8.23";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tdlib";
|
owner = "tdlib";
|
||||||
|
@ -11,8 +11,8 @@ stdenv.mkDerivation rec {
|
||||||
# The tdlib authors do not set tags for minor versions, but
|
# The tdlib authors do not set tags for minor versions, but
|
||||||
# external programs depending on tdlib constrain the minor
|
# external programs depending on tdlib constrain the minor
|
||||||
# version, hence we set a specific commit with a known version.
|
# version, hence we set a specific commit with a known version.
|
||||||
rev = "24893faf75d84b2b885f3f7aeb9d5a3c056fa7be";
|
rev = "27c3eaeb4964bd5f18d8488e354abde1a4383e49";
|
||||||
hash = "sha256-4cfnre71+rQSuPrtFJMzIEPYVCZH/W142b4Pn2NxvqI=";
|
hash = "sha256-TxgzZn/OF5b5FWzwnOWIozH+1d7O0RG3h+WKV10rxpE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ gperf openssl readline zlib ];
|
buildInputs = [ gperf openssl readline zlib ];
|
||||||
|
|
|
@ -3326,11 +3326,11 @@ buildLuarocksPackage {
|
||||||
}).outPath;
|
}).outPath;
|
||||||
src = fetchgit ( removeAttrs (builtins.fromJSON ''{
|
src = fetchgit ( removeAttrs (builtins.fromJSON ''{
|
||||||
"url": "https://github.com/vhyrro/toml-edit.lua",
|
"url": "https://github.com/vhyrro/toml-edit.lua",
|
||||||
"rev": "dfb3524f94a39c3b7c704b1d8bd866078bf16b39",
|
"rev": "34f072d8ff054b3124d9d2efc0263028d7425525",
|
||||||
"date": "2023-11-23T17:25:02+01:00",
|
"date": "2023-12-29T15:53:36+01:00",
|
||||||
"path": "/nix/store/xi3d022yk8rvaavlnk5c7vj2wx290c44-toml-edit.lua",
|
"path": "/nix/store/z1gn59hz9ypk3icn3gmafaa19nzx7a1v-toml-edit.lua",
|
||||||
"sha256": "0gfc481hhsq36bhdb3ym81szj31lgqs8rszbgybmzraycn9vbj9n",
|
"sha256": "0jzzp4sd48haq1kmh2k85gkygfq39i10kvgjyqffcrv3frdihxvx",
|
||||||
"hash": "sha256-Nsm1k2Ve5V+Xf+vrjDR+NAz5dUDVj9XgMgNrCAMizD0=",
|
"hash": "sha256-fXcYW3ZjZ+Yc9vLtCUJMA7vn5ytoClhnwAoi0jS5/0s=",
|
||||||
"fetchLFS": false,
|
"fetchLFS": false,
|
||||||
"fetchSubmodules": true,
|
"fetchSubmodules": true,
|
||||||
"deepClone": false,
|
"deepClone": false,
|
||||||
|
|
|
@ -649,7 +649,7 @@ with prev;
|
||||||
|
|
||||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||||
src = oa.src;
|
src = oa.src;
|
||||||
hash = "sha256-m1TQC2D9fiAMOOYhKpDGF1zyMzZ9AOTmyr1L/mFNpLc=";
|
hash = "sha256-gvUqkLOa0WvAK4GcTkufr0lC2BOs2FQ2bgFpB0qa47k=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = oa.nativeBuildInputs ++ [ cargo rustPlatform.cargoSetupHook ];
|
nativeBuildInputs = oa.nativeBuildInputs ++ [ cargo rustPlatform.cargoSetupHook ];
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
, stdenv
|
, stdenv
|
||||||
, cmake
|
, cmake
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, static ? stdenv.hostPlatform.isStatic
|
, withFilters ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
@ -18,16 +18,19 @@ let
|
||||||
inherit hash;
|
inherit hash;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}"
|
"-DBUILD_SHARED_LIBS=ON"
|
||||||
"-DBUILD_BENCHMARKS=OFF"
|
"-DBUILD_BENCHMARKS=OFF"
|
||||||
"-DBUILD_FUZZERS=OFF"
|
"-DBUILD_FUZZERS=OFF"
|
||||||
"-DBUILD_GENERATORS=OFF"
|
"-DBUILD_GENERATORS=OFF"
|
||||||
"-DENABLE_COVERAGE=OFF"
|
"-DENABLE_COVERAGE=OFF"
|
||||||
"-DENABLE_FORMAT=OFF"
|
"-DENABLE_FORMAT=OFF"
|
||||||
"-DENABLE_LINTING=OFF"
|
"-DENABLE_LINTING=OFF"
|
||||||
|
(lib.cmakeBool "BUILD_FILTERS" withFilters)
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aioairzone-cloud";
|
pname = "aioairzone-cloud";
|
||||||
version = "0.3.7";
|
version = "0.3.8";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
||||||
owner = "Noltari";
|
owner = "Noltari";
|
||||||
repo = "aioairzone-cloud";
|
repo = "aioairzone-cloud";
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-7QFtWAgLnVX9bS4u/2mV0pga/72G237AWxga6V3vLXY=";
|
hash = "sha256-h9WUHehTXg73qqpw+sMxoQMzOV+io2GvjwXlr4gF2ns=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
|
||||||
, aiohttp
|
, aiohttp
|
||||||
, buildPythonPackage
|
, buildPythonPackage
|
||||||
, cpufeature
|
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, poetry-core
|
, poetry-core
|
||||||
, pytestCheckHook
|
, pytestCheckHook
|
||||||
|
@ -12,7 +10,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aiohttp-zlib-ng";
|
pname = "aiohttp-zlib-ng";
|
||||||
version = "0.1.2";
|
version = "0.1.3";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.8";
|
disabled = pythonOlder "3.8";
|
||||||
|
@ -21,7 +19,7 @@ buildPythonPackage rec {
|
||||||
owner = "bdraco";
|
owner = "bdraco";
|
||||||
repo = "aiohttp-zlib-ng";
|
repo = "aiohttp-zlib-ng";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-lSzBmEgYrWKthpgceFn9LjsNw/ByPOrdPwVI8WU0Cvo=";
|
hash = "sha256-t7T3KIGId5CoBciSkwu/sejW45i2EYtq1fHvNKNXlhA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -36,7 +34,7 @@ buildPythonPackage rec {
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
aiohttp
|
aiohttp
|
||||||
zlib-ng
|
zlib-ng
|
||||||
] ++ lib.optional (lib.meta.availableOn stdenv.hostPlatform cpufeature) cpufeature;
|
];
|
||||||
|
|
||||||
nativeCheckInputs = [
|
nativeCheckInputs = [
|
||||||
pytestCheckHook
|
pytestCheckHook
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aiounifi";
|
pname = "aiounifi";
|
||||||
version = "67";
|
version = "68";
|
||||||
format = "pyproject";
|
format = "pyproject";
|
||||||
|
|
||||||
disabled = pythonOlder "3.11";
|
disabled = pythonOlder "3.11";
|
||||||
|
@ -25,7 +25,7 @@ buildPythonPackage rec {
|
||||||
owner = "Kane610";
|
owner = "Kane610";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-bad9wDV8kGEXjdjQ8GKhUsdMHqTohLjJJWH+gJCvuIo=";
|
hash = "sha256-fMTkk2+4RQzE8V4Nemkh2/0Keum+3eMKO5LlPQB9kOU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
, buildPythonPackage
|
, buildPythonPackage
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, pythonOlder
|
, pythonOlder
|
||||||
|
, setuptools
|
||||||
# build inputs
|
# build inputs
|
||||||
, jsonref
|
, jsonref
|
||||||
, jsonschema
|
, jsonschema
|
||||||
|
@ -20,8 +21,8 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "bravado-core";
|
pname = "bravado-core";
|
||||||
version = "6.1.0";
|
version = "6.6.1";
|
||||||
format = "setuptools";
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
|
|
||||||
|
@ -29,12 +30,16 @@ buildPythonPackage rec {
|
||||||
owner = "Yelp";
|
owner = "Yelp";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-/ePs3znbwamMHHzb/PD4UHq+7v0j1r1X3J3Bnb4S2VU=";
|
hash = "sha256-kyHmZNPl5lLKmm5i3TSi8Tfi96mQHqaiyBfceBJcOdw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
setuptools
|
||||||
|
];
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
jsonref
|
jsonref
|
||||||
jsonschema # with optional dependencies for format
|
jsonschema # jsonschema[format-nongpl]
|
||||||
python-dateutil
|
python-dateutil
|
||||||
pyyaml
|
pyyaml
|
||||||
requests
|
requests
|
||||||
|
@ -43,7 +48,7 @@ buildPythonPackage rec {
|
||||||
swagger-spec-validator
|
swagger-spec-validator
|
||||||
pytz
|
pytz
|
||||||
msgpack
|
msgpack
|
||||||
] ++ jsonschema.optional-dependencies.format;
|
] ++ jsonschema.optional-dependencies.format-nongpl;
|
||||||
|
|
||||||
nativeCheckInputs = [
|
nativeCheckInputs = [
|
||||||
pytestCheckHook
|
pytestCheckHook
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "casbin";
|
pname = "casbin";
|
||||||
version = "1.33.0";
|
version = "1.34.0";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.6";
|
disabled = pythonOlder "3.6";
|
||||||
|
@ -19,7 +19,7 @@ buildPythonPackage rec {
|
||||||
owner = "casbin";
|
owner = "casbin";
|
||||||
repo = "pycasbin";
|
repo = "pycasbin";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-/0yYU33zMtC6Pjm4yyQNavMDoI+5uC2zZci5IL/EY7Q=";
|
hash = "sha256-SlXM97rLRGZvqpzkYlrL+SClWYtw6xAKotaeQ7kVpjM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -48,7 +48,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "flask-security-too";
|
pname = "flask-security-too";
|
||||||
version = "5.3.2";
|
version = "5.3.3";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
|
@ -56,7 +56,7 @@ buildPythonPackage rec {
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
pname = "Flask-Security-Too";
|
pname = "Flask-Security-Too";
|
||||||
inherit version;
|
inherit version;
|
||||||
hash = "sha256-wLUHXfDWSp7zWwTIjTH79AWlkkNzb21tChpLSEWr8+U=";
|
hash = "sha256-we2TquU28qP/ir4eE67J0Nlft/8IL8w7Ny3ypSE5cNk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -50,7 +50,7 @@ buildPythonPackage rec {
|
||||||
prePatch =
|
prePatch =
|
||||||
let
|
let
|
||||||
cmakeCommands = ''
|
cmakeCommands = ''
|
||||||
include_directories(${h3}/include/h3)
|
include_directories(${lib.getDev h3}/include/h3)
|
||||||
link_directories(${h3}/lib)
|
link_directories(${h3}/lib)
|
||||||
'';
|
'';
|
||||||
in ''
|
in ''
|
||||||
|
|
50
pkgs/development/python-modules/monitorcontrol/default.nix
Normal file
50
pkgs/development/python-modules/monitorcontrol/default.nix
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
{ lib
|
||||||
|
, buildPythonPackage
|
||||||
|
, pythonOlder
|
||||||
|
, fetchFromGitHub
|
||||||
|
, poetry-core
|
||||||
|
, pyudev
|
||||||
|
, pytestCheckHook
|
||||||
|
, voluptuous
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "monitorcontrol";
|
||||||
|
version = "3.1.0";
|
||||||
|
pyproject = true;
|
||||||
|
|
||||||
|
disabled = pythonOlder "3.8";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "newAM";
|
||||||
|
repo = "monitorcontrol";
|
||||||
|
rev = "refs/tags/${version}";
|
||||||
|
hash = "sha256-fu0Lm7Tcw7TCCBDXTTY20JBAM7oeesyeHQFFILeZxX0=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
poetry-core
|
||||||
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
pyudev
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeCheckInputs = [
|
||||||
|
pytestCheckHook
|
||||||
|
voluptuous
|
||||||
|
];
|
||||||
|
|
||||||
|
pythonImportsCheck = [
|
||||||
|
pname
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Python monitor controls using DDC-CI";
|
||||||
|
homepage = "https://github.com/newAM/monitorcontrol";
|
||||||
|
changelog = "https://github.com/newAM/monitorcontrol/blob/v${version}/CHANGELOG.md";
|
||||||
|
license = licenses.mit;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ newam ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "nsz";
|
pname = "nsz";
|
||||||
version = "4.6.0";
|
version = "4.6.1";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
|
@ -20,7 +20,7 @@ buildPythonPackage rec {
|
||||||
owner = "nicoboss";
|
owner = "nicoboss";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-2Df+xvfDHtZt3XW4ShKZFsjsFigW+3Avz8uStVtC1i4=";
|
hash = "sha256-ch4HzQFa95o3HMsi7R0LpPWmhN/Z9EYfrmCdUZLwPSE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -47,7 +47,7 @@ buildPythonPackage rec {
|
||||||
transformers
|
transformers
|
||||||
# diffusers
|
# diffusers
|
||||||
soundfile
|
soundfile
|
||||||
] ++ transformers.agents;
|
];
|
||||||
full = passthru.optional-dependencies.grpc ++ passthru.optional-dependencies.agents;
|
full = passthru.optional-dependencies.grpc ++ passthru.optional-dependencies.agents;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -82,9 +82,12 @@ buildPythonPackage rec {
|
||||||
transformers
|
transformers
|
||||||
# trl
|
# trl
|
||||||
] ++ transformers.optional-dependencies.torch
|
] ++ transformers.optional-dependencies.torch
|
||||||
++ transformers.optional-dependencies.tokenizers
|
++ transformers.optional-dependencies.tokenizers;
|
||||||
++ transformers.optional-dependencies.accelerate;
|
full = with passthru.optional-dependencies; (
|
||||||
full = with passthru.optional-dependencies; ( vllm ++ bentoml ++ fine-tune );
|
vllm
|
||||||
|
# use absolute path to disambiguate with derivbation argument
|
||||||
|
++ passthru.optional-dependencies.bentoml
|
||||||
|
++ fine-tune );
|
||||||
};
|
};
|
||||||
|
|
||||||
# there is no tests
|
# there is no tests
|
||||||
|
|
|
@ -2,20 +2,22 @@
|
||||||
, aiohttp
|
, aiohttp
|
||||||
, async-timeout
|
, async-timeout
|
||||||
, buildPythonPackage
|
, buildPythonPackage
|
||||||
, fetchPypi
|
, fetchFromGitHub
|
||||||
, pythonOlder
|
, pythonOlder
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "opensensemap-api";
|
pname = "opensensemap-api";
|
||||||
version = "0.3.1";
|
version = "0.3.2";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
disabled = pythonOlder "3.8";
|
disabled = pythonOlder "3.8";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchFromGitHub {
|
||||||
inherit pname version;
|
owner = "home-assistant-ecosystem";
|
||||||
hash = "sha256-UrgQjZYw7TlFvhnaI7wFUpuUYeVKO5hsnx8h1OKfV8w=";
|
repo = "python-opensensemap-api";
|
||||||
|
rev = "refs/tags/${version}";
|
||||||
|
hash = "sha256-iUSdjU41JOT7k044EI2XEvJiSo6V4mO6S51EcIughEM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -44,13 +44,13 @@ let
|
||||||
in
|
in
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "OpenSfM";
|
pname = "OpenSfM";
|
||||||
version = "unstable-2022-03-10";
|
version = "unstable-2023-12-09";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mapillary";
|
owner = "mapillary";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "536b6e1414c8a93f0815dbae85d03749daaa5432";
|
rev = "7f170d0dc352340295ff480378e3ac37d0179f8e";
|
||||||
sha256 = "Nfl20dFF2PKOkIvHbRxu1naU+qhz4whLXJvX5c5Wnwo=";
|
sha256 = "sha256-l/HTVenC+L+GpMNnDgnSGZ7+Qd2j8b8cuTs3SmORqrg=";
|
||||||
};
|
};
|
||||||
patches = [
|
patches = [
|
||||||
./0002-cmake-find-system-distributed-gtest.patch
|
./0002-cmake-find-system-distributed-gtest.patch
|
||||||
|
@ -67,6 +67,8 @@ buildPythonPackage rec {
|
||||||
# where segfaults might be introduced in future
|
# where segfaults might be introduced in future
|
||||||
echo 'feature_type: SIFT' >> data/berlin/config.yaml
|
echo 'feature_type: SIFT' >> data/berlin/config.yaml
|
||||||
echo 'feature_type: HAHOG' >> data/lund/config.yaml
|
echo 'feature_type: HAHOG' >> data/lund/config.yaml
|
||||||
|
|
||||||
|
sed -i -e 's/^.*BuildDoc.*$//' setup.py
|
||||||
'';
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake pkg-config sphinx ];
|
nativeBuildInputs = [ cmake pkg-config sphinx ];
|
||||||
|
@ -85,7 +87,7 @@ buildPythonPackage rec {
|
||||||
numpy
|
numpy
|
||||||
scipy
|
scipy
|
||||||
pyyaml
|
pyyaml
|
||||||
opencv4
|
opencv4.cxxdev
|
||||||
networkx
|
networkx
|
||||||
pillow
|
pillow
|
||||||
matplotlib
|
matplotlib
|
||||||
|
@ -107,7 +109,9 @@ buildPythonPackage rec {
|
||||||
"-Sopensfm/src"
|
"-Sopensfm/src"
|
||||||
];
|
];
|
||||||
|
|
||||||
disabledTests = lib.optionals stdenv.isDarwin [
|
disabledTests = [
|
||||||
|
"test_run_all" # Matplotlib issues. Broken integration is less useless than a broken build
|
||||||
|
] ++ lib.optionals stdenv.isDarwin [
|
||||||
"test_reconstruction_incremental"
|
"test_reconstruction_incremental"
|
||||||
"test_reconstruction_triangulation"
|
"test_reconstruction_triangulation"
|
||||||
];
|
];
|
||||||
|
|
|
@ -1,19 +1,22 @@
|
||||||
{ lib
|
{ lib
|
||||||
, buildPythonPackage
|
, buildPythonPackage
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
|
, importlib-metadata
|
||||||
, isPy3k
|
, isPy3k
|
||||||
, cryptography
|
, cryptography
|
||||||
, charset-normalizer
|
, charset-normalizer
|
||||||
, pythonOlder
|
, pythonOlder
|
||||||
, typing-extensions
|
, typing-extensions
|
||||||
, pytestCheckHook
|
, pytestCheckHook
|
||||||
|
, setuptools
|
||||||
|
, substituteAll
|
||||||
, ocrmypdf
|
, ocrmypdf
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pdfminer-six";
|
pname = "pdfminer-six";
|
||||||
version = "20221105";
|
version = "20231228";
|
||||||
format = "setuptools";
|
pyproject = true;
|
||||||
|
|
||||||
disabled = !isPy3k;
|
disabled = !isPy3k;
|
||||||
|
|
||||||
|
@ -21,13 +24,27 @@ buildPythonPackage rec {
|
||||||
owner = "pdfminer";
|
owner = "pdfminer";
|
||||||
repo = "pdfminer.six";
|
repo = "pdfminer.six";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-OyEeQBuYfj4iEcRt2/daSaUfTOjCVSCyHW2qffal+Bk=";
|
hash = "sha256-LXPECQQojD3IY9zRkrDBufy4A8XUuYiRpryqUx/I3qo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(substituteAll {
|
||||||
|
src = ./disable-setuptools-git-versioning.patch;
|
||||||
|
inherit version;
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
setuptools
|
||||||
|
];
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
charset-normalizer
|
charset-normalizer
|
||||||
cryptography
|
cryptography
|
||||||
] ++ lib.optionals (pythonOlder "3.8") [ typing-extensions ];
|
] ++ lib.optionals (pythonOlder "3.8") [
|
||||||
|
importlib-metadata
|
||||||
|
typing-extensions
|
||||||
|
];
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
for file in $out/bin/*.py; do
|
for file in $out/bin/*.py; do
|
||||||
|
@ -35,12 +52,6 @@ buildPythonPackage rec {
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
# Version is not stored in repo, gets added by a GitHub action after tag is created
|
|
||||||
# https://github.com/pdfminer/pdfminer.six/pull/727
|
|
||||||
substituteInPlace pdfminer/__init__.py --replace "__VERSION__" ${version}
|
|
||||||
'';
|
|
||||||
|
|
||||||
pythonImportsCheck = [
|
pythonImportsCheck = [
|
||||||
"pdfminer"
|
"pdfminer"
|
||||||
"pdfminer.high_level"
|
"pdfminer.high_level"
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -7,10 +7,7 @@
|
||||||
|
|
||||||
|
setup(
|
||||||
|
name="pdfminer.six",
|
||||||
|
- setuptools_git_versioning={
|
||||||
|
- "enabled": True,
|
||||||
|
- },
|
||||||
|
- setup_requires=["setuptools-git-versioning<2"],
|
||||||
|
+ version="@version@",
|
||||||
|
packages=["pdfminer"],
|
||||||
|
package_data={"pdfminer": ["cmap/*.pickle.gz", "py.typed"]},
|
||||||
|
install_requires=[
|
|
@ -13,6 +13,7 @@
|
||||||
# tests
|
# tests
|
||||||
, pytestCheckHook
|
, pytestCheckHook
|
||||||
, pytest-subtests
|
, pytest-subtests
|
||||||
|
, pytest-benchmark
|
||||||
, numpy
|
, numpy
|
||||||
, matplotlib
|
, matplotlib
|
||||||
, uncertainties
|
, uncertainties
|
||||||
|
@ -20,7 +21,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pint";
|
pname = "pint";
|
||||||
version = "0.22";
|
version = "0.23";
|
||||||
format = "pyproject";
|
format = "pyproject";
|
||||||
|
|
||||||
disabled = pythonOlder "3.6";
|
disabled = pythonOlder "3.6";
|
||||||
|
@ -28,7 +29,7 @@ buildPythonPackage rec {
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit version;
|
inherit version;
|
||||||
pname = "Pint";
|
pname = "Pint";
|
||||||
hash = "sha256-LROfarvPMBbK19POwFcH/pCKxPmc9Zrt/W7mZ7emRDM=";
|
hash = "sha256-4VCbkWBtvFJSfGAKTvdP+sEv/3Boiv8g6QckCTRuybQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -43,6 +44,7 @@ buildPythonPackage rec {
|
||||||
nativeCheckInputs = [
|
nativeCheckInputs = [
|
||||||
pytestCheckHook
|
pytestCheckHook
|
||||||
pytest-subtests
|
pytest-subtests
|
||||||
|
pytest-benchmark
|
||||||
numpy
|
numpy
|
||||||
matplotlib
|
matplotlib
|
||||||
uncertainties
|
uncertainties
|
||||||
|
@ -53,8 +55,8 @@ buildPythonPackage rec {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
disabledTests = [
|
disabledTests = [
|
||||||
# https://github.com/hgrecco/pint/issues/1825
|
# https://github.com/hgrecco/pint/issues/1898
|
||||||
"test_equal_zero_nan_NP"
|
"test_load_definitions_stage_2"
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "plexapi";
|
pname = "plexapi";
|
||||||
version = "4.15.6";
|
version = "4.15.7";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
disabled = pythonOlder "3.8";
|
disabled = pythonOlder "3.8";
|
||||||
|
@ -18,7 +18,7 @@ buildPythonPackage rec {
|
||||||
owner = "pkkid";
|
owner = "pkkid";
|
||||||
repo = "python-plexapi";
|
repo = "python-plexapi";
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-VU1HVAxAOraTd4VQIqG/MLkw77xciCICIh1zbzGn/dQ=";
|
hash = "sha256-jI/yQuyPfZNZf6yG35rdIYmnJmRuNYUNpEJBNzDMnrY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pycrdt-websocket";
|
pname = "pycrdt-websocket";
|
||||||
version = "0.12.5";
|
version = "0.12.6";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.8";
|
disabled = pythonOlder "3.8";
|
||||||
|
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
||||||
owner = "jupyter-server";
|
owner = "jupyter-server";
|
||||||
repo = "pycrdt-websocket";
|
repo = "pycrdt-websocket";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-dTjWujRMYpg8XZ0OkEG49OLIAPj8qnZl+W7713NKVaA=";
|
hash = "sha256-VYD1OrerqwzjaT1Eb6q+kryf15iHCMSHJZbon225bio=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
26
pkgs/development/python-modules/pycrdt/Cargo.lock
generated
26
pkgs/development/python-modules/pycrdt/Cargo.lock
generated
|
@ -134,16 +134,16 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "proc-macro2"
|
name = "proc-macro2"
|
||||||
version = "1.0.70"
|
version = "1.0.71"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b"
|
checksum = "75cb1540fadbd5b8fbccc4dddad2734eba435053f725621c070711a14bb5f4b8"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"unicode-ident",
|
"unicode-ident",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pycrdt"
|
name = "pycrdt"
|
||||||
version = "0.7.2"
|
version = "0.8.2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"pyo3",
|
"pyo3",
|
||||||
"yrs",
|
"yrs",
|
||||||
|
@ -297,7 +297,7 @@ checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
"syn 2.0.42",
|
"syn 2.0.43",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -339,9 +339,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "syn"
|
name = "syn"
|
||||||
version = "2.0.42"
|
version = "2.0.43"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "5b7d0a2c048d661a1a59fcd7355baa232f7ed34e0ee4df2eef3c1c1c0d3852d8"
|
checksum = "ee659fb5f3d355364e1f3e5bc10fb82068efbf824a1e9d1c9504244a6469ad53"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
|
@ -356,22 +356,22 @@ checksum = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "thiserror"
|
name = "thiserror"
|
||||||
version = "1.0.51"
|
version = "1.0.52"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "f11c217e1416d6f036b870f14e0413d480dbf28edbee1f877abaf0206af43bb7"
|
checksum = "83a48fd946b02c0a526b2e9481c8e2a17755e47039164a86c4070446e3a4614d"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"thiserror-impl",
|
"thiserror-impl",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "thiserror-impl"
|
name = "thiserror-impl"
|
||||||
version = "1.0.51"
|
version = "1.0.52"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "01742297787513b79cf8e29d1056ede1313e2420b7b3b15d0a768b4921f549df"
|
checksum = "e7fbe9b594d6568a6a1443250a7e67d80b74e1e96f6d1715e1e21cc1888291d3"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
"syn 2.0.42",
|
"syn 2.0.43",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -413,7 +413,7 @@ dependencies = [
|
||||||
"once_cell",
|
"once_cell",
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
"syn 2.0.42",
|
"syn 2.0.43",
|
||||||
"wasm-bindgen-shared",
|
"wasm-bindgen-shared",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@ -435,7 +435,7 @@ checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
"syn 2.0.42",
|
"syn 2.0.43",
|
||||||
"wasm-bindgen-backend",
|
"wasm-bindgen-backend",
|
||||||
"wasm-bindgen-shared",
|
"wasm-bindgen-shared",
|
||||||
]
|
]
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue