Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2024-01-12 00:13:06 +00:00 committed by GitHub
commit 55af1e9407
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
224 changed files with 3028 additions and 1900 deletions

4
.github/CODEOWNERS vendored
View File

@ -66,6 +66,10 @@
/doc/build-helpers/images/makediskimage.section.md @raitobezarius
/nixos/lib/make-disk-image.nix @raitobezarius
# Nix, the package manager
pkgs/tools/package-management/nix/ @raitobezarius
nixos/modules/installer/tools/nix-fallback-paths.nix @raitobezarius
# Nixpkgs documentation
/maintainers/scripts/db-to-md.sh @jtojnar @ryantm
/maintainers/scripts/doc @jtojnar @ryantm

View File

@ -11,6 +11,18 @@ If you are packaging a Flutter desktop application, use [`buildFlutterApplicatio
`pubspecLock` is the parsed pubspec.lock file. pub2nix uses this to download required packages.
This can be converted to JSON from YAML with something like `yq . pubspec.lock`, and then read by Nix.
Alternatively, `autoPubspecLock` can be used instead, and set to a path to a regular `pubspec.lock` file. This relies on import-from-derivation, and is not permitted in Nixpkgs, but can be useful at other times.
::: {.warning}
When using `autoPubspecLock` with a local source directory, make sure to use a
concatenation operator (e.g. `autoPubspecLock = src + "/pubspec.lock";`), and
not string interpolation.
String interpolation will copy your entire source directory to the Nix store and
use its store path, meaning that unrelated changes to your source tree will
cause the generated `pubspec.lock` derivation to rebuild!
:::
If the package has Git package dependencies, the hashes must be provided in the `gitHashes` set. If a hash is missing, an error message prompting you to add it will be shown.
The `dart` commands run can be overridden through `pubGetScript` and `dartCompileCommand`, you can also add flags using `dartCompileFlags` or `dartJitFlags`.
@ -101,8 +113,8 @@ flutter.buildFlutterApplication {
pubspecLock = lib.importJSON ./pubspec.lock.json;
}
```
### Usage with nix-shell {#ssec-dart-flutter-nix-shell}
See the [Dart documentation](#ssec-dart-applications-nix-shell) nix-shell instructions.
```
See the [Dart documentation](#ssec-dart-applications-nix-shell) for nix-shell instructions.

View File

@ -2508,6 +2508,12 @@
githubId = 5700358;
name = "Thomas Blank";
};
blinry = {
name = "blinry";
email = "mail@blinry.org";
github = "blinry";
githubId = 81277;
};
blitz = {
email = "js@alien8.de";
matrix = "@js:ukvly.org";

View File

@ -1,7 +1,7 @@
{
x86_64-linux = "/nix/store/smfmnz0ylx80wkbqbjibj7zcw4q668xp-nix-2.19.2";
i686-linux = "/nix/store/knp0akbpj2k0rf26fmysmxdysmayihax-nix-2.19.2";
aarch64-linux = "/nix/store/761hq0abn07nrydrf6mls61bscx2vz2i-nix-2.19.2";
x86_64-darwin = "/nix/store/zlqvxis1dfcfgmy5fza4hllg6h03vhpb-nix-2.19.2";
aarch64-darwin = "/nix/store/53r8ay20mygy2sifn7j2p8wjqlx2kxik-nix-2.19.2";
x86_64-linux = "/nix/store/azvn85cras6xv4z5j85fiy406f24r1q0-nix-2.18.1";
i686-linux = "/nix/store/9bnwy7f9h0kzdzmcnjjsjg0aak5waj40-nix-2.18.1";
aarch64-linux = "/nix/store/hh65xwqm9s040s3cgn9vzcmrxj0sf5ij-nix-2.18.1";
x86_64-darwin = "/nix/store/6zi5fqzn9n17wrk8r41rhdw4j7jqqsi3-nix-2.18.1";
aarch64-darwin = "/nix/store/0pbq6wzr2f1jgpn5212knyxpwmkjgjah-nix-2.18.1";
}

View File

@ -61,7 +61,12 @@ in
};
enableSuid = mkOption {
type = types.bool;
default = true;
# SingularityCE requires SETUID for most things. Apptainer prefers user
# namespaces, e.g. `apptainer exec --nv` would fail if built
# `--with-suid`:
# > `FATAL: nvidia-container-cli not allowed in setuid mode`
default = cfg.package.projectName != "apptainer";
defaultText = literalExpression ''config.services.singularity.package.projectName != "apptainer"'';
example = false;
description = mdDoc ''
Whether to enable the SUID support of Singularity/Apptainer.

View File

@ -206,7 +206,15 @@ in {
description = "Real time performance monitoring";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
path = (with pkgs; [ curl gawk iproute2 which procps bash ])
path = (with pkgs; [
curl
gawk
iproute2
which
procps
bash
util-linux # provides logger command; required for syslog health alarms
])
++ lib.optional cfg.python.enable (pkgs.python3.withPackages cfg.python.extraPackages)
++ lib.optional config.virtualisation.libvirtd.enable (config.virtualisation.libvirtd.package);
environment = {

View File

@ -273,17 +273,17 @@ in
system.nssModules = optional (cfg.nssmdns4 || cfg.nssmdns6) pkgs.nssmdns;
system.nssDatabases.hosts = let
mdnsMinimal = if (cfg.nssmdns4 && cfg.nssmdns6) then
"mdns_minimal"
mdns = if (cfg.nssmdns4 && cfg.nssmdns6) then
"mdns"
else if (!cfg.nssmdns4 && cfg.nssmdns6) then
"mdns6_minimal"
"mdns6"
else if (cfg.nssmdns4 && !cfg.nssmdns6) then
"mdns4_minimal"
"mdns4"
else
"";
in optionals (cfg.nssmdns4 || cfg.nssmdns6) (mkMerge [
(mkBefore [ "${mdnsMinimal} [NOTFOUND=return]" ]) # before resolve
(mkAfter [ "mdns" ]) # after dns
(mkBefore [ "${mdns}_minimal [NOTFOUND=return]" ]) # before resolve
(mkAfter [ "${mdns}" ]) # after dns
]);
environment.systemPackages = [ cfg.package ];

View File

@ -18,13 +18,13 @@
stdenv.mkDerivation rec {
pname = "cava";
version = "0.9.1";
version = "0.10.0";
src = fetchFromGitHub {
owner = "karlstav";
repo = "cava";
rev = version;
hash = "sha256-W/2B9iTcO2F2vHQzcbg/6pYBwe+rRNfADdOiw4NY9Jk=";
hash = "sha256-AQR1qc6HgkUkXBRf7kGy4QdtfCj+YVDlYSEIWOutkTk=";
};
buildInputs = [

View File

@ -14,17 +14,17 @@
rustPlatform.buildRustPackage rec {
pname = "listenbrainz-mpd";
version = "2.3.1";
version = "2.3.2";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "elomatreb";
repo = "listenbrainz-mpd";
rev = "v${version}";
hash = "sha256-rI6GBDUzI0pHjULoNKWZ4GKlrtpX/4x6Q1Q+DByNqRs=";
hash = "sha256-DqxE+wEHDmOmh+iJa312uAWQcg/1ApOTZNLrhGq5KmY=";
};
cargoHash = "sha256-8/0WkoDxUJz0QoQiDGHTuU7HmiY9nqUNPvztI0xmqvk=";
cargoHash = "sha256-/fd3XIBHwJ95bwirUbMldw2cAfdF2Sv8CPxrbM4WWBI=";
nativeBuildInputs = [ pkg-config installShellFiles asciidoctor ];
@ -37,7 +37,11 @@ rustPlatform.buildRustPackage rec {
openssl
]);
buildFeatures = [ "shell_completion" ];
buildFeatures = [
"shell_completion"
] ++ lib.optionals stdenv.isLinux [
"systemd"
];
postInstall = ''
installShellCompletion \

View File

@ -10,16 +10,16 @@ let
inherit tiling_wm;
};
stableVersion = {
version = "2023.1.1.26"; # "Android Studio Hedgehog | 2023.1.1"
sha256Hash = "sha256-l36KmFVBT31BFX8L4OEPt0DEK9M392PV2Ws+BZeAZj0=";
version = "2023.1.1.27"; # "Android Studio Hedgehog | 2023.1.1 Patch 1"
sha256Hash = "sha256-XF+XyHGk7dPTBHKcx929qdFHu6hRJWFO382mh4SuWDs=";
};
betaVersion = {
version = "2023.2.1.19"; # "Android Studio Iguana | 2023.2.1 Beta 1"
sha256Hash = "sha256-lfJBX7RLIziiuv805+gdt8xfJkFjy0bSh77/bjkNFH4=";
version = "2023.2.1.20"; # "Android Studio Iguana | 2023.2.1 Beta 2"
sha256Hash = "sha256-cFEPgFAKkFx0d7PC4fTElTQVrBZMQs0RL3wR+hqTh2I=";
};
latestVersion = {
version = "2023.2.1.18"; # "Android Studio Iguana | 2023.2.1 Canary 18"
sha256Hash = "sha256-QvyA/1IvqIgGkBWryY0Q7LqGA6I1f9Xn8GA1g19jt+w=";
version = "2023.3.1.3"; # "Android Studio Jellyfish | 2023.3.1 Canary 3"
sha256Hash = "sha256-cPCn9dsQ0v1C2bxXzPoxjuucsMtkeO8D6dVt8hcIluQ=";
};
in {
# Attributes are named by their corresponding release channels

View File

@ -117,6 +117,37 @@ in buildFHSEnv rec {
passthru = {
inherit unwrapped;
tests = {
buildSof = runCommand "quartus-prime-lite-test-build-sof"
{ nativeBuildInputs = [ quartus-prime-lite ];
}
''
cat >mydesign.vhd <<EOF
library ieee;
use ieee.std_logic_1164.all;
entity mydesign is
port (
in_0: in std_logic;
in_1: in std_logic;
out_1: out std_logic
);
end mydesign;
architecture dataflow of mydesign is
begin
out_1 <= in_0 and in_1;
end dataflow;
EOF
quartus_sh --flow compile mydesign
if ! [ -f mydesign.sof ]; then
echo "error: failed to produce mydesign.sof" >&2
exit 1
fi
touch "$out"
'';
questaEncryptedModel = runCommand "quartus-prime-lite-test-questa-encrypted-model" {} ''
"${quartus-prime-lite}/bin/vlog" "${quartus-prime-lite.unwrapped}/questa_fse/intel/verilog/src/arriav_atoms_ncrypt.v"
touch "$out"

View File

@ -25,20 +25,20 @@ let
) deviceIds;
componentHashes = {
"arria_lite" = "07p862i3dn2c0s3p39y23g94id59nzrpzbwdmrdnhy61ca3m0vzp";
"cyclone" = "0dic35j9q1ndrn8i2vdqg9176fr3kn6c8iiv0c03nni0m4ar3ykn";
"cyclone10lp" = "03w4f71fhhwvnkzzly9m15nrdf0jw8m0ckhhzv1vg3nd9pkk86jh";
"cyclonev" = "091mlg2iy452fk28idbiwi3rhcgkbhg7ggh3xvnqa9jrfffq9pjc";
"max" = "0r649l2n6hj6x5v6hx8k4xnvd6df6wxajx1xp2prq6dpapjfb06y";
"max10" = "1p5ds3cq2gq2mzq2hjwwjhw50c931kgiqxaf7ss228c6s7rv6zpk";
"arria_lite" = "0fg9mmncbb8vmmbc3hxgmrgvgfphn3k4glv7w2yjq66vz6nd8zql";
"cyclone" = "1min1hjaw8ll0c1gvl6ihp7hczw36ag8l2yzgl6avcapcw53hgyp";
"cyclone10lp" = "1kjjm11hjg0h6i7kilxvhmkay3v416bhwp0frg2bnwggpk29drxj";
"cyclonev" = "10v928qhyfqw3lszhhcdishh1875k1bki9i0czx9252jprgd1g7g";
"max" = "04sszzz3qnjziirisshhdqs7ks8mcvy15lc1mpp9sgm09pwlhgbb";
"max10" = "0dqlq477zdx4pf5hlbkl1ycxiav19vx4sk6277cpxm8y1xz70972";
};
version = "22.1std.2.922";
version = "23.1std.0.991";
download = {name, sha256}: fetchurl {
inherit name sha256;
# e.g. "22.1std.2.922" -> "22.1std.2/922"
url = "https://downloads.intel.com/akdlm/software/acdsinst/${lib.versions.majorMinor version}std.${lib.elemAt (lib.splitVersion version) 3}/${lib.elemAt (lib.splitVersion version) 4}/ib_installers/${name}";
# e.g. "23.1std.0.991" -> "23.1std/921"
url = "https://downloads.intel.com/akdlm/software/acdsinst/${lib.versions.majorMinor version}std/${lib.elemAt (lib.splitVersion version) 4}/ib_installers/${name}";
};
in stdenv.mkDerivation rec {
@ -47,10 +47,10 @@ in stdenv.mkDerivation rec {
src = map download ([{
name = "QuartusLiteSetup-${version}-linux.run";
sha256 = "078x42pbc51n6ynrvzpwiwgi6g2sg4csv6x2vnnzjgx6bg5kq6l3";
sha256 = "1mg4db56rg407kdsvpzys96z59bls8djyddfzxi6bdikcklxz98h";
} {
name = "QuestaSetup-${version}-linux.run";
sha256 = "04pv5fq3kfy3xsjnj435zzpj5kf6329cbs1xgvkgmq1gpn4ji5zy";
sha256 = "0f9lyphk4vf4ijif3kb4iqf18jl357z9h8g16kwnzaqwfngh2ixk";
}] ++ (map (id: {
name = "${id}-${version}.qdz";
sha256 = lib.getAttr id componentHashes;

View File

@ -1,5 +1,5 @@
{ lib, stdenv, fetchFromGitHub, cmake, glib, gst_all_1, makeWrapper, pkg-config
, python2, SDL2, SDL2_image, SDL2_mixer, SDL2_ttf, sqlite, zlib, runtimeShell
, python3, SDL2, SDL2_image, SDL2_mixer, SDL2_ttf, sqlite, zlib, runtimeShell
}:
stdenv.mkDerivation {
@ -13,7 +13,7 @@ stdenv.mkDerivation {
sha256 = "sha256-uBfECbU2Df/pPpEXXq62S7Ec0YU4lPIsZ8k5UmKD7xQ=";
};
nativeBuildInputs = [ cmake makeWrapper pkg-config python2 ];
nativeBuildInputs = [ cmake makeWrapper pkg-config python3 ];
buildInputs = [
glib gst_all_1.gstreamer SDL2 SDL2_image SDL2_mixer SDL2_ttf sqlite zlib

View File

@ -162,6 +162,10 @@ stdenv.mkDerivation(finalAttrs: {
ln -sf ${compat-list} ./dist/compatibility_list/compatibility_list.json
'';
postInstall = ''
install -Dm444 $src/dist/72-yuzu-input.rules $out/lib/udev/rules.d/72-yuzu-input.rules
'';
passthru.updateScript = nix-update-script {
extraArgs = [ "--version-regex" "mainline-0-(.*)" ];
};

View File

@ -5,7 +5,8 @@
, appstream-glib
, desktop-file-utils
, gettext
, gtk3
, gtk4
, libadwaita
, meson
, ninja
, pkg-config
@ -14,18 +15,19 @@
, libwebp
, optipng
, pngquant
, oxipng
}:
python3.pkgs.buildPythonApplication rec {
pname = "curtail";
version = "1.3.1";
version = "1.8.0";
format = "other";
src = fetchFromGitHub {
owner = "Huluti";
repo = "Curtail";
rev = "refs/tags/${version}";
sha256 = "sha256-/xvkRXs1EVu+9RZM+TnyIGxFV2stUR9XHEmaJxsJ3V8=";
sha256 = "sha256-LLz4nZ9WFQMogQR2gCKn80gvHUG5hlpQpcNjpr4fs2s=";
};
nativeBuildInputs = [
@ -33,7 +35,8 @@ python3.pkgs.buildPythonApplication rec {
appstream-glib
desktop-file-utils
gettext
gtk3
gtk4
libadwaita
meson
ninja
pkg-config
@ -43,7 +46,8 @@ python3.pkgs.buildPythonApplication rec {
buildInputs = [
appstream-glib
gettext
gtk3
gtk4
libadwaita
];
propagatedBuildInputs = [
@ -59,7 +63,7 @@ python3.pkgs.buildPythonApplication rec {
preFixup = ''
makeWrapperArgs+=(
"''${gappsWrapperArgs[@]}"
"--prefix" "PATH" ":" "${lib.makeBinPath [ jpegoptim libwebp optipng pngquant ]}"
"--prefix" "PATH" ":" "${lib.makeBinPath [ jpegoptim libwebp optipng pngquant oxipng ]}"
)
'';

View File

@ -24,20 +24,20 @@
clangStdenv.mkDerivation rec {
pname = "gnome-decoder";
version = "0.3.3";
version = "0.4.1";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "World";
repo = "decoder";
rev = version;
hash = "sha256-eMyPN3UxptqavY9tEATW2AP+kpoWaLwUKCwhNQrarVc=";
hash = "sha256-ZEt4QaT2w7PgsnwBCYeDbhcYX0yd0boes/LoejQx0XU=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "${pname}-${version}";
hash = "sha256-3j1hoFffQzWBy4IKtmoMkLBJmNbntpyn0sjv1K0MmDo=";
hash = "sha256-acYOSPSUgm0Kg/bo2WF4sRWfCt03AZdTyNNt3Qv7Zjg=";
};
nativeBuildInputs = [

View File

@ -1,31 +1,46 @@
{ stdenv, lib, fetchpatch, fetchFromGitHub, makeWrapper, writeText, runtimeShell, jdk11, perl, gradle_6, which }:
{ stdenv
, lib
, fetchpatch
, fetchFromGitHub
, makeWrapper
, makeDesktopItem
, writeText
, runtimeShell
, jdk17
, perl
, gradle_7
, which
}:
let
pname = "freeplane";
version = "1.9.14";
version = "1.11.8";
src_sha256 = "UiXtGJs+hibB63BaDDLXgjt3INBs+NfMsKcX2Q/kxKw=";
deps_outputHash = "tHhRaMIQK8ERuzm+qB9tRe2XSesL0bN3rComB9/qWgg=";
emoji_outputHash = "w96or4lpKCRK8A5HaB4Eakr7oVSiQALJ9tCJvKZaM34=";
src_hash = "sha256-Qh2V265FvQpqGKmPsiswnC5yECwIcNwMI3/Ka9sBqXE=";
deps_outputHash = "sha256-2Zaw4FW12dThdr082dEB1EYkGwNiayz501wIPGXUfBw=";
jdk = jdk11;
gradle = gradle_6;
jdk = jdk17;
gradle = gradle_7;
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "release-${version}";
sha256 = src_sha256;
hash = src_hash;
};
deps = stdenv.mkDerivation {
name = "${pname}-deps";
inherit src;
pname = "${pname}-deps";
inherit src version;
nativeBuildInputs = [ jdk perl gradle ];
nativeBuildInputs = [
jdk
perl
gradle
];
buildPhase = ''
GRADLE_USER_HOME=$PWD gradle -Dorg.gradle.java.home=${jdk} --no-daemon jar
GRADLE_USER_HOME=$PWD gradle -Dorg.gradle.java.home=${jdk} --no-daemon build
'';
# Mavenize dependency paths
@ -34,7 +49,15 @@ let
find ./caches/modules-2 -type f -regex '.*\.\(jar\|pom\)' \
| perl -pe 's#(.*/([^/]+)/([^/]+)/([^/]+)/[0-9a-f]{30,40}/([^/\s]+))$# ($x = $2) =~ tr|\.|/|; "install -Dm444 $1 \$out/$x/$3/$4/$5" #e' \
| sh
# com/squareup/okio/okio/2.10.0/okio-jvm-2.10.0.jar expected to exist under name okio-2.10.0.jar
while IFS="" read -r -d "" path; do
dir=''${path%/*}; file=''${path##*/}; dest=''${file//-jvm-/-}
[[ -e $dir/$dest ]] && continue
ln -s "$dir/$file" "$dir/$dest"
done < <(find "$out" -type f -name 'okio-jvm-*.jar' -print0)
'';
# otherwise the package with a namespace starting with info/... gets moved to share/info/...
forceShare = [ "dummy" ];
outputHashAlgo = "sha256";
outputHashMode = "recursive";
@ -43,72 +66,78 @@ let
# Point to our local deps repo
gradleInit = writeText "init.gradle" ''
logger.lifecycle 'Replacing Maven repositories with ${deps}...'
gradle.projectsLoaded {
rootProject.allprojects {
buildscript {
repositories {
clear()
maven { url '${deps}' }
}
}
settingsEvaluated { settings ->
settings.pluginManagement {
repositories {
clear()
maven { url '${deps}' }
}
}
}
settingsEvaluated { settings ->
settings.pluginManagement {
gradle.projectsLoaded {
rootProject.allprojects {
repositories {
clear()
maven { url '${deps}' }
}
}
}
'';
emoji = stdenv.mkDerivation rec {
name = "${pname}-emoji";
inherit src;
nativeBuildInputs = [ jdk gradle ];
buildPhase = ''
GRADLE_USER_HOME=$PWD gradle -Dorg.gradle.java.home=${jdk} --no-daemon --offline --init-script ${gradleInit} :freeplane:downloadEmoji
'';
installPhase = ''
mkdir -p $out/emoji/txt $out/resources/images
cp freeplane/build/emoji/txt/emojilist.txt $out/emoji/txt
cp -r freeplane/build/emoji/resources/images/emoji/. $out/resources/images/emoji
'';
outputHashAlgo = "sha256";
outputHashMode = "recursive";
outputHash = emoji_outputHash;
};
in stdenv.mkDerivation rec {
inherit pname version src;
nativeBuildInputs = [ makeWrapper jdk gradle ];
nativeBuildInputs = [
makeWrapper
jdk
gradle
];
buildPhase = ''
mkdir -p -- ./freeplane/build/emoji/{txt,resources/images}
cp ${emoji}/emoji/txt/emojilist.txt ./freeplane/build/emoji/txt/emojilist.txt
cp -r ${emoji}/resources/images/emoji ./freeplane/build/emoji/resources/images/emoji
GRADLE_USER_HOME=$PWD gradle -Dorg.gradle.java.home=${jdk} --no-daemon --offline --init-script ${gradleInit} -x test -x :freeplane:downloadEmoji build
mkdir -p freeplane/build
GRADLE_USER_HOME=$PWD \
gradle -Dorg.gradle.java.home=${jdk} \
--no-daemon --offline --init-script ${gradleInit} \
-x test \
build
'';
desktopItems = [
(makeDesktopItem {
name = "freeplane";
desktopName = "freeplane";
genericName = "Mind-mapper";
exec = "freeplane";
icon = "freeplane";
comment = meta.description;
mimeTypes = [
"application/x-freemind"
"application/x-freeplane"
"text/x-troff-mm"
];
categories = [
"2DGraphics"
"Chart"
"Graphics"
"Office"
];
})
];
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/share
cp -a ./BIN/. $out/share/${pname}
makeWrapper $out/share/${pname}/${pname}.sh $out/bin/${pname} \
--set FREEPLANE_BASE_DIR $out/share/${pname} \
mkdir -p $out/bin $out/share
cp -a ./BIN/. $out/share/freeplane
makeWrapper $out/share/freeplane/freeplane.sh $out/bin/freeplane \
--set FREEPLANE_BASE_DIR $out/share/freeplane \
--set JAVA_HOME ${jdk} \
--prefix PATH : ${lib.makeBinPath [ jdk which ]}
--prefix PATH : ${lib.makeBinPath [ jdk which ]} \
--prefix _JAVA_AWT_WM_NONREPARENTING : 1 \
--prefix _JAVA_OPTIONS : "-Dawt.useSystemAAFontSettings=on"
runHook postInstall
'';

View File

@ -9,29 +9,29 @@
let
esbuild' = buildPackages.esbuild.override {
buildGoModule = args: buildPackages.buildGoModule (args // rec {
version = "0.18.20";
version = "0.19.11";
src = fetchFromGitHub {
owner = "evanw";
repo = "esbuild";
rev = "v${version}";
hash = "sha256-mED3h+mY+4H465m02ewFK/BgA1i/PQ+ksUNxBlgpUoI=";
hash = "sha256-NUwjzOpHA0Ijuh0E69KXx8YVS5GTnKmob9HepqugbIU=";
};
vendorHash = "sha256-+BfxCyg0KkDQpHt/wycy/8CTG6YBA/VJvJFhhzUnSiQ=";
});
};
in buildNpmPackage rec {
pname = "kaufkauflist";
version = "3.1.0";
version = "3.3.0";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "annaaurora";
repo = "kaufkauflist";
rev = "v${version}";
hash = "sha256-gIwJtfausORMfmZONhSOZ1DRW5CSH+cLDCNy3j+u6d0=";
hash = "sha256-kqDNA+BALVMrPZleyPxxCyls4VKBzY2MttzO51+Ixo8=";
};
npmDepsHash = "sha256-d1mvC72ugmKLNStoemUr8ISCUYjyo9EDWdWUCD1FMiM=";
npmDepsHash = "sha256-O2fcmC7Hj9JLStMukyt12aMgntjXT7Lv3vYJp3GqO24=";
ESBUILD_BINARY_PATH = lib.getExe esbuild';

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "limesctl";
version = "3.3.1";
version = "3.3.2";
src = fetchFromGitHub {
owner = "sapcc";
repo = pname;
rev = "v${version}";
hash = "sha256-osXwVZuMB9cMj0tEMBOQ8hrKWAmfXui4ELoi0dm9yB4=";
hash = "sha256-UYQe2C50tB1uc5ij8oh+RBaFg9UYWwPmJ77LCJ11Ml4=";
};
vendorHash = null;

View File

@ -2,6 +2,7 @@
, python3Packages, wrapGAppsHook, gobject-introspection
, gtk-layer-shell, pango, gdk-pixbuf, atk
# Extra packages called by various internal nwg-panel modules
, hyprland # hyprctl
, sway # swaylock, swaymsg
, systemd # systemctl
, wlr-randr # wlr-randr
@ -15,13 +16,13 @@
python3Packages.buildPythonApplication rec {
pname = "nwg-panel";
version = "0.9.16";
version = "0.9.20";
src = fetchFromGitHub {
owner = "nwg-piotr";
repo = "nwg-panel";
rev = "v${version}";
hash = "sha256-xHAn8NWSWSm95SIX1M8HIQwgNBq5/K5xsanbkAKfXSw=";
hash = "sha256-Cq/kj61OmnHLd8EQK6QF67ALv3lMXKPGYUvTIeh90zQ=";
};
# No tests
@ -40,15 +41,15 @@ python3Packages.buildPythonApplication rec {
postInstall = ''
mkdir -p $out/share/{applications,pixmaps}
cp $src/nwg-panel-config.desktop $out/share/applications/
cp $src/nwg-shell.svg $src/nwg-panel.svg $out/share/pixmaps/
cp $src/nwg-panel-config.desktop nwg-processes.desktop $out/share/applications/
cp $src/nwg-shell.svg $src/nwg-panel.svg nwg-processes.svg $out/share/pixmaps/
'';
preFixup = ''
makeWrapperArgs+=(
"''${gappsWrapperArgs[@]}"
--prefix XDG_DATA_DIRS : "$out/share"
--prefix PATH : "${lib.makeBinPath [ light nwg-menu pamixer pulseaudio sway systemd wlr-randr ]}"
--prefix PATH : "${lib.makeBinPath [ hyprland light nwg-menu pamixer pulseaudio sway systemd wlr-randr ]}"
)
'';

View File

@ -60,17 +60,15 @@ in
bedlevelvisualizer = buildPlugin rec {
pname = "bedlevelvisualizer";
version = "1.1.0";
version = "1.1.1";
src = fetchFromGitHub {
owner = "jneilliii";
repo = "OctoPrint-BedLevelVisualizer";
rev = version;
sha256 = "sha256-SKrhtTGyDuvbDmUCXSx83Y+C83ZzVHA78TwMYwE6tcc=";
sha256 = "sha256-6JcYvYgEmphp5zz4xZi4G0yTo4FCIR6Yh+MXYK7H7+w=";
};
propagatedBuildInputs = with super; [ numpy ];
meta = with lib; {
description = "Displays 3D mesh of bed topography report";
homepage = "https://github.com/jneilliii/OctoPrint-BedLevelVisualizer";

View File

@ -20,13 +20,13 @@
stdenv.mkDerivation rec {
pname = "otpclient";
version = "3.2.1";
version = "3.3.0";
src = fetchFromGitHub {
owner = "paolostivanin";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-R4vxggZ9bUSPar/QLRc172RGgPXuf9jUwK19kBKpT2w=";
hash = "sha256-ca0lGlpR9ynaGQPNLoe7/MegXcyRxLltF/65DJC3830=";
};
nativeBuildInputs = [

View File

@ -18,14 +18,14 @@
mkDerivation rec {
pname = "qcad";
version = "3.28.2.2";
version = "3.29.0.0";
src = fetchFromGitHub {
name = "qcad-${version}-src";
owner = "qcad";
repo = "qcad";
rev = "v${version}";
sha256 = "sha256-0iH+fuh7jurk7FmEdTig+Tfm7ts3b2Azqv6T5kUNpg4=";
sha256 = "sha256-Nx16TJrtxUUdeSobTYdgoDUzm1IcTGbaKnW/9YXozgo=";
};
patches = [

View File

@ -2,11 +2,11 @@
python3Packages.buildPythonApplication rec {
pname = "raiseorlaunch";
version = "2.3.3";
version = "2.3.5";
src = fetchPypi {
inherit pname version;
sha256 = "3d694015d020a888b42564d56559213b94981ca2b32b952a49b2de4d029d2e59";
sha256 = "sha256-L/hu0mYCAxHkp5me96a6HlEY6QsuJDESpTNhlzVRHWs=";
};
nativeBuildInputs = [ python3Packages.setuptools-scm ];

View File

@ -28,12 +28,12 @@
version = "2023-10-23";
};
ungoogled-patches = {
hash = "sha256-B1MNo8BdjMOmTvIr4uu3kg/MO1t+YLQz2S23L4Cye3E=";
rev = "120.0.6099.199-1";
hash = "sha256-qB1OrsfRCWfobKAAfcYJFmKc36ofF+VmjqPNbIPugJA=";
rev = "120.0.6099.216-1";
};
};
hash = "sha256-lT1CCwYj0hT4tCJb689mZwNecUsEwcfn2Ot8r9LBT+M=";
hash_deb_amd64 = "sha256-4BWLn0+gYNWG4DsolbY6WlTvXWl7tZIZrnqXlrGUGjQ=";
version = "120.0.6099.199";
hash = "sha256-yqk0bh68onWqML20Q8eDsTT9o+eKtta7kS9HL74do6Q=";
hash_deb_amd64 = "sha256-MxIyOXssQ1Ke5WZbBbB4FpDec+rn46m8+PbMdmxaQCA=";
version = "120.0.6099.216";
};
}

View File

@ -6,16 +6,16 @@
buildGo121Module rec {
pname = "k0sctl";
version = "0.16.0";
version = "0.17.3";
src = fetchFromGitHub {
owner = "k0sproject";
repo = pname;
rev = "v${version}";
hash = "sha256-DUDvsF4NCFimpW9isqEhodieiJXwjhwhfXR2t/ho3kE=";
hash = "sha256-KdD4Wy6PQJQWHnFntYAm/gstWv82AgKK4XvQVM1fnL4=";
};
vendorHash = "sha256-eJTVUSAcgE1AaOCEEc202sC0yIfMj30UoK/ObowJ9Zk=";
vendorHash = "sha256-0P1v7mZ+k7Th8/cwxRNlhDodzyagv0V9ZBXy1BUGk+k=";
ldflags = [
"-s"
@ -27,9 +27,6 @@ buildGo121Module rec {
nativeBuildInputs = [ installShellFiles ];
# https://github.com/k0sproject/k0sctl/issues/569
checkFlags = [ "-skip=^Test(Unmarshal|VersionDefaulting)/version_not_given$" ];
postInstall = ''
for shell in bash zsh fish; do
installShellCompletion --cmd ${pname} \

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "roxctl";
version = "4.3.1";
version = "4.3.2";
src = fetchFromGitHub {
owner = "stackrox";
repo = "stackrox";
rev = version;
sha256 = "sha256-Rr/ETsJJvch9qdqZnin6CiD7WWJXQAcc7TR+YCINk0Q=";
sha256 = "sha256-uVpWOUSBbq8r8UBPHHIkn2WVJ0KDX3J0o8cEhn1G9KM=";
};
vendorHash = "sha256-Jzv4ozR8RJiwkgVGGq6dlV/7rbBLq8hFe/Pm4SJZCkU=";

View File

@ -7,13 +7,13 @@
buildGoModule rec {
pname = "tf-summarize";
version = "0.3.6";
version = "0.3.7";
src = fetchFromGitHub {
owner = "dineshba";
repo = "tf-summarize";
rev = "v${version}";
hash = "sha256-8TRX7gAbBlCIOHbwRIVoke2WBSgwLx9121Fg5h0LPF0=";
hash = "sha256-IdtIcWnriCwghAWay+GzVf30difsDNHrHDNHDkkTxLg=";
};
vendorHash = "sha256-YdfZt8SHBJHk5VUC8Em97EzX79EV4hxvo0B05npBA2U=";

View File

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "yor";
version = "0.1.187";
version = "0.1.188";
src = fetchFromGitHub {
owner = "bridgecrewio";
repo = pname;
rev = version;
hash = "sha256-w82kJhMnupVv4eq3SUDFaWSvkVrxOSPsN+OXl8aIKog=";
hash = "sha256-8bQUZFV5euXki7jz3tZmhJ/vSFnJusYyejfw0s+N6rk=";
};
vendorHash = "sha256-ZeTjGmlu8LndD2DKNncPzlpECdvkOjfwaVvV6S3sL9E=";
vendorHash = "sha256-VYzMdYwWe2TTIV28kORX6pImSE04aFISDCjlQvqiIp8=";
doCheck = false;

View File

@ -2,7 +2,7 @@
callPackage ./generic.nix {} rec {
pname = "signal-desktop";
dir = "Signal";
version = "6.43.1";
version = "6.44.0";
url = "https://updates.signal.org/desktop/apt/pool/s/signal-desktop/signal-desktop_${version}_amd64.deb";
hash = "sha256-mDxZFs+rI2eHkkvkmflras1WqBa/HBVBDpdk9NKaC2E=";
hash = "sha256-04KhjExUx+X2/vxSlobVOk9A50XwTlXcdVuttnUmJEw=";
}

View File

@ -20,7 +20,7 @@ let
downloadPage = "https://teams.microsoft.com/downloads";
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = licenses.unfree;
maintainers = with maintainers; [ liff tricktron ];
maintainers = with maintainers; [ tricktron ];
platforms = [ "x86_64-darwin" "aarch64-darwin" ];
mainProgram = "teams";
};

View File

@ -2,18 +2,18 @@
buildGoModule rec {
pname = "wgcf";
version = "2.2.20";
version = "2.2.21";
src = fetchFromGitHub {
owner = "ViRb3";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-k4oOejJiVZk9s4niG/r0mSoI363uuQh3C9OWVweELWc=";
hash = "sha256-FzzPDTRmDCBS7EZOgj4ckytbtlRPqPdHpyn3nF0yHdc=";
};
subPackages = ".";
vendorHash = "sha256-U1VHbD2l5C5ws7Mt5a7PmtHQkZJ6hzDU1TyiEFqMYEM=";
vendorHash = "sha256-cGtm+rUgYppwwL/BizWikPUyFExHzLucL2o2g9PgGNw=";
meta = with lib; {
description = "Cross-platform, unofficial CLI for Cloudflare Warp";

View File

@ -11,6 +11,7 @@
, glib
, glib-networking
, gtk4
, gtksourceview5
, json-glib
, libadwaita
, libgee
@ -24,13 +25,13 @@
stdenv.mkDerivation rec {
pname = "planify";
version = "4.3.2";
version = "4.4";
src = fetchFromGitHub {
owner = "alainm23";
repo = "planify";
rev = version;
hash = "sha256-i+Up92Gl3FjgQ4GpcZruvYD//TPNWktSuWXGgDTwbWw=";
hash = "sha256-HX6ZMx2NUAQxEGLIk/wgUlQX0BFtee3+t/JdlMTIYBw=";
};
nativeBuildInputs = [
@ -47,6 +48,7 @@ stdenv.mkDerivation rec {
glib
glib-networking
gtk4
gtksourceview5
json-glib
libadwaita
libgee

View File

@ -19,14 +19,14 @@
let
pname = "qownnotes";
appname = "QOwnNotes";
version = "24.1.1";
version = "24.1.2";
in
stdenv.mkDerivation {
inherit pname appname version;
src = fetchurl {
url = "https://github.com/pbek/QOwnNotes/releases/download/v${version}/qownnotes-${version}.tar.xz";
hash = "sha256-yCsYIi1StZOYutDAWS04u3DccrPB+2oqaynnH4GBEPc=";
hash = "sha256-UlHLGO5Rictj0/eZKxyFKxa/2XasQOAixnejOc+dH0M=";
};
nativeBuildInputs = [

View File

@ -1,30 +1,36 @@
{ lib
, stdenv
, ant
, fetchFromGitHub
, jdk11_headless
, ant
, jdk
, jre
, makeWrapper
, canonicalize-jars-hook
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "trimmomatic";
version = "0.39";
src = fetchFromGitHub {
owner = "usadellab";
repo = "Trimmomatic";
rev = "v${version}";
rev = "v${finalAttrs.version}";
hash = "sha256-u+ubmacwPy/vsEi0YQCv0fTnVDesQvqeQDEwCbS8M6I=";
};
# Set source and target version to 11
# Remove jdk version requirement
postPatch = ''
substituteInPlace ./build.xml \
--replace 'source="1.5" target="1.5"' 'release="11"'
--replace 'source="1.5" target="1.5"' ""
'';
nativeBuildInputs = [ jdk11_headless ant makeWrapper ];
nativeBuildInputs = [
ant
jdk
makeWrapper
canonicalize-jars-hook
];
buildPhase = ''
runHook preBuild
@ -37,16 +43,17 @@ stdenv.mkDerivation rec {
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/share
cp dist/jar/trimmomatic-${version}.jar $out/share/
cp -r adapters $out/share/
install -Dm644 dist/jar/trimmomatic-*.jar -t $out/share/trimmomatic
cp -r adapters $out/share/trimmomatic
makeWrapper ${jre}/bin/java $out/bin/trimmomatic \
--add-flags "-cp $out/share/trimmomatic-${version}.jar org.usadellab.trimmomatic.Trimmomatic"
--add-flags "-jar $out/share/trimmomatic/trimmomatic-*.jar"
runHook postInstall
'';
meta = {
changelog = "https://github.com/usadellab/Trimmomatic/blob/main/versionHistory.txt";
description = "A flexible read trimming tool for Illumina NGS data";
longDescription = ''
Trimmomatic performs a variety of useful trimming tasks for illumina
@ -59,8 +66,9 @@ stdenv.mkDerivation rec {
license = lib.licenses.gpl3Only;
sourceProvenance = [
lib.sourceTypes.fromSource
lib.sourceTypes.binaryBytecode # source bundles dependencies as jars
lib.sourceTypes.binaryBytecode # source bundles dependencies as jars
];
mainProgram = "trimmomatic";
maintainers = [ lib.maintainers.kupac ];
};
}
})

View File

@ -16,11 +16,11 @@
stdenv.mkDerivation rec {
pname = "gtkwave";
version = "3.3.117";
version = "3.3.118";
src = fetchurl {
url = "mirror://sourceforge/gtkwave/${pname}-gtk3-${version}.tar.gz";
sha256 = "sha256-PPFTdYapEcuwYBr4+hjPbacIyKFKcfac48uRGOhXHbk=";
sha256 = "sha256-D0MwwCiiqz0vTUzur222kl2wEMS2/VLRECLQ5d6gSGo=";
};
nativeBuildInputs = [ pkg-config wrapGAppsHook ];

View File

@ -153,7 +153,7 @@ stdenv.mkDerivation rec {
|| cudaSupport
|| !(leveldbSupport -> (leveldb != null && snappy != null))
|| !(cudnnSupport -> (hasCudnn && cudaSupport))
|| !(ncclSupport -> cudaSupport)
|| !(ncclSupport -> (cudaSupport && !nccl.meta.unsupported))
|| !(pythonSupport -> (python != null && numpy != null))
;
license = licenses.bsd2;

View File

@ -1,4 +1,4 @@
{ lib, buildGoModule, fetchFromGitHub }:
{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
buildGoModule rec {
pname = "ghorg";
@ -18,6 +18,14 @@ buildGoModule rec {
ldflags = [ "-s" "-w" "-X main.version=${version}" ];
nativeBuildInputs = [ installShellFiles ];
postInstall = ''
installShellCompletion --cmd ghorg \
--bash <($out/bin/ghorg completion bash) \
--fish <($out/bin/ghorg completion fish) \
--zsh <($out/bin/ghorg completion zsh)
'';
meta = with lib; {
description = "Quickly clone an entire org/users repositories into one directory";
longDescription = ''

View File

@ -1,15 +1,15 @@
{
"version": "16.5.4",
"repo_hash": "sha256-N+5w42aIMnulItzx7ksK4Olkpr4AwN2ojcYs+xJfjeY=",
"yarn_hash": "03ryyk7dw7s8yjdx9wdrvllaydb0w5an06agkwf5npgr6x1bz3yv",
"version": "16.7.0",
"repo_hash": "sha256-l5TkjkVny2zQLUfbscG6adkmkC1KjxMAeFbSyUA1UbI=",
"yarn_hash": "1qxz2p969qg7kzyvhwxws5zwdw986gdq9gxllzi58c5c56jz49zf",
"owner": "gitlab-org",
"repo": "gitlab",
"rev": "v16.5.4-ee",
"rev": "v16.7.0-ee",
"passthru": {
"GITALY_SERVER_VERSION": "16.5.4",
"GITLAB_PAGES_VERSION": "16.5.4",
"GITLAB_SHELL_VERSION": "14.29.0",
"GITLAB_ELASTICSEARCH_INDEXER_VERSION": "4.4.0",
"GITLAB_WORKHORSE_VERSION": "16.5.4"
"GITALY_SERVER_VERSION": "16.7.0",
"GITLAB_PAGES_VERSION": "16.7.0",
"GITLAB_SHELL_VERSION": "14.32.0",
"GITLAB_ELASTICSEARCH_INDEXER_VERSION": "4.5.0",
"GITLAB_WORKHORSE_VERSION": "16.7.0"
}
}

View File

@ -101,7 +101,7 @@ let
buildPhase = ''
runHook preBuild
bundle exec rake gettext:po_to_json RAILS_ENV=production NODE_ENV=production
bundle exec rake gettext:compile RAILS_ENV=production NODE_ENV=production
bundle exec rake rake:assets:precompile RAILS_ENV=production NODE_ENV=production
bundle exec rake gitlab:assets:compile RAILS_ENV=production NODE_ENV=production
bundle exec rake gitlab:assets:fix_urls RAILS_ENV=production NODE_ENV=production

View File

@ -6,7 +6,7 @@
}:
let
version = "16.5.4";
version = "16.7.0";
package_version = "v${lib.versions.major version}";
gitaly_package = "gitlab.com/gitlab-org/gitaly/${package_version}";
@ -18,10 +18,10 @@ let
owner = "gitlab-org";
repo = "gitaly";
rev = "v${version}";
hash = "sha256-6XXXTeLw7+ScWUB81Pno8BZkkSFJ12SnZKu8430yQKo=";
hash = "sha256-YLynUHE1lb0dfsZsalz91jSSk1Y5r7kqT2AcE27xf04=";
};
vendorHash = "sha256-QLt/12P6OLpLqCINROLmzhoRpLGrB9WzME7FzhIcb0Q=";
vendorHash = "sha256-btWHZMy1aBSsUVs30IqrdBCO79XQvTMXxkxYURF2Nqs=";
ldflags = [ "-X ${gitaly_package}/internal/version.version=${version}" "-X ${gitaly_package}/internal/version.moduleVersion=${version}" ];

View File

@ -10,10 +10,10 @@ buildGoModule rec {
owner = "gitlab-org";
repo = "container-registry";
inherit rev;
sha256 = "sha256-egslb+8+RsDjpL5xQpdCU3QwFH59grRCkODQnAkZe/0=";
hash = "sha256-vQ5bP2S1McZxD+Mjw0y/+GB8ntv8nQynM1cIWtUK7pU=";
};
vendorHash = "sha256-IFXIr0xYJCKM5VUHQV+4S/+FEAhFEjbMaU+9JWIh8cA=";
vendorHash = "sha256-rDmmCwz/+FBzbREKIqwQulcOKwd4Y6/MITyNpB+pfwQ=";
patches = [
./Disable-inmemory-storage-driver-test.patch

View File

@ -2,17 +2,17 @@
buildGoModule rec {
pname = "gitlab-elasticsearch-indexer";
version = "4.4.0";
version = "4.5.0";
# nixpkgs-update: no auto update
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-elasticsearch-indexer";
rev = "v${version}";
sha256 = "sha256-Qywf5ACxXqY1iUZCsROTLmWeM8gFcqZvnClRo5DlnjY=";
sha256 = "sha256-6Y2ARnFjbz6nFhWGRhzgAY8s0aX24oLMY1016oRD9oo=";
};
vendorHash = "sha256-2dUlztXnr7OH/gQ0Q4jQpuO1MdkOy1O4BNGiY223DAA=";
vendorHash = "sha256-jpjfQl2z5yPnlGEYW6KKBfd4quchT+bU/RU6vwaB4gQ=";
buildInputs = [ icu ];
nativeBuildInputs = [ pkg-config ];

View File

@ -2,17 +2,17 @@
buildGoModule rec {
pname = "gitlab-pages";
version = "16.5.4";
version = "16.7.0";
# nixpkgs-update: no auto update
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-pages";
rev = "v${version}";
hash = "sha256-hMd+0WCY59orQa5IYh6Lf5ZMj564Dgo8mEgo7svv6Rs=";
hash = "sha256-8jODsK5+o1fEaTuFv6bXfZp4oA87JUQbTdYQn66DKJA=";
};
vendorHash = "sha256-YG+ERETxp0BPh/V4820pMXTXu9YcodRhzme6qZJBC9Q=";
vendorHash = "sha256-NMky8v0YmN2pSeKJ7G0+DWAZvUx2JlwFbqPHvciYroM=";
subPackages = [ "." ];
meta = with lib; {

View File

@ -2,21 +2,21 @@
buildGoModule rec {
pname = "gitlab-shell";
version = "14.29.0";
version = "14.32.0";
# nixpkgs-update: no auto update
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-shell";
rev = "v${version}";
sha256 = "sha256-MhvFLBH0CLiGNTEjHy7vDhLE3YsvbBL8XRNytPEa6uU=";
sha256 = "sha256-fZttdcIdPeiy2ncDyseR1BnR6GBoSRsFkn7Mxc+mTA8=";
};
buildInputs = [ ruby libkrb5 ];
patches = [ ./remove-hardcoded-locations.patch ];
vendorHash = "sha256-g1ZaRY0A7oREByNicPvnuxakYrNQNXg4Vy94iyNVdDY=";
vendorHash = "sha256-tdYBEV/dKnIJ+OWTF3/5bIbWVdE/ulMrMD/LMzj1QZE=";
postInstall = ''
cp -r "$NIX_BUILD_TOP/source"/bin/* $out/bin

View File

@ -5,7 +5,7 @@ in
buildGoModule rec {
pname = "gitlab-workhorse";
version = "16.5.4";
version = "16.7.0";
# nixpkgs-update: no auto update
src = fetchFromGitLab {
@ -17,7 +17,7 @@ buildGoModule rec {
sourceRoot = "${src.name}/workhorse";
vendorHash = "sha256-m8cDhI6DzFnSEZscZQfFm8l9MTJqTqxhBFJeTX1HWiE=";
vendorHash = "sha256-1oeToeqGXSj5CdL5dgWsnN/VpwALlus93P0Ed7G8TIw=";
buildInputs = [ git ];
ldflags = [ "-X main.Version=${version}" ];
doCheck = false;

View File

@ -28,9 +28,7 @@ gem 'rails', '~> 7.0.8' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'activerecord-gitlab', path: 'gems/activerecord-gitlab' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'vite_rails' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'bootsnap', '~> 1.16.0', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'bootsnap', '~> 1.17.0', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'openssl', '~> 3.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'ipaddr', '~> 1.2.5' # rubocop:todo Gemfile/MissingFeatureCategory
@ -42,12 +40,16 @@ group :monorepo do
gem 'gitlab-utils', path: 'gems/gitlab-utils' # rubocop:todo Gemfile/MissingFeatureCategory
end
gem 'gitlab-backup-cli', path: 'gems/gitlab-backup-cli', require: 'gitlab/backup/cli', feature_category: :backup_restore
gem 'gitlab-secret_detection', path: 'gems/gitlab-secret_detection', feature_category: :secret_detection
# Responders respond_to and respond_with
gem 'responders', '~> 3.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'sprockets', '~> 3.7.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'view_component', '~> 3.6.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'view_component', '~> 3.8.0' # rubocop:todo Gemfile/MissingFeatureCategory
# Supported DBs
gem 'pg', '~> 1.5.4' # rubocop:todo Gemfile/MissingFeatureCategory
@ -63,7 +65,7 @@ gem 'marginalia', '~> 1.11.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'declarative_policy', '~> 1.1.0' # rubocop:todo Gemfile/MissingFeatureCategory
# Authentication libraries
gem 'devise', '~> 4.8.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'devise', '~> 4.9.3', feature_category: :system_access
gem 'devise-pbkdf2-encryptable', '~> 0.0.0', path: 'vendor/gems/devise-pbkdf2-encryptable' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'bcrypt', '~> 3.1', '>= 3.1.14' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'doorkeeper', '~> 5.6', '>= 5.6.6' # rubocop:todo Gemfile/MissingFeatureCategory
@ -119,7 +121,7 @@ gem 'acme-client', '~> 2.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'browser', '~> 5.3.1' # rubocop:todo Gemfile/MissingFeatureCategory
# OS detection for usage ping
gem 'ohai', '~> 17.9' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'ohai', '~> 18.1' # rubocop:todo Gemfile/MissingFeatureCategory
# GPG
gem 'gpgme', '~> 2.0.23' # rubocop:todo Gemfile/MissingFeatureCategory
@ -142,7 +144,7 @@ gem 'rack-cors', '~> 2.0.1', require: 'rack/cors' # rubocop:todo Gemfile/Missing
gem 'graphql', '~> 2.0.27', feature_category: :api
gem 'graphql-docs', '~> 4.0.0', group: [:development, :test], feature_category: :api
gem 'graphiql-rails', '~> 1.8.0', feature_category: :api
gem 'apollo_upload_server', '~> 2.1.0', feature_category: :api
gem 'apollo_upload_server', '~> 2.1.5', feature_category: :api
gem 'graphlient', '~> 0.5.0', feature_category: :importers # Used by BulkImport feature (group::import)
# Generate Fake data
@ -177,8 +179,13 @@ gem 'fog-aliyun', '~> 0.4' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab-fog-azure-rm', '~> 1.8.0', require: 'fog/azurerm' # rubocop:todo Gemfile/MissingFeatureCategory
# for Google storage
gem 'google-cloud-storage', '~> 1.44.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'google-apis-core', '~> 0.10.0' # rubocop:todo Gemfile/MissingFeatureCategory
# Need this specific version of google-apis-storage_v1 so that fog-google will utilize the updated list_objects with
# match_glob support in google-apis-core 0.11.1. Because of this we also have to bump google-cloud-storage to 1.45.0.
gem 'google-apis-storage_v1', '~> 0.29' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'google-cloud-storage', '~> 1.45.0' # rubocop:todo Gemfile/MissingFeatureCategory
# We need >= 0.11.1 because that's when match_glob support is added to list_objects
gem 'google-apis-core', '~> 0.11.0', '>= 0.11.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'google-apis-compute_v1', '~> 0.57.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'google-apis-container_v1', '~> 0.43.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'google-apis-container_v1beta1', '~> 0.43.0' # rubocop:todo Gemfile/MissingFeatureCategory
@ -196,9 +203,9 @@ gem 'seed-fu', '~> 2.3.7' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'elasticsearch-model', '~> 7.2' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'elasticsearch-rails', '~> 7.2', require: 'elasticsearch/rails/instrumentation' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'elasticsearch-api', '7.13.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'aws-sdk-core', '~> 3.185.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'aws-sdk-core', '~> 3.190.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'aws-sdk-cloudformation', '~> 1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'aws-sdk-s3', '~> 1.136.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'aws-sdk-s3', '~> 1.141.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'faraday_middleware-aws-sigv4', '~>0.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'typhoeus', '~> 1.4.0' # Used with Elasticsearch to support http keep-alive connections # rubocop:todo Gemfile/MissingFeatureCategory
@ -208,7 +215,7 @@ gem 'deckar01-task_list', '2.3.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab-markup', '~> 1.9.0', require: 'github/markup' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'commonmarker', '~> 0.23.10' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'kramdown', '~> 2.3.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'RedCloth', '~> 4.3.2' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'RedCloth', '~> 4.3.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'org-ruby', '~> 0.9.12' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'creole', '~> 0.5.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'wikicloth', '0.8.1' # rubocop:todo Gemfile/MissingFeatureCategory
@ -216,16 +223,16 @@ gem 'asciidoctor', '~> 2.0.18' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'asciidoctor-include-ext', '~> 0.4.0', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'asciidoctor-plantuml', '~> 0.0.16' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'asciidoctor-kroki', '~> 0.8.0', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'rouge', '~> 4.1.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'rouge', '~> 4.2.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'truncato', '~> 0.7.12' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'nokogiri', '~> 1.15', '>= 1.15.4' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'nokogiri', '~> 1.15', '>= 1.15.5' # rubocop:todo Gemfile/MissingFeatureCategory
# Calendar rendering
gem 'icalendar' # rubocop:todo Gemfile/MissingFeatureCategory
# Diffs
gem 'diffy', '~> 3.4' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'diff_match_patch', '~> 0.1.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'diff_match_patch', '~> 0.1.0', path: 'vendor/gems/diff_match_patch', feature_category: :team_planning
# Application server
gem 'rack', '~> 2.2.8' # rubocop:todo Gemfile/MissingFeatureCategory
@ -241,12 +248,11 @@ end
gem 'state_machines-activerecord', '~> 0.8.0' # rubocop:todo Gemfile/MissingFeatureCategory
# CI domain tags
gem 'acts-as-taggable-on', '~> 9.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'acts-as-taggable-on', '~> 10.0' # rubocop:todo Gemfile/MissingFeatureCategory
# Background jobs
gem 'sidekiq', '~> 6.5.7' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'sidekiq-cron', '~> 1.8.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'redis-namespace', '~> 1.9.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'sidekiq', '~> 6.5.10' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'sidekiq-cron', '~> 1.12.0', feature_category: :shared
gem 'gitlab-sidekiq-fetcher', path: 'vendor/gems/sidekiq-reliable-fetch', require: 'sidekiq-reliable-fetch' # rubocop:todo Gemfile/MissingFeatureCategory
# Cron Parser
@ -262,11 +268,11 @@ gem 'rainbow', '~> 3.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'ruby-progressbar', '~> 1.10' # rubocop:todo Gemfile/MissingFeatureCategory
# Linear-time regex library for untrusted regular expressions
gem 're2', '2.1.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 're2', '2.5.0' # rubocop:todo Gemfile/MissingFeatureCategory
# Misc
gem 'semver_dialects', '~> 1.2.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'semver_dialects', '~> 1.5', feature_category: :static_application_security_testing
gem 'version_sorter', '~> 2.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'csv_builder', path: 'gems/csv_builder' # rubocop:todo Gemfile/MissingFeatureCategory
@ -278,23 +284,24 @@ gem 'device_detector' # rubocop:todo Gemfile/MissingFeatureCategory
# Redis
gem 'redis', '~> 4.8.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'redis-namespace', '~> 1.10.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'connection_pool', '~> 2.4' # rubocop:todo Gemfile/MissingFeatureCategory
# Redis session store
gem 'redis-actionpack', '~> 5.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
# Discord integration
gem 'discordrb-webhooks', '~> 3.4', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'discordrb-webhooks', '~> 3.4', require: false, feature_category: :integrations
# Jira integration
gem 'jira-ruby', '~> 2.1.4' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'atlassian-jwt', '~> 0.2.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'jira-ruby', '~> 2.1.4', feature_category: :integrations
gem 'atlassian-jwt', '~> 0.2.0', feature_category: :integrations
# Slack integration
gem 'slack-messenger', '~> 2.3.4' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'slack-messenger', '~> 2.3.4', feature_category: :integrations
# FogBugz integration
gem 'ruby-fogbugz', '~> 0.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'ruby-fogbugz', '~> 0.3.0', feature_category: :importers
# Kubernetes integration
gem 'kubeclient', '~> 4.11.0' # rubocop:todo Gemfile/MissingFeatureCategory
@ -308,7 +315,7 @@ gem 'sanitize', '~> 6.0.2' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'babosa', '~> 2.0' # rubocop:todo Gemfile/MissingFeatureCategory
# Sanitizes SVG input
gem 'loofah', '~> 2.21.4' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'loofah', '~> 2.22.0' # rubocop:todo Gemfile/MissingFeatureCategory
# Used to provide license templates
gem 'licensee', '~> 9.16' # rubocop:todo Gemfile/MissingFeatureCategory
@ -334,7 +341,7 @@ gem 'terser', '1.0.2' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'click_house-client', path: 'gems/click_house-client', require: 'click_house/client' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'addressable', '~> 2.8' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'tanuki_emoji', '~> 0.7' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'tanuki_emoji', '~> 0.9' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gon', '~> 6.4.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'request_store', '~> 1.5.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'base32', '~> 0.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
@ -345,10 +352,10 @@ gem 'gitlab-license', '~> 2.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'rack-attack', '~> 6.7.0' # rubocop:todo Gemfile/MissingFeatureCategory
# Sentry integration
gem 'sentry-raven', '~> 3.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'sentry-ruby', '~> 5.8.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'sentry-rails', '~> 5.8.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'sentry-sidekiq', '~> 5.8.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'sentry-raven', '~> 3.1', feature_category: :error_tracking
gem 'sentry-ruby', '~> 5.10.0', feature_category: :error_tracking
gem 'sentry-rails', '~> 5.10.0', feature_category: :error_tracking
gem 'sentry-sidekiq', '~> 5.10.0', feature_category: :error_tracking
# PostgreSQL query parsing
#
@ -363,10 +370,9 @@ gem 'gitlab-labkit', '~> 0.34.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'thrift', '>= 0.16.0' # rubocop:todo Gemfile/MissingFeatureCategory
# I18n
gem 'rails-i18n', '~> 7.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gettext_i18n_rails', '~> 1.11.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gettext_i18n_rails_js', '~> 1.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gettext', '~> 3.3', require: false, group: :development # rubocop:todo Gemfile/MissingFeatureCategory
gem 'rails-i18n', '~> 7.0', feature_category: :internationalization
gem 'gettext_i18n_rails', '~> 1.11.0', feature_category: :internationalization
gem 'gettext', '~> 3.3', require: false, group: [:development, :test], feature_category: :internationalization
gem 'batch-loader', '~> 2.0.1' # rubocop:todo Gemfile/MissingFeatureCategory
@ -381,17 +387,17 @@ gem 'snowplow-tracker', '~> 0.8.0' # rubocop:todo Gemfile/MissingFeatureCategory
# Metrics
gem 'webrick', '~> 1.8.1', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'prometheus-client-mmap', '~> 0.28', '>= 0.28.1', require: 'prometheus/client' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'prometheus-client-mmap', '~> 1.0', '>= 1.0.2', require: 'prometheus/client' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'warning', '~> 1.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
group :development do
gem 'lefthook', '~> 1.5.2', require: false, feature_category: :tooling
gem 'lefthook', '~> 1.5.5', require: false, feature_category: :tooling
gem 'rubocop', feature_category: :tooling
gem 'solargraph', '~> 0.47.2', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'letter_opener_web', '~> 2.0.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'lookbook', '~> 2.0', '>= 2.0.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'lookbook', '~> 2.2' # rubocop:todo Gemfile/MissingFeatureCategory
# Better errors handler
gem 'better_errors', '~> 2.10.1' # rubocop:todo Gemfile/MissingFeatureCategory
@ -399,11 +405,17 @@ group :development do
gem 'sprite-factory', '~> 1.7' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'listen', '~> 3.7' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'ruby-lsp', "~> 0.13.1", require: false, feature_category: :tooling
gem 'ruby-lsp-rails', "~> 0.2.8", feature_category: :tooling
gem 'ruby-lsp-rspec', "~> 0.1.8", require: false, feature_category: :tooling
end
group :development, :test do
gem 'deprecation_toolkit', '~> 1.5.1', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'bullet', '~> 7.1.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'bullet', '~> 7.1.2' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'parser', '~> 3.2', '>= 3.2.2.4' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'pry-byebug' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'pry-rails', '~> 0.3.9' # rubocop:todo Gemfile/MissingFeatureCategory
@ -411,9 +423,9 @@ group :development, :test do
gem 'awesome_print', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'database_cleaner', '~> 1.7.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'database_cleaner-active_record', '~> 2.1.0', feature_category: :database
gem 'factory_bot_rails', '~> 6.2.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'rspec-rails', '~> 6.0.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'rspec-rails', '~> 6.1.0', feature_category: :shared
# Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
gem 'minitest', '~> 5.11.0' # rubocop:todo Gemfile/MissingFeatureCategory
@ -421,9 +433,9 @@ group :development, :test do
gem 'spring', '~> 4.1.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'spring-commands-rspec', '~> 1.0.4' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab-styles', '~> 10.1.0', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab-styles', '~> 11.0.0', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'haml_lint', '~> 0.40.0', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'haml_lint', '~> 0.52', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'bundler-audit', '~> 0.9.1', require: false # rubocop:todo Gemfile/MissingFeatureCategory
# Benchmarking & profiling
@ -435,7 +447,7 @@ group :development, :test do
gem 'knapsack', '~> 1.21.1', feature_category: :tooling
gem 'crystalball', '~> 0.7.0', require: false, feature_category: :tooling
gem 'test_file_finder', '~> 0.1.3', feature_category: :tooling
gem 'test_file_finder', '~> 0.2.1', feature_category: :tooling
gem 'simple_po_parser', '~> 1.1.6', require: false # rubocop:todo Gemfile/MissingFeatureCategory
@ -446,10 +458,17 @@ group :development, :test do
gem 'sigdump', '~> 0.2.4', require: 'sigdump/setup' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'pact', '~> 1.63' # rubocop:todo Gemfile/MissingFeatureCategory
# For now we only use vite in development / test, and not for production builds
# See: https://gitlab.com/gitlab-org/frontend/rfcs/-/issues/106
gem 'vite_rails', '~> 3.0.17', feature_category: :shared
gem 'vite_ruby', '~> 3.5.0', feature_category: :shared
gem 'gitlab-housekeeper', path: 'gems/gitlab-housekeeper', feature_category: :tooling
end
group :development, :test, :danger do
gem 'gitlab-dangerfiles', '~> 4.3.2', require: false, feature_category: :tooling
gem 'gitlab-dangerfiles', '~> 4.6.0', require: false, feature_category: :tooling
end
group :development, :test, :coverage do
@ -467,7 +486,7 @@ end
# Gems required in various pipelines
group :development, :test, :monorepo do
gem 'gitlab-rspec', path: 'gems/gitlab-rspec' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'rspec_flaky', path: 'gems/rspec_flaky' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab-rspec_flaky', path: 'gems/gitlab-rspec_flaky', feature_category: :tooling
end
group :test do
@ -476,10 +495,11 @@ group :test do
gem 'rspec_profiling', '~> 0.0.6', feature_category: :tooling
gem 'rspec-benchmark', '~> 0.6.0', feature_category: :tooling
gem 'rspec-parameterized', '~> 1.0', require: false, feature_category: :tooling
gem 'os', '~> 1.1', feature_category: :tooling
gem 'capybara', '~> 3.39', '>= 3.39.2' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'capybara-screenshot', '~> 1.0.26' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'selenium-webdriver', '~> 4.14' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'selenium-webdriver', '~> 4.16' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'graphlyte', '~> 1.0.0' # rubocop:todo Gemfile/MissingFeatureCategory
@ -488,7 +508,7 @@ group :test do
gem 'webmock', '~> 3.19.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'rails-controller-testing' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'concurrent-ruby', '~> 1.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'test-prof', '~> 1.2.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'test-prof', '~> 1.3.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'rspec_junit_formatter' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'guard-rspec' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'axe-core-rspec' # rubocop:todo Gemfile/MissingFeatureCategory
@ -496,12 +516,12 @@ group :test do
# Moved in `test` because https://gitlab.com/gitlab-org/gitlab/-/issues/217527
gem 'derailed_benchmarks', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab_quality-test_tooling', '~> 1.3.0', require: false # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab_quality-test_tooling', '~> 1.9.0', require: false, feature_category: :tooling
end
gem 'octokit', '~> 6.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab-mail_room', '~> 0.0.23', require: 'mail_room' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab-mail_room', '~> 0.0.24', require: 'mail_room', feature_category: :shared
gem 'email_reply_trimmer', '~> 0.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'html2text' # rubocop:todo Gemfile/MissingFeatureCategory
@ -531,14 +551,14 @@ gem 'ssh_data', '~> 1.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'spamcheck', '~> 1.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
# Gitaly GRPC protocol definitions
gem 'gitaly', '~> 16.5.0.pre.rc1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitaly', '~> 16.7.0-rc1', feature_category: :gitaly
# KAS GRPC protocol definitions
gem 'kas-grpc', '~> 0.2.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'kas-grpc', '~> 0.3.0', feature_category: :deployment_management
gem 'grpc', '~> 1.58.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'google-protobuf', '~> 3.24', '>= 3.24.4' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'google-protobuf', '~> 3.25', '>= 3.25.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'toml-rb', '~> 2.2.0' # rubocop:todo Gemfile/MissingFeatureCategory
@ -547,7 +567,7 @@ gem 'flipper', '~> 0.26.2' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'flipper-active_record', '~> 0.26.2' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'flipper-active_support_cache_store', '~> 0.26.2' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'unleash', '~> 3.2.2' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab-experiment', '~> 0.8.0' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab-experiment', '~> 0.9.1', feature_category: :shared
# Structured logging
gem 'lograge', '~> 0.5' # rubocop:todo Gemfile/MissingFeatureCategory
@ -613,7 +633,7 @@ gem 'cvss-suite', '~> 3.0.1', require: 'cvss_suite' # rubocop:todo Gemfile/Missi
gem 'arr-pm', '~> 0.0.12' # rubocop:todo Gemfile/MissingFeatureCategory
# Remote Development
gem 'devfile', '~> 0.0.23.pre.alpha1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'devfile', '~> 0.0.24.pre.alpha1', feature_category: :remote_development
# Apple plist parsing
gem 'CFPropertyList', '~> 3.0.0' # rubocop:todo Gemfile/MissingFeatureCategory
@ -630,3 +650,5 @@ gem 'net-protocol', '~> 0.1.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'net-http', '= 0.1.1' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'duo_api', '~> 1.3' # rubocop:todo Gemfile/MissingFeatureCategory
gem 'gitlab-sdk', feature_category: :application_instrumentation

View File

@ -23,21 +23,43 @@ PATH
error_tracking_open_api (1.0.0)
typhoeus (~> 1.0, >= 1.0.1)
PATH
remote: gems/gitlab-backup-cli
specs:
gitlab-backup-cli (0.0.1)
thor (~> 1.3)
PATH
remote: gems/gitlab-housekeeper
specs:
gitlab-housekeeper (0.1.0)
httparty
rubocop
PATH
remote: gems/gitlab-http
specs:
gitlab-http (0.1.0)
activesupport (~> 7)
concurrent-ruby (~> 1.2)
httparty (~> 0.21.0)
ipaddress (~> 0.8.3)
nokogiri (~> 1.15.4)
railties (~> 7)
PATH
remote: gems/gitlab-rspec_flaky
specs:
gitlab-rspec_flaky (0.1.0)
activesupport (>= 6.1, < 8)
rspec (~> 3.0)
PATH
remote: gems/gitlab-rspec
specs:
gitlab-rspec (0.1.0)
activesupport (>= 6.1, < 7.1)
activerecord (>= 6.1, < 8)
activesupport (>= 6.1, < 8)
rspec (~> 3.0)
PATH
@ -53,6 +75,13 @@ PATH
diffy
pg_query
PATH
remote: gems/gitlab-secret_detection
specs:
gitlab-secret_detection (0.1.0)
re2 (~> 2.4)
toml-rb (~> 2.2)
PATH
remote: gems/gitlab-utils
specs:
@ -70,13 +99,6 @@ PATH
diffy (~> 3.4)
oj (~> 3.13.16)
PATH
remote: gems/rspec_flaky
specs:
rspec_flaky (0.1.0)
activesupport (>= 6.1, < 8)
rspec (~> 3.0)
PATH
remote: vendor/gems/attr_encrypted
specs:
@ -103,7 +125,12 @@ PATH
specs:
devise-pbkdf2-encryptable (0.0.0)
devise (~> 4.0)
devise-two-factor (~> 4.0)
devise-two-factor (~> 4.1.1)
PATH
remote: vendor/gems/diff_match_patch
specs:
diff_match_patch (0.1.0)
PATH
remote: vendor/gems/mail-smtp_pool
@ -152,7 +179,7 @@ PATH
PATH
remote: vendor/gems/sidekiq-reliable-fetch
specs:
gitlab-sidekiq-fetcher (0.9.0)
gitlab-sidekiq-fetcher (0.10.0)
json (>= 2.5)
sidekiq (~> 6.1)
@ -161,7 +188,7 @@ GEM
specs:
CFPropertyList (3.0.5)
rexml
RedCloth (4.3.2)
RedCloth (4.3.3)
acme-client (2.0.11)
faraday (>= 1.0, < 3.0.0)
faraday-retry (~> 1.0)
@ -233,8 +260,8 @@ GEM
i18n (>= 1.6, < 2)
minitest (>= 5.1)
tzinfo (~> 2.0)
acts-as-taggable-on (9.0.1)
activerecord (>= 6.0, < 7.1)
acts-as-taggable-on (10.0.0)
activerecord (>= 6.1, < 7.2)
addressable (2.8.1)
public_suffix (>= 2.0.2, < 6.0)
aes_key_wrap (1.1.0)
@ -242,9 +269,12 @@ GEM
aliyun-sdk (0.8.0)
nokogiri (~> 1.6)
rest-client (~> 2.0)
amatch (0.4.1)
mize
tins (~> 1.0)
android_key_attestation (0.3.0)
apollo_upload_server (2.1.0)
actionpack (>= 4.2)
apollo_upload_server (2.1.5)
actionpack (>= 6.1.6)
graphql (>= 1.8)
app_store_connect (0.29.0)
activesupport (>= 6.0.0)
@ -265,24 +295,24 @@ GEM
execjs (> 0)
awesome_print (1.9.2)
awrence (1.2.1)
aws-eventstream (1.2.0)
aws-eventstream (1.3.0)
aws-partitions (1.761.0)
aws-sdk-cloudformation (1.41.0)
aws-sdk-core (~> 3, >= 3.99.0)
aws-sigv4 (~> 1.1)
aws-sdk-core (3.185.1)
aws-eventstream (~> 1, >= 1.0.2)
aws-sdk-core (3.190.0)
aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.651.0)
aws-sigv4 (~> 1.5)
aws-sigv4 (~> 1.8)
jmespath (~> 1, >= 1.6.1)
aws-sdk-kms (1.64.0)
aws-sdk-core (~> 3, >= 3.165.0)
aws-sigv4 (~> 1.1)
aws-sdk-s3 (1.136.0)
aws-sdk-core (~> 3, >= 3.181.0)
aws-sdk-s3 (1.141.0)
aws-sdk-core (~> 3, >= 3.189.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.6)
aws-sigv4 (1.6.0)
aws-sigv4 (~> 1.8)
aws-sigv4 (1.8.0)
aws-eventstream (~> 1, >= 1.0.2)
axe-core-api (4.6.0)
dumb_delegator
@ -322,11 +352,11 @@ GEM
bindata (2.4.11)
binding_of_caller (1.0.0)
debug_inspector (>= 0.0.1)
bootsnap (1.16.0)
bootsnap (1.17.0)
msgpack (~> 1.2)
browser (5.3.1)
builder (3.2.4)
bullet (7.1.1)
bullet (7.1.2)
activesupport (>= 3.0.0)
uniform_notifier (~> 1.11)
bundler-audit (0.9.1)
@ -354,14 +384,15 @@ GEM
character_set (1.4.1)
sorted_set (~> 1.0)
charlock_holmes (0.7.7)
chef-config (16.10.17)
chef-config (18.3.0)
addressable
chef-utils (= 16.10.17)
chef-utils (= 18.3.0)
fuzzyurl
mixlib-config (>= 2.2.12, < 4.0)
mixlib-shellout (>= 2.0, < 4.0)
tomlrb (~> 1.2)
chef-utils (16.10.17)
chef-utils (18.3.0)
concurrent-ruby
chunky_png (1.4.0)
circuitbox (2.0.0)
citrus (3.0.2)
@ -411,9 +442,13 @@ GEM
danger
gitlab (~> 4.2, >= 4.2.0)
dartsass (1.49.8)
database_cleaner (1.7.0)
database_cleaner-active_record (2.1.0)
activerecord (>= 5.a)
database_cleaner-core (~> 2.0.0)
database_cleaner-core (2.0.1)
date (3.3.3)
dead_end (3.1.1)
deb_version (1.0.2)
debug_inspector (1.1.0)
deckar01-task_list (2.3.3)
html-pipeline
@ -435,9 +470,9 @@ GEM
thor (>= 0.19, < 2)
descendants_tracker (0.0.4)
thread_safe (~> 0.3, >= 0.3.1)
devfile (0.0.23.pre.alpha1)
devfile (0.0.24.pre.alpha1)
device_detector (1.0.0)
devise (4.8.1)
devise (4.9.3)
bcrypt (~> 3.0)
orm_adapter (~> 0.1)
railties (>= 4.1.0)
@ -450,9 +485,8 @@ GEM
railties (~> 7.0)
rotp (~> 6.0)
diff-lcs (1.5.0)
diff_match_patch (0.1.0)
diffy (3.4.2)
digest-crc (0.6.4)
digest-crc (0.6.5)
rake (>= 12.0.0, < 14.0.0)
discordrb-webhooks (3.4.2)
rest-client (>= 2.0.0)
@ -609,6 +643,7 @@ GEM
fog-core
nokogiri (>= 1.5.11, < 2.0.0)
formatador (0.2.5)
forwardable (1.3.3)
fugit (1.8.1)
et-orbi (~> 1, >= 1.2.7)
raabro (~> 1.4)
@ -627,31 +662,29 @@ GEM
gemoji (3.0.1)
get_process_mem (0.2.7)
ffi (~> 1.0)
gettext (3.3.6)
gettext (3.4.9)
erubi
locale (>= 2.0.5)
prime
racc
text (>= 1.3.0)
gettext_i18n_rails (1.11.0)
fast_gettext (>= 0.9.0)
gettext_i18n_rails_js (1.3.0)
gettext (>= 3.0.2)
gettext_i18n_rails (>= 0.7.1)
po_to_json (>= 1.0.0)
rails (>= 3.2.0)
git (1.18.0)
addressable (~> 2.8)
rchardet (~> 1.8)
gitaly (16.5.0.pre.rc1)
gitaly (16.7.0.pre.rc1)
grpc (~> 1.0)
gitlab (4.19.0)
httparty (~> 0.20)
terminal-table (>= 1.5.1)
gitlab-chronic (0.10.5)
numerizer (~> 0.2)
gitlab-dangerfiles (4.3.2)
gitlab-dangerfiles (4.6.0)
danger (>= 9.3.0)
danger-gitlab (>= 8.0.0)
rake (~> 13.0)
gitlab-experiment (0.8.0)
gitlab-experiment (0.9.1)
activesupport (>= 3.0)
request_store (>= 1.0)
gitlab-fog-azure-rm (1.8.0)
@ -669,14 +702,20 @@ GEM
pg_query (~> 4.2.3)
redis (> 3.0.0, < 6.0.0)
gitlab-license (2.3.0)
gitlab-mail_room (0.0.23)
gitlab-mail_room (0.0.24)
jwt (>= 2.0)
net-imap (>= 0.2.1)
oauth2 (>= 1.4.4, < 3)
redis (>= 4, < 6)
redis-namespace (>= 1.8.2)
gitlab-markup (1.9.0)
gitlab-net-dns (0.9.2)
gitlab-styles (10.1.0)
rubocop (~> 1.50.2)
gitlab-sdk (0.2.3)
activesupport (>= 5.2.0)
rake (~> 13.0)
snowplow-tracker (~> 0.8.0)
gitlab-styles (11.0.0)
rubocop (~> 1.57.1)
rubocop-graphql (~> 0.18)
rubocop-performance (~> 1.15)
rubocop-rails (~> 2.17)
@ -688,8 +727,9 @@ GEM
omniauth (>= 1.3, < 3)
pyu-ruby-sasl (>= 0.0.3.3, < 0.1)
rubyntlm (~> 0.5)
gitlab_quality-test_tooling (1.3.0)
gitlab_quality-test_tooling (1.9.0)
activesupport (>= 6.1, < 7.2)
amatch (~> 0.4.1)
gitlab (~> 4.19)
http (~> 5.0)
nokogiri (~> 1.10)
@ -716,7 +756,7 @@ GEM
google-apis-core (>= 0.9.1, < 2.a)
google-apis-container_v1beta1 (0.43.0)
google-apis-core (>= 0.9.1, < 2.a)
google-apis-core (0.10.0)
google-apis-core (0.11.2)
addressable (~> 2.5, >= 2.5.1)
googleauth (>= 0.16.2, < 2.a)
httpclient (>= 2.8.1, < 3.a)
@ -739,8 +779,8 @@ GEM
google-apis-core (>= 0.9.1, < 2.a)
google-apis-sqladmin_v1beta4 (0.41.0)
google-apis-core (>= 0.9.1, < 2.a)
google-apis-storage_v1 (0.19.0)
google-apis-core (>= 0.9.0, < 2.a)
google-apis-storage_v1 (0.29.0)
google-apis-core (>= 0.11.0, < 2.a)
google-cloud-core (1.6.0)
google-cloud-env (~> 1.0)
google-cloud-errors (~> 1.0)
@ -750,15 +790,15 @@ GEM
google-cloud-profiler-v2 (0.4.0)
gapic-common (>= 0.18.0, < 2.a)
google-cloud-errors (~> 1.0)
google-cloud-storage (1.44.0)
google-cloud-storage (1.45.0)
addressable (~> 2.8)
digest-crc (~> 0.4)
google-apis-iamcredentials_v1 (~> 0.1)
google-apis-storage_v1 (~> 0.19.0)
google-apis-storage_v1 (~> 0.29.0)
google-cloud-core (~> 1.6)
googleauth (>= 0.16.2, < 2.a)
mini_mime (~> 1.0)
google-protobuf (3.24.4)
google-protobuf (3.25.1)
googleapis-common-protos (1.4.0)
google-protobuf (~> 3.14)
googleapis-common-protos-types (~> 1.2)
@ -839,11 +879,11 @@ GEM
haml (5.2.2)
temple (>= 0.8.0)
tilt
haml_lint (0.40.1)
haml (>= 4.0, < 5.3)
haml_lint (0.52.0)
haml (>= 4.0)
parallel (~> 1.10)
rainbow
rubocop (>= 0.50.0)
rubocop (>= 1.0)
sysexits (~> 1.1)
hamlit (2.15.0)
temple (>= 0.8.2)
@ -934,7 +974,7 @@ GEM
activerecord
kaminari-core (= 1.2.2)
kaminari-core (1.2.2)
kas-grpc (0.2.0)
kas-grpc (0.3.0)
grpc (~> 1.0)
knapsack (1.21.1)
rake
@ -947,9 +987,10 @@ GEM
jsonpath (~> 1.0)
recursive-open-struct (~> 1.1, >= 1.1.1)
rest-client (~> 2.0)
language_server-protocol (3.17.0.3)
launchy (2.5.0)
addressable (~> 2.7)
lefthook (1.5.2)
lefthook (1.5.5)
letter_opener (1.7.0)
launchy (~> 2.2)
letter_opener_web (2.0.0)
@ -957,7 +998,7 @@ GEM
letter_opener (~> 1.7)
railties (>= 5.2)
rexml
libyajl2 (1.2.0)
libyajl2 (2.1.0)
license_finder (7.0.1)
bundler
rubyzip (>= 1, < 3)
@ -984,10 +1025,10 @@ GEM
activesupport (>= 4)
railties (>= 4)
request_store (~> 1.0)
loofah (2.21.4)
loofah (2.22.0)
crass (~> 1.0.2)
nokogiri (>= 1.12.0)
lookbook (2.0.1)
lookbook (2.2.0)
activemodel
css_parser
htmlbeautifier (~> 1.3)
@ -1020,14 +1061,16 @@ GEM
mini_histogram (0.3.1)
mini_magick (4.10.1)
mini_mime (1.1.2)
mini_portile2 (2.8.4)
mini_portile2 (2.8.5)
minitest (5.11.3)
mixlib-cli (2.1.8)
mixlib-config (3.0.9)
mixlib-config (3.0.27)
tomlrb
mixlib-log (3.0.9)
mixlib-shellout (3.2.5)
mixlib-shellout (3.2.7)
chef-utils
mize (0.4.1)
protocol (~> 2.0)
msgpack (1.5.4)
multi_json (1.14.1)
multi_xml (0.6.0)
@ -1055,15 +1098,15 @@ GEM
net-protocol
net-protocol (0.1.3)
timeout
net-scp (3.0.0)
net-ssh (>= 2.6.5, < 7.0.0)
net-scp (4.0.0)
net-ssh (>= 2.6.5, < 8.0.0)
net-smtp (0.3.3)
net-protocol
net-ssh (6.0.0)
net-ssh (7.2.0)
netrc (0.11.0)
nio4r (2.5.8)
no_proxy_fix (0.1.2)
nokogiri (1.15.4)
nokogiri (1.15.5)
mini_portile2 (~> 2.8.2)
racc (~> 1.4)
notiffany (0.1.3)
@ -1081,9 +1124,9 @@ GEM
octokit (6.1.1)
faraday (>= 1, < 3)
sawyer (~> 0.9)
ohai (17.9.0)
chef-config (>= 14.12, < 18)
chef-utils (>= 16.0, < 18)
ohai (18.1.3)
chef-config (>= 14.12, < 19)
chef-utils (>= 16.0, < 19)
ffi (~> 1.9)
ffi-yajl (~> 2.2)
ipaddress
@ -1198,10 +1241,8 @@ GEM
pg (1.5.4)
pg_query (4.2.3)
google-protobuf (>= 3.22.3)
plist (3.6.0)
plist (3.7.0)
png_quantizator (0.2.1)
po_to_json (1.0.1)
json (>= 1.6.0)
premailer (1.16.0)
addressable
css_parser (>= 1.6.0)
@ -1209,12 +1250,18 @@ GEM
premailer-rails (1.10.3)
actionmailer (>= 3)
premailer (~> 1.7, >= 1.7.9)
prime (0.1.2)
forwardable
singleton
prism (0.18.0)
proc_to_ast (0.1.0)
coderay
parser
unparser
prometheus-client-mmap (0.28.1)
prometheus-client-mmap (1.0.2)
rb_sys (~> 0.9)
protocol (2.0.0)
ruby_parser (~> 3.0)
pry (0.14.2)
coderay (~> 1.1)
method_source (~> 1.0)
@ -1291,15 +1338,15 @@ GEM
rb-fsevent (0.11.2)
rb-inotify (0.10.1)
ffi (~> 1.0)
rb_sys (0.9.78)
rb_sys (0.9.83)
rbtrace (0.4.14)
ffi (>= 1.0.6)
msgpack (>= 0.4.3)
optimist (>= 3.0.0)
rbtree (0.4.6)
rchardet (1.8.0)
re2 (2.1.3)
mini_portile2 (~> 2.8.4)
re2 (2.5.0)
mini_portile2 (~> 2.8.5)
recaptcha (5.12.3)
json
recursive-open-struct (1.1.3)
@ -1309,7 +1356,7 @@ GEM
actionpack (>= 5, < 8)
redis-rack (>= 2.1.0, < 3)
redis-store (>= 1.1.0, < 2)
redis-namespace (1.9.0)
redis-namespace (1.10.0)
redis (>= 4)
redis-rack (2.1.4)
rack (>= 2.0.8, < 3)
@ -1338,7 +1385,7 @@ GEM
rexml (3.2.6)
rinku (2.0.0)
rotp (6.3.0)
rouge (4.1.3)
rouge (4.2.0)
rqrcode (2.2.0)
chunky_png (~> 1.0)
rqrcode_core (~> 1.0)
@ -1371,7 +1418,7 @@ GEM
rspec-parameterized-table_syntax (1.0.0)
binding_of_caller
rspec-parameterized-core (< 2)
rspec-rails (6.0.3)
rspec-rails (6.1.0)
actionpack (>= 6.1)
activesupport (>= 6.1)
railties (>= 6.1)
@ -1389,38 +1436,51 @@ GEM
pg
rails
sqlite3
rubocop (1.50.2)
rubocop (1.57.2)
json (~> 2.3)
language_server-protocol (>= 3.17.0)
parallel (~> 1.10)
parser (>= 3.2.0.0)
parser (>= 3.2.2.4)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml (>= 3.2.5, < 4.0)
rubocop-ast (>= 1.28.0, < 2.0)
rubocop-ast (>= 1.28.1, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.29.0)
parser (>= 3.2.1.0)
rubocop-capybara (2.18.0)
rubocop-capybara (2.19.0)
rubocop (~> 1.41)
rubocop-factory_bot (2.23.1)
rubocop-factory_bot (2.24.0)
rubocop (~> 1.33)
rubocop-graphql (0.19.0)
rubocop (>= 0.87, < 2)
rubocop-performance (1.18.0)
rubocop-performance (1.19.1)
rubocop (>= 1.7.0, < 2.0)
rubocop-ast (>= 0.4.0)
rubocop-rails (2.20.2)
rubocop-rails (2.22.1)
activesupport (>= 4.2.0)
rack (>= 1.1)
rubocop (>= 1.33.0, < 2.0)
rubocop-rspec (2.22.0)
rubocop (~> 1.33)
rubocop-rspec (2.25.0)
rubocop (~> 1.40)
rubocop-capybara (~> 2.17)
rubocop-factory_bot (~> 2.22)
ruby-fogbugz (0.3.0)
crack (~> 0.4)
multipart-post (~> 2.0)
ruby-lsp (0.13.1)
language_server-protocol (~> 3.17.0)
prism (>= 0.18.0, < 0.19)
sorbet-runtime (>= 0.5.5685)
ruby-lsp-rails (0.2.8)
actionpack (>= 6.0)
activerecord (>= 6.0)
railties (>= 6.0)
ruby-lsp (>= 0.13.0, < 0.14.0)
sorbet-runtime (>= 0.5.9897)
ruby-lsp-rspec (0.1.8)
ruby-lsp (~> 0.13.0)
ruby-magic (0.6.0)
mini_portile2 (~> 2.8)
ruby-openai (3.7.0)
@ -1431,6 +1491,8 @@ GEM
rexml
ruby-statistics (3.0.0)
ruby2_keywords (0.0.5)
ruby_parser (3.20.3)
sexp_processor (~> 4.16)
rubyntlm (0.6.3)
rubypants (0.2.0)
rubyzip (2.3.2)
@ -1456,35 +1518,38 @@ GEM
seed-fu (2.3.7)
activerecord (>= 3.1)
activesupport (>= 3.1)
selenium-webdriver (4.14.0)
selenium-webdriver (4.16.0)
rexml (~> 3.2, >= 3.2.5)
rubyzip (>= 1.2.2, < 3.0)
websocket (~> 1.0)
semver_dialects (1.2.1)
semver_dialects (1.5.0)
deb_version (~> 1.0.1)
pastel (~> 0.8.0)
thor (~> 1.2.0)
thor (~> 1.3)
tty-command (~> 0.10.1)
sentry-rails (5.8.0)
sentry-rails (5.10.0)
railties (>= 5.0)
sentry-ruby (~> 5.8.0)
sentry-ruby (~> 5.10.0)
sentry-raven (3.1.2)
faraday (>= 1.0)
sentry-ruby (5.8.0)
sentry-ruby (5.10.0)
concurrent-ruby (~> 1.0, >= 1.0.2)
sentry-sidekiq (5.8.0)
sentry-ruby (~> 5.8.0)
sentry-sidekiq (5.10.0)
sentry-ruby (~> 5.10.0)
sidekiq (>= 3.0)
set (1.0.2)
sexp_processor (4.17.0)
shellany (0.0.1)
shoulda-matchers (5.1.0)
activesupport (>= 5.2.0)
sidekiq (6.5.7)
connection_pool (>= 2.2.5)
sidekiq (6.5.12)
connection_pool (>= 2.2.5, < 3)
rack (~> 2.0)
redis (>= 4.5.0, < 5)
sidekiq-cron (1.8.0)
fugit (~> 1)
sidekiq (>= 4.2.1)
sidekiq-cron (1.12.0)
fugit (~> 1.8)
globalid (>= 1.0.1)
sidekiq (>= 6)
sigdump (0.2.4)
signet (0.17.0)
addressable (~> 2.8)
@ -1502,6 +1567,7 @@ GEM
simplecov-html (0.12.3)
simplecov-lcov (0.8.0)
simplecov_json_formatter (0.1.4)
singleton (0.1.1)
sixarm_ruby_unaccent (1.2.0)
slack-messenger (2.3.4)
snaky_hash (2.0.0)
@ -1523,6 +1589,7 @@ GEM
thor (~> 1.0)
tilt (~> 2.0)
yard (~> 0.9, >= 0.9.24)
sorbet-runtime (0.5.11144)
sorted_set (1.0.3)
rbtree
set (~> 1.0)
@ -1565,7 +1632,7 @@ GEM
ffi (~> 1.1)
sysexits (1.2.0)
table_print (1.5.7)
tanuki_emoji (0.7.0)
tanuki_emoji (0.9.0)
telesign (2.2.4)
net-http-persistent (>= 3.0.0, < 5.0)
telesignenterprise (2.2.2)
@ -1577,11 +1644,11 @@ GEM
unicode-display_width (>= 1.1.1, < 3)
terser (1.0.2)
execjs (>= 0.3.0, < 3)
test-prof (1.2.3)
test_file_finder (0.1.4)
faraday (~> 1.0)
test-prof (1.3.1)
test_file_finder (0.2.1)
faraday (>= 1.0, < 3.0, != 2.0.0)
text (1.3.1)
thor (1.2.2)
thor (1.3.0)
thread_safe (0.3.6)
thrift (0.16.0)
tilt (2.0.11)
@ -1597,13 +1664,13 @@ GEM
openssl (> 2.0)
openssl-signature_algorithm (~> 1.0)
trailblazer-option (0.1.2)
train-core (3.4.9)
train-core (3.10.8)
addressable (~> 2.5)
ffi (!= 1.13.0)
json (>= 1.8, < 3.0)
mixlib-shellout (>= 2.0, < 4.0)
net-scp (>= 1.2, < 4.0)
net-ssh (>= 2.9, < 7.0)
net-scp (>= 1.2, < 5.0)
net-ssh (>= 2.9, < 8.0)
truncato (0.7.12)
htmlentities (~> 4.3.1)
nokogiri (>= 1.7.0, <= 2.0)
@ -1662,7 +1729,7 @@ GEM
activesupport (>= 3.0)
version_gem (1.1.0)
version_sorter (2.3.0)
view_component (3.6.0)
view_component (3.8.0)
activesupport (>= 5.2.0, < 8.0)
concurrent-ruby (~> 1.0)
method_source (~> 1.0)
@ -1670,10 +1737,10 @@ GEM
axiom-types (~> 0.1)
coercible (~> 1.0)
descendants_tracker (~> 0.0, >= 0.0.3)
vite_rails (3.0.15)
vite_rails (3.0.17)
railties (>= 5.1, < 8)
vite_ruby (~> 3.0, >= 3.2.2)
vite_ruby (3.3.4)
vite_ruby (3.5.0)
dry-cli (>= 0.7, < 2)
rack-proxy (~> 0.6, >= 0.6.1)
zeitwerk (~> 2.2)
@ -1708,7 +1775,7 @@ GEM
rinku
wisper (2.0.1)
with_env (1.1.0)
wmi-lite (1.0.5)
wmi-lite (1.0.7)
xml-simple (1.1.9)
rexml
xpath (3.2.0)
@ -1722,14 +1789,14 @@ PLATFORMS
DEPENDENCIES
CFPropertyList (~> 3.0.0)
RedCloth (~> 4.3.2)
RedCloth (~> 4.3.3)
acme-client (~> 2.0)
activerecord-explain-analyze (~> 0.1)
activerecord-gitlab!
acts-as-taggable-on (~> 9.0)
acts-as-taggable-on (~> 10.0)
addressable (~> 2.8)
akismet (~> 3.0)
apollo_upload_server (~> 2.1.0)
apollo_upload_server (~> 2.1.5)
app_store_connect
arr-pm (~> 0.0.12)
asciidoctor (~> 2.0.18)
@ -1741,8 +1808,8 @@ DEPENDENCIES
autoprefixer-rails (= 10.2.5.1)
awesome_print
aws-sdk-cloudformation (~> 1)
aws-sdk-core (~> 3.185.1)
aws-sdk-s3 (~> 1.136.0)
aws-sdk-core (~> 3.190.0)
aws-sdk-s3 (~> 1.141.0)
axe-core-rspec
babosa (~> 2.0)
base32 (~> 0.3.0)
@ -1751,9 +1818,9 @@ DEPENDENCIES
benchmark-ips (~> 2.11.0)
benchmark-memory (~> 0.1)
better_errors (~> 2.10.1)
bootsnap (~> 1.16.0)
bootsnap (~> 1.17.0)
browser (~> 5.3.1)
bullet (~> 7.1.1)
bullet (~> 7.1.2)
bundler-audit (~> 0.9.1)
bundler-checksum (~> 0.1.0)!
capybara (~> 3.39, >= 3.39.2)
@ -1771,17 +1838,17 @@ DEPENDENCIES
crystalball (~> 0.7.0)
csv_builder!
cvss-suite (~> 3.0.1)
database_cleaner (~> 1.7.0)
database_cleaner-active_record (~> 2.1.0)
deckar01-task_list (= 2.3.3)
declarative_policy (~> 1.1.0)
deprecation_toolkit (~> 1.5.1)
derailed_benchmarks
devfile (~> 0.0.23.pre.alpha1)
devfile (~> 0.0.24.pre.alpha1)
device_detector
devise (~> 4.8.1)
devise (~> 4.9.3)
devise-pbkdf2-encryptable (~> 0.0.0)!
devise-two-factor (~> 4.1.1)
diff_match_patch (~> 0.1.0)
diff_match_patch (~> 0.1.0)!
diffy (~> 3.4)
discordrb-webhooks (~> 3.4)
doorkeeper (~> 5.6, >= 5.6.6)
@ -1811,27 +1878,31 @@ DEPENDENCIES
fuubar (~> 2.2.0)
gettext (~> 3.3)
gettext_i18n_rails (~> 1.11.0)
gettext_i18n_rails_js (~> 1.3)
gitaly (~> 16.5.0.pre.rc1)
gitaly (~> 16.7.0.pre.rc1)
gitlab-backup-cli!
gitlab-chronic (~> 0.10.5)
gitlab-dangerfiles (~> 4.3.2)
gitlab-experiment (~> 0.8.0)
gitlab-dangerfiles (~> 4.6.0)
gitlab-experiment (~> 0.9.1)
gitlab-fog-azure-rm (~> 1.8.0)
gitlab-housekeeper!
gitlab-http!
gitlab-labkit (~> 0.34.0)
gitlab-license (~> 2.3)
gitlab-mail_room (~> 0.0.23)
gitlab-mail_room (~> 0.0.24)
gitlab-markup (~> 1.9.0)
gitlab-net-dns (~> 0.9.2)
gitlab-rspec!
gitlab-rspec_flaky!
gitlab-safe_request_store!
gitlab-schema-validation!
gitlab-sdk
gitlab-secret_detection!
gitlab-sidekiq-fetcher!
gitlab-styles (~> 10.1.0)
gitlab-styles (~> 11.0.0)
gitlab-utils!
gitlab_chronic_duration (~> 0.12)
gitlab_omniauth-ldap (~> 2.2.0)
gitlab_quality-test_tooling (~> 1.3.0)
gitlab_quality-test_tooling (~> 1.9.0)
gon (~> 6.4.0)
google-apis-androidpublisher_v3 (~> 0.34.0)
google-apis-cloudbilling_v1 (~> 0.21.0)
@ -1839,12 +1910,13 @@ DEPENDENCIES
google-apis-compute_v1 (~> 0.57.0)
google-apis-container_v1 (~> 0.43.0)
google-apis-container_v1beta1 (~> 0.43.0)
google-apis-core (~> 0.10.0)
google-apis-core (~> 0.11.0, >= 0.11.1)
google-apis-iam_v1 (~> 0.36.0)
google-apis-serviceusage_v1 (~> 0.28.0)
google-apis-sqladmin_v1beta4 (~> 0.41.0)
google-cloud-storage (~> 1.44.0)
google-protobuf (~> 3.24, >= 3.24.4)
google-apis-storage_v1 (~> 0.29)
google-cloud-storage (~> 1.45.0)
google-protobuf (~> 3.25, >= 3.25.1)
gpgme (~> 2.0.23)
grape (~> 1.7.1)
grape-entity (~> 0.10.0)
@ -1860,7 +1932,7 @@ DEPENDENCIES
grpc (~> 1.58.0)
gssapi (~> 1.3.1)
guard-rspec
haml_lint (~> 0.40.0)
haml_lint (~> 0.52)
hamlit (~> 2.15.0)
hashie (~> 5.0.0)
health_check (~> 3.0)
@ -1880,19 +1952,19 @@ DEPENDENCIES
jsonb_accessor (~> 1.3.10)
jwt (~> 2.5)
kaminari (~> 1.2.2)
kas-grpc (~> 0.2.0)
kas-grpc (~> 0.3.0)
knapsack (~> 1.21.1)
kramdown (~> 2.3.1)
kubeclient (~> 4.11.0)
lefthook (~> 1.5.2)
lefthook (~> 1.5.5)
letter_opener_web (~> 2.0.0)
license_finder (~> 7.0)
licensee (~> 9.16)
listen (~> 3.7)
lockbox (~> 1.3.0)
lograge (~> 0.5)
loofah (~> 2.21.4)
lookbook (~> 2.0, >= 2.0.1)
loofah (~> 2.22.0)
lookbook (~> 2.2)
lru_redux
mail (= 2.8.1)
mail-smtp_pool (~> 0.1.0)!
@ -1907,10 +1979,10 @@ DEPENDENCIES
net-ldap (~> 0.17.1)
net-ntp
net-protocol (~> 0.1.3)
nokogiri (~> 1.15, >= 1.15.4)
nokogiri (~> 1.15, >= 1.15.5)
oauth2 (~> 2.0)
octokit (~> 6.0)
ohai (~> 17.9)
ohai (~> 18.1)
oj (~> 3.13.21)
oj-introspect (~> 0.7)
omniauth (~> 2.1.0)
@ -1934,6 +2006,7 @@ DEPENDENCIES
openid_connect (= 1.3.0)
openssl (~> 3.0)
org-ruby (~> 0.9.12)
os (~> 1.1)
pact (~> 1.63)
parallel (~> 1.19)
parser (~> 3.2, >= 3.2.2.4)
@ -1943,7 +2016,7 @@ DEPENDENCIES
pg_query (~> 4.2.3)
png_quantizator (~> 0.2.1)
premailer-rails (~> 1.10.3)
prometheus-client-mmap (~> 0.28, >= 0.28.1)
prometheus-client-mmap (~> 1.0, >= 1.0.2)
pry-byebug
pry-rails (~> 0.3.9)
pry-shell (~> 0.6.4)
@ -1959,26 +2032,28 @@ DEPENDENCIES
rails-i18n (~> 7.0)
rainbow (~> 3.0)
rbtrace (~> 0.4)
re2 (= 2.1.3)
re2 (= 2.5.0)
recaptcha (~> 5.12)
redis (~> 4.8.0)
redis-actionpack (~> 5.3.0)
redis-namespace (~> 1.9.0)
redis-namespace (~> 1.10.0)
request_store (~> 1.5.1)
responders (~> 3.0)
retriable (~> 3.1.2)
rexml (~> 3.2.6)
rouge (~> 4.1.3)
rouge (~> 4.2.0)
rqrcode (~> 2.0)
rspec-benchmark (~> 0.6.0)
rspec-parameterized (~> 1.0)
rspec-rails (~> 6.0.3)
rspec-rails (~> 6.1.0)
rspec-retry (~> 0.6.2)
rspec_flaky!
rspec_junit_formatter
rspec_profiling (~> 0.0.6)
rubocop
ruby-fogbugz (~> 0.3.0)
ruby-lsp (~> 0.13.1)
ruby-lsp-rails (~> 0.2.8)
ruby-lsp-rspec (~> 0.1.8)
ruby-magic (~> 0.6)
ruby-openai (~> 3.7)
ruby-progressbar (~> 1.10)
@ -1989,15 +2064,15 @@ DEPENDENCIES
sassc-rails (~> 2.1.0)
sd_notify (~> 0.1.0)
seed-fu (~> 2.3.7)
selenium-webdriver (~> 4.14)
semver_dialects (~> 1.2.1)
sentry-rails (~> 5.8.0)
selenium-webdriver (~> 4.16)
semver_dialects (~> 1.5)
sentry-rails (~> 5.10.0)
sentry-raven (~> 3.1)
sentry-ruby (~> 5.8.0)
sentry-sidekiq (~> 5.8.0)
sentry-ruby (~> 5.10.0)
sentry-sidekiq (~> 5.10.0)
shoulda-matchers (~> 5.1.0)
sidekiq (~> 6.5.7)
sidekiq-cron (~> 1.8.0)
sidekiq (~> 6.5.10)
sidekiq-cron (~> 1.12.0)
sigdump (~> 0.2.4)
simple_po_parser (~> 1.1.6)
simplecov (~> 0.21)
@ -2015,11 +2090,11 @@ DEPENDENCIES
stackprof (~> 0.2.25)
state_machines-activerecord (~> 0.8.0)
sys-filesystem (~> 1.4.3)
tanuki_emoji (~> 0.7)
tanuki_emoji (~> 0.9)
telesignenterprise (~> 2.2)
terser (= 1.0.2)
test-prof (~> 1.2.3)
test_file_finder (~> 0.1.3)
test-prof (~> 1.3.1)
test_file_finder (~> 0.2.1)
thrift (>= 0.16.0)
timfel-krb5-auth (~> 0.8)
toml-rb (~> 2.2.0)
@ -2030,8 +2105,9 @@ DEPENDENCIES
valid_email (~> 0.1)
validates_hostname (~> 1.0.13)
version_sorter (~> 2.3)
view_component (~> 3.6.0)
vite_rails
view_component (~> 3.8.0)
vite_rails (~> 3.0.17)
vite_ruby (~> 3.5.0)
vmstat (~> 2.3.0)
warning (~> 1.3.0)
webauthn (~> 3.0)
@ -2041,4 +2117,4 @@ DEPENDENCIES
yajl-ruby (~> 1.4.3)
BUNDLED WITH
2.4.20
2.4.22

View File

@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "A FOSS Git multiplatform client based on Compose and JGit";
homepage = "https://gitnuro.jetpackduba.com";
homepage = "https://gitnuro.com/";
license = licenses.gpl3Plus;
platforms = platforms.unix;
maintainers = with maintainers; [ zendo ];

View File

@ -25,6 +25,7 @@
, pugixml
, qtbase
, qtmultimedia
, qtwayland
, utf8cpp
, xdg-utils
, zlib
@ -90,6 +91,7 @@ stdenv.mkDerivation rec {
zlib
]
++ optionals withGUI [ cmark ]
++ optionals stdenv.isLinux [ qtwayland ]
++ optionals stdenv.isDarwin [ libiconv ];
# autoupdate is not needed but it silences a ton of pointless warnings

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "docker-compose";
version = "2.23.3";
version = "2.24.0";
src = fetchFromGitHub {
owner = "docker";
repo = "compose";
rev = "v${version}";
hash = "sha256-Rp13xK7pRyjHaDclAfL+yzNf4ppOy9S+XFbydj4TDL4=";
hash = "sha256-6wa4kIl65z3kk+wzDX+WhS50J+e0AZ+W8A++bdnRc2M=";
};
postPatch = ''
@ -16,7 +16,7 @@ buildGoModule rec {
rm -rf e2e/
'';
vendorHash = "sha256-iKBMd4e1oVNdKuk08tYPexQqs9JLofhdf4yEP1s97EQ=";
vendorHash = "sha256-03jlomVb3jS+SkmIxRtPsaMx2VKLYX/Lp9JH/mlJvK4=";
ldflags = [ "-X github.com/docker/compose/v2/internal.Version=${version}" "-s" "-w" ];

View File

@ -116,6 +116,7 @@ stdenv.mkDerivation rec {
description = "NVIDIA container runtime library";
license = licenses.asl20;
platforms = platforms.linux;
mainProgram = "nvidia-container-cli";
maintainers = with maintainers; [ cpcloud ];
};
}

View File

@ -5,10 +5,16 @@
, buildGoModule
, linkFarm
, writeShellScript
, formats
, containerRuntimePath
, configTemplate
, configTemplatePath ? null
, libnvidia-container
}:
assert configTemplate != null -> (lib.isAttrs configTemplate && configTemplatePath == null);
assert configTemplatePath != null -> (lib.isStringLike configTemplatePath && configTemplate == null);
let
isolatedContainerRuntimePath = linkFarm "isolated_container_runtime_path" [
{
@ -23,6 +29,8 @@ let
echo >&2 "$(tput setaf 3)warning: \$XDG_CONFIG_HOME=$XDG_CONFIG_HOME$(tput sgr 0)"
fi
'';
configToml = if configTemplatePath != null then configTemplatePath else (formats.toml { }).generate "config.toml" configTemplate;
in
buildGoModule rec {
pname = "container-toolkit/container-toolkit";
@ -47,6 +55,14 @@ buildGoModule rec {
nativeBuildInputs = [ makeWrapper ];
preConfigure = ''
# Ensure the runc symlink isn't broken:
if ! readlink --quiet --canonicalize-existing "${isolatedContainerRuntimePath}/runc" ; then
echo "${isolatedContainerRuntimePath}/runc: broken symlink" >&2
exit 1
fi
'';
checkFlags =
let
skippedTests = [
@ -74,7 +90,7 @@ buildGoModule rec {
--prefix PATH : ${isolatedContainerRuntimePath}:${libnvidia-container}/bin \
--set-default XDG_CONFIG_HOME $out/etc
cp ${configTemplate} $out/etc/nvidia-container-runtime/config.toml
cp ${configToml} $out/etc/nvidia-container-runtime/config.toml
substituteInPlace $out/etc/nvidia-container-runtime/config.toml \
--subst-var-by glibcbin ${lib.getBin glibc}

View File

@ -0,0 +1,79 @@
{
lib,
newScope,
docker,
libnvidia-container,
runc,
symlinkJoin,
}:
# Note this scope isn't recursed into, at the time of writing.
lib.makeScope newScope (
self: {
# The config is only exposed as an attrset so that the user may reach the
# deafult values, for inspectability purposes.
dockerConfig = {
disable-require = false;
#swarm-resource = "DOCKER_RESOURCE_GPU"
nvidia-container-cli = {
#root = "/run/nvidia/driver";
#path = "/usr/bin/nvidia-container-cli";
environment = [ ];
#debug = "/var/log/nvidia-container-runtime-hook.log";
ldcache = "/tmp/ld.so.cache";
load-kmods = true;
#no-cgroups = false;
#user = "root:video";
ldconfig = "@@glibcbin@/bin/ldconfig";
};
};
nvidia-container-toolkit-docker = self.callPackage ./. {
containerRuntimePath = "${docker}/libexec/docker/docker";
configTemplate = self.dockerConfig;
};
podmanConfig = {
disable-require = true;
#swarm-resource = "DOCKER_RESOURCE_GPU";
nvidia-container-cli = {
#root = "/run/nvidia/driver";
#path = "/usr/bin/nvidia-container-cli";
environment = [ ];
#debug = "/var/log/nvidia-container-runtime-hook.log";
ldcache = "/tmp/ld.so.cache";
load-kmods = true;
no-cgroups = true;
#user = "root:video";
ldconfig = "@@glibcbin@/bin/ldconfig";
};
};
nvidia-container-toolkit-podman = self.nvidia-container-toolkit-docker.override {
containerRuntimePath = lib.getExe runc;
configTemplate = self.podmanConfig;
};
nvidia-docker = symlinkJoin {
name = "nvidia-docker";
paths = [
libnvidia-container
self.nvidia-docker-unwrapped
self.nvidia-container-toolkit-docker
];
inherit (self.nvidia-docker-unwrapped) meta;
};
nvidia-docker-unwrapped = self.callPackage ../nvidia-docker { };
nvidia-podman = symlinkJoin {
name = "nvidia-podman";
paths = [
libnvidia-container
self.nvidia-container-toolkit-podman
];
inherit (self.nvidia-container-toolkit-podman) meta;
};
}
)

View File

@ -1,13 +0,0 @@
disable-require = false
#swarm-resource = "DOCKER_RESOURCE_GPU"
[nvidia-container-cli]
#root = "/run/nvidia/driver"
#path = "/usr/bin/nvidia-container-cli"
environment = []
#debug = "/var/log/nvidia-container-runtime-hook.log"
ldcache = "/tmp/ld.so.cache"
load-kmods = true
#no-cgroups = false
#user = "root:video"
ldconfig = "@@glibcbin@/bin/ldconfig"

View File

@ -1,13 +0,0 @@
disable-require = true
#swarm-resource = "DOCKER_RESOURCE_GPU"
[nvidia-container-cli]
#root = "/run/nvidia/driver"
#path = "/usr/bin/nvidia-container-cli"
environment = []
#debug = "/var/log/nvidia-container-runtime-hook.log"
ldcache = "/tmp/ld.so.cache"
load-kmods = true
no-cgroups = true
#user = "root:video"
ldconfig = "@@glibcbin@/bin/ldconfig"

View File

@ -0,0 +1,84 @@
From 783ec26c0d83013baf04579a6a415d7f8776ac93 Mon Sep 17 00:00:00 2001
From: Someone Serge <sergei.kozlukov@aalto.fi>
Date: Sun, 7 Jan 2024 11:48:24 +0000
Subject: [PATCH] ldCache(): patch for @driverLink@
---
internal/pkg/util/paths/resolve.go | 41 +++++++++++++++++++++++++++---
1 file changed, 38 insertions(+), 3 deletions(-)
diff --git a/internal/pkg/util/paths/resolve.go b/internal/pkg/util/paths/resolve.go
index db45d9db1..9d0110b6b 100644
--- a/internal/pkg/util/paths/resolve.go
+++ b/internal/pkg/util/paths/resolve.go
@@ -14,6 +14,7 @@ import (
"fmt"
"os"
"os/exec"
+ "path"
"path/filepath"
"regexp"
"strings"
@@ -154,14 +155,49 @@ func Resolve(fileList []string) ([]string, []string, error) {
// lists three variants of libEGL.so.1 that are in different locations, we only
// report the first, highest priority, variant.
func ldCache() (map[string]string, error) {
+ driverDirs := strings.Split("@driverLink@/lib", ":")
+ if machine, err := elfMachine(); err == nil && machine == elf.EM_386 {
+ driverDirs = strings.Split("@driverLink@-32/lib", ":")
+ }
+
+ soPattern, err := regexp.Compile(`[^\s]+\.so(\.\d+(\.\d+(\.\d+)?)?)?$`)
+ if err != nil {
+ return nil, fmt.Errorf("could not compile ldconfig regexp: %v", err)
+ }
+
+ ldCache := make(map[string]string)
+ for _, dirPath := range driverDirs {
+ dir, err := os.Open(dirPath)
+ if err != nil {
+ /* Maybe we're not running under NixOS */
+ continue
+ }
+ files, err := dir.ReadDir(-1)
+ if err != nil {
+ continue
+ }
+ for _, f := range files {
+ if !soPattern.MatchString(f.Name()) {
+ continue
+ }
+ libName := f.Name()
+ libPath := path.Join(dirPath, f.Name())
+ if _, ok := ldCache[libName]; !ok {
+ ldCache[libName] = libPath
+ }
+ }
+ }
+
// walk through the ldconfig output and add entries which contain the filenames
// returned by nvidia-container-cli OR the nvliblist.conf file contents
ldconfig, err := bin.FindBin("ldconfig")
- if err != nil {
+ if err != nil && len(ldCache) == 0 {
+ // Note that missing ldconfig is only an "error" as long
+ // as there's no driverLink
return nil, err
}
out, err := exec.Command(ldconfig, "-p").Output()
- if err != nil {
+ if err != nil && len(ldCache) == 0 {
return nil, fmt.Errorf("could not execute ldconfig: %v", err)
}
@@ -173,7 +209,6 @@ func ldCache() (map[string]string, error) {
}
// store library name with associated path
- ldCache := make(map[string]string)
for _, match := range r.FindAllSubmatch(out, -1) {
if match != nil {
// libName is the "libnvidia-ml.so.1" (from the above example)
--
2.42.0

View File

@ -27,12 +27,14 @@ in
, buildGoModule
, runCommandLocal
# Native build inputs
, addDriverRunpath
, makeWrapper
, pkg-config
, util-linux
, which
# Build inputs
, bash
, callPackage
, conmon
, coreutils
, cryptsetup
@ -54,6 +56,9 @@ in
, hello
# Overridable configurations
, enableNvidiaContainerCli ? true
# --nvccli currently requires extra privileges:
# https://github.com/apptainer/apptainer/issues/1893#issuecomment-1881240800
, forceNvcCli ? false
# Compile with seccomp support
# SingularityCE 3.10.0 and above requires explicit --without-seccomp when libseccomp is not available.
, enableSeccomp ? true
@ -65,6 +70,7 @@ in
# Whether to compile with SUID support
, enableSuid ? false
, starterSuidPath ? null
, substituteAll
# newuidmapPath and newgidmapPath are to support --fakeroot
# where those SUID-ed executables are unavailable from the FHS system PATH.
# Path to SUID-ed newuidmap executable
@ -94,6 +100,10 @@ in
(buildGoModule {
inherit pname version src;
patches = lib.optionals (projectName == "apptainer") [
(substituteAll { src = ./apptainer/0001-ldCache-patch-for-driverLink.patch; inherit (addDriverRunpath) driverLink; })
];
# Override vendorHash with the output got from
# nix-prefetch -E "{ sha256 }: ((import ./. { }).apptainer.override { vendorHash = sha256; }).goModules"
# or with `null` when using vendored source tarball.
@ -175,11 +185,18 @@ in
if [[ ! -e .git || ! -e VERSION ]]; then
echo "${version}" > VERSION
fi
# Patch shebangs for script run during build
patchShebangs --build "$configureScript" makeit e2e scripts mlocal/scripts
# Patching the hard-coded defaultPath by prefixing the packages in defaultPathInputs
substituteInPlace cmd/internal/cli/actions.go \
--replace "defaultPath = \"${defaultPathOriginal}\"" "defaultPath = \"''${defaultPathInputs// /\/bin:}''${defaultPathInputs:+/bin:}${defaultPathOriginal}\""
substituteInPlace internal/pkg/util/gpu/nvidia.go \
--replace \
'return fmt.Errorf("/usr/bin not writable in the container")' \
""
'';
postConfigure = ''
@ -212,7 +229,7 @@ in
wrapProgram "$out/bin/${projectName}" \
--prefix PATH : "''${defaultPathInputs// /\/bin:}''${defaultPathInputs:+/bin:}"
# Make changes in the config file
${lib.optionalString enableNvidiaContainerCli ''
${lib.optionalString forceNvcCli ''
substituteInPlace "$out/etc/${projectName}/${projectName}.conf" \
--replace "use nvidia-container-cli = no" "use nvidia-container-cli = yes"
''}
@ -264,5 +281,38 @@ in
singularity = finalAttrs.finalPackage;
};
};
gpuChecks = lib.optionalAttrs (projectName == "apptainer") {
# Should be in tests, but Ofborg would skip image-hello-cowsay because
# saxpy is unfree.
image-saxpy = callPackage
({ singularity-tools, cudaPackages }:
singularity-tools.buildImage {
name = "saxpy";
contents = [ cudaPackages.saxpy ];
memSize = 2048;
diskSize = 2048;
singularity = finalAttrs.finalPackage;
})
{ };
saxpy =
callPackage
({ runCommand, writeShellScriptBin }:
let
unwrapped = writeShellScriptBin "apptainer-cuda-saxpy"
''
${lib.getExe finalAttrs.finalPackage} exec --nv $@ ${finalAttrs.passthru.tests.image-saxpy} saxpy
'';
in
runCommand "run-apptainer-cuda-saxpy"
{
requiredSystemFeatures = [ "cuda" ];
nativeBuildInputs = [ unwrapped ];
passthru = { inherit unwrapped; };
}
''
apptainer-cuda-saxpy
'')
{ };
};
};
})

View File

@ -38,20 +38,20 @@ let
singularity = callPackage
(import ./generic.nix rec {
pname = "singularity-ce";
version = "4.0.2";
version = "4.0.3";
projectName = "singularity";
src = fetchFromGitHub {
owner = "sylabs";
repo = "singularity";
rev = "refs/tags/v${version}";
hash = "sha256-R+vAKYR4lJmC7PIITYyg4UeGYjGXoPqqUai3HmPzwG0=";
hash = "sha256-sT5nW/7xE2TT4TO9H7Y3CDf87LvwPbT1NjVQVK9yyVY=";
};
# Update by running
# nix-prefetch -E "{ sha256 }: ((import ./. { }).singularity.override { vendorHash = sha256; }).goModules"
# at the root directory of the Nixpkgs repository
vendorHash = "sha256-z3VozeMpaqh4ddZxB3xqo25Gm+8JYeIwASOq+Mmerr4=";
vendorHash = "sha256-q7n1LymH5KGYHg73r30xryVWupzDheBp7Gpr3XZiZHI=";
# Do not build conmon and squashfuse from the Git submodule sources,
# Use Nixpkgs provided version

View File

@ -7,5 +7,6 @@ lib.makeScope pkgs.newScope (self:
wayfire-plugins-extra = callPackage ./wayfire-plugins-extra.nix { };
wcm = callPackage ./wcm.nix { };
wf-shell = callPackage ./wf-shell.nix { };
windecor = callPackage ./windecor.nix { };
}
)

View File

@ -0,0 +1,63 @@
{ stdenv
, lib
, fetchFromGitLab
, meson
, ninja
, pkg-config
, wayfire
, wf-config
, wayland
, pango
, eudev
, libinput
, libxkbcommon
, librsvg
, libGL
, xcbutilwm
}:
stdenv.mkDerivation (finalAttrs: {
pname = "windecor";
version = "0.8.0";
src = fetchFromGitLab {
owner = "wayfireplugins";
repo = "windecor";
rev = "v${finalAttrs.version}";
hash = "sha256-v0kGT+KrtfFJ/hp1Dr8izKVj6UHhuW6udHFjWt1y9TY=";
};
postPatch = ''
substituteInPlace meson.build \
--replace "wayfire.get_variable( pkgconfig: 'metadatadir' )" "join_paths(get_option('prefix'), 'share/wayfire/metadata')"
'';
nativeBuildInputs = [
meson
ninja
pkg-config
];
buildInputs = [
wayfire
wf-config
wayland
pango
eudev
libinput
libxkbcommon
librsvg
libGL
xcbutilwm
];
mesonFlags = [ "--sysconfdir=/etc" ];
meta = {
homepage = "https://gitlab.com/wayfireplugins/windecor";
description = "A window decoration plugin for wayfire";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ rewine ];
inherit (wayfire.meta) platforms;
};
})

View File

@ -1,6 +1,7 @@
{ lib
, stdenv
, callPackage
, runCommand
, writeText
, pub2nix
, dartHooks
@ -9,6 +10,7 @@
, nodejs
, darwin
, jq
, yq
}:
{ src
@ -44,7 +46,13 @@
, runtimeDependencies ? [ ]
, extraWrapProgramArgs ? ""
, pubspecLock
, autoPubspecLock ? null
, pubspecLock ? if autoPubspecLock == null then
throw "The pubspecLock argument is required. If import-from-derivation is allowed (it isn't in Nixpkgs), you can set autoPubspecLock to the path to a pubspec.lock instead."
else
assert lib.assertMsg (builtins.pathExists autoPubspecLock) "The pubspec.lock file could not be found!";
lib.importJSON (runCommand "${lib.getName args}-pubspec-lock-json" { nativeBuildInputs = [ yq ]; } ''yq . '${autoPubspecLock}' > "$out"'')
, ...
}@args:

View File

@ -51,7 +51,7 @@
# configure & source common build functions
LIB_RUSTC_OPTS="${libRustcOpts}"
BIN_RUSTC_OPTS="${binRustcOpts}"
LIB_EXT="${stdenv.hostPlatform.extensions.sharedLibrary}"
LIB_EXT="${stdenv.hostPlatform.extensions.sharedLibrary or ""}"
LIB_PATH="${libPath}"
LIB_NAME="${libName}"

View File

@ -0,0 +1,73 @@
--- a/pom.xml 2024-01-08 09:44:10.495320111 +0100
+++ b/pom.xml 2024-01-08 21:31:07.529336715 +0100
@@ -394,6 +394,15 @@
</configuration>
</plugin>
<plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>3.3.0</version>
+ <executions>
+ <execution>
+ <id>default-jar</id>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.5.0</version>
@@ -464,6 +473,55 @@
</transformers>
</configuration>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <version>3.3.0</version>
+ <executions>
+ <execution>
+ <id>require-all-plugin-version-to-be-set</id>
+ <phase>validate</phase>
+ <goals>
+ <goal>enforce</goal>
+ </goals>
+ <configuration>
+ <rules>
+ <requirePluginVersions />
+ </rules>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <version>3.1.1</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>3.3.1</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-site-plugin</artifactId>
+ <version>4.0.0-M9</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-install-plugin</artifactId>
+ <version>3.1.1</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-clean-plugin</artifactId>
+ <version>3.3.1</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>3.1.2</version>
+ </plugin>
</plugins>
</build>

View File

@ -0,0 +1,81 @@
{ lib
, fetchFromGitHub
, jre
, makeWrapper
, maven
, icoutils
, copyDesktopItems
, makeDesktopItem
}:
maven.buildMavenPackage rec {
pname = "bytecode-viewer";
version = "2.12";
src = fetchFromGitHub {
owner = "Konloch";
repo = "bytecode-viewer";
rev = "v${version}";
hash = "sha256-opAUmkEcWPOrcxAL+I1rBQXwHmvzbu0+InTnsg9r+z8=";
};
desktopItems = [
(makeDesktopItem {
name = "bytecode-viewer";
desktopName = "Bytecode-Viewer";
exec = meta.mainProgram;
icon = "bytecode-viewer";
comment = "A lightweight user-friendly Java/Android Bytecode Viewer, Decompiler & More.";
categories = [ "Security" ];
startupNotify = false;
})
];
patches = [
# Make vendoring deterministic by pinning Maven plugin dependencies
./make-deterministic.patch
];
mvnHash = "sha256-iAxzFq8nR9UiH8y3ZWmGuChZEMwQBAkN8wD+t9q/RWY=";
mvnParameters = "-Dproject.build.outputTimestamp=1980-01-01T00:00:02Z";
nativeBuildInputs = [
icoutils
makeWrapper
copyDesktopItems
];
installPhase = ''
runHook preInstall
install -Dm644 target/Bytecode-Viewer-${version}.jar $out/share/bytecode-viewer/bytecode-viewer.jar
mv "BCV Icon.ico" bytecode-viewer.ico
icotool -x bytecode-viewer.ico
for size in 16 32 48
do
install -Dm644 bytecode-viewer_*_$size\x$size\x32.png $out/share/icons/hicolor/$size\x$size/apps/bytecode-viewer.png
done
mkdir $out/bin
makeWrapper ${lib.getExe jre} $out/bin/${meta.mainProgram} \
--add-flags "-jar $out/share/bytecode-viewer/bytecode-viewer.jar"
runHook postInstall
'';
meta = with lib; {
homepage = "https://bytecodeviewer.com";
description = "A lightweight user-friendly Java/Android Bytecode Viewer, Decompiler & More";
mainProgram = "bytecode-viewer";
maintainers = with maintainers; [ shard7 d3vil0p3r ];
platforms = platforms.unix;
sourceProvenance = with sourceTypes; [
fromSource
binaryBytecode # deps
];
license = with licenses; [ gpl3Only ];
};
}

View File

@ -0,0 +1,27 @@
{ lib
, rustPlatform
, fetchFromGitHub
}:
rustPlatform.buildRustPackage rec {
pname = "csvlens";
version = "0.5.1";
src = fetchFromGitHub {
owner = "YS-L";
repo = "csvlens";
rev = "refs/tags/v${version}";
hash = "sha256-9zIi49iXFOARSZsz0iqzC7NfoiBngfNt6A7vZuwxItI=";
};
cargoHash = "sha256-DDMsycYSzkBNvf4f9WVpnADpP72GQEkmJIJsfrlfMcI=";
meta = with lib; {
description = "Command line csv viewer";
homepage = "https://github.com/YS-L/csvlens";
changelog = "https://github.com/YS-L/csvlens/blob/${src.rev}/CHANGELOG.md";
license = licenses.mit;
maintainers = with maintainers; [ natsukium ];
mainProgram = "csvlens";
};
}

View File

@ -17,16 +17,16 @@
rustPlatform.buildRustPackage rec {
pname = "eza";
version = "0.17.0";
version = "0.17.1";
src = fetchFromGitHub {
owner = "eza-community";
repo = "eza";
rev = "v${version}";
hash = "sha256-BYzt8PLqMbxlp8CdBJuBXGbTsC9e/dWhB4j1Ak2Fjbo=";
hash = "sha256-PItKMPaqDG8L0dYHl8cLoyieljNpP41HLIFfpcLerNg=";
};
cargoHash = "sha256-xyIFGPQkXZZLLXY5qwiRvFPvjhAIRc90RD2NpsuwrB4=";
cargoHash = "sha256-PrKP9Akv+qionFTHtlrY8bzaX9HaobhBJGVRMvXWfZU=";
nativeBuildInputs = [ cmake pkg-config installShellFiles pandoc ];
buildInputs = [ zlib ]

View File

@ -2,6 +2,7 @@
, stdenv
, fetchurl
, fetchpatch
, fetchDebianPatch
, copyDesktopItems
, pkg-config
, wrapGAppsHook
@ -15,16 +16,9 @@
, makeDesktopItem
}:
let
wxGTK32' = wxGTK32.overrideAttrs (old: {
configureFlags = old.configureFlags ++ [
"--disable-exceptions"
];
});
in
stdenv.mkDerivation (finalAttrs: {
pname = "freefilesync";
version = "13.2";
version = "13.3";
src = fetchurl {
url = "https://freefilesync.org/download/FreeFileSync_${finalAttrs.version}_Source.zip";
@ -33,7 +27,7 @@ stdenv.mkDerivation (finalAttrs: {
rm -f $out
tryDownload "$url"
'';
hash = "sha256-Hb3DkHdINtg5vNs6IcCHKxgSiN5u/2kY8V8Fnq5yFCM=";
hash = "sha256-mpCCecG1teBjIJqCzB3pGAQKT6t8bMKbK8KihMXOn3g=";
};
sourceRoot = ".";
@ -42,20 +36,26 @@ stdenv.mkDerivation (finalAttrs: {
patches = [
# Disable loading of the missing Animal.dat
(fetchpatch {
url = "https://sources.debian.org/data/main/f/freefilesync/12.0-2/debian/patches/ffs_devuan.patch";
postFetch = ''
substituteInPlace $out \
--replace "-std=c++2b" "-std=c++23" \
--replace "imageWidth," "wxsizeToScreen(imageWidth),"
'';
url = "https://sources.debian.org/data/main/f/freefilesync/13.3-1/debian/patches/ffs_devuan.patch";
excludes = [ "FreeFileSync/Source/ffs_paths.cpp" ];
hash = "sha256-LH549fJWGpJ0p6/0YNda1zZHGs/QRl1CYLC/vYKdkO4=";
hash = "sha256-cW0Y9+ByQWGzMU4NFRSkW46KkxQB4jRZotHlCFniv5o=";
})
# Fix build with GTK 3
(fetchpatch {
url = "https://sources.debian.org/data/main/f/freefilesync/12.0-2/debian/patches/ffs_devuan_gtk3.patch";
(fetchDebianPatch {
pname = "freefilesync";
version = "13.3";
debianRevision = "1";
patch = "ffs_devuan_gtk3.patch";
hash = "sha256-0n58Np4JI3hYK/CRBytkPHl9Jp4xK+IRjgUvoYti/f4=";
})
# Fix build with vanilla wxWidgets
(fetchDebianPatch {
pname = "freefilesync";
version = "13.3";
debianRevision = "1";
patch = "Disable_wxWidgets_uncaught_exception_handling.patch";
hash = "sha256-Fem7eDDKSqPFU/t12Jco8OmYC8FM9JgB4/QVy/ouvbI=";
})
];
nativeBuildInputs = [
@ -71,7 +71,7 @@ stdenv.mkDerivation (finalAttrs: {
gtk3
libssh2
openssl
wxGTK32'
wxGTK32
];
env.NIX_CFLAGS_COMPILE = toString [

View File

@ -0,0 +1,35 @@
{ lib
, stdenv
, fetchurl
, flex
, bison
}:
stdenv.mkDerivation (finalAttrs: {
pname = "graplang";
version = "1.46";
outputs = [ "out" "man" ];
src = fetchurl {
url = "https://www.lunabase.org/~faber/Vault/software/grap/grap-${finalAttrs.version}.tar.gz";
hash = "sha512-7n+jLANU/x+wGrpjwYAnf45fQ5M91SwraiCbvUKe6XhWtilhGoT2yTlLkPlTihETTkizLyssW5gj5gbwNHaooA==";
};
nativeBuildInputs = [ flex bison ];
meta = with lib; {
description = "Language for typesetting graphs";
longDescription = ''
Grap is an Expressive language for describing graphs and incorporating
them in typeset documents. It is implemented as a preprocessor to
Kernigan's pic language for describing languages, so any system that can
use pic can use grap. For sure, TeX and groff can use it.
'';
homepage = "https://www.lunabase.org/~faber/Vault/software/grap/";
changelog = "https://github.com/snorerot13/grap/blob/master/CHANGES";
license = licenses.bsd2;
maintainers = with maintainers; [ afh ];
mainProgram = "grap";
};
})

View File

@ -15,13 +15,13 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "grimblast";
version = "unstable-2023-10-03";
version = "unstable-2024-01-11";
src = fetchFromGitHub {
owner = "hyprwm";
repo = "contrib";
rev = "2e3f8ac2a3f1334fd2e211b07ed76b4215bb0542";
hash = "sha256-rb954Rc+IyUiiXoIuQOJRp0//zH/WeMYZ3yJ5CccODA=";
rev = "89c56351e48785070b60e224ea1717ac50c3befb";
hash = "sha256-EjdQsk5VIQs7INBugbgX1I9Q3kPAOZSwkXXqEjZL0E0=";
};
strictDeps = true;

View File

@ -0,0 +1,46 @@
diff --git a/Tools/CMake/Libraries.cmake b/Tools/CMake/Libraries.cmake
index cc4681a..f484013 100644
--- a/Tools/CMake/Libraries.cmake
+++ b/Tools/CMake/Libraries.cmake
@@ -67,7 +67,7 @@ if((NOT LibArchive_FOUND) AND (NOT WIN32))
endif()
endif()
-set(Boost_USE_STATIC_LIBS ON)
+add_definitions(-DBOOST_LOG_DYN_LINK)
find_package(
Boost 1.78 REQUIRED
COMPONENTS filesystem
@@ -178,10 +178,10 @@ if(LINUX)
set(LIBREADSTAT_INCLUDE_DIRS /app/include)
set(LIBREADSTAT_LIBRARY_DIRS /app/lib)
else()
- set(LIBREADSTAT_INCLUDE_DIRS /usr/local/include /usr/include)
+ set(LIBREADSTAT_INCLUDE_DIRS @readstat@/include /usr/include)
# The last two library paths handle the two most common multiarch cases.
# Other multiarch-compliant paths may come up but should be rare.
- set(LIBREADSTAT_LIBRARY_DIRS /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/aarch64-linux-gnu)
+ set(LIBREADSTAT_LIBRARY_DIRS @readstat@/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/aarch64-linux-gnu)
endif()
message(CHECK_START "Looking for libreadstat.so")
diff --git a/Tools/CMake/Programs.cmake b/Tools/CMake/Programs.cmake
index dbd089d..ef6857a 100644
--- a/Tools/CMake/Programs.cmake
+++ b/Tools/CMake/Programs.cmake
@@ -39,6 +39,7 @@ endif()
# ------ Linux Tools/Programs
+#[[
if(LINUX)
message(CHECK_START "Looking for 'gfortran'")
@@ -81,6 +82,7 @@ if(LINUX)
endif()
endif()
+]]#
# ----------------------

View File

@ -0,0 +1,134 @@
{ R
, rPackages
, fetchFromGitHub
, jasp-src
, jasp-version
}:
with rPackages;
let
jaspColumnEncoder-src = fetchFromGitHub {
owner = "jasp-stats";
repo = "jaspColumnEncoder";
rev = "c54987bb25de8963866ae69ad3a6ae5a9a9f1240";
hash = "sha256-aWfRG7DXO1MYFvmMLkX/xtHvGeIhFRcRDrVBrhkvYuI=";
};
jaspGraphs = buildRPackage {
name = "jaspGraphs-${jasp-version}";
version = jasp-version;
src = jasp-src;
sourceRoot = "${jasp-src.name}/Engine/jaspGraphs";
propagatedBuildInputs = [ ggplot2 gridExtra gtable lifecycle jsonlite R6 RColorBrewer rlang scales viridisLite ];
};
jaspBase = buildRPackage {
name = "jaspBase-${jasp-version}";
version = jasp-version;
src = jasp-src;
sourceRoot = "${jasp-src.name}/Engine/jaspBase";
env.INCLUDE_DIR = "../inst/include/jaspColumnEncoder";
postPatch = ''
mkdir -p inst/include
cp -r --no-preserve=all ${jaspColumnEncoder-src} inst/include/jaspColumnEncoder
'';
propagatedBuildInputs = [ cli codetools ggplot2 gridExtra gridGraphics jaspGraphs jsonlite lifecycle modules officer pkgbuild plyr qgraph ragg R6 Rcpp renv remotes rjson rvg svglite systemfonts withr ];
};
stanova = buildRPackage {
name = "stanova";
src = fetchFromGitHub {
owner = "bayesstuff";
repo = "stanova";
rev = "988ad8e07cda1674b881570a85502be7795fbd4e";
hash = "sha256-tAeHqTHao2KVRNFBDWmuF++H31aNN6O1ss1Io500QBY=";
};
propagatedBuildInputs = [ emmeans lme4 coda rstan MASS ];
};
bstats = buildRPackage {
name = "bstats";
src = fetchFromGitHub {
owner = "AlexanderLyNL";
repo = "bstats";
rev = "42d34c18df08d233825bae34fdc0dfa0cd70ce8c";
hash = "sha256-N2KmbTPbyvzsZTWBRE2x7bteccnzokUWDOB4mOWUdJk=";
};
propagatedBuildInputs = [ hypergeo purrr SuppDists ];
};
flexplot = buildRPackage {
name = "flexplot";
src = fetchFromGitHub {
owner = "dustinfife";
repo = "flexplot";
rev = "4223ad5fb56028018b964d6f9f5aa5bac8710821";
hash = "sha256-L+Ed2bIWjq3ZIAGookp8dAjDSeldEbcwynwFVVZ9IcU=";
};
propagatedBuildInputs = [ cowplot MASS tibble withr dplyr magrittr forcats purrr plyr R6 ggplot2 patchwork ggsci lme4 party mgcv rlang ];
};
# conting has been removed from CRAN
conting' = buildRPackage {
name = "conting";
src = fetchFromGitHub {
owner = "vandenman";
repo = "conting";
rev = "03a4eb9a687e015d602022a01d4e638324c110c8";
hash = "sha256-Sp09YZz1WGyefn31Zy1qGufoKjtuEEZHO+wJvoLArf0=";
};
propagatedBuildInputs = [ mvtnorm gtools tseries coda ];
};
buildJaspModule = name: deps: buildRPackage {
name = "${name}-${jasp-version}";
version = jasp-version;
src = jasp-src;
sourceRoot = "${jasp-src.name}/Modules/${name}";
propagatedBuildInputs = deps;
};
in
{
engine = { inherit jaspBase jaspGraphs; };
modules = rec {
jaspAcceptanceSampling = buildJaspModule "jaspAcceptanceSampling" [ abtest BayesFactor conting' ggplot2 jaspBase jaspGraphs plyr stringr vcd vcdExtra AcceptanceSampling ];
jaspAnova = buildJaspModule "jaspAnova" [ afex BayesFactor boot car colorspace emmeans ggplot2 jaspBase jaspDescriptives jaspGraphs jaspTTests KernSmooth matrixStats multcomp onewaytests plyr stringi stringr restriktor ];
jaspAudit = buildJaspModule "jaspAudit" [ bstats extraDistr ggplot2 ggrepel jaspBase jaspGraphs jfa ];
jaspBain = buildJaspModule "jaspBain" [ bain lavaan ggplot2 semPlot stringr jaspBase jaspGraphs jaspSem ];
jaspBsts = buildJaspModule "jaspBsts" [ Boom bsts ggplot2 jaspBase jaspGraphs matrixStats reshape2 ];
jaspCircular = buildJaspModule "jaspCircular" [ jaspBase jaspGraphs circular ggplot2 ];
jaspCochrane = buildJaspModule "jaspCochrane" [ jaspBase jaspGraphs jaspDescriptives jaspMetaAnalysis ];
jaspDescriptives = buildJaspModule "jaspDescriptives" [ ggplot2 ggrepel jaspBase jaspGraphs ];
jaspDistributions = buildJaspModule "jaspDistributions" [ car fitdistrplus ggplot2 goftest gnorm jaspBase jaspGraphs MASS sgt sn ];
jaspEquivalenceTTests = buildJaspModule "jaspEquivalenceTTests" [ BayesFactor ggplot2 jaspBase jaspGraphs metaBMA TOSTER jaspTTests ];
jaspFactor = buildJaspModule "jaspFactor" [ ggplot2 jaspBase jaspGraphs jaspSem lavaan psych qgraph reshape2 semPlot GPArotation Rcsdp semTools ];
jaspFrequencies = buildJaspModule "jaspFrequencies" [ abtest BayesFactor conting' multibridge ggplot2 jaspBase jaspGraphs plyr stringr vcd vcdExtra ];
jaspJags = buildJaspModule "jaspJags" [ coda ggplot2 ggtext hexbin jaspBase jaspGraphs rjags scales stringr ];
jaspLearnBayes = buildJaspModule "jaspLearnBayes" [ extraDistr ggplot2 HDInterval jaspBase jaspGraphs MASS MCMCpack MGLM scales ggalluvial ragg runjags ggdist png posterior ];
jaspLearnStats = buildJaspModule "jaspLearnStats" [ extraDistr ggplot2 jaspBase jaspGraphs jaspDistributions jaspDescriptives jaspTTests ggforce tidyr igraph ];
jaspMachineLearning = buildJaspModule "jaspMachineLearning" [ kknn AUC cluster colorspace DALEX dbscan e1071 fpc gbm Gmedian ggparty ggdendro ggnetwork ggplot2 ggrepel ggridges glmnet jaspBase jaspGraphs MASS mvnormalTest neuralnet network partykit plyr randomForest rpart ROCR Rtsne signal ];
jaspMetaAnalysis = buildJaspModule "jaspMetaAnalysis" [ dplyr ggplot2 jaspBase jaspGraphs MASS metaBMA metafor psych purrr rstan stringr tibble tidyr weightr BayesTools RoBMA metamisc ggmcmc pema ];
jaspMixedModels = buildJaspModule "jaspMixedModels" [ afex emmeans ggplot2 ggpol jaspBase jaspGraphs lme4 loo mgcv rstan rstanarm stanova withr ];
jaspNetwork = buildJaspModule "jaspNetwork" [ bootnet BDgraph corpcor dplyr foreach ggplot2 gtools HDInterval huge IsingSampler jaspBase jaspGraphs mvtnorm qgraph reshape2 snow stringr ];
jaspPower = buildJaspModule "jaspPower" [ pwr jaspBase jaspGraphs ];
jaspPredictiveAnalytics = buildJaspModule "jaspPredictiveAnalytics" [ jaspBase jaspGraphs bsts bssm precrec reshape2 Boom lubridate prophet BART EBMAforecast imputeTS ];
jaspProcess = buildJaspModule "jaspProcess" [ dagitty ggplot2 ggraph jaspBase jaspGraphs ];
jaspProphet = buildJaspModule "jaspProphet" [ rstan ggplot2 jaspBase jaspGraphs prophet scales ];
jaspQualityControl = buildJaspModule "jaspQualityControl" [ car cowplot daewr desirability DoE_base EnvStats FAdist fitdistrplus FrF2 ggplot2 ggrepel goftest ggpp irr jaspBase jaspDescriptives jaspGraphs mle_tools psych qcc rsm Rspc tidyr tibble vipor weibullness ];
jaspRegression = buildJaspModule "jaspRegression" [ BAS boot bstats combinat emmeans ggplot2 ggrepel hmeasure jaspAnova jaspBase jaspDescriptives jaspGraphs jaspTTests lmtest logistf MASS matrixStats mdscore ppcor purrr Rcpp statmod VGAM ];
jaspReliability = buildJaspModule "jaspReliability" [ Bayesrel coda ggplot2 ggridges irr jaspBase jaspGraphs LaplacesDemon lme4 MASS psych ];
jaspRobustTTests = buildJaspModule "jaspRobustTTests" [ RoBTT ggplot2 jaspBase jaspGraphs ];
jaspSem = buildJaspModule "jaspSem" [ forcats ggplot2 jaspBase jaspGraphs lavaan cSEM reshape2 semPlot semTools stringr tibble tidyr ];
jaspSummaryStatistics = buildJaspModule "jaspSummaryStatistics" [ BayesFactor bstats jaspBase jaspFrequencies jaspGraphs jaspRegression jaspTTests jaspAnova jaspDescriptives SuppDists bayesplay ];
jaspSurvival = buildJaspModule "jaspSurvival" [ survival survminer jaspBase jaspGraphs ];
jaspTTests = buildJaspModule "jaspTTests" [ BayesFactor car ggplot2 jaspBase jaspGraphs logspline plotrix plyr ];
jaspTimeSeries = buildJaspModule "jaspTimeSeries" [ jaspBase jaspGraphs forecast ];
jaspVisualModeling = buildJaspModule "jaspVisualModeling" [ flexplot jaspBase jaspGraphs ];
};
}

View File

@ -0,0 +1,121 @@
{ lib
, stdenv
, fetchFromGitHub
, callPackage
, buildEnv
, linkFarm
, substituteAll
, R
, rPackages
, cmake
, ninja
, pkg-config
, boost
, libarchive
, readstat
, qt6
}:
let
version = "0.18.2";
src = fetchFromGitHub {
owner = "jasp-stats";
repo = "jasp-desktop";
rev = "v${version}";
hash = "sha256-W0wYvk5T9srE1cOyGgahfGxEookdOgVcnzqH9SkFyo8=";
fetchSubmodules = true;
};
inherit (callPackage ./modules.nix {
jasp-src = src;
jasp-version = version;
}) engine modules;
# Merges ${R}/lib/R with all used R packages (even propagated ones)
customREnv = buildEnv {
name = "jasp-${version}-env";
paths = [
"${R}/lib/R"
rPackages.RInside
engine.jaspBase # Should already be propagated from modules, but include it again, just in case
] ++ lib.attrValues modules;
};
modulesDir = linkFarm "jasp-${version}-modules"
(lib.mapAttrsToList (name: drv: { name = name; path = "${drv}/library"; }) modules);
in
stdenv.mkDerivation {
pname = "jasp-desktop";
inherit version src;
patches = [
# remove unused cmake deps, ensure boost is dynamically linked, patch readstat path
(substituteAll {
src = ./cmake.patch;
inherit readstat;
})
];
cmakeFlags = [
"-DGITHUB_PAT=dummy"
"-DGITHUB_PAT_DEF=dummy"
"-DINSTALL_R_FRAMEWORK=OFF"
"-DLINUX_LOCAL_BUILD=OFF"
"-DINSTALL_R_MODULES=OFF"
"-DCUSTOM_R_PATH=${customREnv}"
];
nativeBuildInputs = [
cmake
ninja
pkg-config
qt6.wrapQtAppsHook
];
buildInputs = [
customREnv
boost
libarchive
readstat
] ++ (with qt6; [
qtbase
qtdeclarative
qtwebengine
qtsvg
qt5compat
]);
env.NIX_LDFLAGS = "-L${rPackages.RInside}/library/RInside/lib";
postInstall = ''
# Remove unused cache locations
rm -r $out/lib64 $out/Modules
# Remove flatpak proxy script
rm $out/bin/org.jaspstats.JASP
substituteInPlace $out/share/applications/org.jaspstats.JASP.desktop \
--replace "Exec=org.jaspstats.JASP" "Exec=JASP"
# symlink modules from the store
ln -s ${modulesDir} $out/Modules
'';
passthru = {
inherit modules engine;
env = customREnv;
};
meta = {
changelog = "https://jasp-stats.org/release-notes";
description = "A complete statistical package for both Bayesian and Frequentist statistical methods";
homepage = "https://github.com/jasp-stats/jasp-desktop";
license = lib.licenses.agpl3;
mainProgram = "JASP";
maintainers = with lib.maintainers; [ tomasajt ];
# JASP's cmake build steps are really different on Darwin
# Perhaps the Darwin-specific things could be changed to be the same as Linux
platforms = lib.platforms.linux;
};
}

View File

@ -0,0 +1,23 @@
{ lib, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "klog-time-tracker";
version = "6.2";
src = fetchFromGitHub {
owner = "jotaen";
repo = "klog";
rev = "v${version}";
hash = "sha256-PFYPthrschw6XEf128L7yBygrVR3E3rtATCpxXGFRd4=";
};
vendorHash = "sha256-X5xL/4blWjddJsHwwfLpGjHrfia1sttmmqHjaAIVXVo=";
meta = with lib; {
description = "Command line tool for time tracking in a human-readable, plain-text file format";
homepage = "https://klog.jotaen.net";
license = licenses.mit;
maintainers = [ maintainers.blinry ];
mainProgram = "klog";
};
}

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "kor";
version = "0.3.2";
version = "0.3.3";
src = fetchFromGitHub {
owner = "yonahd";
repo = pname;
rev = "v${version}";
hash = "sha256-Ov+aad+6Tp6Mm+fyjR9+xTYVlRu7uv1kD14AgSFmPMA=";
hash = "sha256-saCX5SNCY0oMEBIfJCKWb+6xciocU65umK3kfgKnpiY=";
};
vendorHash = "sha256-HPcLjeLw3AxqZg2f5v5G4uYX65D7yXaXDZUPUgWnLFA=";
vendorHash = "sha256-xX1P59iyAIBxoECty+Bva23Z50jcJ52moAcWpWUSap4=";
preCheck = ''
HOME=$(mktemp -d)

View File

@ -6,18 +6,20 @@
, pkg-config
, gtk3
, libxml2
, xkeyboard_config
, wrapGAppsHook
, unstableGitUpdater
}:
stdenv.mkDerivation (finalAttrs: {
pname = "labwc-tweaks";
version = "unstable-2023-12-08";
version = "unstable-2024-01-04";
src = fetchFromGitHub {
owner = "labwc";
repo = finalAttrs.pname;
rev = "1c79d6a5ee3ac3d1a6140a1a98ae89674ef36635";
hash = "sha256-RD1VCKVoHsoY7SezY7tjZzomikMgA7N6B5vaYkIo9Es=";
repo = "labwc-tweaks";
rev = "1604f64cc62e4800ee04a6e1c323a48ee8140d83";
hash = "sha256-xFvc+Y03HjSvj846o84Wpk5tEXI49z8xkILSX2oas8A=";
};
nativeBuildInputs = [
@ -35,16 +37,18 @@ stdenv.mkDerivation (finalAttrs: {
strictDeps = true;
postPatch = ''
substituteInPlace stack-lang.c --replace /usr/share /run/current-system/sw/share
sed -i '/{ NULL, "\/usr\/share" },/i { NULL, "/run/current-system/sw/share" },' theme.c
substituteInPlace stack-lang.c --replace /usr/share/X11/xkb ${xkeyboard_config}/share/X11/xkb
substituteInPlace theme.c --replace /usr/share /run/current-system/sw/share
'';
passthru.updateScript = unstableGitUpdater { };
meta = {
homepage = "https://github.com/labwc/labwc-tweaks";
description = "Configuration gui app for labwc";
mainProgram = "labwc-tweaks";
license = lib.licenses.gpl2Plus;
license = lib.licenses.gpl2Only;
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [ romildo ];
maintainers = with lib.maintainers; [ AndersonTorres romildo ];
};
})

View File

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "namespace-cli";
version = "0.0.322";
version = "0.0.328";
src = fetchFromGitHub {
owner = "namespacelabs";
repo = "foundation";
rev = "v${version}";
hash = "sha256-noxzIz3klw6kYW6qe2rmhOVG5N+qu8NlkWeoR4TBne0=";
hash = "sha256-M6hX+muUC4v7Nmu2N8cONCLPJc6pVv6UJ1WO/uSDYnM=";
};
vendorHash = "sha256-/Q8P1m71pqxejVcfzHY+JC3+BPz0r3kc4PgQnNZM0SQ=";
vendorHash = "sha256-AVbRqgk5UldpaqyEmdYDpwzaZEo5r+M3Kwxb3Sh1jLQ=";
subPackages = ["cmd/nsc" "cmd/ns" "cmd/docker-credential-nsc"];

View File

@ -0,0 +1,48 @@
{ lib
, stdenvNoCC
, fetchgit
, fontforge
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "newcomputermodern";
version = "5.1";
src = fetchgit {
url = "https://git.gnu.org.ua/newcm.git";
rev = finalAttrs.version;
hash = "sha256-a6paSdF754jCp4DePbx2in9316H9EjyrAKOQpyc3hEo=";
};
nativeBuildInputs = [ fontforge ];
dontConfigure = true;
buildPhase = ''
runHook preBuild
for i in sfd/*.sfd; do
fontforge -lang=ff -c \
'Open($1);
Generate($1:r + ".otf");
' $i;
done
runHook postBuild
'';
installPhase = ''
runHook preInstall
install -m444 -Dt $out/share/fonts/opentype/public sfd/*.otf
runHook postInstall
'';
meta = {
description = "Computer Modern fonts including matching non-latin alphabets";
homepage = "https://ctan.org/pkg/newcomputermodern";
# "The GUST Font License (GFL), which is a free license, legally
# equivalent to the LaTeX Project Public License (LPPL), version 1.3c or
# later." - GUST website
license = lib.licenses.lppl13c;
maintainers = [ lib.maintainers.drupol ];
platforms = lib.platforms.all;
};
})

View File

@ -1,8 +1,9 @@
{ lib
, rustPlatform
, installShellFiles
, makeWrapper
, makeBinaryWrapper
, fetchFromGitHub
, nix-update-script
, nvd
, use-nom ? true
, nix-output-monitor ? null
@ -11,7 +12,7 @@
assert use-nom -> nix-output-monitor != null;
let
version = "3.4.12";
version = "3.5.1";
runtimeDeps = [ nvd ] ++ lib.optionals use-nom [ nix-output-monitor ];
in
rustPlatform.buildRustPackage {
@ -22,14 +23,14 @@ rustPlatform.buildRustPackage {
owner = "ViperML";
repo = "nh";
rev = "refs/tags/v${version}";
hash = "sha256-V5TQ/1loQnegDjfLh61DxBWEQZivYEBq2kQpT0fn2cQ=";
hash = "sha256-q13oPB1fl45E+7cbV1P1VQt1GtGBaSbrHPtC0Y7q83c=";
};
strictDeps = true;
nativeBuildInputs = [
installShellFiles
makeWrapper
makeBinaryWrapper
];
preFixup = ''
@ -47,7 +48,9 @@ rustPlatform.buildRustPackage {
${lib.optionalString use-nom "--set-default NH_NOM 1"}
'';
cargoHash = "sha256-Ul4DM8WmKvKG32zBXzpdzHZknpTQAVvrxFcEd/C1buA=";
cargoHash = "sha256-Jy873l3ZRBqljzV/GwLbkk1kpO6zNqeGmuMDSKUqyzM=";
passthru.updateScript = nix-update-script { };
meta = {
description = "Yet another nix cli helper";

View File

@ -6,13 +6,13 @@
python3.pkgs.buildPythonApplication rec {
pname = "oelint-adv";
version = "3.26.6";
version = "3.26.12";
format = "setuptools";
src = fetchPypi {
inherit version;
pname = "oelint_adv";
hash = "sha256-RRNuuGpK9c8Cj4FUEHZses3CMDZku/AzY7S9yl5DrSo=";
hash = "sha256-pemFy+MTBE9T/dY93rErlvWCru1TLR7X25/1+GNAFdw=";
};
propagatedBuildInputs = with python3.pkgs; [

View File

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "terrapin-scanner";
version = "1.1.0";
version = "1.1.2";
src = fetchFromGitHub {
owner = "RUB-NDS";
repo = "Terrapin-Scanner";
rev = "refs/tags/v${version}";
hash = "sha256-d0aAs9dT74YQkzDQnmeEo+p/RnPHeG2+SgCCF/t1F+w=";
hash = "sha256-LBcoD/adIcda6ZxlEog8ArW0thr3g14fvEMFfgxiTsI=";
};
vendorHash = "sha256-skYMlL9SbBoC89tFCTIzyRViEJaviXENASEqr6zSvoo=";
vendorHash = "sha256-x3fzs/TNGRo+u+RufXzzjDCeQayEZIKlgokdEQJRNaI=";
ldflags = [
"-s"

View File

@ -2,7 +2,7 @@
let
themeName = "Dracula";
version = "unstable-2023-12-16";
version = "unstable-2024-01-08";
in
stdenvNoCC.mkDerivation {
pname = "dracula-theme";
@ -11,8 +11,8 @@ stdenvNoCC.mkDerivation {
src = fetchFromGitHub {
owner = "dracula";
repo = "gtk";
rev = "80d5a3fedf280e9cc7f2df3b100a1082c3bcd1cc";
hash = "sha256-BPL0Msva1/sPQKPeRJHgvU+xXU3m8b2E6aDBLmXbkkA=";
rev = "f3c876d8c97f9bb504c98592a8d96770e70585bb";
hash = "sha256-jRq/rUVk/1+LoQaD5sytjai0yZOf+544z0TfxhMUThg=";
};
propagatedUserEnvPkgs = [

View File

@ -1,49 +0,0 @@
{ lib, stdenv, fetchgit, mpfr, m4, binutils, emacs, zlib, which
, texinfo, libX11, xorgproto, libXi, gmp, readline
, libXext, libXt, libXaw, libXmu } :
assert stdenv ? cc ;
assert stdenv.cc.isGNU ;
assert stdenv.cc ? libc ;
assert stdenv.cc.libc != null ;
stdenv.mkDerivation rec {
pname = "gcl";
version = "2.6.13pre124";
src = fetchgit {
sha256 = "sha256-e4cUQlNSfdz+B3urlZ82pf7fTc6aoloUyDDorAUi5kc=";
url = "https://git.savannah.gnu.org/r/gcl.git";
rev = "refs/tags/Version_${builtins.replaceStrings ["."] ["_"] version}";
};
postPatch = ''
sed -e 's/<= obj-date/<= (if (= 0 obj-date) 1 obj-date)/' -i lsp/make.lisp
'';
sourceRoot = "${src.name}/gcl";
# breaks when compiling in parallel
enableParallelBuilding = false;
patches = [];
buildInputs = [
mpfr m4 binutils emacs gmp
libX11 xorgproto libXi
libXext libXt libXaw libXmu
zlib which texinfo readline
];
configureFlags = [
"--enable-ansi"
];
hardeningDisable = [ "pic" "bindnow" ];
meta = {
description = "GNU Common Lisp compiler working via GCC";
maintainers = lib.teams.lisp.members;
platforms = lib.platforms.linux;
};
}

View File

@ -46,11 +46,11 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "go";
version = "1.20.12";
version = "1.20.13";
src = fetchurl {
url = "https://go.dev/dl/go${finalAttrs.version}.src.tar.gz";
hash = "sha256-xb+TR1HTHDFcHQu1+wIpZUX6bQiSNWb3pa/sgfLtJ9Y=";
hash = "sha256-D+dFxTDy8dZxk688XqJSRr4HeYnsUXjfJm6XXzUyRJ4=";
};
strictDeps = true;

View File

@ -1,7 +1,7 @@
{ lib, stdenv, fetchFromGitHub, glfw, freetype, openssl, makeWrapper, upx, boehmgc, xorg, binaryen, darwin }:
let
version = "0.4.3";
version = "0.4.4";
ptraceSubstitution = ''
#include <sys/types.h>
#include <sys/ptrace.h>
@ -10,12 +10,12 @@ let
# So we fix its rev to correspond to the V version.
vc = stdenv.mkDerivation {
pname = "v.c";
version = "0.4.3";
version = "0.4.4";
src = fetchFromGitHub {
owner = "vlang";
repo = "vc";
rev = "5e691a82c01957870b451e06216a9fb3a4e83a18";
hash = "sha256-Ti2b88NDG1pppj34BeK8+UsT2HiG/jcAF2mHgiBBRaI=";
rev = "66eb8eae253d31fa5622e35a69580d9ad8efcccb";
hash = "sha256-YGlzr0Qq7+NtrnbaFPBuclzjOZBOnTe3BOhsuwdsQ5c=";
};
# patch the ptrace reference for darwin
@ -46,7 +46,7 @@ stdenv.mkDerivation {
owner = "vlang";
repo = "v";
rev = version;
hash = "sha256-ZFBQD7SP38VnEMoOnwr/n8zZuLtR7GR3OCYhvfz3apI=";
hash = "sha256-Aqecw8K+igHx5R34lQiWtdNfeGn+umcjcS4w0vXgpLM=";
};
propagatedBuildInputs = [ glfw freetype openssl ]

View File

@ -72,7 +72,7 @@ attrsets.filterAttrs (attr: _: (builtins.hasAttr attr prev)) {
env.autoPatchelfIgnoreMissingDeps =
prevAttrs.env.autoPatchelfIgnoreMissingDeps + " libnvrm_gpu.so libnvrm_mem.so libnvdla_runtime.so";
# `cuda_compat` only works on aarch64-linux, and only when building for Jetson devices.
brokenConditions = prevAttrs.brokenConditions // {
badPlatformsConditions = prevAttrs.badPlatformsConditions // {
"Trying to use cuda_compat on aarch64-linux targeting non-Jetson devices" =
!final.flags.isJetsonBuild;
};

View File

@ -180,10 +180,17 @@ backendStdenv.mkDerivation rec {
# This dependency is asked for by target-linux-x64/CollectX/RedHat/x86_64/libssl.so.10
# - do we even want to use nvidia-shipped libssl?
"libcom_err.so.2"
] ++ lib.optionals (lib.versionOlder version "10.1") [
# For Cuda 10.0, nVidia also shipped a jre implementation which needed
# two old versions of ffmpeg which are not available in nixpkgs
"libavcodec.so.54"
"libavcodec.so.53"
"libavformat.so.54"
"libavformat.so.53"
];
preFixup =
if lib.versionOlder version "11" then
if (lib.versionAtLeast version "10.1" && lib.versionOlder version "11") then
''
${lib.getExe' patchelf "patchelf"} $out/targets/*/lib/libnvrtc.so --add-needed libnvrtc-builtins.so
''

View File

@ -1,10 +1,18 @@
# Shims to mimic the shape of ../modules/generic/manifests/{feature,redistrib}/release.nix
{package, redistArch}:
{
featureRelease.${redistArch}.outputs = {
lib = true;
static = true;
dev = true;
lib,
package,
# redistArch :: String
# String is "unsupported" if the given architecture is unsupported.
redistArch,
}:
{
featureRelease = lib.optionalAttrs (redistArch != "unsupported") {
${redistArch}.outputs = {
lib = true;
static = true;
dev = true;
};
};
redistribRelease = {
name = "NVIDIA CUDA Deep Neural Network library (cuDNN)";

View File

@ -92,6 +92,7 @@ let
# A release is supported if it has a libPath that matches our CUDA version for our platform.
# LibPath are not constant across the same release -- one platform may support fewer
# CUDA versions than another.
# redistArch :: String
redistArch = flags.getRedistArch hostPlatform.system;
# platformIsSupported :: Manifests -> Boolean
platformIsSupported =

View File

@ -131,39 +131,29 @@ let
# `linux-aarch64` redist (which is for Jetson devices) if we're building any Jetson devices.
# Since both are based on aarch64, we can only have one or the other, otherwise there's an
# ambiguity as to which should be used.
# NOTE: This function *will* be called by unsupported systems because `cudaPackages` is part of
# `all-packages.nix`, which is evaluated on all systems. As such, we need to handle unsupported
# systems gracefully.
# getRedistArch :: String -> String
getRedistArch =
nixSystem:
if nixSystem == "aarch64-linux" then
if jetsonTargets != [] then "linux-aarch64" else "linux-sbsa"
else if nixSystem == "x86_64-linux" then
"linux-x86_64"
else if nixSystem == "ppc64le-linux" then
"linux-ppc64le"
else if nixSystem == "x86_64-windows" then
"windows-x86_64"
else
"unsupported";
getRedistArch = nixSystem: attrsets.attrByPath [ nixSystem ] "unsupported" {
aarch64-linux = if jetsonTargets != [] then "linux-aarch64" else "linux-sbsa";
x86_64-linux = "linux-x86_64";
ppc64le-linux = "linux-ppc64le";
x86_64-windows = "windows-x86_64";
};
# Maps NVIDIA redist arch to Nix system.
# It is imperative that we include the boolean condition based on jetsonTargets to ensure
# we don't advertise availability of packages only available on server-grade ARM
# as being available for the Jetson, since both `linux-sbsa` and `linux-aarch64` are
# mapped to the Nix system `aarch64-linux`.
getNixSystem =
redistArch:
if redistArch == "linux-sbsa" && jetsonTargets == [] then
"aarch64-linux"
else if redistArch == "linux-aarch64" && jetsonTargets != [] then
"aarch64-linux"
else if redistArch == "linux-x86_64" then
"x86_64-linux"
else if redistArch == "linux-ppc64le" then
"ppc64le-linux"
else if redistArch == "windows-x86_64" then
"x86_64-windows"
else
"unsupported-${redistArch}";
# NOTE: This function *will* be called by unsupported systems because `cudaPackages` is part of
# `all-packages.nix`, which is evaluated on all systems. As such, we need to handle unsupported
# systems gracefully.
# getNixSystem :: String -> String
getNixSystem = redistArch: attrsets.attrByPath [ redistArch ] "unsupported-${redistArch}" {
linux-sbsa = "aarch64-linux";
linux-aarch64 = "aarch64-linux";
linux-x86_64 = "x86_64-linux";
linux-ppc64le = "ppc64le-linux";
windows-x86_64 = "x86_64-windows";
};
formatCapabilities =
{

View File

@ -43,6 +43,9 @@ let
# Get the redist architectures for which package provides distributables.
# These are used by meta.platforms.
supportedRedistArchs = builtins.attrNames featureRelease;
# redistArch :: String
# The redistArch is the name of the architecture for which the redistributable is built.
# It is `"unsupported"` if the redistributable is not supported on the target platform.
redistArch = flags.getRedistArch hostPlatform.system;
in
backendStdenv.mkDerivation (
@ -87,8 +90,18 @@ backendStdenv.mkDerivation (
"sample"
"python"
];
# Filter out outputs that don't exist in the redistributable.
# NOTE: In the case the redistributable isn't supported on the target platform,
# we will have `outputs = [ "out" ] ++ possibleOutputs`. This is of note because platforms which
# aren't supported would otherwise have evaluation errors when trying to access outputs other than `out`.
# The alternative would be to have `outputs = [ "out" ]` when`redistArch = "unsupported"`, but that would
# require adding guards throughout the entirety of the CUDA package set to ensure `cudaSupport` is true --
# recall that OfBorg will evaluate packages marked as broken and that `cudaPackages` will be evaluated with
# `cudaSupport = false`!
additionalOutputs =
if redistArch == "unsupported" then possibleOutputs else builtins.filter hasOutput possibleOutputs;
if redistArch == "unsupported"
then possibleOutputs
else builtins.filter hasOutput possibleOutputs;
# The out output is special -- it's the default output and we always include it.
outputs = [ "out" ] ++ additionalOutputs;
in
@ -112,21 +125,32 @@ backendStdenv.mkDerivation (
python = ["**/*.whl"];
};
# Useful for introspecting why something went wrong.
# Maps descriptions of why the derivation would be marked broken to
# booleans indicating whether that description is true.
brokenConditions = {};
# Useful for introspecting why something went wrong. Maps descriptions of why the derivation would be marked as
# broken on have badPlatforms include the current platform.
src = fetchurl {
url =
if (builtins.hasAttr redistArch redistribRelease) then
"https://developer.download.nvidia.com/compute/${redistName}/redist/${
redistribRelease.${redistArch}.relative_path
}"
else
"cannot-construct-an-url-for-the-${redistArch}-platform";
sha256 = redistribRelease.${redistArch}.sha256 or lib.fakeHash;
};
# brokenConditions :: AttrSet Bool
# Sets `meta.broken = true` if any of the conditions are true.
# Example: Broken on a specific version of CUDA or when a dependency has a specific version.
brokenConditions = { };
# badPlatformsConditions :: AttrSet Bool
# Sets `meta.badPlatforms = meta.platforms` if any of the conditions are true.
# Example: Broken on a specific architecture when some condition is met (like targeting Jetson).
badPlatformsConditions = { };
# src :: Optional Derivation
src = trivial.pipe redistArch [
# If redistArch doesn't exist in redistribRelease, return null.
(redistArch: redistribRelease.${redistArch} or null)
# If the release is non-null, fetch the source; otherwise, return null.
(trivial.mapNullable (
{ relative_path, sha256, ... }:
fetchurl {
url = "https://developer.download.nvidia.com/compute/${redistName}/redist/${relative_path}";
inherit sha256;
}
))
];
# Handle the pkg-config files:
# 1. No FHS
@ -297,17 +321,18 @@ backendStdenv.mkDerivation (
meta = {
description = "${redistribRelease.name}. By downloading and using the packages you accept the terms and conditions of the ${finalAttrs.meta.license.shortName}";
sourceProvenance = [sourceTypes.binaryNativeCode];
platforms =
lists.concatMap
(
redistArch:
let
nixSystem = flags.getNixSystem redistArch;
in
lists.optionals (!(strings.hasPrefix "unsupported-" nixSystem)) [ nixSystem ]
)
supportedRedistArchs;
broken = lists.any trivial.id (attrsets.attrValues finalAttrs.brokenConditions);
platforms = trivial.pipe supportedRedistArchs [
# Map each redist arch to the equivalent nix system or null if there is no equivalent.
(builtins.map flags.getNixSystem)
# Filter out unsupported systems
(builtins.filter (nixSystem: !(strings.hasPrefix "unsupported-" nixSystem)))
];
badPlatforms =
let
isBadPlatform = lists.any trivial.id (attrsets.attrValues finalAttrs.badPlatformsConditions);
in
lists.optionals isBadPlatform finalAttrs.meta.platforms;
license = licenses.unfree;
maintainers = teams.cuda.members;
# Force the use of the default, fat output by default (even though `dev` exists, which

View File

@ -20,7 +20,7 @@
# The featureRelease is used to populate meta.platforms (by way of looking at the attribute names)
# and to determine the outputs of the package.
# shimFn :: {package, redistArch} -> AttrSet
shimsFn ? ({package, redistArch}: throw "shimsFn must be provided"),
shimsFn ? (throw "shimsFn must be provided"),
# fixupFn :: Path
# A path (or nix expression) to be evaluated with callPackage and then
# provided to the package's overrideAttrs function.
@ -29,16 +29,8 @@
# - cudaVersion
# - mkVersionedPackageName
# - package
fixupFn ? (
{
final,
cudaVersion,
mkVersionedPackageName,
package,
...
}:
throw "fixupFn must be provided"
),
# - ...
fixupFn ? (throw "fixupFn must be provided"),
}:
let
inherit (lib)
@ -80,9 +72,11 @@ let
&& strings.versionAtLeast package.maxCudaVersion cudaVersion;
# Get all of the packages for our given platform.
# redistArch :: String
# Value is `"unsupported"` if the platform is not supported.
redistArch = flags.getRedistArch hostPlatform.system;
allReleases = builtins.concatMap (xs: xs) (builtins.attrValues releaseSets);
allReleases = lists.flatten (builtins.attrValues releaseSets);
# All the supported packages we can build for our platform.
# perSystemReleases :: List Package

View File

@ -100,6 +100,9 @@ backendStdenv.mkDerivation (
homepage = "https://developer.nvidia.com/nccl";
license = licenses.bsd3;
platforms = platforms.linux;
# NCCL is not supported on Jetson, because it does not use NVLink or PCI-e for inter-GPU communication.
# https://forums.developer.nvidia.com/t/can-jetson-orin-support-nccl/232845/9
badPlatforms = lib.optionals cudaFlags.isJetsonBuild [ "aarch64-linux" ];
maintainers =
with maintainers;
[

View File

@ -36,7 +36,9 @@ backendStdenv.mkDerivation {
buildInputs =
lib.optionals (lib.versionOlder cudaVersion "11.4") [cudatoolkit]
++ lib.optionals (lib.versionAtLeast cudaVersion "11.4") [
libcublas
libcublas.dev
libcublas.lib
libcublas.static
cuda_cudart
]
++ lib.optionals (lib.versionAtLeast cudaVersion "12.0") [cuda_cccl];

View File

@ -11,18 +11,17 @@
}:
let
inherit (lib)
attrsets
maintainers
meta
strings
versions
;
targetArch =
if hostPlatform.isx86_64 then
"x86_64-linux-gnu"
else if hostPlatform.isAarch64 then
"aarch64-linux-gnu"
else
"unsupported";
# targetArch :: String
targetArch = attrsets.attrByPath [ hostPlatform.system ] "unsupported" {
x86_64-linux = "x86_64-linux-gnu";
aarch64-linux = "aarch64-linux-gnu";
};
in
finalAttrs: prevAttrs: {
# Useful for inspecting why something went wrong.
@ -69,7 +68,7 @@ finalAttrs: prevAttrs: {
preInstall =
(prevAttrs.preInstall or "")
+ ''
+ strings.optionalString (targetArch != "unsupported") ''
# Replace symlinks to bin and lib with the actual directories from targets.
for dir in bin lib; do
rm "$dir"

View File

@ -1,13 +1,21 @@
# Shims to mimic the shape of ../modules/generic/manifests/{feature,redistrib}/release.nix
{package, redistArch}:
{
featureRelease.${redistArch}.outputs = {
bin = true;
lib = true;
static = true;
dev = true;
sample = true;
python = true;
lib,
package,
# redistArch :: String
# String is `"unsupported"` if the given architecture is unsupported.
redistArch,
}:
{
featureRelease = lib.optionalAttrs (redistArch != "unsupported") {
${redistArch}.outputs = {
bin = true;
lib = true;
static = true;
dev = true;
sample = true;
python = true;
};
};
redistribRelease = {
name = "TensorRT: a high-performance deep learning interface";

View File

@ -23,14 +23,6 @@
}:
let
emilua-http-wrap = fetchFromGitHub {
owner = "BoostGSoC14";
repo = "boost.http";
rev = "93ae527c89ffc517862e1f5f54c8a257278f1195";
name = "emilua-http";
hash = "sha256-MN29YwkTi0TJ2V+vRI9nUIxvJKsG+j3nT3o0yQB3p0o=";
};
trial-protocol-wrap = fetchFromGitHub {
owner = "breese";
repo = "trial.protocol";
@ -41,13 +33,13 @@ let
in
stdenv.mkDerivation rec {
pname = "emilua";
version = "0.5.1";
version = "0.6.0";
src = fetchFromGitLab {
owner = "emilua";
repo = "emilua";
rev = "v${version}";
hash = "sha256-5NzxZHdQGw3qLEzW/mv1sLCuqehn5pjUYkCna4PUzDQ=";
hash = "sha256-cW2b+jUQT60hCCirBzxZltzA7KvBihnzWNPkKDID6kU=";
};
buildInputs = [
@ -84,20 +76,17 @@ stdenv.mkDerivation rec {
};
mesonFlags = [
(lib.mesonOption "version_suffix" "-nixpkgs1")
(lib.mesonBool "enable_http" true)
(lib.mesonBool "enable_file_io" true)
(lib.mesonBool "enable_io_uring" true)
(lib.mesonBool "enable_tests" true)
(lib.mesonBool "enable_manpages" true)
(lib.mesonOption "version_suffix" "-nixpkgs1")
];
postPatch = ''
pushd subprojects
cp -r ${emilua-http-wrap} emilua-http
cp -r ${trial-protocol-wrap} trial-protocol
chmod +w emilua-http trial-protocol
cp "packagefiles/emilua-http/meson.build" "emilua-http/"
chmod +w trial-protocol
cp "packagefiles/trial.protocol/meson.build" "trial-protocol/"
popd

View File

@ -0,0 +1,14 @@
{ callPackage, fetchurl, fetchpatch, ... } @ args:
callPackage ./generic.nix (args // rec {
version = "1.84.0";
src = fetchurl {
urls = [
"mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2"
"https://boostorg.jfrog.io/artifactory/main/release/${version}/source/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2"
];
# SHA256 from http://www.boost.org/users/history/version_1_84_0.html
sha256 = "cc4b893acf645c9d4b698e9a0f08ca8846aa5d6c68275c14c3e7949c24109454";
};
})

View File

@ -24,4 +24,5 @@ in {
boost181 = makeBoost ./1.81.nix;
boost182 = makeBoost ./1.82.nix;
boost183 = makeBoost ./1.83.nix;
boost184 = makeBoost ./1.84.nix;
}

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