Merge master into haskell-updates
This commit is contained in:
commit
601b30219d
|
@ -117,10 +117,11 @@ let
|
|||
inherit (self.meta) addMetaAttrs dontDistribute setName updateName
|
||||
appendToName mapDerivationAttrset setPrio lowPrio lowPrioSet hiPrio
|
||||
hiPrioSet getLicenseFromSpdxId getExe;
|
||||
inherit (self.sources) pathType pathIsDirectory cleanSourceFilter
|
||||
inherit (self.filesystem) pathType pathIsDirectory pathIsRegularFile;
|
||||
inherit (self.sources) cleanSourceFilter
|
||||
cleanSource sourceByRegex sourceFilesBySuffices
|
||||
commitIdFromGitRepo cleanSourceWith pathHasContext
|
||||
canCleanSource pathIsRegularFile pathIsGitRepo;
|
||||
canCleanSource pathIsGitRepo;
|
||||
inherit (self.modules) evalModules setDefaultModuleLocation
|
||||
unifyModuleSyntax applyModuleArgsIfFunction mergeModules
|
||||
mergeModules' mergeOptionDecls evalOptionValue mergeDefinitions
|
||||
|
|
|
@ -1,13 +1,93 @@
|
|||
# Functions for copying sources to the Nix store.
|
||||
# Functions for querying information about the filesystem
|
||||
# without copying any files to the Nix store.
|
||||
{ lib }:
|
||||
|
||||
# Tested in lib/tests/filesystem.sh
|
||||
let
|
||||
inherit (builtins)
|
||||
readDir
|
||||
pathExists
|
||||
;
|
||||
|
||||
inherit (lib.strings)
|
||||
hasPrefix
|
||||
;
|
||||
|
||||
inherit (lib.filesystem)
|
||||
pathType
|
||||
;
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
/*
|
||||
The type of a path. The path needs to exist and be accessible.
|
||||
The result is either "directory" for a directory, "regular" for a regular file, "symlink" for a symlink, or "unknown" for anything else.
|
||||
|
||||
Type:
|
||||
pathType :: Path -> String
|
||||
|
||||
Example:
|
||||
pathType /.
|
||||
=> "directory"
|
||||
|
||||
pathType /some/file.nix
|
||||
=> "regular"
|
||||
*/
|
||||
pathType =
|
||||
builtins.readFileType or
|
||||
# Nix <2.14 compatibility shim
|
||||
(path:
|
||||
if ! pathExists path
|
||||
# Fail irrecoverably to mimic the historic behavior of this function and
|
||||
# the new builtins.readFileType
|
||||
then abort "lib.filesystem.pathType: Path ${toString path} does not exist."
|
||||
# The filesystem root is the only path where `dirOf / == /` and
|
||||
# `baseNameOf /` is not valid. We can detect this and directly return
|
||||
# "directory", since we know the filesystem root can't be anything else.
|
||||
else if dirOf path == path
|
||||
then "directory"
|
||||
else (readDir (dirOf path)).${baseNameOf path}
|
||||
);
|
||||
|
||||
/*
|
||||
Whether a path exists and is a directory.
|
||||
|
||||
Type:
|
||||
pathIsDirectory :: Path -> Bool
|
||||
|
||||
Example:
|
||||
pathIsDirectory /.
|
||||
=> true
|
||||
|
||||
pathIsDirectory /this/does/not/exist
|
||||
=> false
|
||||
|
||||
pathIsDirectory /some/file.nix
|
||||
=> false
|
||||
*/
|
||||
pathIsDirectory = path:
|
||||
pathExists path && pathType path == "directory";
|
||||
|
||||
/*
|
||||
Whether a path exists and is a regular file, meaning not a symlink or any other special file type.
|
||||
|
||||
Type:
|
||||
pathIsRegularFile :: Path -> Bool
|
||||
|
||||
Example:
|
||||
pathIsRegularFile /.
|
||||
=> false
|
||||
|
||||
pathIsRegularFile /this/does/not/exist
|
||||
=> false
|
||||
|
||||
pathIsRegularFile /some/file.nix
|
||||
=> true
|
||||
*/
|
||||
pathIsRegularFile = path:
|
||||
pathExists path && pathType path == "regular";
|
||||
|
||||
/*
|
||||
A map of all haskell packages defined in the given path,
|
||||
identified by having a cabal file with the same name as the
|
||||
|
|
|
@ -18,21 +18,11 @@ let
|
|||
pathExists
|
||||
readFile
|
||||
;
|
||||
|
||||
/*
|
||||
Returns the type of a path: regular (for file), symlink, or directory.
|
||||
*/
|
||||
pathType = path: getAttr (baseNameOf path) (readDir (dirOf path));
|
||||
|
||||
/*
|
||||
Returns true if the path exists and is a directory, false otherwise.
|
||||
*/
|
||||
pathIsDirectory = path: if pathExists path then (pathType path) == "directory" else false;
|
||||
|
||||
/*
|
||||
Returns true if the path exists and is a regular file, false otherwise.
|
||||
*/
|
||||
pathIsRegularFile = path: if pathExists path then (pathType path) == "regular" else false;
|
||||
inherit (lib.filesystem)
|
||||
pathType
|
||||
pathIsDirectory
|
||||
pathIsRegularFile
|
||||
;
|
||||
|
||||
/*
|
||||
A basic filter for `cleanSourceWith` that removes
|
||||
|
@ -271,11 +261,20 @@ let
|
|||
};
|
||||
|
||||
in {
|
||||
inherit
|
||||
pathType
|
||||
pathIsDirectory
|
||||
pathIsRegularFile
|
||||
|
||||
pathType = lib.warnIf (lib.isInOldestRelease 2305)
|
||||
"lib.sources.pathType has been moved to lib.filesystem.pathType."
|
||||
lib.filesystem.pathType;
|
||||
|
||||
pathIsDirectory = lib.warnIf (lib.isInOldestRelease 2305)
|
||||
"lib.sources.pathIsDirectory has been moved to lib.filesystem.pathIsDirectory."
|
||||
lib.filesystem.pathIsDirectory;
|
||||
|
||||
pathIsRegularFile = lib.warnIf (lib.isInOldestRelease 2305)
|
||||
"lib.sources.pathIsRegularFile has been moved to lib.filesystem.pathIsRegularFile."
|
||||
lib.filesystem.pathIsRegularFile;
|
||||
|
||||
inherit
|
||||
pathIsGitRepo
|
||||
commitIdFromGitRepo
|
||||
|
||||
|
|
92
lib/tests/filesystem.sh
Executable file
92
lib/tests/filesystem.sh
Executable file
|
@ -0,0 +1,92 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Tests lib/filesystem.nix
|
||||
# Run:
|
||||
# [nixpkgs]$ lib/tests/filesystem.sh
|
||||
# or:
|
||||
# [nixpkgs]$ nix-build lib/tests/release.nix
|
||||
|
||||
set -euo pipefail
|
||||
shopt -s inherit_errexit
|
||||
|
||||
# Use
|
||||
# || die
|
||||
die() {
|
||||
echo >&2 "test case failed: " "$@"
|
||||
exit 1
|
||||
}
|
||||
|
||||
if test -n "${TEST_LIB:-}"; then
|
||||
NIX_PATH=nixpkgs="$(dirname "$TEST_LIB")"
|
||||
else
|
||||
NIX_PATH=nixpkgs="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.."; pwd)"
|
||||
fi
|
||||
export NIX_PATH
|
||||
|
||||
work="$(mktemp -d)"
|
||||
clean_up() {
|
||||
rm -rf "$work"
|
||||
}
|
||||
trap clean_up EXIT
|
||||
cd "$work"
|
||||
|
||||
mkdir directory
|
||||
touch regular
|
||||
ln -s target symlink
|
||||
mkfifo fifo
|
||||
|
||||
checkPathType() {
|
||||
local path=$1
|
||||
local expectedPathType=$2
|
||||
local actualPathType=$(nix-instantiate --eval --strict --json 2>&1 \
|
||||
-E '{ path }: let lib = import <nixpkgs/lib>; in lib.filesystem.pathType path' \
|
||||
--argstr path "$path")
|
||||
if [[ "$actualPathType" != "$expectedPathType" ]]; then
|
||||
die "lib.filesystem.pathType \"$path\" == $actualPathType, but $expectedPathType was expected"
|
||||
fi
|
||||
}
|
||||
|
||||
checkPathType "/" '"directory"'
|
||||
checkPathType "$PWD/directory" '"directory"'
|
||||
checkPathType "$PWD/regular" '"regular"'
|
||||
checkPathType "$PWD/symlink" '"symlink"'
|
||||
checkPathType "$PWD/fifo" '"unknown"'
|
||||
checkPathType "$PWD/non-existent" "error: evaluation aborted with the following error message: 'lib.filesystem.pathType: Path $PWD/non-existent does not exist.'"
|
||||
|
||||
checkPathIsDirectory() {
|
||||
local path=$1
|
||||
local expectedIsDirectory=$2
|
||||
local actualIsDirectory=$(nix-instantiate --eval --strict --json 2>&1 \
|
||||
-E '{ path }: let lib = import <nixpkgs/lib>; in lib.filesystem.pathIsDirectory path' \
|
||||
--argstr path "$path")
|
||||
if [[ "$actualIsDirectory" != "$expectedIsDirectory" ]]; then
|
||||
die "lib.filesystem.pathIsDirectory \"$path\" == $actualIsDirectory, but $expectedIsDirectory was expected"
|
||||
fi
|
||||
}
|
||||
|
||||
checkPathIsDirectory "/" "true"
|
||||
checkPathIsDirectory "$PWD/directory" "true"
|
||||
checkPathIsDirectory "$PWD/regular" "false"
|
||||
checkPathIsDirectory "$PWD/symlink" "false"
|
||||
checkPathIsDirectory "$PWD/fifo" "false"
|
||||
checkPathIsDirectory "$PWD/non-existent" "false"
|
||||
|
||||
checkPathIsRegularFile() {
|
||||
local path=$1
|
||||
local expectedIsRegularFile=$2
|
||||
local actualIsRegularFile=$(nix-instantiate --eval --strict --json 2>&1 \
|
||||
-E '{ path }: let lib = import <nixpkgs/lib>; in lib.filesystem.pathIsRegularFile path' \
|
||||
--argstr path "$path")
|
||||
if [[ "$actualIsRegularFile" != "$expectedIsRegularFile" ]]; then
|
||||
die "lib.filesystem.pathIsRegularFile \"$path\" == $actualIsRegularFile, but $expectedIsRegularFile was expected"
|
||||
fi
|
||||
}
|
||||
|
||||
checkPathIsRegularFile "/" "false"
|
||||
checkPathIsRegularFile "$PWD/directory" "false"
|
||||
checkPathIsRegularFile "$PWD/regular" "true"
|
||||
checkPathIsRegularFile "$PWD/symlink" "false"
|
||||
checkPathIsRegularFile "$PWD/fifo" "false"
|
||||
checkPathIsRegularFile "$PWD/non-existent" "false"
|
||||
|
||||
echo >&2 tests ok
|
|
@ -44,6 +44,9 @@ pkgs.runCommand "nixpkgs-lib-tests" {
|
|||
echo "Running lib/tests/modules.sh"
|
||||
bash lib/tests/modules.sh
|
||||
|
||||
echo "Running lib/tests/filesystem.sh"
|
||||
TEST_LIB=$PWD/lib bash lib/tests/filesystem.sh
|
||||
|
||||
echo "Running lib/tests/sources.sh"
|
||||
TEST_LIB=$PWD/lib bash lib/tests/sources.sh
|
||||
|
||||
|
|
|
@ -8936,6 +8936,12 @@
|
|||
githubId = 1572058;
|
||||
name = "Leonardo Cecchi";
|
||||
};
|
||||
leonid = {
|
||||
email = "belyaev.l@northeastern.edu";
|
||||
github = "leonidbelyaev";
|
||||
githubId = 77865363;
|
||||
name = "Leonid Belyaev";
|
||||
};
|
||||
leshainc = {
|
||||
email = "leshainc@fomalhaut.me";
|
||||
github = "LeshaInc";
|
||||
|
@ -9006,6 +9012,12 @@
|
|||
githubId = 1769386;
|
||||
name = "Liam Diprose";
|
||||
};
|
||||
liberatys = {
|
||||
email = "liberatys@hey.com";
|
||||
name = "Nick Anthony Flueckiger";
|
||||
github = "liberatys";
|
||||
githubId = 35100156;
|
||||
};
|
||||
libjared = {
|
||||
email = "jared@perrycode.com";
|
||||
github = "libjared";
|
||||
|
@ -15796,6 +15808,12 @@
|
|||
github = "thielema";
|
||||
githubId = 898989;
|
||||
};
|
||||
thilobillerbeck = {
|
||||
name = "Thilo Billerbeck";
|
||||
email = "thilo.billerbeck@officerent.de";
|
||||
github = "thilobillerbeck";
|
||||
githubId = 7442383;
|
||||
};
|
||||
thled = {
|
||||
name = "Thomas Le Duc";
|
||||
email = "dev@tleduc.de";
|
||||
|
|
|
@ -2,11 +2,18 @@
|
|||
|
||||
## Highlights {#sec-release-23.11-highlights}
|
||||
|
||||
- Create the first release note entry in this section!
|
||||
|
||||
## New Services {#sec-release-23.11-new-services}
|
||||
|
||||
- Create the first release note entry in this section!
|
||||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
|
||||
## Backward Incompatibilities {#sec-release-23.11-incompatibilities}
|
||||
|
||||
- Create the first release note entry in this section!
|
||||
|
||||
## Other Notable Changes {#sec-release-23.11-notable-changes}
|
||||
|
||||
- Create the first release note entry in this section!
|
||||
|
|
|
@ -21,9 +21,6 @@ with lib;
|
|||
# ISO naming.
|
||||
isoImage.isoName = "${config.isoImage.isoBaseName}-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.iso";
|
||||
|
||||
# BIOS booting
|
||||
isoImage.makeBiosBootable = true;
|
||||
|
||||
# EFI booting
|
||||
isoImage.makeEfiBootable = true;
|
||||
|
||||
|
|
|
@ -442,9 +442,6 @@ let
|
|||
fsck.vfat -vn "$out"
|
||||
''; # */
|
||||
|
||||
# Syslinux (and isolinux) only supports x86-based architectures.
|
||||
canx86BiosBoot = pkgs.stdenv.hostPlatform.isx86;
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
|
@ -543,7 +540,17 @@ in
|
|||
};
|
||||
|
||||
isoImage.makeBiosBootable = mkOption {
|
||||
default = false;
|
||||
# Before this option was introduced, images were BIOS-bootable if the
|
||||
# hostPlatform was x86-based. This option is enabled by default for
|
||||
# backwards compatibility.
|
||||
#
|
||||
# Also note that syslinux package currently cannot be cross-compiled from
|
||||
# non-x86 platforms, so the default is false on non-x86 build platforms.
|
||||
default = pkgs.stdenv.buildPlatform.isx86 && pkgs.stdenv.hostPlatform.isx86;
|
||||
defaultText = lib.literalMD ''
|
||||
`true` if both build and host platforms are x86-based architectures,
|
||||
e.g. i686 and x86_64.
|
||||
'';
|
||||
type = lib.types.bool;
|
||||
description = lib.mdDoc ''
|
||||
Whether the ISO image should be a BIOS-bootable disk.
|
||||
|
@ -704,6 +711,11 @@ in
|
|||
|
||||
config = {
|
||||
assertions = [
|
||||
{
|
||||
# Syslinux (and isolinux) only supports x86-based architectures.
|
||||
assertion = config.isoImage.makeBiosBootable -> pkgs.stdenv.hostPlatform.isx86;
|
||||
message = "BIOS boot is only supported on x86-based architectures.";
|
||||
}
|
||||
{
|
||||
assertion = !(stringLength config.isoImage.volumeID > 32);
|
||||
# https://wiki.osdev.org/ISO_9660#The_Primary_Volume_Descriptor
|
||||
|
@ -722,7 +734,7 @@ in
|
|||
boot.loader.grub.enable = false;
|
||||
|
||||
environment.systemPackages = [ grubPkgs.grub2 grubPkgs.grub2_efi ]
|
||||
++ optional (config.isoImage.makeBiosBootable && canx86BiosBoot) pkgs.syslinux
|
||||
++ optional (config.isoImage.makeBiosBootable) pkgs.syslinux
|
||||
;
|
||||
|
||||
# In stage 1 of the boot, mount the CD as the root FS by label so
|
||||
|
@ -773,7 +785,7 @@ in
|
|||
{ source = pkgs.writeText "version" config.system.nixos.label;
|
||||
target = "/version.txt";
|
||||
}
|
||||
] ++ optionals (config.isoImage.makeBiosBootable && canx86BiosBoot) [
|
||||
] ++ optionals (config.isoImage.makeBiosBootable) [
|
||||
{ source = config.isoImage.splashImage;
|
||||
target = "/isolinux/background.png";
|
||||
}
|
||||
|
@ -800,7 +812,7 @@ in
|
|||
{ source = config.isoImage.efiSplashImage;
|
||||
target = "/EFI/boot/efi-background.png";
|
||||
}
|
||||
] ++ optionals (config.boot.loader.grub.memtest86.enable && config.isoImage.makeBiosBootable && canx86BiosBoot) [
|
||||
] ++ optionals (config.boot.loader.grub.memtest86.enable && config.isoImage.makeBiosBootable) [
|
||||
{ source = "${pkgs.memtest86plus}/memtest.bin";
|
||||
target = "/boot/memtest.bin";
|
||||
}
|
||||
|
@ -815,10 +827,10 @@ in
|
|||
# Create the ISO image.
|
||||
system.build.isoImage = pkgs.callPackage ../../../lib/make-iso9660-image.nix ({
|
||||
inherit (config.isoImage) isoName compressImage volumeID contents;
|
||||
bootable = config.isoImage.makeBiosBootable && canx86BiosBoot;
|
||||
bootable = config.isoImage.makeBiosBootable;
|
||||
bootImage = "/isolinux/isolinux.bin";
|
||||
syslinux = if config.isoImage.makeBiosBootable && canx86BiosBoot then pkgs.syslinux else null;
|
||||
} // optionalAttrs (config.isoImage.makeUsbBootable && config.isoImage.makeBiosBootable && canx86BiosBoot) {
|
||||
syslinux = if config.isoImage.makeBiosBootable then pkgs.syslinux else null;
|
||||
} // optionalAttrs (config.isoImage.makeUsbBootable && config.isoImage.makeBiosBootable) {
|
||||
usbBootable = true;
|
||||
isohybridMbrImage = "${pkgs.syslinux}/share/syslinux/isohdpfx.bin";
|
||||
} // optionalAttrs config.isoImage.makeEfiBootable {
|
||||
|
|
|
@ -10,171 +10,18 @@
|
|||
let
|
||||
inherit (lib)
|
||||
filterAttrs
|
||||
literalMD
|
||||
literalExpression
|
||||
mkIf
|
||||
mkOption
|
||||
mkRemovedOptionModule
|
||||
mkRenamedOptionModule
|
||||
types
|
||||
|
||||
;
|
||||
|
||||
cfg =
|
||||
config.services.hercules-ci-agent;
|
||||
cfg = config.services.hercules-ci-agent;
|
||||
|
||||
format = pkgs.formats.toml { };
|
||||
|
||||
settingsModule = { config, ... }: {
|
||||
freeformType = format.type;
|
||||
options = {
|
||||
apiBaseUrl = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
API base URL that the agent will connect to.
|
||||
|
||||
When using Hercules CI Enterprise, set this to the URL where your
|
||||
Hercules CI server is reachable.
|
||||
'';
|
||||
type = types.str;
|
||||
default = "https://hercules-ci.com";
|
||||
};
|
||||
baseDirectory = mkOption {
|
||||
type = types.path;
|
||||
default = "/var/lib/hercules-ci-agent";
|
||||
description = lib.mdDoc ''
|
||||
State directory (secrets, work directory, etc) for agent
|
||||
'';
|
||||
};
|
||||
concurrentTasks = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Number of tasks to perform simultaneously.
|
||||
|
||||
A task is a single derivation build, an evaluation or an effect run.
|
||||
At minimum, you need 2 concurrent tasks for `x86_64-linux`
|
||||
in your cluster, to allow for import from derivation.
|
||||
|
||||
`concurrentTasks` can be around the CPU core count or lower if memory is
|
||||
the bottleneck.
|
||||
|
||||
The optimal value depends on the resource consumption characteristics of your workload,
|
||||
including memory usage and in-task parallelism. This is typically determined empirically.
|
||||
|
||||
When scaling, it is generally better to have a double-size machine than two machines,
|
||||
because each split of resources causes inefficiencies; particularly with regards
|
||||
to build latency because of extra downloads.
|
||||
'';
|
||||
type = types.either types.ints.positive (types.enum [ "auto" ]);
|
||||
default = "auto";
|
||||
};
|
||||
labels = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
A key-value map of user data.
|
||||
|
||||
This data will be available to organization members in the dashboard and API.
|
||||
|
||||
The values can be of any TOML type that corresponds to a JSON type, but arrays
|
||||
can not contain tables/objects due to limitations of the TOML library. Values
|
||||
involving arrays of non-primitive types may not be representable currently.
|
||||
'';
|
||||
type = format.type;
|
||||
defaultText = literalExpression ''
|
||||
{
|
||||
agent.source = "..."; # One of "nixpkgs", "flake", "override"
|
||||
lib.version = "...";
|
||||
pkgs.version = "...";
|
||||
}
|
||||
'';
|
||||
};
|
||||
workDirectory = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
The directory in which temporary subdirectories are created for task state. This includes sources for Nix evaluation.
|
||||
'';
|
||||
type = types.path;
|
||||
default = config.baseDirectory + "/work";
|
||||
defaultText = literalExpression ''baseDirectory + "/work"'';
|
||||
};
|
||||
staticSecretsDirectory = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
This is the default directory to look for statically configured secrets like `cluster-join-token.key`.
|
||||
|
||||
See also `clusterJoinTokenPath` and `binaryCachesPath` for fine-grained configuration.
|
||||
'';
|
||||
type = types.path;
|
||||
default = config.baseDirectory + "/secrets";
|
||||
defaultText = literalExpression ''baseDirectory + "/secrets"'';
|
||||
};
|
||||
clusterJoinTokenPath = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Location of the cluster-join-token.key file.
|
||||
|
||||
You can retrieve the contents of the file when creating a new agent via
|
||||
<https://hercules-ci.com/dashboard>.
|
||||
|
||||
As this value is confidential, it should not be in the store, but
|
||||
installed using other means, such as agenix, NixOps
|
||||
`deployment.keys`, or manual installation.
|
||||
|
||||
The contents of the file are used for authentication between the agent and the API.
|
||||
'';
|
||||
type = types.path;
|
||||
default = config.staticSecretsDirectory + "/cluster-join-token.key";
|
||||
defaultText = literalExpression ''staticSecretsDirectory + "/cluster-join-token.key"'';
|
||||
};
|
||||
binaryCachesPath = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Path to a JSON file containing binary cache secret keys.
|
||||
|
||||
As these values are confidential, they should not be in the store, but
|
||||
copied over using other means, such as agenix, NixOps
|
||||
`deployment.keys`, or manual installation.
|
||||
|
||||
The format is described on <https://docs.hercules-ci.com/hercules-ci-agent/binary-caches-json/>.
|
||||
'';
|
||||
type = types.path;
|
||||
default = config.staticSecretsDirectory + "/binary-caches.json";
|
||||
defaultText = literalExpression ''staticSecretsDirectory + "/binary-caches.json"'';
|
||||
};
|
||||
secretsJsonPath = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Path to a JSON file containing secrets for effects.
|
||||
|
||||
As these values are confidential, they should not be in the store, but
|
||||
copied over using other means, such as agenix, NixOps
|
||||
`deployment.keys`, or manual installation.
|
||||
|
||||
The format is described on <https://docs.hercules-ci.com/hercules-ci-agent/secrets-json/>.
|
||||
'';
|
||||
type = types.path;
|
||||
default = config.staticSecretsDirectory + "/secrets.json";
|
||||
defaultText = literalExpression ''staticSecretsDirectory + "/secrets.json"'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# TODO (roberth, >=2022) remove
|
||||
checkNix =
|
||||
if !cfg.checkNix
|
||||
then ""
|
||||
else if lib.versionAtLeast config.nix.package.version "2.3.10"
|
||||
then ""
|
||||
else
|
||||
pkgs.stdenv.mkDerivation {
|
||||
name = "hercules-ci-check-system-nix-src";
|
||||
inherit (config.nix.package) src patches;
|
||||
dontConfigure = true;
|
||||
buildPhase = ''
|
||||
echo "Checking in-memory pathInfoCache expiry"
|
||||
if ! grep 'PathInfoCacheValue' src/libstore/store-api.hh >/dev/null; then
|
||||
cat 1>&2 <<EOF
|
||||
|
||||
You are deploying Hercules CI Agent on a system with an incompatible
|
||||
nix-daemon. Please make sure nix.package is set to a Nix version of at
|
||||
least 2.3.10 or a master version more recent than Mar 12, 2020.
|
||||
EOF
|
||||
exit 1
|
||||
fi
|
||||
'';
|
||||
installPhase = "touch $out";
|
||||
};
|
||||
inherit (import ./settings.nix { inherit pkgs lib; }) format settingsModule;
|
||||
|
||||
in
|
||||
{
|
||||
|
@ -198,15 +45,6 @@ in
|
|||
Support is available at [help@hercules-ci.com](mailto:help@hercules-ci.com).
|
||||
'';
|
||||
};
|
||||
checkNix = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = lib.mdDoc ''
|
||||
Whether to make sure that the system's Nix (nix-daemon) is compatible.
|
||||
|
||||
If you set this to false, please keep up with the change log.
|
||||
'';
|
||||
};
|
||||
package = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Package containing the bin/hercules-ci-agent executable.
|
||||
|
@ -235,7 +73,7 @@ in
|
|||
tomlFile = mkOption {
|
||||
type = types.path;
|
||||
internal = true;
|
||||
defaultText = literalMD "generated `hercules-ci-agent.toml`";
|
||||
defaultText = lib.literalMD "generated `hercules-ci-agent.toml`";
|
||||
description = lib.mdDoc ''
|
||||
The fully assembled config file.
|
||||
'';
|
||||
|
@ -243,7 +81,27 @@ in
|
|||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
nix.extraOptions = lib.addContextFrom checkNix ''
|
||||
# Make sure that nix.extraOptions does not override trusted-users
|
||||
assertions = [
|
||||
{
|
||||
assertion =
|
||||
(cfg.settings.nixUserIsTrusted or false) ->
|
||||
builtins.match ".*(^|\n)[ \t]*trusted-users[ \t]*=.*" config.nix.extraOptions == null;
|
||||
message = ''
|
||||
hercules-ci-agent: Please do not set `trusted-users` in `nix.extraOptions`.
|
||||
|
||||
The hercules-ci-agent module by default relies on `nix.settings.trusted-users`
|
||||
to be effectful, but a line like `trusted-users = ...` in `nix.extraOptions`
|
||||
will override the value set in `nix.settings.trusted-users`.
|
||||
|
||||
Instead of setting `trusted-users` in the `nix.extraOptions` string, you should
|
||||
set an option with additive semantics, such as
|
||||
- the NixOS option `nix.settings.trusted-users`, or
|
||||
- the Nix option in the `extraOptions` string, `extra-trusted-users`
|
||||
'';
|
||||
}
|
||||
];
|
||||
nix.extraOptions = ''
|
||||
# A store path that was missing at first may well have finished building,
|
||||
# even shortly after the previous lookup. This *also* applies to the daemon.
|
||||
narinfo-cache-negative-ttl = 0
|
||||
|
@ -251,14 +109,9 @@ in
|
|||
services.hercules-ci-agent = {
|
||||
tomlFile =
|
||||
format.generate "hercules-ci-agent.toml" cfg.settings;
|
||||
|
||||
settings.labels = {
|
||||
agent.source =
|
||||
if options.services.hercules-ci-agent.package.highestPrio == (lib.modules.mkOptionDefault { }).priority
|
||||
then "nixpkgs"
|
||||
else lib.mkOptionDefault "override";
|
||||
pkgs.version = pkgs.lib.version;
|
||||
lib.version = lib.version;
|
||||
settings.config._module.args = {
|
||||
packageOption = options.services.hercules-ci-agent.package;
|
||||
inherit pkgs;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -36,8 +36,14 @@ in
|
|||
Restart = "on-failure";
|
||||
RestartSec = 120;
|
||||
|
||||
LimitSTACK = 256 * 1024 * 1024;
|
||||
# If a worker goes OOM, don't kill the main process. It needs to
|
||||
# report the failure and it's unlikely to be part of the problem.
|
||||
OOMPolicy = "continue";
|
||||
|
||||
# Work around excessive stack use by libstdc++ regex
|
||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86164
|
||||
# A 256 MiB stack allows between 400 KiB and 1.5 MiB file to be matched by ".*".
|
||||
LimitSTACK = 256 * 1024 * 1024;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -0,0 +1,153 @@
|
|||
# Not a module
|
||||
{ pkgs, lib }:
|
||||
let
|
||||
inherit (lib)
|
||||
types
|
||||
literalExpression
|
||||
mkOption
|
||||
;
|
||||
|
||||
format = pkgs.formats.toml { };
|
||||
|
||||
settingsModule = { config, packageOption, pkgs, ... }: {
|
||||
freeformType = format.type;
|
||||
options = {
|
||||
apiBaseUrl = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
API base URL that the agent will connect to.
|
||||
|
||||
When using Hercules CI Enterprise, set this to the URL where your
|
||||
Hercules CI server is reachable.
|
||||
'';
|
||||
type = types.str;
|
||||
default = "https://hercules-ci.com";
|
||||
};
|
||||
baseDirectory = mkOption {
|
||||
type = types.path;
|
||||
default = "/var/lib/hercules-ci-agent";
|
||||
description = lib.mdDoc ''
|
||||
State directory (secrets, work directory, etc) for agent
|
||||
'';
|
||||
};
|
||||
concurrentTasks = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Number of tasks to perform simultaneously.
|
||||
|
||||
A task is a single derivation build, an evaluation or an effect run.
|
||||
At minimum, you need 2 concurrent tasks for `x86_64-linux`
|
||||
in your cluster, to allow for import from derivation.
|
||||
|
||||
`concurrentTasks` can be around the CPU core count or lower if memory is
|
||||
the bottleneck.
|
||||
|
||||
The optimal value depends on the resource consumption characteristics of your workload,
|
||||
including memory usage and in-task parallelism. This is typically determined empirically.
|
||||
|
||||
When scaling, it is generally better to have a double-size machine than two machines,
|
||||
because each split of resources causes inefficiencies; particularly with regards
|
||||
to build latency because of extra downloads.
|
||||
'';
|
||||
type = types.either types.ints.positive (types.enum [ "auto" ]);
|
||||
default = "auto";
|
||||
defaultText = lib.literalMD ''
|
||||
`"auto"`, meaning equal to the number of CPU cores.
|
||||
'';
|
||||
};
|
||||
labels = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
A key-value map of user data.
|
||||
|
||||
This data will be available to organization members in the dashboard and API.
|
||||
|
||||
The values can be of any TOML type that corresponds to a JSON type, but arrays
|
||||
can not contain tables/objects due to limitations of the TOML library. Values
|
||||
involving arrays of non-primitive types may not be representable currently.
|
||||
'';
|
||||
type = format.type;
|
||||
defaultText = literalExpression ''
|
||||
{
|
||||
agent.source = "..."; # One of "nixpkgs", "flake", "override"
|
||||
lib.version = "...";
|
||||
pkgs.version = "...";
|
||||
}
|
||||
'';
|
||||
};
|
||||
workDirectory = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
The directory in which temporary subdirectories are created for task state. This includes sources for Nix evaluation.
|
||||
'';
|
||||
type = types.path;
|
||||
default = config.baseDirectory + "/work";
|
||||
defaultText = literalExpression ''baseDirectory + "/work"'';
|
||||
};
|
||||
staticSecretsDirectory = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
This is the default directory to look for statically configured secrets like `cluster-join-token.key`.
|
||||
|
||||
See also `clusterJoinTokenPath` and `binaryCachesPath` for fine-grained configuration.
|
||||
'';
|
||||
type = types.path;
|
||||
default = config.baseDirectory + "/secrets";
|
||||
defaultText = literalExpression ''baseDirectory + "/secrets"'';
|
||||
};
|
||||
clusterJoinTokenPath = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Location of the cluster-join-token.key file.
|
||||
|
||||
You can retrieve the contents of the file when creating a new agent via
|
||||
<https://hercules-ci.com/dashboard>.
|
||||
|
||||
As this value is confidential, it should not be in the store, but
|
||||
installed using other means, such as agenix, NixOps
|
||||
`deployment.keys`, or manual installation.
|
||||
|
||||
The contents of the file are used for authentication between the agent and the API.
|
||||
'';
|
||||
type = types.path;
|
||||
default = config.staticSecretsDirectory + "/cluster-join-token.key";
|
||||
defaultText = literalExpression ''staticSecretsDirectory + "/cluster-join-token.key"'';
|
||||
};
|
||||
binaryCachesPath = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Path to a JSON file containing binary cache secret keys.
|
||||
|
||||
As these values are confidential, they should not be in the store, but
|
||||
copied over using other means, such as agenix, NixOps
|
||||
`deployment.keys`, or manual installation.
|
||||
|
||||
The format is described on <https://docs.hercules-ci.com/hercules-ci-agent/binary-caches-json/>.
|
||||
'';
|
||||
type = types.path;
|
||||
default = config.staticSecretsDirectory + "/binary-caches.json";
|
||||
defaultText = literalExpression ''staticSecretsDirectory + "/binary-caches.json"'';
|
||||
};
|
||||
secretsJsonPath = mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Path to a JSON file containing secrets for effects.
|
||||
|
||||
As these values are confidential, they should not be in the store, but
|
||||
copied over using other means, such as agenix, NixOps
|
||||
`deployment.keys`, or manual installation.
|
||||
|
||||
The format is described on <https://docs.hercules-ci.com/hercules-ci-agent/secrets-json/>.
|
||||
'';
|
||||
type = types.path;
|
||||
default = config.staticSecretsDirectory + "/secrets.json";
|
||||
defaultText = literalExpression ''staticSecretsDirectory + "/secrets.json"'';
|
||||
};
|
||||
};
|
||||
config = {
|
||||
labels = {
|
||||
agent.source =
|
||||
if packageOption.highestPrio == (lib.modules.mkOptionDefault { }).priority
|
||||
then "nixpkgs"
|
||||
else lib.mkOptionDefault "override";
|
||||
pkgs.version = pkgs.lib.version;
|
||||
lib.version = lib.version;
|
||||
};
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
inherit format settingsModule;
|
||||
}
|
|
@ -117,7 +117,9 @@ in {
|
|||
|
||||
# PHP 8.0 is the only version which is supported/tested by upstream:
|
||||
# https://github.com/grocy/grocy/blob/v3.3.0/README.md#how-to-install
|
||||
phpPackage = pkgs.php80;
|
||||
# Compatibility with PHP 8.1 is available on their development branch:
|
||||
# https://github.com/grocy/grocy/commit/38a4ad8ec480c29a1bff057b3482fd103b036848
|
||||
phpPackage = pkgs.php81;
|
||||
|
||||
inherit (cfg.phpfpm) settings;
|
||||
|
||||
|
|
|
@ -226,7 +226,7 @@ in
|
|||
|
||||
services.phpfpm.pools.limesurvey = {
|
||||
inherit user group;
|
||||
phpPackage = pkgs.php80;
|
||||
phpPackage = pkgs.php81;
|
||||
phpEnv.DBENGINE = "${cfg.database.dbEngine}";
|
||||
phpEnv.LIMESURVEY_CONFIG = "${limesurveyConfig}";
|
||||
settings = {
|
||||
|
@ -288,8 +288,8 @@ in
|
|||
environment.LIMESURVEY_CONFIG = limesurveyConfig;
|
||||
script = ''
|
||||
# update or install the database as required
|
||||
${pkgs.php80}/bin/php ${pkg}/share/limesurvey/application/commands/console.php updatedb || \
|
||||
${pkgs.php80}/bin/php ${pkg}/share/limesurvey/application/commands/console.php install admin password admin admin@example.com verbose
|
||||
${pkgs.php81}/bin/php ${pkg}/share/limesurvey/application/commands/console.php updatedb || \
|
||||
${pkgs.php81}/bin/php ${pkg}/share/limesurvey/application/commands/console.php install admin password admin admin@example.com verbose
|
||||
'';
|
||||
serviceConfig = {
|
||||
User = user;
|
||||
|
|
|
@ -586,7 +586,7 @@ in
|
|||
|
||||
# Create an outline-sequalize wrapper (a wrapper around the wrapper) that
|
||||
# has the config file's path baked in. This is necessary because there is
|
||||
# at least one occurrence of outline calling this from its own code.
|
||||
# at least two occurrences of outline calling this from its own code.
|
||||
sequelize = pkgs.writeShellScriptBin "outline-sequelize" ''
|
||||
exec ${cfg.package}/bin/outline-sequelize \
|
||||
--config $RUNTIME_DIRECTORY/database.json \
|
||||
|
@ -687,21 +687,18 @@ in
|
|||
openssl rand -hex 32 > ${lib.escapeShellArg cfg.utilsSecretFile}
|
||||
fi
|
||||
|
||||
# The config file is required for the CLI, the DATABASE_URL environment
|
||||
# variable is read by the app.
|
||||
# The config file is required for the sequelize CLI.
|
||||
${if (cfg.databaseUrl == "local") then ''
|
||||
cat <<EOF > $RUNTIME_DIRECTORY/database.json
|
||||
{
|
||||
"production": {
|
||||
"dialect": "postgres",
|
||||
"production-ssl-disabled": {
|
||||
"host": "/run/postgresql",
|
||||
"username": null,
|
||||
"password": null
|
||||
"password": null,
|
||||
"dialect": "postgres"
|
||||
}
|
||||
}
|
||||
EOF
|
||||
export DATABASE_URL=${lib.escapeShellArg localPostgresqlUrl}
|
||||
export PGSSLMODE=disable
|
||||
'' else ''
|
||||
cat <<EOF > $RUNTIME_DIRECTORY/database.json
|
||||
{
|
||||
|
@ -720,11 +717,7 @@ in
|
|||
}
|
||||
}
|
||||
EOF
|
||||
export DATABASE_URL=${lib.escapeShellArg cfg.databaseUrl}
|
||||
''}
|
||||
|
||||
cd $RUNTIME_DIRECTORY
|
||||
${sequelize}/bin/outline-sequelize db:migrate
|
||||
'';
|
||||
|
||||
script = ''
|
||||
|
@ -781,7 +774,7 @@ in
|
|||
RuntimeDirectoryMode = "0750";
|
||||
# This working directory is required to find stuff like the set of
|
||||
# onboarding files:
|
||||
WorkingDirectory = "${cfg.package}/share/outline/build";
|
||||
WorkingDirectory = "${cfg.package}/share/outline";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -555,6 +555,7 @@ in {
|
|||
openstack-image-userdata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).userdata or {};
|
||||
opentabletdriver = handleTest ./opentabletdriver.nix {};
|
||||
owncast = handleTest ./owncast.nix {};
|
||||
outline = handleTest ./outline.nix {};
|
||||
image-contents = handleTest ./image-contents.nix {};
|
||||
openvscode-server = handleTest ./openvscode-server.nix {};
|
||||
orangefs = handleTest ./orangefs.nix {};
|
||||
|
|
54
nixos/tests/outline.nix
Normal file
54
nixos/tests/outline.nix
Normal file
|
@ -0,0 +1,54 @@
|
|||
import ./make-test-python.nix ({ pkgs, lib, ... }:
|
||||
let
|
||||
accessKey = "BKIKJAA5BMMU2RHO6IBB";
|
||||
secretKey = "V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12";
|
||||
secretKeyFile = pkgs.writeText "outline-secret-key" ''
|
||||
${secretKey}
|
||||
'';
|
||||
rootCredentialsFile = pkgs.writeText "minio-credentials-full" ''
|
||||
MINIO_ROOT_USER=${accessKey}
|
||||
MINIO_ROOT_PASSWORD=${secretKey}
|
||||
'';
|
||||
in
|
||||
{
|
||||
name = "outline";
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ xanderio ];
|
||||
|
||||
nodes = {
|
||||
outline = { pkgs, config, ... }: {
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
environment.systemPackages = [ pkgs.minio-client ];
|
||||
services.outline = {
|
||||
enable = true;
|
||||
forceHttps = false;
|
||||
storage = {
|
||||
inherit accessKey secretKeyFile;
|
||||
uploadBucketUrl = "http://localhost:9000";
|
||||
uploadBucketName = "outline";
|
||||
region = config.services.minio.region;
|
||||
};
|
||||
};
|
||||
services.minio = {
|
||||
enable = true;
|
||||
inherit rootCredentialsFile;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript =
|
||||
''
|
||||
machine.wait_for_unit("minio.service")
|
||||
machine.wait_for_open_port(9000)
|
||||
|
||||
# Create a test bucket on the server
|
||||
machine.succeed(
|
||||
"mc config host add minio http://localhost:9000 ${accessKey} ${secretKey} --api s3v4"
|
||||
)
|
||||
machine.succeed("mc mb minio/outline")
|
||||
|
||||
outline.wait_for_unit("outline.service")
|
||||
outline.wait_for_open_port(3000)
|
||||
outline.succeed("curl --fail http://localhost:3000/")
|
||||
'';
|
||||
})
|
|
@ -30,10 +30,12 @@
|
|||
, pcre
|
||||
, mount
|
||||
, gnome
|
||||
, Accelerate
|
||||
, Cocoa
|
||||
, WebKit
|
||||
, CoreServices
|
||||
, CoreAudioKit
|
||||
, IOBluetooth
|
||||
# It is not allowed to distribute binaries with the VST2 SDK plugin without a license
|
||||
# (the author of Bespoke has such a licence but not Nix). VST3 should work out of the box.
|
||||
# Read more in https://github.com/NixOS/nixpkgs/issues/145607
|
||||
|
@ -102,10 +104,12 @@ stdenv.mkDerivation rec {
|
|||
pcre
|
||||
mount
|
||||
] ++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
Accelerate
|
||||
Cocoa
|
||||
WebKit
|
||||
CoreServices
|
||||
CoreAudioKit
|
||||
IOBluetooth
|
||||
];
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin (toString [
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
, freetype
|
||||
, alsa-lib
|
||||
, libjack2
|
||||
, Accelerate
|
||||
, Cocoa
|
||||
, WebKit
|
||||
, MetalKit
|
||||
|
@ -52,6 +53,7 @@ stdenv.mkDerivation rec {
|
|||
alsa-lib
|
||||
libjack2
|
||||
] ++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
Accelerate
|
||||
Cocoa
|
||||
WebKit
|
||||
MetalKit
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
, libXcursor
|
||||
, freetype
|
||||
, alsa-lib
|
||||
, Accelerate
|
||||
, Cocoa
|
||||
, WebKit
|
||||
, CoreServices
|
||||
|
@ -76,6 +77,7 @@ stdenv.mkDerivation rec {
|
|||
freetype
|
||||
alsa-lib
|
||||
] ++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
Accelerate
|
||||
Cocoa
|
||||
WebKit
|
||||
CoreServices
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, stdenv, fetchFromGitHub, pythonPackages, wrapGAppsHook
|
||||
{ lib, stdenv, fetchFromGitHub, pythonPackages, wrapGAppsNoGuiHook
|
||||
, gst_all_1, glib-networking, gobject-introspection
|
||||
}:
|
||||
|
||||
|
@ -13,7 +13,7 @@ pythonPackages.buildPythonApplication rec {
|
|||
sha256 = "sha256-IUQe5WH2vsrAOgokhTNVVM3lnJXphT2xNGu27hWBLSo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ wrapGAppsHook ];
|
||||
nativeBuildInputs = [ wrapGAppsNoGuiHook ];
|
||||
|
||||
buildInputs = with gst_all_1; [
|
||||
glib-networking
|
||||
|
@ -45,10 +45,7 @@ pythonPackages.buildPythonApplication rec {
|
|||
|
||||
meta = with lib; {
|
||||
homepage = "https://www.mopidy.com/";
|
||||
description = ''
|
||||
An extensible music server that plays music from local disk, Spotify,
|
||||
SoundCloud, and more
|
||||
'';
|
||||
description = "An extensible music server that plays music from local disk, Spotify, SoundCloud, and more";
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.fpletz ];
|
||||
hydraPlatforms = [];
|
||||
|
|
|
@ -11,16 +11,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "radioboat";
|
||||
version = "0.2.3";
|
||||
version = "0.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "slashformotion";
|
||||
repo = "radioboat";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-nY8h09SDTQPKLAHgWr3q8yRGtw3bIWvAFVu05rqXPcg=";
|
||||
hash = "sha256-4k+WK2Cxu1yBWgvEW9LMD2RGfiY7XDAe0qqph82zvlI=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-76Q77BXNe6NGxn6ocYuj58M4aPGCWTekKV5tOyxBv2U=";
|
||||
vendorHash = "sha256-H2vo5gngXUcrem25tqz/1MhOgpNZcN+IcaQHZrGyjW8=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
@ -46,7 +46,6 @@ buildGoModule rec {
|
|||
tests.version = testers.testVersion {
|
||||
package = radioboat;
|
||||
command = "radioboat version";
|
||||
version = version;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -47,7 +47,6 @@
|
|||
then "${source}/${grammar.source.subpath}"
|
||||
else source;
|
||||
|
||||
dontUnpack = true;
|
||||
dontConfigure = true;
|
||||
|
||||
FLAGS = [
|
||||
|
@ -64,13 +63,13 @@
|
|||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
if [[ -e "$src/src/scanner.cc" ]]; then
|
||||
$CXX -c "$src/src/scanner.cc" -o scanner.o $FLAGS
|
||||
elif [[ -e "$src/src/scanner.c" ]]; then
|
||||
$CC -c "$src/src/scanner.c" -o scanner.o $FLAGS
|
||||
if [[ -e "src/scanner.cc" ]]; then
|
||||
$CXX -c "src/scanner.cc" -o scanner.o $FLAGS
|
||||
elif [[ -e "src/scanner.c" ]]; then
|
||||
$CC -c "src/scanner.c" -o scanner.o $FLAGS
|
||||
fi
|
||||
|
||||
$CC -c "$src/src/parser.c" -o parser.o $FLAGS
|
||||
$CC -c "src/parser.c" -o parser.o $FLAGS
|
||||
$CXX -shared -o $NAME.so *.o
|
||||
|
||||
runHook postBuild
|
||||
|
|
|
@ -3,18 +3,18 @@
|
|||
"clion": {
|
||||
"update-channel": "CLion RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}.tar.gz",
|
||||
"version": "2023.1.2",
|
||||
"sha256": "e3efc51a4431dc67da6463a8a37aab8ad6a214a8338430ae61cd4add5e7e5b04",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2023.1.2.tar.gz",
|
||||
"build_number": "231.8770.66"
|
||||
"version": "2023.1.3",
|
||||
"sha256": "7ea6a7d18cac5c7c89a3e1dd4d3870f74762d4c9378c31a3753fd37f50cf2832",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2023.1.3.tar.gz",
|
||||
"build_number": "231.9011.31"
|
||||
},
|
||||
"datagrip": {
|
||||
"update-channel": "DataGrip RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/datagrip/datagrip-{version}.tar.gz",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "9f1d9bd64352ade881343bd2d0cae63a4f5e9479e1bf822b4ab5f674fc0a8697",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2023.1.1.tar.gz",
|
||||
"build_number": "231.8770.3"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "57e8a79d69d9f34957fe7fa1307296396ab7c2b84bacffb6d86616cbcd596edd",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2023.1.2.tar.gz",
|
||||
"build_number": "231.9011.35"
|
||||
},
|
||||
"gateway": {
|
||||
"update-channel": "Gateway RELEASE",
|
||||
|
@ -27,26 +27,26 @@
|
|||
"goland": {
|
||||
"update-channel": "GoLand RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/go/goland-{version}.tar.gz",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "ed4334fbfde1c9416920ec1aa9ccdbaa6bdbbe6f211b15ca74239c44a0b7ed1c",
|
||||
"url": "https://download.jetbrains.com/go/goland-2023.1.1.tar.gz",
|
||||
"build_number": "231.8770.71"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "e1f16726a864f4ff9f0a48bd60a6983a664030df5e5456023d76b8fb8ac9df9d",
|
||||
"url": "https://download.jetbrains.com/go/goland-2023.1.2.tar.gz",
|
||||
"build_number": "231.9011.34"
|
||||
},
|
||||
"idea-community": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIC-{version}.tar.gz",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "0a9bc55c2eaecbe983cd1db9ab6a353e3b7c3747f6fc6dea95736df104a68239",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2023.1.1.tar.gz",
|
||||
"build_number": "231.8770.65"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "f222f0282bebe2e8c3fef6a27b160c760c118e45a0cdb7c9053d645a8e00844a",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2023.1.2.tar.gz",
|
||||
"build_number": "231.9011.34"
|
||||
},
|
||||
"idea-ultimate": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIU-{version}.tar.gz",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "62ac9a6a801e5e029c3ca5ea28ee5de2680e3d58ae233cf1cb3d3636c6b205ca",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2023.1.1.tar.gz",
|
||||
"build_number": "231.8770.65"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "e1a26070e91bdc6a7d262aeda316a72908d1ffbb8b500f086665bfcd29de249a",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2023.1.2.tar.gz",
|
||||
"build_number": "231.9011.34"
|
||||
},
|
||||
"mps": {
|
||||
"update-channel": "MPS RELEASE",
|
||||
|
@ -59,69 +59,69 @@
|
|||
"phpstorm": {
|
||||
"update-channel": "PhpStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webide/PhpStorm-{version}.tar.gz",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "be824ba2f0a55b8d246becde235a3308106d2115cea814e4b0cc2f3b9a736253",
|
||||
"url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.1.tar.gz",
|
||||
"build_number": "231.8770.68",
|
||||
"version": "2023.1.2",
|
||||
"sha256": "889f531bbe5c6dda9fb4805dbbccd25d3aa4262a97f4ad14cf184db3eaf2d980",
|
||||
"url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.2.tar.gz",
|
||||
"build_number": "231.9011.38",
|
||||
"version-major-minor": "2022.3"
|
||||
},
|
||||
"pycharm-community": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.tar.gz",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "4de47ea21ede9ed52fedf42513ab2d886683d7d66784c1ce9b4d3c8b84da7a29",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2023.1.1.tar.gz",
|
||||
"build_number": "231.8770.66"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "1445b48b091469176644cb85a0a6f953783920fb1ec9a53bcbdd932ad8c947b0",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2023.1.2.tar.gz",
|
||||
"build_number": "231.9011.38"
|
||||
},
|
||||
"pycharm-professional": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}.tar.gz",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "aaa8d136e47077cfe970a5b42aa2058bb74038c5dab354c9f6ff22bfa3aa327d",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2023.1.1.tar.gz",
|
||||
"build_number": "231.8770.66"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "e57eae7a3c99983b8dc5c5aa036579d7ac73cae33aeb4c5f7f80517f2040c385",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2023.1.2.tar.gz",
|
||||
"build_number": "231.9011.38"
|
||||
},
|
||||
"rider": {
|
||||
"update-channel": "Rider RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rider/JetBrains.Rider-{version}.tar.gz",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "d50a7ed977e04ae50d6a16422a0968896fc6d94b0ab84d044ad3503d904570e0",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2023.1.1.tar.gz",
|
||||
"build_number": "231.8770.54"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "50eb2deb303162dc77c802c4402c2734bdae38a47ab534921e064a107dc284ae",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2023.1.2.tar.gz",
|
||||
"build_number": "231.9011.39"
|
||||
},
|
||||
"ruby-mine": {
|
||||
"update-channel": "RubyMine RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/ruby/RubyMine-{version}.tar.gz",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "44a852fa872751ba53b1a10eb5d136a407ae7db90e4e4f8c37ba282dcc9c1419",
|
||||
"url": "https://download.jetbrains.com/ruby/RubyMine-2023.1.1.tar.gz",
|
||||
"build_number": "231.8770.57"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "f7f40e03571d485a7b6e36b98c8a3e3b534456fb351389347927a800e1b2fc74",
|
||||
"url": "https://download.jetbrains.com/ruby/RubyMine-2023.1.2.tar.gz",
|
||||
"build_number": "231.9011.41"
|
||||
},
|
||||
"webstorm": {
|
||||
"update-channel": "WebStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webstorm/WebStorm-{version}.tar.gz",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "93e11177010037a156939f2ded59ac5d8d0661e47a4471399665affe4a1eb7a9",
|
||||
"url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.1.tar.gz",
|
||||
"build_number": "231.8770.64"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "934986d682857e8529588cdc6f4f125ff7e13ee0a1060fa41af2bb9d4a620444",
|
||||
"url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.2.tar.gz",
|
||||
"build_number": "231.9011.35"
|
||||
}
|
||||
},
|
||||
"x86_64-darwin": {
|
||||
"clion": {
|
||||
"update-channel": "CLion RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}.dmg",
|
||||
"version": "2023.1.2",
|
||||
"sha256": "a980ecceda348d5a9e4ee7aaec2baf6d985a66c714ee270d402d708838e40d26",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2023.1.2.dmg",
|
||||
"build_number": "231.8770.66"
|
||||
"version": "2023.1.3",
|
||||
"sha256": "74e65171daeec11ee8e45db14fefa72f141ebe4f8f40fe5172c24aaacac1d2fd",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2023.1.3.dmg",
|
||||
"build_number": "231.9011.31"
|
||||
},
|
||||
"datagrip": {
|
||||
"update-channel": "DataGrip RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/datagrip/datagrip-{version}.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "94b2c070b91a45960d50deee5986d63e894dc2a2b3f371a1bcd650521029b66b",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2023.1.1.dmg",
|
||||
"build_number": "231.8770.3"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "13302c2cda09fdf08025430cfb195d7cbf34ad0f66968091e5227a8ff71a7f79",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2023.1.2.dmg",
|
||||
"build_number": "231.9011.35"
|
||||
},
|
||||
"gateway": {
|
||||
"update-channel": "Gateway RELEASE",
|
||||
|
@ -134,26 +134,26 @@
|
|||
"goland": {
|
||||
"update-channel": "GoLand RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/go/goland-{version}.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "951d0940edebc9cba6a3e37eae3d3e146416d1951803e8a34706904e983bb6ee",
|
||||
"url": "https://download.jetbrains.com/go/goland-2023.1.1.dmg",
|
||||
"build_number": "231.8770.71"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "8ea923b48a6a34991902689062c96d9bd7524591dfad0e47ace937ae5762d051",
|
||||
"url": "https://download.jetbrains.com/go/goland-2023.1.2.dmg",
|
||||
"build_number": "231.9011.34"
|
||||
},
|
||||
"idea-community": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIC-{version}.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "ee7769737cb0e22d4c88ea8808d0767b8d88667b6b732748d745a5eb48809c46",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2023.1.1.dmg",
|
||||
"build_number": "231.8770.65"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "d313f3308788e2a6646c67c4c00afbf4dd848889009de32b93e1ef8bf80a529b",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2023.1.2.dmg",
|
||||
"build_number": "231.9011.34"
|
||||
},
|
||||
"idea-ultimate": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIU-{version}.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "46fed7185c1cc901778593941db035d9806ebdad930eccbb4472668d440e60af",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2023.1.1.dmg",
|
||||
"build_number": "231.8770.65"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "7242ff72b56a0337f0bbc20b0dea4675759e1228f86bcb1c0dab3311f9f8d709",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2023.1.2.dmg",
|
||||
"build_number": "231.9011.34"
|
||||
},
|
||||
"mps": {
|
||||
"update-channel": "MPS RELEASE",
|
||||
|
@ -166,69 +166,69 @@
|
|||
"phpstorm": {
|
||||
"update-channel": "PhpStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webide/PhpStorm-{version}.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "da5809e47bb6adaa61ecdbcc16ca452e25269e7dbeb316bc6022784c3d6edd28",
|
||||
"url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.1.dmg",
|
||||
"build_number": "231.8770.68",
|
||||
"version": "2023.1.2",
|
||||
"sha256": "42d4e946ff7f40a52a47f121be8a08a0fa46786f773b7cee28e51b12f2f296e6",
|
||||
"url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.2.dmg",
|
||||
"build_number": "231.9011.38",
|
||||
"version-major-minor": "2022.3"
|
||||
},
|
||||
"pycharm-community": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "45f47c71f1621d054b4ceedb717bbb4c2f8e8ab2d3ef8acb7366088b866a4cf6",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2023.1.1.dmg",
|
||||
"build_number": "231.8770.66"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "7a947104f38cdb3a8e1a3466808add60a3c3d41545ae2fe84c1467dcc91973e8",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2023.1.2.dmg",
|
||||
"build_number": "231.9011.38"
|
||||
},
|
||||
"pycharm-professional": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "601c427b292a76d7646fe81ed351447b79a5094b650f19c8acca6f8f42e6e609",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2023.1.1.dmg",
|
||||
"build_number": "231.8770.66"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "46d8c03dd18de5a87837f3a437ae05ad7ad1ba3d61d742cef5124a30f5aa1109",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2023.1.2.dmg",
|
||||
"build_number": "231.9011.38"
|
||||
},
|
||||
"rider": {
|
||||
"update-channel": "Rider RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rider/JetBrains.Rider-{version}.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "72131efb1d4606cefd9bfb11cc98443a13f5b9761ac007484564db2107e7f8e9",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2023.1.1.dmg",
|
||||
"build_number": "231.8770.54"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "f784a5a9d909bf671d6680807a451c761f44cba3a0f49cfc9b74c4bca1d7c1f1",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2023.1.2.dmg",
|
||||
"build_number": "231.9011.39"
|
||||
},
|
||||
"ruby-mine": {
|
||||
"update-channel": "RubyMine RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/ruby/RubyMine-{version}.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "2c37a3e8c8a9b800b9132f31d0cfdffbb3fd4ee83de13b3141187ec05a79e3e0",
|
||||
"url": "https://download.jetbrains.com/ruby/RubyMine-2023.1.1.dmg",
|
||||
"build_number": "231.8770.57"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "28eb6505d37d5821507985cbd7ddd60787b7f3fa9966b3a67187938c3b7f153f",
|
||||
"url": "https://download.jetbrains.com/ruby/RubyMine-2023.1.2.dmg",
|
||||
"build_number": "231.9011.41"
|
||||
},
|
||||
"webstorm": {
|
||||
"update-channel": "WebStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webstorm/WebStorm-{version}.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "e7b9b86501682a0cf5a1b2d22e65491a6923635043378707581357a10fc8dc2a",
|
||||
"url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.1.dmg",
|
||||
"build_number": "231.8770.64"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "0a8dbf63ce61bd24a1037a967cc27b45d4b467a0c39c6e4625704a8fba3add71",
|
||||
"url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.2.dmg",
|
||||
"build_number": "231.9011.35"
|
||||
}
|
||||
},
|
||||
"aarch64-darwin": {
|
||||
"clion": {
|
||||
"update-channel": "CLion RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}-aarch64.dmg",
|
||||
"version": "2023.1.2",
|
||||
"sha256": "61c8c1e76fe25389557111534c3fdadb5ba69427384890bf25499d0b474c147d",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2023.1.2-aarch64.dmg",
|
||||
"build_number": "231.8770.66"
|
||||
"version": "2023.1.3",
|
||||
"sha256": "a167a2fe88cecf422edc32f981cd01736d154f3c284d1cd9cc85f68e0aa7e50b",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2023.1.3-aarch64.dmg",
|
||||
"build_number": "231.9011.31"
|
||||
},
|
||||
"datagrip": {
|
||||
"update-channel": "DataGrip RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/datagrip/datagrip-{version}-aarch64.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "215ad7898e9a8ef2cf18ec90d342c995bf94a2fe5781fbce537e7166edf90652",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2023.1.1-aarch64.dmg",
|
||||
"build_number": "231.8770.3"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "3af05578dd8c3b01a5b75e34b0944bccd307ce698e80fe238044762785920c90",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2023.1.2-aarch64.dmg",
|
||||
"build_number": "231.9011.35"
|
||||
},
|
||||
"gateway": {
|
||||
"update-channel": "Gateway RELEASE",
|
||||
|
@ -241,26 +241,26 @@
|
|||
"goland": {
|
||||
"update-channel": "GoLand RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/go/goland-{version}-aarch64.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "29963a09c83f193746f762a104e9c51fa5ff9f46a90376a0e518261f1990847e",
|
||||
"url": "https://download.jetbrains.com/go/goland-2023.1.1-aarch64.dmg",
|
||||
"build_number": "231.8770.71"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "8674cb075b41db52b2a5f3698659b8e0480bcb9d81b4e3112bb7e5c23259200e",
|
||||
"url": "https://download.jetbrains.com/go/goland-2023.1.2-aarch64.dmg",
|
||||
"build_number": "231.9011.34"
|
||||
},
|
||||
"idea-community": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIC-{version}-aarch64.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "c9ab2053e1ad648466c547c378bd4e8753b4db8908de1caaeca91563ad80f6f9",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2023.1.1-aarch64.dmg",
|
||||
"build_number": "231.8770.65"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "f269422723105de9c28c61c95f7c74cc4481032abaf980ace7e4fd2d7f00dca5",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2023.1.2-aarch64.dmg",
|
||||
"build_number": "231.9011.34"
|
||||
},
|
||||
"idea-ultimate": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIU-{version}-aarch64.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "ae631000e19b821194b38be7caaa1e13ad78b465e6eb00f44215bb1173038448",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2023.1.1-aarch64.dmg",
|
||||
"build_number": "231.8770.65"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "d8ae93ade97ddd30c91fd2a828763b1c952e8c206f04fbdb9d79ea2207955a8e",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2023.1.2-aarch64.dmg",
|
||||
"build_number": "231.9011.34"
|
||||
},
|
||||
"mps": {
|
||||
"update-channel": "MPS RELEASE",
|
||||
|
@ -273,51 +273,51 @@
|
|||
"phpstorm": {
|
||||
"update-channel": "PhpStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webide/PhpStorm-{version}-aarch64.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "7857f77b2d28fc7e3a4380f43fe0f923616d39f13cb47a9f37c6cf5f32fd40a3",
|
||||
"url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.1-aarch64.dmg",
|
||||
"build_number": "231.8770.68",
|
||||
"version": "2023.1.2",
|
||||
"sha256": "871147496e828a9f28b02a3226eca6127a7b0837f6ca872c51590696fc52f7fc",
|
||||
"url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.2-aarch64.dmg",
|
||||
"build_number": "231.9011.38",
|
||||
"version-major-minor": "2022.3"
|
||||
},
|
||||
"pycharm-community": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}-aarch64.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "d3c3e5d4896be54e54c20603e8124220ee32f29f24b5068d1b56d1685c9bc2cd",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2023.1.1-aarch64.dmg",
|
||||
"build_number": "231.8770.66"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "d816ad095094dc5cc5b91ede9f1d41654fc90f8925b9e421f9aac0325de0e366",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2023.1.2-aarch64.dmg",
|
||||
"build_number": "231.9011.38"
|
||||
},
|
||||
"pycharm-professional": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}-aarch64.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "3c1947ad4627fc4dfce9a01b8bf4b8d90627fa5e20e4c27f60d785430e99d25d",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2023.1.1-aarch64.dmg",
|
||||
"build_number": "231.8770.66"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "9387e383f9d70d1b5e4e8e4b64061678c94a8329cafc9df5d342ac0f346a31fe",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2023.1.2-aarch64.dmg",
|
||||
"build_number": "231.9011.38"
|
||||
},
|
||||
"rider": {
|
||||
"update-channel": "Rider RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rider/JetBrains.Rider-{version}-aarch64.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "b089e107bd81829fffe97509912c4467f8b4ea09fd5f38ebd8cc8c57e6adb947",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2023.1.1-aarch64.dmg",
|
||||
"build_number": "231.8770.54"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "896a70b5807683acec70e77620ccc9f1c1e1801257678de0531a5f3c1bccffb7",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2023.1.2-aarch64.dmg",
|
||||
"build_number": "231.9011.39"
|
||||
},
|
||||
"ruby-mine": {
|
||||
"update-channel": "RubyMine RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/ruby/RubyMine-{version}-aarch64.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "17327de2d4edd3fbddb47c96d4db1bfba716786eb5b74b4a2e3ba6d0482610f9",
|
||||
"url": "https://download.jetbrains.com/ruby/RubyMine-2023.1.1-aarch64.dmg",
|
||||
"build_number": "231.8770.57"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "ecd3aeba77455d90a10b2ad4dc0939a66d8b70d1c43125fb76132c0af72bba31",
|
||||
"url": "https://download.jetbrains.com/ruby/RubyMine-2023.1.2-aarch64.dmg",
|
||||
"build_number": "231.9011.41"
|
||||
},
|
||||
"webstorm": {
|
||||
"update-channel": "WebStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webstorm/WebStorm-{version}-aarch64.dmg",
|
||||
"version": "2023.1.1",
|
||||
"sha256": "3ccf935b898511106b25f3d30363767372f6a301311a5547f68210895b054cf1",
|
||||
"url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.1-aarch64.dmg",
|
||||
"build_number": "231.8770.64"
|
||||
"version": "2023.1.2",
|
||||
"sha256": "c72e249d38ba1fbfece680545d4714e73d73e9933cbbab8e85c0da2bab37142e",
|
||||
"url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.2-aarch64.dmg",
|
||||
"build_number": "231.9011.35"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, autoreconfHook
|
||||
, gettext
|
||||
, help2man
|
||||
, pkg-config
|
||||
|
@ -22,11 +21,11 @@ let
|
|||
isCross = stdenv.hostPlatform != stdenv.buildPlatform;
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "poke";
|
||||
version = "2.4";
|
||||
version = "3.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
|
||||
sha256 = "sha256-hB4oWRfGc4zpgqaTDjDr6t7PsGVaedkYTxb4dqn+bkc=";
|
||||
hash = "sha256-dY5VHdU6bM5U7JTY/CH6TWtSon0cJmcgbVmezcdPDZc=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "info" "lib" ]
|
||||
|
@ -41,7 +40,6 @@ in stdenv.mkDerivation rec {
|
|||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
gettext
|
||||
pkg-config
|
||||
texinfo
|
||||
|
|
|
@ -2312,8 +2312,8 @@ let
|
|||
mktplcRef = {
|
||||
name = "typst-lsp";
|
||||
publisher = "nvarner";
|
||||
version = "0.4.1";
|
||||
sha256 = "sha256-NZejUb99JDcnqjihLTPkNzVCgpqDkbiwAySbBVZ0esY=";
|
||||
version = "0.5.0";
|
||||
sha256 = "sha256-4bZbjbcd/EjSRBMkzMs1pD00qyQb5W6gePh4xfoU6Ug=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ jq moreutils ];
|
||||
|
|
|
@ -58,12 +58,12 @@
|
|||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "4.2.0";
|
||||
version = "4.2.1";
|
||||
pname = "darktable";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/darktable-org/darktable/releases/download/release-${version}/darktable-${version}.tar.xz";
|
||||
sha256 = "18b0917fdfe9b09f66c279a681cc3bd52894a566852bbf04b2e179ecfdb11af9";
|
||||
sha256 = "603a39c6074291a601f7feb16ebb453fd0c5b02a6f5d3c7ab6db612eadc97bac";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ninja llvm_13 pkg-config intltool perl desktop-file-utils wrapGAppsHook ];
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "tesseract";
|
||||
version = "5.3.0";
|
||||
version = "5.3.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tesseract-ocr";
|
||||
repo = "tesseract";
|
||||
rev = version;
|
||||
sha256 = "sha256-Y+RZOnBCjS8XrWeFA4ExUxwsuWA0DndNtpIWjtRi1G8=";
|
||||
sha256 = "sha256-Glpu6CURCL3kI8MAeXbF9OWCRjonQZvofWsv1wVWz08=";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
|
|
@ -2,10 +2,10 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gremlin-console";
|
||||
version = "3.6.3";
|
||||
version = "3.6.4";
|
||||
src = fetchzip {
|
||||
url = "https://downloads.apache.org/tinkerpop/${version}/apache-tinkerpop-gremlin-console-${version}-bin.zip";
|
||||
sha256 = "sha256-+IzTCaRlYW1i4ZzEgOpEA0rXN45A2q1iddrqU9up2IA=";
|
||||
sha256 = "sha256-3fZA0U7dobr4Zsudin9OmwcYUw8gdltUWFTVe2l8ILw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "hugo";
|
||||
version = "0.111.3";
|
||||
version = "0.112.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gohugoio";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-PgconAixlSgRHqmfRdOtcpVJyThZIKAB9Pm4AUvYVGQ=";
|
||||
hash = "sha256-sZjcl7jxiNwz8rM2/jcpN/9iuZn6UTleNE6YZ/vmDso=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-2a6+s0xLlj3VzXp9zbZgIi7WJShbUQH48tUG9Slm770=";
|
||||
vendorHash = "sha256-A4mWrTSkE1NcLj8ozGXQJIrFMvqeoBC7y7eOTeh3ktw=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
|
|
@ -10,11 +10,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "logseq";
|
||||
version = "0.9.6";
|
||||
version = "0.9.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-linux-x64-${version}.AppImage";
|
||||
hash = "sha256-YC6oUKD48mKlX/bHWPMKm+0Ub0/5dnXmBFnVIGqzb/g=";
|
||||
hash = "sha256-+zyI5pBkhdrbesaEUxl3X4GQFzhULVuEqNCdDOOizcs=";
|
||||
name = "${pname}-${version}.AppImage";
|
||||
};
|
||||
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ssocr";
|
||||
version = "2.22.1";
|
||||
version = "2.23.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "auerswal";
|
||||
repo = "ssocr";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-j1l1o1wtVQo+G9HfXZ1sJQ8amsUQhuYxFguWFQoRe/s=";
|
||||
sha256 = "sha256-EfZsTrZI6vKM7tB6mKNGEkdfkNFbN5p4TmymOJGZRBk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
|
|
@ -8,16 +8,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "avalanchego";
|
||||
version = "1.10.0";
|
||||
version = "1.10.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ava-labs";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-OQh8xub/4DHZk4sGIJldyoXGR/TQ9F0reERk2lpjYi8=";
|
||||
hash = "sha256-KGHghhHALMoFuO7i4wq9B2HA2WTA80WSOR5Odpo1Ing=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-etvCtNCW6tuzKZEEx2RODzMx0W9hGoXNS2jWGJO+Pc0=";
|
||||
vendorHash = "sha256-+YzC7xjrRI0e8/cOcJM3AZS5hI82H1qFxnfUGMgqXhs=";
|
||||
# go mod vendor has a bug, see: https://github.com/golang/go/issues/57529
|
||||
proxyVendor = true;
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -29,11 +29,11 @@
|
|||
|
||||
firefox-beta = buildMozillaMach rec {
|
||||
pname = "firefox-beta";
|
||||
version = "114.0b6";
|
||||
version = "114.0b7";
|
||||
applicationName = "Mozilla Firefox Beta";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||
sha512 = "50127c640e0cb617ca031df022a09df8bba7dd44e9b88b034d9c9276d1adcec17a937d80ab3e540433290e8f78982a405b7281724713f43c36e5e266df721854";
|
||||
sha512 = "6cfcaa08d74d6e123047cd33c1bc2e012e948890ea8bab5feb43459048a41c10f6bc549241386a3c81d438b59e966e7949161fe3f18b359ec8659bdf2ba0f187";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
@ -56,12 +56,12 @@
|
|||
|
||||
firefox-devedition = buildMozillaMach rec {
|
||||
pname = "firefox-devedition";
|
||||
version = "114.0b6";
|
||||
version = "114.0b7";
|
||||
applicationName = "Mozilla Firefox Developer Edition";
|
||||
branding = "browser/branding/aurora";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/devedition/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||
sha512 = "cf5a6ab9b950af602c91d2c6ffc9c5efd96d83f580f3de16e03cbcf3ef5fa04e4d86536a82c1e2503ca09ae744991bc360e35a2e1c03c8b8408fa3f4c956823e";
|
||||
sha512 = "2aa9ec2eb57b6debe3a15ac43f4410a4d649c8373725be8ed2540effa758d970e29c9ca675d9ac27a4b58935fc428aaf8b84ecd769b88f3607e911178492ebf1";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
|
|
@ -17,13 +17,13 @@
|
|||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lagrange";
|
||||
version = "1.15.9";
|
||||
version = "1.16.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "skyjake";
|
||||
repo = "lagrange";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-tR3qffGB83iyg3T7YRD1YRX/PG4YGLOnElHJ0ju47Y8=";
|
||||
hash = "sha256-vVCKQDcL/NWeNE3tbmEUgDOBw6zxXy7IcT7IB6/paSo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config zip ];
|
||||
|
|
|
@ -2,15 +2,15 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "kubernetes-helm";
|
||||
version = "3.11.3";
|
||||
version = "3.12.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "helm";
|
||||
repo = "helm";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-BIjbSHs0sOLYB+26EHy9f3YJtUYnzgdADIXB4n45Rv0=";
|
||||
sha256 = "sha256-Fu1d1wpiD7u8lLMAe8WuOxJxDjY85vK8MPHz0iBr5Ps=";
|
||||
};
|
||||
vendorHash = "sha256-uz3ZqCcT+rmhNCO+y3PuCXWjTxUx8u3XDgcJxt7A37g=";
|
||||
vendorHash = "sha256-PvuuvM/ReDPI1hBQu4DsKdXXoD2C5BLvxU5Ld3h4hTE=";
|
||||
|
||||
subPackages = [ "cmd/helm" ];
|
||||
ldflags = [
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "helm-diff";
|
||||
version = "3.7.0";
|
||||
version = "3.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "databus23";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-bG1i6Tea7BLWuy5cd3+249sOakj2LfAZLphtjMLdlug=";
|
||||
sha256 = "sha256-7HUD6OcAQ4tFTZJfjdonU1Q/CGJZ4AAZx7nB68d0QQs=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-80cTeD+rCwKkssGQya3hMmtYnjia791MjB4eG+m5qd0=";
|
||||
vendorHash = "sha256-2tiBFS3gvSbnyighSorg/ar058ZJmiQviaT13zOS8KA=";
|
||||
|
||||
ldflags = [ "-s" "-w" "-X github.com/databus23/helm-diff/v3/cmd.Version=${version}" ];
|
||||
|
||||
|
|
|
@ -381,11 +381,11 @@
|
|||
"vendorHash": "sha256-E1gzdES/YVxQq2J47E2zosvud2C/ViBeQ8+RfNHMBAg="
|
||||
},
|
||||
"fastly": {
|
||||
"hash": "sha256-pqH8Swv7shB//ipldyU43zWs+YuRE1gBnUdtkA5HJhg=",
|
||||
"hash": "sha256-zjeiA09kTc9qE+YGGrmMhken7oh3pX309t6VKE/fKN0=",
|
||||
"homepage": "https://registry.terraform.io/providers/fastly/fastly",
|
||||
"owner": "fastly",
|
||||
"repo": "terraform-provider-fastly",
|
||||
"rev": "v4.3.3",
|
||||
"rev": "v5.0.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
|
@ -428,31 +428,31 @@
|
|||
"vendorHash": null
|
||||
},
|
||||
"gitlab": {
|
||||
"hash": "sha256-im5YyI1x9ys0MowuNm7JcbJvXPCHxcXXWJeRXRrRIr4=",
|
||||
"hash": "sha256-EwinLWdu7ptelUr6yNrEO8o7WiPiFGSI/tgghRSy4eA=",
|
||||
"homepage": "https://registry.terraform.io/providers/gitlabhq/gitlab",
|
||||
"owner": "gitlabhq",
|
||||
"repo": "terraform-provider-gitlab",
|
||||
"rev": "v15.11.0",
|
||||
"rev": "v16.0.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-SLFpH7isx4OM2X9bzWYYD4VlejlgckBovOxthg47OOQ="
|
||||
"vendorHash": "sha256-g5JK0zClv7opNSHarkyrhJ1ieZeFFkzW5ctyMaObyDM="
|
||||
},
|
||||
"google": {
|
||||
"hash": "sha256-U3vK9QvsipQDEZu0GW1uzt9JA7exT+VgvZI8Tt9A0XI=",
|
||||
"hash": "sha256-lsI1hR9bhzFuepDDNKV761DXbdPJHOvm4OeHg4eVlgU=",
|
||||
"homepage": "https://registry.terraform.io/providers/hashicorp/google",
|
||||
"owner": "hashicorp",
|
||||
"proxyVendor": true,
|
||||
"repo": "terraform-provider-google",
|
||||
"rev": "v4.65.2",
|
||||
"rev": "v4.66.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-O7lg3O54PedUEwWL34H49SvSBXuGH1l5joqEXgkew5Q="
|
||||
},
|
||||
"google-beta": {
|
||||
"hash": "sha256-b2N5ayMvvfJXPAc+lRXaz/G0O+u3FDAcsPS6ymV9v3s=",
|
||||
"hash": "sha256-iSHTFT+AbTOn+DoaMnkw3oiU4IDMEZOsj0S5TPX8800=",
|
||||
"homepage": "https://registry.terraform.io/providers/hashicorp/google-beta",
|
||||
"owner": "hashicorp",
|
||||
"proxyVendor": true,
|
||||
"repo": "terraform-provider-google-beta",
|
||||
"rev": "v4.65.2",
|
||||
"rev": "v4.66.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-O7lg3O54PedUEwWL34H49SvSBXuGH1l5joqEXgkew5Q="
|
||||
},
|
||||
|
@ -475,11 +475,11 @@
|
|||
"vendorHash": "sha256-w6xyEqdHmKsAqT8X7wE48pWtcGWZO8rkidjse62L/EM="
|
||||
},
|
||||
"gridscale": {
|
||||
"hash": "sha256-61LZyXqb+1kWHBk1/lw5C5hmeL4aHwSSS++9/9L/tDw=",
|
||||
"hash": "sha256-5e//setNABadYgIBlDyCbAeZBg0hrVPEVKKFCBNNRLg=",
|
||||
"homepage": "https://registry.terraform.io/providers/gridscale/gridscale",
|
||||
"owner": "gridscale",
|
||||
"repo": "terraform-provider-gridscale",
|
||||
"rev": "v1.18.1",
|
||||
"rev": "v1.19.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
|
@ -1244,11 +1244,11 @@
|
|||
"vendorHash": null
|
||||
},
|
||||
"wavefront": {
|
||||
"hash": "sha256-aHOPfVmYe7O+9ZEfwZx6JDBjmFoN9RNvp7kiYoBEWww=",
|
||||
"hash": "sha256-RZUjMAwXFKpWqec7869EMB/My5EVpy7If5ZoJx7IzIg=",
|
||||
"homepage": "https://registry.terraform.io/providers/vmware/wavefront",
|
||||
"owner": "vmware",
|
||||
"repo": "terraform-provider-wavefront",
|
||||
"rev": "v3.5.0",
|
||||
"rev": "v3.6.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-itSr5HHjus6G0t5/KFs0sNiredH9m3JnQ3siLtm+NHs="
|
||||
},
|
||||
|
|
|
@ -3,7 +3,7 @@ let
|
|||
versions = if stdenv.isLinux then {
|
||||
stable = "0.0.27";
|
||||
ptb = "0.0.42";
|
||||
canary = "0.0.151";
|
||||
canary = "0.0.154";
|
||||
development = "0.0.216";
|
||||
} else {
|
||||
stable = "0.0.273";
|
||||
|
@ -24,7 +24,7 @@ let
|
|||
};
|
||||
canary = fetchurl {
|
||||
url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
|
||||
sha256 = "sha256-ZN+lEGtSajgYsyMoGRmyTZCpUGVmb9LKgVv89NA4m7U=";
|
||||
sha256 = "sha256-rtqPQZBrmxnHuXgzmC7VNiucXBBmtrn8AiKNDtxaR7c=";
|
||||
};
|
||||
development = fetchurl {
|
||||
url = "https://dl-development.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz";
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "linphone-desktop";
|
||||
version = "5.0.8";
|
||||
version = "5.0.15";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.linphone.org";
|
||||
|
@ -41,7 +41,7 @@ mkDerivation rec {
|
|||
group = "BC";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-e/0yGHtOHMgPhaF5xELodKS9/v/mbnT3ZpE12lXAocU=";
|
||||
hash = "sha256-tCtOFHspT0CmBCGvs5b/tNH+W1tuHuje6Zt0UwagOB4=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -34,7 +34,7 @@ let
|
|||
};
|
||||
|
||||
xrdp = stdenv.mkDerivation rec {
|
||||
version = "0.9.22";
|
||||
version = "0.9.22.1";
|
||||
pname = "xrdp";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
|
@ -42,7 +42,7 @@ let
|
|||
repo = "xrdp";
|
||||
rev = "v${version}";
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-/i2rLVrN1twKtQH6Qt1OZOPGZzegWBOKpj0Wnin8cR8=";
|
||||
hash = "sha256-8gAP4wOqSmar8JhKRt4qRRwh23coIn0Q8Tt9ClHQSt8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config autoconf automake which libtool nasm perl ];
|
||||
|
|
|
@ -4,12 +4,12 @@ with lib;
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "marvin";
|
||||
version = "22.13.0";
|
||||
version = "23.4.0";
|
||||
|
||||
src = fetchurl {
|
||||
name = "marvin-${version}.deb";
|
||||
url = "http://dl.chemaxon.com/marvin/${version}/marvin_linux_${versions.majorMinor version}.deb";
|
||||
sha256 = "sha256-cZ9SFdKNURhcInM6zZNwoi+WyHAsGCeAgkfpAVi7GYE=";
|
||||
sha256 = "sha256-+jzGcuAcbXOwsyAL+Hr9Fas2vO2S8ZKSaZeCf/bnl7A=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ dpkg makeWrapper ];
|
||||
|
|
|
@ -49,16 +49,16 @@ let
|
|||
in
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "alacritty";
|
||||
version = "0.12.0";
|
||||
version = "0.12.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "alacritty";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-2MiFsOZpAlDVC4h3m3HHlMr2ytL/z47vrTwUMoHdegI=";
|
||||
hash = "sha256-jw66pBKIhvvaQ+Q6tDV6i7ALa7Z0Pw7dp6gAVPqy5bs=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-4liPfNJ2JGniz8Os4Np+XSXCJBHND13XLPWDy3Gc/F8=";
|
||||
cargoHash = "sha256-rDcNliuUDGsd4VA2H9k+AiJTf1ylmFyqCUzxwCtM3T8=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
|
|
|
@ -10,14 +10,14 @@
|
|||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "dvc";
|
||||
version = "2.57.2";
|
||||
version = "2.57.3";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "iterative";
|
||||
repo = pname;
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-WOg/FROeM8G0knqg0EzyWSthGs3rhDu09kk6R0trOVs=";
|
||||
hash = "sha256-W9AgYTvTjmFBAlKIme+7GaGY1lCyYbmYJdUC1s+3Vc8=";
|
||||
};
|
||||
|
||||
pythonRelaxDeps = [
|
||||
|
|
|
@ -10,24 +10,24 @@ with lib;
|
|||
|
||||
let
|
||||
pname = "gitkraken";
|
||||
version = "9.3.0";
|
||||
version = "9.4.0";
|
||||
|
||||
throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
|
||||
|
||||
srcs = {
|
||||
x86_64-linux = fetchzip {
|
||||
url = "https://release.axocdn.com/linux/GitKraken-v${version}.tar.gz";
|
||||
sha256 = "sha256-OX/taX+eYHPWTNNGfZhoiBEG8pFSnjCaTshM+z6MhDU=";
|
||||
sha256 = "sha256-b2ntm5Yja806JZEmcrLi1CSsDRmBot85LPy39Zn7ULw=";
|
||||
};
|
||||
|
||||
x86_64-darwin = fetchzip {
|
||||
url = "https://release.axocdn.com/darwin/GitKraken-v${version}.zip";
|
||||
sha256 = "sha256-miUcV35HX73b5YnwMnkqYdQtxfSHJaMdMcgVVBkZs6A=";
|
||||
sha256 = "sha256-GV1TVjxPSosRIB99QSnOcowp8p9dWLNX2VxP6LDlQ6w=";
|
||||
};
|
||||
|
||||
aarch64-darwin = fetchzip {
|
||||
url = "https://release.axocdn.com/darwin-arm64/GitKraken-v${version}.zip";
|
||||
sha256 = "sha256-yAwvuwxtGQh7/bV/7wShdCVHgZCtRCfmXrdT4dI6+cM=";
|
||||
sha256 = "sha256-65HloijD1Z7EEiiG+qUr5Rj+z+eYAaeN6HmuBm1bGgs=";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ustreamer";
|
||||
version = "5.37";
|
||||
version = "5.38";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pikvm";
|
||||
repo = "ustreamer";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Ervzk5TNYvo7nHyt0cBN8BMjgJKu2sqeXCltero3AnE=";
|
||||
sha256 = "sha256-pc1Pf8KnjGPb74GbcmHaj/XCD0wjgiglaAKjnZUa6Ag=";
|
||||
};
|
||||
|
||||
buildInputs = [ libbsd libevent libjpeg ];
|
||||
|
|
|
@ -38,13 +38,13 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "crun";
|
||||
version = "1.8.4";
|
||||
version = "1.8.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containers";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-wJ9V47X3tofFiwOzYignycm3PTRQWcAJ9iR2r5rJeJA=";
|
||||
hash = "sha256-T51dVNtqQbXoPshlAkBzJOGTNTPM+AlqRYbqS8GX2NE=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -14,8 +14,7 @@ stdenvNoCC.mkDerivation rec {
|
|||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/share/fonts/opentype
|
||||
cp otf/*.otf $out/share/fonts/opentype
|
||||
install --mode=-x -Dt $out/share/fonts/opentype otf/*.otf
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "layan-gtk-theme";
|
||||
version = "2021-06-30";
|
||||
version = "2023-05-23";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vinceliuice";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-FI8+AJlcPHGOzxN6HUKLtPGLe8JTfTQ9Az9NsvVUK7g=";
|
||||
sha256 = "sha256-R8QxDMOXzDIfioAvvescLAu6NjJQ9zhf/niQTXZr+yA=";
|
||||
};
|
||||
|
||||
propagatedUserEnvPkgs = [ gtk-engine-murrine ];
|
||||
|
|
|
@ -1,18 +1,20 @@
|
|||
{ lib
|
||||
, ddcutil
|
||||
, easyeffects
|
||||
, gjs
|
||||
, glib
|
||||
, gnome
|
||||
, gobject-introspection
|
||||
, gsound
|
||||
, hddtemp
|
||||
, libgda
|
||||
, libgtop
|
||||
, liquidctl
|
||||
, lm_sensors
|
||||
, netcat-gnu
|
||||
, nvme-cli
|
||||
, procps
|
||||
, pulseaudio
|
||||
, libgtop
|
||||
, python3
|
||||
, smartmontools
|
||||
, substituteAll
|
||||
|
@ -61,6 +63,16 @@ super: lib.trivial.pipe super [
|
|||
'';
|
||||
}))
|
||||
|
||||
(patchExtension "eepresetselector@ulville.github.io" (old: {
|
||||
patches = [
|
||||
# Needed to find the currently set preset
|
||||
(substituteAll {
|
||||
src = ./extensionOverridesPatches/eepresetselector_at_ulville.github.io.patch;
|
||||
easyeffects_gsettings_path = "${glib.getSchemaPath easyeffects}";
|
||||
})
|
||||
];
|
||||
}))
|
||||
|
||||
(patchExtension "freon@UshakovVasilii_Github.yahoo.com" (old: {
|
||||
patches = [
|
||||
(substituteAll {
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
--- a/extension.js
|
||||
+++ b/extension.js
|
||||
@@ -339,9 +339,9 @@ const EEPSIndicator = GObject.registerClass(
|
||||
_lastUsedInputPreset = _idata.trim().slice(1, -1);
|
||||
} else if (appType === 'native') {
|
||||
// Get last used presets
|
||||
- const settings = new Gio.Settings({
|
||||
- schema_id: 'com.github.wwmm.easyeffects',
|
||||
- });
|
||||
+ const _schema_source = Gio.SettingsSchemaSource.new_from_directory('@easyeffects_gsettings_path@', Gio.SettingsSchemaSource.get_default(), true);
|
||||
+ const _schema = _schema_source.lookup('com.github.wwmm.easyeffects', false);
|
||||
+ const settings = new Gio.Settings({settings_schema: _schema});
|
||||
_lastUsedOutputPreset = settings.get_string(
|
||||
'last-used-output-preset'
|
||||
);
|
|
@ -4,9 +4,9 @@
|
|||
mkXfceDerivation {
|
||||
category = "xfce";
|
||||
pname = "libxfce4ui";
|
||||
version = "4.18.3";
|
||||
version = "4.18.4";
|
||||
|
||||
sha256 = "sha256-Wb1nq744HDO4erJ2nJdFD0OMHVh14810TngN3FLFWIA=";
|
||||
sha256 = "sha256-HnLmZftvFvQAvmQ7jZCaYAQ5GB0YMjzhqZkILzvifoE=";
|
||||
|
||||
nativeBuildInputs = [ gobject-introspection vala ];
|
||||
buildInputs = [ gtk3 libstartup_notification libgtop libepoxy xfconf ];
|
||||
|
|
|
@ -16,9 +16,9 @@
|
|||
mkXfceDerivation {
|
||||
category = "xfce";
|
||||
pname = "xfce4-panel";
|
||||
version = "4.18.3";
|
||||
version = "4.18.4";
|
||||
|
||||
sha256 = "sha256-NSy0MTphzGth0w+Kn93hWvsjLw6qR8SqjYYc1Z2SWIs=";
|
||||
sha256 = "sha256-OEU9NzvgWn6zJGdK9Te2qBbARlwvRrLHuaUocNyGd/g=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
gobject-introspection
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "gleam";
|
||||
version = "0.28.3";
|
||||
version = "0.29.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gleam-lang";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-3uHR6W2Vbqen9e6OXEFFl91/LzXCix4alnprFB36yes=";
|
||||
hash = "sha256-qGFF6Q1cY2hDb2TycB39RY7RAIJica0y6ju76NeIplY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ git pkg-config ];
|
||||
|
@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
|
|||
buildInputs = [ openssl ] ++
|
||||
lib.optionals stdenv.isDarwin [ Security libiconv ];
|
||||
|
||||
cargoHash = "sha256-3+Jb/POABFIBkKpaTD9JDc1vrDzsJe9mGRBQR3UnDAg=";
|
||||
cargoHash = "sha256-/WIM7DhnfPlo/DGoTSEHON+et55h364V++VHU8Olvuc=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A statically typed language for the Erlang VM";
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
openjdk17.overrideAttrs (oldAttrs: rec {
|
||||
pname = "jetbrains-jdk-jcef";
|
||||
javaVersion = "17.0.6";
|
||||
build = "829.5";
|
||||
build = "829.9";
|
||||
# To get the new tag:
|
||||
# git clone https://github.com/jetbrains/jetbrainsruntime
|
||||
# cd jetbrainsruntime
|
||||
|
@ -43,7 +43,7 @@ openjdk17.overrideAttrs (oldAttrs: rec {
|
|||
owner = "JetBrains";
|
||||
repo = "JetBrainsRuntime";
|
||||
rev = "jb${version}";
|
||||
hash = "sha256-LTwmuoKKwkuel0a1qcYNnb0d3HBFoABvmqCcrsPyh2I=";
|
||||
hash = "sha256-E0pk2dz+iLKuQqMvczWNwy9ifLO8YGKXlKt3MQgiRXo=";
|
||||
};
|
||||
|
||||
BOOT_JDK = openjdk17-bootstrap.home;
|
||||
|
|
|
@ -112,6 +112,8 @@ rustPlatform.buildRustPackage.override {
|
|||
maintainers = teams.rust.members;
|
||||
license = [ licenses.mit licenses.asl20 ];
|
||||
platforms = platforms.unix;
|
||||
# https://github.com/alexcrichton/nghttp2-rs/issues/2
|
||||
broken = stdenv.hostPlatform.isx86 && stdenv.buildPlatform != stdenv.hostPlatform;
|
||||
};
|
||||
}
|
||||
// lib.optionalAttrs (rust.toRustTarget stdenv.buildPlatform != rust.toRustTarget stdenv.hostPlatform) {
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
, writeText
|
||||
, asttokens
|
||||
, pycryptodome
|
||||
, importlib-metadata
|
||||
, recommonmark
|
||||
, semantic-version
|
||||
, sphinx
|
||||
|
@ -27,14 +28,14 @@ let
|
|||
in
|
||||
buildPythonPackage rec {
|
||||
pname = "vyper";
|
||||
version = "0.3.6";
|
||||
version = "0.3.8";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-8jw92ttKhXubzDr0tt9/OoCsPEyB9yPRsueK+j4PO6Y=";
|
||||
sha256 = "sha256-x3MTKxXZgAT35o8pekGxSXhcr5MrrRPr86+3Lab4qn8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -53,6 +54,7 @@ buildPythonPackage rec {
|
|||
asttokens
|
||||
pycryptodome
|
||||
semantic-version
|
||||
importlib-metadata
|
||||
|
||||
# docs
|
||||
recommonmark
|
||||
|
|
|
@ -5,12 +5,14 @@ mkCoqDerivation {
|
|||
owner = "fblanqui";
|
||||
inherit version;
|
||||
defaultVersion = with lib.versions; lib.switch coq.version [
|
||||
{case = range "8.14" "8.17"; out = "1.8.3"; }
|
||||
{case = range "8.12" "8.16"; out = "1.8.2"; }
|
||||
{case = range "8.10" "8.11"; out = "1.7.0"; }
|
||||
{case = range "8.8" "8.9"; out = "1.6.0"; }
|
||||
{case = range "8.6" "8.7"; out = "1.4.0"; }
|
||||
] null;
|
||||
|
||||
release."1.8.3".sha256 = "sha256-mMUzIorkQ6WWQBJLk1ioUNwAdDdGHJyhenIvkAjALVU=";
|
||||
release."1.8.2".sha256 = "sha256:1gvx5cxm582793vxzrvsmhxif7px18h9xsb2jljy2gkphdmsnpqj";
|
||||
release."1.8.1".sha256 = "0knhca9fffmyldn4q16h9265i7ih0h4jhcarq4rkn0wnn7x8w8yw";
|
||||
release."1.7.0".rev = "08b5481ed6ea1a5d2c4c068b62156f5be6d82b40";
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
|
||||
inherit version;
|
||||
defaultVersion = with lib.versions; lib.switch [ coq.version mathcomp.version ] [
|
||||
{ cases = [ (range "8.15" "8.17") (isGe "1.15.0") ]; out = "1.1.3"; }
|
||||
{ cases = [ (range "8.13" "8.17") (isGe "1.13.0") ]; out = "1.1.1"; }
|
||||
{ cases = [ (range "8.10" "8.15") (isGe "1.12.0") ]; out = "1.1.0"; }
|
||||
{ cases = [ (isGe "8.10") (range "1.11.0" "1.12.0") ]; out = "1.0.5"; }
|
||||
|
@ -15,6 +16,7 @@
|
|||
{ cases = [ (isGe "8.7") "1.10.0" ]; out = "1.0.3"; }
|
||||
] null;
|
||||
|
||||
release."1.1.3".sha256 = "sha256-xhqWpg86xbU1GbDtXXInNCTArjjPnWZctWiiasq1ScU=";
|
||||
release."1.1.1".sha256 = "sha256-ExAdC3WuArNxS+Sa1r4x5aT7ylbCvP/BZXfkdQNAvZ8=";
|
||||
release."1.1.0".sha256 = "1vyhfna5frkkq2fl1fkg2mwzpg09k3sbzxxpyp14fjay81xajrxr";
|
||||
release."1.0.6".sha256 = "0lqkyfj4qbq8wr3yk8qgn7mclw582n3fjl9l19yp8cnchspzywx0";
|
||||
|
|
|
@ -6,12 +6,14 @@ mkCoqDerivation {
|
|||
owner = "thery";
|
||||
inherit version;
|
||||
defaultVersion = with lib.versions; lib.switch coq.coq-version [
|
||||
{ case = range "8.14" "8.17"; out = "8.17"; }
|
||||
{ case = range "8.12" "8.16"; out = "8.15"; }
|
||||
{ case = range "8.10" "8.11"; out = "8.10"; }
|
||||
{ case = range "8.8" "8.9"; out = "8.8"; }
|
||||
{ case = "8.7"; out = "8.7.2"; }
|
||||
] null;
|
||||
|
||||
release."8.17".sha256 = "sha256-D878t/PijVCopRKHYqfwdNvt3arGlI8yxbK/vI6qZUY=";
|
||||
release."8.15".sha256 = "sha256:1zr2q52r08na8265019pj9spcz982ivixk6cnzk6l1srn2g328gv";
|
||||
release."8.14.1".sha256= "sha256:0dqf87xkzcpg7gglbxjyx68ad84w1w73icxgy3s7d3w563glc2p7";
|
||||
release."8.12".sha256 = "1slka4w0pya15js4drx9frj7lxyp3k2lzib8v23givzpnxs8ijdj";
|
||||
|
|
|
@ -7,11 +7,13 @@ mkCoqDerivation {
|
|||
domain = "gitlab.inria.fr";
|
||||
inherit version;
|
||||
defaultVersion = with lib.versions; lib.switch coq.coq-version [
|
||||
{ case = range "8.12" "8.17"; out = "3.3.1"; }
|
||||
{ case = range "8.12" "8.17"; out = "3.3.0"; }
|
||||
{ case = range "8.8" "8.16"; out = "3.2.0"; }
|
||||
{ case = range "8.8" "8.13"; out = "3.1.0"; }
|
||||
{ case = range "8.5" "8.9"; out = "3.0.2"; }
|
||||
] null;
|
||||
release."3.3.1".sha256 = "sha256-YCvd4aIt2BxLKBYSWzN7aqo0AuY7z8oADmKvybhYBQI=";
|
||||
release."3.3.0".sha256 = "sha256-bh9qP/EhWrHpTe2GMGG3S2vgBSSK088mFfhAIGejVoU=";
|
||||
release."3.2.0".sha256 = "07w7dbl8x7xxnbr2q39wrdh054gvi3daqjpdn1jm53crsl1fjxm4";
|
||||
release."3.1.0".sha256 = "02i0djar13yk01hzaqprcldhhscn9843x9nf6x3jkv4wv1jwnx9f";
|
||||
|
|
|
@ -19,8 +19,9 @@ let
|
|||
owner = "math-comp";
|
||||
withDoc = single && (args.withDoc or false);
|
||||
defaultVersion = with versions; lib.switch coq.coq-version [
|
||||
{ case = range "8.13" "8.17"; out = "1.16.0"; }
|
||||
{ case = isGe "8.15"; out = "1.17.0"; }
|
||||
{ case = range "8.16" "8.17"; out = "2.0.0"; }
|
||||
{ case = range "8.13" "8.17"; out = "1.16.0"; }
|
||||
{ case = range "8.14" "8.16"; out = "1.15.0"; }
|
||||
{ case = range "8.11" "8.15"; out = "1.14.0"; }
|
||||
{ case = range "8.11" "8.15"; out = "1.13.0"; }
|
||||
|
@ -34,6 +35,7 @@ let
|
|||
] null;
|
||||
release = {
|
||||
"2.0.0".sha256 = "sha256-dpOmrHYUXBBS9kmmz7puzufxlbNpIZofpcTvJFLG5DI=";
|
||||
"1.17.0".sha256 = "sha256-bUfoSTMiW/GzC1jKFay6DRqGzKPuLOSUsO6/wPSFwNg=";
|
||||
"1.16.0".sha256 = "sha256-gXTKhRgSGeRBUnwdDezMsMKbOvxdffT+kViZ9e1gEz0=";
|
||||
"1.15.0".sha256 = "1bp0jxl35ms54s0mdqky15w9af03f3i0n06qk12k4gw1xzvwqv21";
|
||||
"1.14.0".sha256 = "07yamlp1c0g5nahkd2gpfhammcca74ga2s6qr7a3wm6y6j5pivk9";
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
|
||||
inherit version;
|
||||
defaultVersion = with lib.versions; lib.switch [ coq.version mathcomp.version ] [
|
||||
{ cases = [ (isGe "8.15") (isGe "1.15.0") ]; out = "1.6.0"; }
|
||||
{ cases = [ (isGe "8.10") (isGe "1.13.0") ]; out = "1.5.6"; }
|
||||
{ cases = [ (range "8.10" "8.16") (range "1.12.0" "1.15.0") ]; out = "1.5.5"; }
|
||||
{ cases = [ (range "8.10" "8.12") "1.12.0" ]; out = "1.5.3"; }
|
||||
|
@ -18,6 +19,7 @@
|
|||
{ cases = [ "8.6" (range "1.6" "1.7") ]; out = "1.1"; }
|
||||
] null;
|
||||
release = {
|
||||
"1.6.0".sha256 = "sha256-lEM+sjqajIOm1c3lspHqcSIARgMR9RHbTQH4veHLJfU=";
|
||||
"1.5.6".sha256 = "sha256-cMixgc34T9Ic6v+tYmL49QUNpZpPV5ofaNuHqblX6oY=";
|
||||
"1.5.5".sha256 = "sha256-VdXA51vr7DZl/wT/15YYMywdD7Gh91dMP9t7ij47qNQ=";
|
||||
"1.5.4".sha256 = "0s4sbh4y88l125hdxahr56325hdhxxdmqmrz7vv8524llyv3fciq";
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "wch-isp";
|
||||
version = "0.2.4";
|
||||
version = "0.2.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jmaselbas";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-YjxzfDSZRMa7B+hNqtj87nRlRuQyr51VidZqHLddgwI=";
|
||||
hash = "sha256-JF1g2Qb1gG93lSaDQvltT6jCYk/dKntsIJPkQXYUvX4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rascal";
|
||||
version = "0.6.2";
|
||||
version = "0.28.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://update.rascal-mpl.org/console/${pname}-${version}.jar";
|
||||
sha256 = "1z4mwdbdc3r24haljnxng8znlfg2ihm9bf9zq8apd9a32ipcw4i6";
|
||||
sha256 = "sha256-KMoGTegjXuGSzNnwH6SkcM5GC/F3oluvFrlJ51Pms3M=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "belle-sip";
|
||||
version = "5.2.37";
|
||||
version = "5.2.53";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.linphone.org";
|
||||
|
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
|
|||
group = "BC";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-e5CwLzpvW5ktv5R8PZkNmSXAi/SaTltJs9LY26iKsLo=";
|
||||
sha256 = "sha256-uZrsDoLIq9jusM5kGXMjspWvFgRq2TF/CLMvTuDSEgM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gbenchmark";
|
||||
version = "1.7.1";
|
||||
version = "1.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "google";
|
||||
repo = "benchmark";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-gg3g/0Ki29FnGqKv9lDTs5oA9NjH23qQ+hTdVtSU+zo=";
|
||||
sha256 = "sha256-pUW9YVaujs/y00/SiPqDgK4wvVsaM7QUp/65k0t7Yr0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libva-utils";
|
||||
version = "2.18.1";
|
||||
version = "2.18.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "intel";
|
||||
repo = "libva-utils";
|
||||
rev = version;
|
||||
sha256 = "sha256-t8N+MQ/HueQWtNzEzfAPZb4q7FjFNhpTmX4JbJ5ZGqM=";
|
||||
sha256 = "sha256-D7GPS/46jiIY8K0qPlMlYhmn+yWhTA+I6jAuxclNJSU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson ninja pkg-config ];
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "portmidi";
|
||||
version = "2.0.3";
|
||||
version = "2.0.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-bLGqi3b9FHBA43baNDT8jkPBQSXAUDfurQSJHLcy3AE=";
|
||||
sha256 = "sha256-uqBeh9vBP6+V+FN4lfeGxePQcpZMDYUuAo/d9a5rQxU=";
|
||||
};
|
||||
|
||||
cmakeFlags = [
|
||||
|
|
|
@ -18,13 +18,13 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "webp-pixbuf-loader";
|
||||
version = "0.0.7";
|
||||
version = "0.2.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aruiz";
|
||||
repo = "webp-pixbuf-loader";
|
||||
rev = version;
|
||||
sha256 = "sha256-Za5/9YlDRqF5oGI8ZfLhx2ZT0XvXK6Z0h6fu5CGvizc=";
|
||||
sha256 = "sha256-TdZK2OTwetLVmmhN7RZlq2NV6EukH1Wk5Iwer2W/aHc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
outputs = [ "out" "lib" "dev" ];
|
||||
|
||||
preConfigure = lib.optionalString (stdenv.buildPlatform.isx86_64 || stdenv.hostPlatform.isi686) ''
|
||||
preConfigure = lib.optionalString stdenv.hostPlatform.isx86 ''
|
||||
# `AS' is set to the binutils assembler, but we need nasm
|
||||
unset AS
|
||||
'' + lib.optionalString stdenv.hostPlatform.isAarch ''
|
||||
|
|
|
@ -60,7 +60,7 @@ let
|
|||
in
|
||||
stdenv.mkDerivation ({
|
||||
inherit buildInputs;
|
||||
pname = lib.concatMapStringsSep "-" (package: package.name) sortedPackages;
|
||||
pname = "android-sdk-${lib.concatMapStringsSep "-" (package: package.name) sortedPackages}";
|
||||
version = lib.concatMapStringsSep "-" (package: package.revision) sortedPackages;
|
||||
src = map (package:
|
||||
if os != null && builtins.hasAttr os package.archives then package.archives.${os} else package.archives.all
|
||||
|
|
|
@ -1,10 +1,11 @@
|
|||
{ lib
|
||||
, absl-py
|
||||
, buildPythonPackage
|
||||
, click
|
||||
, dm-tree
|
||||
, docutils
|
||||
, etils
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, numpy
|
||||
, pythonOlder
|
||||
, tabulate
|
||||
|
@ -27,6 +28,14 @@ buildPythonPackage rec {
|
|||
hash = "sha256-YSMeH5ZTfP1OdLBepsxXAVczBG/ghSjCWjoz/I+TFl8=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "replace-np-bool-with-np-bool_.patch";
|
||||
url = "https://github.com/deepmind/sonnet/commit/df5d099d4557a9a81a0eb969e5a81ed917bcd612.patch";
|
||||
hash = "sha256-s7abl83osD4wa0ZhqgDyjqQ3gagwGYCdQifwFqhNp34=";
|
||||
})
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
dm-tree
|
||||
etils
|
||||
|
@ -42,7 +51,9 @@ buildPythonPackage rec {
|
|||
};
|
||||
|
||||
nativeCheckInputs = [
|
||||
click
|
||||
docutils
|
||||
tensorflow
|
||||
tensorflow-datasets
|
||||
];
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "dvc-render";
|
||||
version = "0.5.2";
|
||||
version = "0.5.3";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
|||
owner = "iterative";
|
||||
repo = pname;
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-u3llBwuojMRhWkbGW3AF3HyDmiN2Mywf2TF1BDCG0Q0=";
|
||||
hash = "sha256-4nqImAYk4pYXSuE2/znzwjtf0349bydqi4iN69wG080=";
|
||||
};
|
||||
|
||||
SETUPTOOLS_SCM_PRETEND_VERSION = version;
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "dvclive";
|
||||
version = "2.9.0";
|
||||
version = "2.10.0";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -23,7 +23,7 @@ buildPythonPackage rec {
|
|||
owner = "iterative";
|
||||
repo = pname;
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-CP3PfRarlByVTchqYZKMuTaVKupqKOZDEOkzuVViW0Q=";
|
||||
hash = "sha256-wnaw0jzaSIPsKaNNtYRUYYqQNpdcmtiunQnhpRQV66E=";
|
||||
};
|
||||
|
||||
SETUPTOOLS_SCM_PRETEND_VERSION = version;
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "easyenergy";
|
||||
version = "0.3.0";
|
||||
version = "0.3.1";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
|
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
|||
owner = "klaasnicolaas";
|
||||
repo = "python-easyenergy";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-J+iWmbuaEErrMxF62rf/L8Rkqo7/7RDXv0CmIuywbjI=";
|
||||
hash = "sha256-n+dF2bR4BUpQAI+M8gPvFVZ+c5cDdAVoENSGpZtbv+M=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -89,7 +89,7 @@ buildPythonPackage rec {
|
|||
"test_custom_linear_solve_cholesky"
|
||||
"test_custom_root_with_aux"
|
||||
"testEigvalsGrad_shape"
|
||||
] ++ lib.optionals (stdenv.isAarch64 && stdenv.isDarwin) [
|
||||
] ++ lib.optionals stdenv.isAarch64 [
|
||||
# See https://github.com/google/jax/issues/14793.
|
||||
"test_for_loop_fixpoint_correctly_identifies_loop_varying_residuals_unrolled_for_loop"
|
||||
"testQdwhWithRandomMatrix3"
|
||||
|
@ -107,6 +107,9 @@ buildPythonPackage rec {
|
|||
"tests/nn_test.py"
|
||||
"tests/random_test.py"
|
||||
"tests/sparse_test.py"
|
||||
] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
|
||||
# RuntimeWarning: invalid value encountered in cast
|
||||
"tests/lax_test.py"
|
||||
];
|
||||
|
||||
# As of 0.3.22, `import jax` does not work without jaxlib being installed.
|
||||
|
|
|
@ -63,7 +63,7 @@ let
|
|||
# aarch64-darwin is broken because of https://github.com/bazelbuild/rules_cc/pull/136
|
||||
# however even with that fix applied, it doesn't work for everyone:
|
||||
# https://github.com/NixOS/nixpkgs/pull/184395#issuecomment-1207287129
|
||||
broken = stdenv.isAarch64 || stdenv.isDarwin;
|
||||
broken = stdenv.isDarwin;
|
||||
};
|
||||
|
||||
cudatoolkit_joined = symlinkJoin {
|
||||
|
@ -129,6 +129,11 @@ let
|
|||
"zlib"
|
||||
];
|
||||
|
||||
arch =
|
||||
# KeyError: ('Linux', 'arm64')
|
||||
if stdenv.targetPlatform.isLinux && stdenv.targetPlatform.linuxArch == "arm64" then "aarch64"
|
||||
else stdenv.targetPlatform.linuxArch;
|
||||
|
||||
bazel-build = buildBazelPackage rec {
|
||||
name = "bazel-build-${pname}-${version}";
|
||||
|
||||
|
@ -291,7 +296,7 @@ let
|
|||
'' else throw "Unsupported stdenv.cc: ${stdenv.cc}");
|
||||
|
||||
installPhase = ''
|
||||
./bazel-bin/build/build_wheel --output_path=$out --cpu=${stdenv.targetPlatform.linuxArch}
|
||||
./bazel-bin/build/build_wheel --output_path=$out --cpu=${arch}
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -299,11 +304,11 @@ let
|
|||
};
|
||||
platformTag =
|
||||
if stdenv.targetPlatform.isLinux then
|
||||
"manylinux2014_${stdenv.targetPlatform.linuxArch}"
|
||||
"manylinux2014_${arch}"
|
||||
else if stdenv.system == "x86_64-darwin" then
|
||||
"macosx_10_9_${stdenv.targetPlatform.linuxArch}"
|
||||
"macosx_10_9_${arch}"
|
||||
else if stdenv.system == "aarch64-darwin" then
|
||||
"macosx_11_0_${stdenv.targetPlatform.linuxArch}"
|
||||
"macosx_11_0_${arch}"
|
||||
else throw "Unsupported target platform: ${stdenv.targetPlatform}";
|
||||
|
||||
in
|
||||
|
|
|
@ -3,7 +3,6 @@
|
|||
, pythonOlder
|
||||
, fetchFromGitHub
|
||||
, poetry-core
|
||||
, setuptools
|
||||
, pytestCheckHook
|
||||
, multidict
|
||||
, xmljson
|
||||
|
@ -11,7 +10,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "latex2mathml";
|
||||
version = "3.75.5";
|
||||
version = "3.76.0";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
|
@ -19,7 +18,7 @@ buildPythonPackage rec {
|
|||
owner = "roniemartinez";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-ezSksOUvSUqo8MktjKU5ZWhAxtFHwFkSAOJ8rG2jgoU=";
|
||||
hash = "sha256-CoWXWgu1baM5v7OC+OlRHZB0NkPue4qFzylJk4Xq2e4=";
|
||||
};
|
||||
|
||||
format = "pyproject";
|
||||
|
@ -28,10 +27,6 @@ buildPythonPackage rec {
|
|||
poetry-core
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
setuptools # needs pkg_resources at runtime
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
multidict
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
, pyturbojpeg
|
||||
, tifffile
|
||||
, lmdb
|
||||
, mmengine
|
||||
, symlinkJoin
|
||||
}:
|
||||
|
||||
|
@ -48,16 +49,16 @@ let
|
|||
in
|
||||
buildPythonPackage rec {
|
||||
pname = "mmcv";
|
||||
version = "1.7.1";
|
||||
version = "2.0.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "open-mmlab";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-b4MLBPNRCcPq1osUvqo71PCWVX7lOjAH+dXttd4ZapU";
|
||||
hash = "sha256-36PcvoB0bM0VoNb2psURYFo3krmgHG47OufU6PVjHyw=";
|
||||
};
|
||||
|
||||
preConfigure = ''
|
||||
|
@ -100,6 +101,7 @@ buildPythonPackage rec {
|
|||
nativeCheckInputs = [ pytestCheckHook torchvision lmdb onnx onnxruntime scipy pyturbojpeg tifffile ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
mmengine
|
||||
torch
|
||||
opencv4
|
||||
yapf
|
||||
|
|
78
pkgs/development/python-modules/mmengine/default.nix
Normal file
78
pkgs/development/python-modules/mmengine/default.nix
Normal file
|
@ -0,0 +1,78 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, pytestCheckHook
|
||||
, pythonOlder
|
||||
, torch
|
||||
, opencv4
|
||||
, yapf
|
||||
, coverage
|
||||
, mlflow
|
||||
, lmdb
|
||||
, matplotlib
|
||||
, numpy
|
||||
, pyyaml
|
||||
, rich
|
||||
, termcolor
|
||||
, addict
|
||||
, parameterized
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mmengine";
|
||||
version = "0.7.3";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "open-mmlab";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-Ook85XWosxbvshsQxZEoAWI/Ugl2uSO8zoNJ5EuuW1E=";
|
||||
};
|
||||
|
||||
# tests are disabled due to sandbox env.
|
||||
disabledTests = [
|
||||
"test_fileclient"
|
||||
"test_http_backend"
|
||||
"test_misc"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pytestCheckHook ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
coverage
|
||||
lmdb
|
||||
mlflow
|
||||
torch
|
||||
parameterized
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
addict
|
||||
matplotlib
|
||||
numpy
|
||||
pyyaml
|
||||
rich
|
||||
termcolor
|
||||
yapf
|
||||
opencv4
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [
|
||||
"mmengine"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "a foundational library for training deep learning models based on PyTorch";
|
||||
homepage = "https://github.com/open-mmlab/mmengine";
|
||||
changelog = "https://github.com/open-mmlab/mmengine/releases/tag/v${version}";
|
||||
license = with licenses; [ asl20 ];
|
||||
maintainers = with maintainers; [ rxiao ];
|
||||
};
|
||||
}
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "msgspec";
|
||||
version = "0.15.0";
|
||||
version = "0.15.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
|||
owner = "jcrist";
|
||||
repo = pname;
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-pyGmzG2oy+1Ip4w+pyjASvVyZDEjDylBZfbxLPFzSoU=";
|
||||
hash = "sha256-U3mCnp7MojWcw1pZExG6pYAToVjzGXqc2TeDyhm39TY=";
|
||||
};
|
||||
|
||||
# Requires libasan to be accessible
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "p1monitor";
|
||||
version = "2.3.0";
|
||||
version = "2.3.1";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
|
@ -21,7 +21,7 @@ buildPythonPackage rec {
|
|||
owner = "klaasnicolaas";
|
||||
repo = "python-p1monitor";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-4/zaD+0Tuy5DvcwmH5BurGWCCjQlRYOJT77toEPS06k=";
|
||||
hash = "sha256-2NlFXeI+6ooh4D1OxUWwYrmM4zpL9gg8vhnseLjj2dM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
buildPythonPackage rec {
|
||||
pname = "pulumi-aws";
|
||||
# Version is independant of pulumi's.
|
||||
version = "5.40.0";
|
||||
version = "5.41.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -21,7 +21,7 @@ buildPythonPackage rec {
|
|||
owner = "pulumi";
|
||||
repo = "pulumi-aws";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-DMSBQhBxbVfU7ULkLI8KV7JJLBsaVb/Z9BZZG2GEOzQ=";
|
||||
hash = "sha256-axVzystW9kvyMP35h/GCN1Cy1y8CYNxZglWeXVJfWSc=";
|
||||
};
|
||||
|
||||
sourceRoot = "${src.name}/sdk/python";
|
||||
|
|
|
@ -48,6 +48,8 @@ buildPythonPackage rec {
|
|||
platforms = platforms.linux;
|
||||
license = with licenses; [ gpl3 lgpl3 ];
|
||||
maintainers = with maintainers; [ matejc ftrvxmtrx ] ++ teams.enlightenment.members;
|
||||
broken = true;
|
||||
# The generated files in the tarball aren't compatible with python 3.11
|
||||
# See https://sourceforge.net/p/enlightenment/mailman/message/37794291/
|
||||
broken = python.pythonAtLeast "3.11";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -6,11 +6,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-pidfile";
|
||||
version = "3.0.0";
|
||||
version = "3.1.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-HhCX30G8dfV0WZ/++J6LIO/xvfyRkdPtJkzC2ulUKdA=";
|
||||
hash = "sha256-pgQBL2iagsHMRFEKI85ZwyaIL7kcIftAy6s+lX958M0=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "rasterio";
|
||||
version = "1.3.6";
|
||||
version = "1.3.7";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -35,7 +35,7 @@ buildPythonPackage rec {
|
|||
owner = "rasterio";
|
||||
repo = "rasterio";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-C5jenXcONNYiUNa5GQ7ATBi8m0JWvg8Dyp9+ejGX+Fs=";
|
||||
hash = "sha256-6AtGRXGuAXMrePqS2lmNdOuPZi6LHuiWP2LJyxH3L3M=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -90,7 +90,10 @@ buildPythonPackage rec {
|
|||
doInstallCheck = true;
|
||||
|
||||
installCheckPhase = ''
|
||||
$out/bin/rio --version | grep ${version} > /dev/null
|
||||
$out/bin/rio --show-versions | grep -E "rasterio:\s${version}" > /dev/null
|
||||
$out/bin/rio --show-versions | grep -E "GDAL:\s[0-9]+(\.[0-9]+)*" > /dev/null
|
||||
$out/bin/rio --show-versions | grep -E "PROJ:\s[0-9]+(\.[0-9]+)*" > /dev/null
|
||||
$out/bin/rio --show-versions | grep -E "GEOS:\s[0-9]+(\.[0-9]+)*" > /dev/null
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "requests-pkcs12";
|
||||
version = "1.15";
|
||||
version = "1.16";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
|||
owner = "m-click";
|
||||
repo = "requests_pkcs12";
|
||||
rev = version;
|
||||
hash = "sha256-xk8+oERonZWzxKEmZutfvovzVOz9ZP5O83cMDTz9i3Y=";
|
||||
hash = "sha256-Uva9H2ToL7qpcXH/gmiBPKw+2gfmOxMKwxh4b43xFcA=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -2,12 +2,12 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "rplcd";
|
||||
version = "1.3.0";
|
||||
version = "1.3.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit version;
|
||||
pname = "RPLCD";
|
||||
hash = "sha256-AIEiL+IPU76DF+P08c5qokiJcZdNNDJ/Jjng2Z292LY=";
|
||||
hash = "sha256-uZ0pPzWK8cBSX8/qvcZGYEnlVdtWn/vKPyF1kfwU5Pk=";
|
||||
};
|
||||
|
||||
# Disable check because it depends on a GPIO library
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchFromBitbucket
|
||||
, fetchFromGitHub
|
||||
, pyparsing
|
||||
, matplotlib
|
||||
, latex2mathml
|
||||
|
@ -18,7 +18,7 @@ buildPythonPackage rec {
|
|||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchFromBitbucket {
|
||||
src = fetchFromGitHub {
|
||||
owner = "cdelker";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, pytestCheckHook
|
||||
|
@ -14,11 +15,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "skorch";
|
||||
version = "0.12.1";
|
||||
version = "0.13.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-fjNbNY/Dr7lgVGPrHJTvPGuhyPR6IVS7ohBQMI+J1+k=";
|
||||
hash = "sha256-k9Zs4uqskHLqVHOKK7dIOmBSUmbDpOMuPS9eSdxNjO0=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ numpy torch scikit-learn scipy tabulate tqdm ];
|
||||
|
@ -37,10 +38,19 @@ buildPythonPackage rec {
|
|||
"test_load_cuda_params_to_cpu"
|
||||
# failing tests
|
||||
"test_pickle_load"
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
# there is a problem with the compiler selection
|
||||
"test_fit_and_predict_with_compile"
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
# tries to import `transformers` and download HuggingFace data
|
||||
disabledTestPaths = [ "skorch/tests/test_hf.py" ];
|
||||
"skorch/tests/test_hf.py"
|
||||
] ++ lib.optionals (stdenv.hostPlatform.system != "x86_64-linux") [
|
||||
# torch.distributed is disabled by default in darwin
|
||||
# aarch64-linux also failed these tests
|
||||
"skorch/tests/test_history.py"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "skorch" ];
|
||||
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
, attrs
|
||||
, beautifulsoup4
|
||||
, buildPythonPackage
|
||||
, click
|
||||
, datasets
|
||||
, dill
|
||||
, dm-tree
|
||||
, fetchFromGitHub
|
||||
|
@ -14,6 +16,7 @@
|
|||
, jinja2
|
||||
, langdetect
|
||||
, lib
|
||||
, lxml
|
||||
, matplotlib
|
||||
, mwparserfromhell
|
||||
, networkx
|
||||
|
@ -24,6 +27,7 @@
|
|||
, pillow
|
||||
, promise
|
||||
, protobuf
|
||||
, psutil
|
||||
, pycocotools
|
||||
, pydub
|
||||
, pytest-xdist
|
||||
|
@ -65,6 +69,7 @@ buildPythonPackage rec {
|
|||
numpy
|
||||
promise
|
||||
protobuf
|
||||
psutil
|
||||
requests
|
||||
six
|
||||
tensorflow-metadata
|
||||
|
@ -79,12 +84,15 @@ buildPythonPackage rec {
|
|||
nativeCheckInputs = [
|
||||
apache-beam
|
||||
beautifulsoup4
|
||||
click
|
||||
datasets
|
||||
ffmpeg
|
||||
imagemagick
|
||||
jax
|
||||
jaxlib
|
||||
jinja2
|
||||
langdetect
|
||||
lxml
|
||||
matplotlib
|
||||
mwparserfromhell
|
||||
networkx
|
||||
|
@ -109,19 +117,29 @@ buildPythonPackage rec {
|
|||
"tensorflow_datasets/core/dataset_info_test.py"
|
||||
"tensorflow_datasets/core/features/features_test.py"
|
||||
"tensorflow_datasets/core/github_api/github_path_test.py"
|
||||
"tensorflow_datasets/core/registered_test.py"
|
||||
"tensorflow_datasets/core/utils/gcs_utils_test.py"
|
||||
"tensorflow_datasets/import_without_tf_test.py"
|
||||
"tensorflow_datasets/scripts/cli/build_test.py"
|
||||
|
||||
# Requires `pretty_midi` which is not packaged in `nixpkgs`.
|
||||
"tensorflow_datasets/audio/groove_test.py"
|
||||
"tensorflow_datasets/audio/groove.py"
|
||||
"tensorflow_datasets/datasets/groove/groove_dataset_builder_test.py"
|
||||
|
||||
# Requires `crepe` which is not packaged in `nixpkgs`.
|
||||
"tensorflow_datasets/audio/nsynth_test.py"
|
||||
"tensorflow_datasets/audio/nsynth.py"
|
||||
"tensorflow_datasets/datasets/nsynth/nsynth_dataset_builder_test.py"
|
||||
|
||||
# Requires `conllu` which is not packaged in `nixpkgs`.
|
||||
"tensorflow_datasets/core/dataset_builders/conll/conllu_dataset_builder_test.py"
|
||||
"tensorflow_datasets/datasets/universal_dependencies/universal_dependencies_dataset_builder_test.py"
|
||||
"tensorflow_datasets/datasets/xtreme_pos/xtreme_pos_dataset_builder_test.py"
|
||||
|
||||
# Requires `gcld3` and `pretty_midi` which are not packaged in `nixpkgs`.
|
||||
"tensorflow_datasets/core/lazy_imports_lib_test.py"
|
||||
|
||||
# Requires `tensorflow_io` which is not packaged in `nixpkgs`.
|
||||
"tensorflow_datasets/core/features/audio_feature_test.py"
|
||||
"tensorflow_datasets/image/lsun_test.py"
|
||||
|
||||
# Requires `envlogger` which is not packaged in `nixpkgs`.
|
||||
|
@ -133,6 +151,10 @@ buildPythonPackage rec {
|
|||
# to the differences in some of the dependencies?
|
||||
"tensorflow_datasets/rl_unplugged/rlu_atari/rlu_atari_test.py"
|
||||
|
||||
# Fails with `ValueError: setting an array element with a sequence`
|
||||
"tensorflow_datasets/core/dataset_utils_test.py"
|
||||
"tensorflow_datasets/core/features/sequence_feature_test.py"
|
||||
|
||||
# Requires `tensorflow_docs` which is not packaged in `nixpkgs` and the test is for documentation anyway.
|
||||
"tensorflow_datasets/scripts/documentation/build_api_docs_test.py"
|
||||
|
||||
|
|
|
@ -51,7 +51,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "wandb";
|
||||
version = "0.15.2";
|
||||
version = "0.15.3";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
@ -60,7 +60,7 @@ buildPythonPackage rec {
|
|||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-cAmX3r6XhCBUnC/fNNPakZUNEcDFke0DJMi2PW7sOho=";
|
||||
hash = "sha256-i1Lo6xbkCgRTJwRjk2bXkZ5a/JRUCzFzmEuPQlPvZf4=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -1,89 +0,0 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, setuptools
|
||||
, pkg-config
|
||||
, which
|
||||
, cairo
|
||||
, pango
|
||||
, python
|
||||
, doxygen
|
||||
, ncurses
|
||||
, libintl
|
||||
, wxGTK
|
||||
, gtk3
|
||||
, IOKit
|
||||
, Carbon
|
||||
, Cocoa
|
||||
, AudioToolbox
|
||||
, OpenGL
|
||||
, CoreFoundation
|
||||
, pillow
|
||||
, numpy
|
||||
, six
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "wxPython";
|
||||
version = "4.0.7.post2";
|
||||
format = "other";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "5a229e695b64f9864d30a5315e0c1e4ff5e02effede0a07f16e8d856737a0c4e";
|
||||
};
|
||||
|
||||
doCheck = false;
|
||||
|
||||
nativeBuildInputs = [ pkg-config which doxygen setuptools wxGTK ];
|
||||
|
||||
buildInputs = [ ncurses libintl ]
|
||||
++ (if stdenv.isDarwin
|
||||
then
|
||||
[ AudioToolbox Carbon Cocoa CoreFoundation IOKit OpenGL ]
|
||||
else
|
||||
[ gtk3 ]
|
||||
);
|
||||
|
||||
propagatedBuildInputs = [
|
||||
numpy
|
||||
pillow
|
||||
six
|
||||
];
|
||||
|
||||
DOXYGEN = "${doxygen}/bin/doxygen";
|
||||
|
||||
preConfigure = lib.optionalString (!stdenv.isDarwin) ''
|
||||
substituteInPlace wx/lib/wxcairo/wx_pycairo.py \
|
||||
--replace 'cairoLib = None' 'cairoLib = ctypes.CDLL("${cairo}/lib/libcairo.so")'
|
||||
substituteInPlace wx/lib/wxcairo/wx_pycairo.py \
|
||||
--replace '_dlls = dict()' '_dlls = {k: ctypes.CDLL(v) for k, v in [
|
||||
("gdk", "${gtk3}/lib/libgtk-x11-2.0.so"),
|
||||
("pangocairo", "${pango.out}/lib/libpangocairo-1.0.so"),
|
||||
("appsvc", None)
|
||||
]}'
|
||||
'' + lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) ''
|
||||
# Remove the OSX-Only wx.webkit module
|
||||
sed -i "s/makeETGRule(.*'WXWEBKIT')/pass/" wscript
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
${python.pythonForBuild.interpreter} build.py -v --use_syswx dox etg --nodoc sip build_py
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
${python.pythonForBuild.interpreter} setup.py install --skip-build --prefix=$out
|
||||
'';
|
||||
|
||||
passthru = { wxWidgets = wxGTK; };
|
||||
|
||||
|
||||
meta = {
|
||||
description = "Cross platform GUI toolkit for Python, Phoenix version";
|
||||
homepage = "http://wxpython.org/";
|
||||
license = lib.licenses.wxWindows;
|
||||
broken = true;
|
||||
};
|
||||
|
||||
}
|
|
@ -1,147 +0,0 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchPypi
|
||||
, fetchpatch
|
||||
, buildPythonPackage
|
||||
, setuptools
|
||||
, which
|
||||
, pkg-config
|
||||
, python
|
||||
, isPy27
|
||||
, doxygen
|
||||
, cairo
|
||||
, ncurses
|
||||
, pango
|
||||
, wxGTK
|
||||
, gtk3
|
||||
, AGL
|
||||
, AudioToolbox
|
||||
, AVFoundation
|
||||
, AVKit
|
||||
, Carbon
|
||||
, Cocoa
|
||||
, CoreFoundation
|
||||
, CoreMedia
|
||||
, IOKit
|
||||
, Kernel
|
||||
, OpenGL
|
||||
, Security
|
||||
, WebKit
|
||||
, pillow
|
||||
, numpy
|
||||
, six
|
||||
, libXinerama
|
||||
, libSM
|
||||
, libXxf86vm
|
||||
, libXtst
|
||||
, libGLU
|
||||
, libGL
|
||||
, xorgproto
|
||||
, gst_all_1
|
||||
, libglvnd
|
||||
, mesa
|
||||
, webkitgtk
|
||||
, autoPatchelfHook
|
||||
}:
|
||||
let
|
||||
dynamic-linker = stdenv.cc.bintools.dynamicLinker;
|
||||
in
|
||||
buildPythonPackage rec {
|
||||
pname = "wxPython";
|
||||
version = "4.1.1";
|
||||
disabled = isPy27;
|
||||
format = "other";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0a1mdhdkda64lnwm1dg0dlrf9rs4gkal3lra6hpqbwn718cf7r80";
|
||||
};
|
||||
|
||||
# ld: framework not found System
|
||||
postPatch = ''
|
||||
for file in ext/wxWidgets/configure*; do
|
||||
substituteInPlace $file --replace "-framework System" ""
|
||||
done
|
||||
'';
|
||||
|
||||
# https://github.com/NixOS/nixpkgs/issues/75759
|
||||
# https://github.com/wxWidgets/Phoenix/issues/1316
|
||||
doCheck = false;
|
||||
|
||||
nativeBuildInputs = [
|
||||
which
|
||||
doxygen
|
||||
gtk3
|
||||
pkg-config
|
||||
setuptools
|
||||
] ++ lib.optionals stdenv.isLinux [
|
||||
autoPatchelfHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtk3
|
||||
ncurses
|
||||
] ++ lib.optionals stdenv.isLinux [
|
||||
libXinerama
|
||||
libSM
|
||||
libXxf86vm
|
||||
libXtst
|
||||
xorgproto
|
||||
gst_all_1.gstreamer
|
||||
gst_all_1.gst-plugins-base
|
||||
libGLU
|
||||
libGL
|
||||
libglvnd
|
||||
mesa
|
||||
webkitgtk
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
AGL
|
||||
AudioToolbox
|
||||
AVFoundation
|
||||
AVKit
|
||||
Carbon
|
||||
Cocoa
|
||||
CoreFoundation
|
||||
CoreMedia
|
||||
IOKit
|
||||
Kernel
|
||||
OpenGL
|
||||
Security
|
||||
WebKit
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
pillow
|
||||
numpy
|
||||
six
|
||||
];
|
||||
|
||||
DOXYGEN = "${doxygen}/bin/doxygen";
|
||||
|
||||
preConfigure = lib.optionalString (!stdenv.isDarwin) ''
|
||||
substituteInPlace wx/lib/wxcairo/wx_pycairo.py \
|
||||
--replace '_dlls = dict()' '_dlls = {k: ctypes.CDLL(v) for k, v in [
|
||||
("gdk", "${gtk3}/lib/libgtk-x11-3.0.so"),
|
||||
("pangocairo", "${pango.out}/lib/libpangocairo-1.0.so"),
|
||||
("cairoLib = None", "cairoLib = ctypes.CDLL('${cairo}/lib/libcairo.so')"),
|
||||
("appsvc", None)
|
||||
]}'
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
${python.pythonForBuild.interpreter} build.py -v build_wx dox etg --nodoc sip build_py
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
${python.pythonForBuild.interpreter} setup.py install --skip-build --prefix=$out
|
||||
wrapPythonPrograms
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Cross platform GUI toolkit for Python, Phoenix version";
|
||||
homepage = "http://wxpython.org/";
|
||||
license = licenses.wxWindows;
|
||||
maintainers = with maintainers; [ tfmoraes ];
|
||||
broken = true;
|
||||
};
|
||||
}
|
|
@ -9,13 +9,13 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "xmldiff";
|
||||
version = "2.6.1";
|
||||
version = "2.6.3";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-gbgX7y/Q3pswM2tH/R1GSMmbMGhQJKB7w08sFGQE4Vk=";
|
||||
hash = "sha256-GbAws/o30fC1xa2a2pBZiEw78sdRxd2PHrTtSc/j/GA=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -1,22 +1,24 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchFromBitbucket
|
||||
, fetchFromGitHub
|
||||
, pytestCheckHook
|
||||
, nbval
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "ziafont";
|
||||
version = "0.5";
|
||||
version = "0.6";
|
||||
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchFromBitbucket {
|
||||
src = fetchFromGitHub {
|
||||
owner = "cdelker";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-mTQ2yRG+E2nZ2g9eSg+XTzK8A1EgKsRfbvNO3CdYeLg=";
|
||||
hash = "sha256-3ZVj1ZxbFkFDDYbsIPzo7GMWGx7f5qWZQlcGCVXv73M=";
|
||||
};
|
||||
|
||||
nativeCheckInputs = [
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchFromBitbucket
|
||||
, fetchFromGitHub
|
||||
, ziafont
|
||||
, pytestCheckHook
|
||||
, nbval
|
||||
|
@ -14,7 +14,7 @@ buildPythonPackage rec {
|
|||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchFromBitbucket {
|
||||
src = fetchFromGitHub {
|
||||
owner = "cdelker";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue