Merge master into staging-next
This commit is contained in:
commit
bb48723d63
|
@ -128,7 +128,7 @@ You will need to run the build process once to fix the hash to correspond to you
|
|||
|
||||
###### FOD {#fixed-output-derivation}
|
||||
|
||||
A fixed output derivation will download mix dependencies from the internet. To ensure reproducibility, a hash will be supplied. Note that mix is relatively reproducible. An FOD generating a different hash on each run hasn't been observed (as opposed to npm where the chances are relatively high). See [elixir_ls](https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/beam-modules/elixir-ls/default.nix) for a usage example of FOD.
|
||||
A fixed output derivation will download mix dependencies from the internet. To ensure reproducibility, a hash will be supplied. Note that mix is relatively reproducible. An FOD generating a different hash on each run hasn't been observed (as opposed to npm where the chances are relatively high). See [elixir-ls](https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/beam-modules/elixir-ls/default.nix) for a usage example of FOD.
|
||||
|
||||
Practical steps
|
||||
|
||||
|
|
|
@ -14301,6 +14301,16 @@
|
|||
githubId = 22163194;
|
||||
name = "Stel Abrego";
|
||||
};
|
||||
stepbrobd = {
|
||||
name = "StepBroBD";
|
||||
github = "StepBroBD";
|
||||
githubId = 81826728;
|
||||
email = "Hi@StepBroBD.com";
|
||||
matrix = "@stepbrobd:matrix.org";
|
||||
keys = [{
|
||||
fingerprint = "5D8B FA8B 286A C2EF 6EE4 8598 F742 B72C 8926 1A51";
|
||||
}];
|
||||
};
|
||||
stephank = {
|
||||
email = "nix@stephank.nl";
|
||||
matrix = "@skochen:matrix.org";
|
||||
|
|
|
@ -22,13 +22,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "yoshimi";
|
||||
version = "2.2.2.1";
|
||||
version = "2.2.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Yoshimi";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-fkN5VNiXRVKCCAyrG6Z2s5qLEtHQNB2874VprhHBhAg=";
|
||||
hash = "sha256-zVIOHm84wx6ZFK0seS9fWZfujDz259AXTv7zljbwrUk=";
|
||||
};
|
||||
|
||||
sourceRoot = "source/src";
|
||||
|
|
|
@ -2675,8 +2675,8 @@ let
|
|||
mktplcRef = {
|
||||
name = "code-spell-checker";
|
||||
publisher = "streetsidesoftware";
|
||||
version = "2.19.0";
|
||||
sha256 = "sha256-c95u++tkK8hToauulY8faNITUmsCBEeC2B8mHY0oEmA=";
|
||||
version = "2.20.3";
|
||||
sha256 = "sha256-28ybNBobXoq194d9VGD9kOq/OWscJkSlgSZ7ViaNQtw=";
|
||||
};
|
||||
meta = {
|
||||
changelog = "https://marketplace.visualstudio.com/items/streetsidesoftware.code-spell-checker/changelog";
|
||||
|
|
|
@ -31,23 +31,23 @@ in
|
|||
{
|
||||
pdfstudioviewer = callPackage ./common.nix rec {
|
||||
inherit desktopName pname program year;
|
||||
version = "${year}.1.0";
|
||||
version = "${year}.2.2";
|
||||
longDescription = ''
|
||||
PDF Studio Viewer is an easy to use, full-featured PDF editing software. This is the free edition. For the standard/pro edition, see the package pdfstudio.
|
||||
'';
|
||||
src = fetchurl {
|
||||
url = "https://web.archive.org/web/20220909093140/https://download.qoppa.com/pdfstudioviewer/PDFStudioViewer_linux64.deb";
|
||||
sha256 = "sha256-za+a5vGkINLFvFoZdnB++4VGE9rfdfZf5HFNw/Af1AA=";
|
||||
url = "https://download.qoppa.com/pdfstudioviewer/PDFStudioViewer_linux64.deb";
|
||||
sha256 = "sha256-cc8YjrMsYZqgmwp5+AA+HsqzjxzFcTT/ga31NQz/OWc=";
|
||||
};
|
||||
jdk = jdk11;
|
||||
};
|
||||
|
||||
pdfstudio2021 = callPackage ./common.nix rec {
|
||||
inherit desktopName longDescription pname program year;
|
||||
version = "${year}.2.0";
|
||||
version = "${year}.2.1";
|
||||
src = fetchurl {
|
||||
url = "https://download.qoppa.com/pdfstudio/v${year}/PDFStudio_v${dot2dash version}_linux64.deb";
|
||||
sha256 = "sha256-wQgVWz2kS+XkrqvCAUishizfDrCwGyVDAAU4Yzj4uYU=";
|
||||
sha256 = "sha256-yELpza2C3HJJIP+ZQP7x3Tfez0Nl6ctCbHCmTmpX3jo=";
|
||||
};
|
||||
extraBuildInputs = [
|
||||
(lib.getLib stdenv.cc.cc) # for libstdc++.so.6 and libgomp.so.1
|
||||
|
@ -57,10 +57,10 @@ in
|
|||
|
||||
pdfstudio2022 = callPackage ./common.nix rec {
|
||||
inherit desktopName longDescription pname program year;
|
||||
version = "${year}.1.3";
|
||||
version = "${year}.2.2";
|
||||
src = fetchurl {
|
||||
url = "https://download.qoppa.com/pdfstudio/v${year}/PDFStudio_v${dot2dash version}_linux64.deb";
|
||||
sha256 = "sha256-B3RrftuKsPWUWP9hwnq4i311hgZgwZLqG1pJLdilfQI=";
|
||||
sha256 = "sha256-CP2cCmvedQJ/xjZWQ4wj6UZRqCsU5qK3Ta83TUVJyts=";
|
||||
};
|
||||
extraBuildInputs = [
|
||||
(lib.getLib stdenv.cc.cc) # for libstdc++.so.6 and libgomp.so.1
|
||||
|
|
|
@ -19,9 +19,9 @@
|
|||
}
|
||||
},
|
||||
"beta": {
|
||||
"version": "112.0.5615.20",
|
||||
"sha256": "0qxifnc2xk2zkmpzc1pzd95ym3i829qzgzd83qh7ah9p64c76f9y",
|
||||
"sha256bin64": "11c7k87fnfhaynhpp2rjzpzydrl096fjx3gw589nvq1lckbg9nsd",
|
||||
"version": "112.0.5615.29",
|
||||
"sha256": "0k9dn1gzfr2j353ppza1nypj0a4b27p9n742cms3z8583da8kw6p",
|
||||
"sha256bin64": "04m77ndsfygpb1g11iyscvfszgykbr5n3s6bh1shnpkpdbvx3dki",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2023-02-17",
|
||||
|
@ -32,9 +32,9 @@
|
|||
}
|
||||
},
|
||||
"dev": {
|
||||
"version": "113.0.5638.0",
|
||||
"sha256": "0v4hminx765swv0iakg5qw7rk6zc67cn5p9x625jaizz50ahpfib",
|
||||
"sha256bin64": "07snjlizj30mzcm5fbsg6ibd4jqmcwiykdwrpqmdqq902c3gwc3r",
|
||||
"version": "113.0.5653.0",
|
||||
"sha256": "1s1as01javi8z4sax70rx4cn03lwfis75rkv58yk7sfhj3qafzhk",
|
||||
"sha256bin64": "1i1zkdq8qzm8r5lg10qmqaycx45m2qc9fzjql0si0amy81sdkfsn",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2023-02-24",
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"packageVersion": "111.0-2",
|
||||
"packageVersion": "111.0-3",
|
||||
"source": {
|
||||
"rev": "111.0-2",
|
||||
"sha256": "0kz365pldyancbq029b3v0wpc1jchzywqjriy6276f1kwssyp8pr"
|
||||
"rev": "111.0-3",
|
||||
"sha256": "09vb9vi9rrm5y8ym21g52lrbbp6w4k6qpk9q13k0vxzf26wmwk5n"
|
||||
},
|
||||
"firefox": {
|
||||
"version": "111.0",
|
||||
|
|
|
@ -151,7 +151,8 @@ stdenv.mkDerivation rec {
|
|||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc ] }"
|
||||
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
|
||||
# Currently crashes see https://github.com/NixOS/nixpkgs/issues/222043
|
||||
#--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
|
||||
--suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
|
||||
)
|
||||
|
||||
|
|
|
@ -7,16 +7,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "seaweedfs";
|
||||
version = "3.43";
|
||||
version = "3.44";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "seaweedfs";
|
||||
repo = "seaweedfs";
|
||||
rev = version;
|
||||
hash = "sha256-u2HGawshd2OdkchgpZUN6P2fTBSwJk+RjHAYYEpPgCg=";
|
||||
hash = "sha256-buis2OSN/mvI38LvRthy+9xPbpHj+guXNoTEuDUcKYw=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-Q6B+iqUb97ZayjYDe4OOhkWj1Cxy+ILQxxEU2Jw/Als=";
|
||||
vendorHash = "sha256-U8K2aQMVJsJWESN5BWjwrEWGzGTB8c/eMh0GJ75Xs7U=";
|
||||
|
||||
subPackages = [ "weed" ];
|
||||
|
||||
|
|
|
@ -11,11 +11,14 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "sha256:09rdwcj70lkamkhd895p284rfpz4bcnsf55mcimhiqncd2a21ml7";
|
||||
};
|
||||
|
||||
# Fix build with Why3 1.5
|
||||
patches = fetchpatch {
|
||||
url = "https://github.com/EasyCrypt/easycrypt/commit/d226387432deb7f22738e1d5579346a2cbc9be7a.patch";
|
||||
sha256 = "sha256:1zvxij35fnr3h9b5wdl8ml17aqfx3a39rd4mgwmdvkapbg3pa4lm";
|
||||
};
|
||||
patches = lib.lists.map fetchpatch [
|
||||
# Fix build with Why3 1.5
|
||||
{ url = "https://github.com/EasyCrypt/easycrypt/commit/d226387432deb7f22738e1d5579346a2cbc9be7a.patch";
|
||||
hash = "sha256:1zvxij35fnr3h9b5wdl8ml17aqfx3a39rd4mgwmdvkapbg3pa4lm"; }
|
||||
# Fix build with Why3 1.6
|
||||
{ url = "https://github.com/EasyCrypt/easycrypt/commit/876f2ed50a0434afdf2fb20e7c50b8a3e26bb06e.patch";
|
||||
hash = "sha256-UycfLZWYHNsppb7qHSRaAF4Y0UnwoFueEG0wUcBUPYE="; }
|
||||
];
|
||||
|
||||
nativeBuildInputs = with ocamlPackages; [
|
||||
dune_3
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "why3";
|
||||
version = "1.5.1";
|
||||
version = "1.6.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://why3.gitlabpages.inria.fr/releases/${pname}-${version}.tar.gz";
|
||||
sha256 = "sha256-vNR7WeiSvg+763GcovoZBFDfncekJMeqNegP4fVw06I=";
|
||||
hash = "sha256-hFvM6kHScaCtcHCc6Vezl9CR7BFbiKPoTEh7kj0ZJxw=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
{ bash
|
||||
, brotli
|
||||
, buildGoModule
|
||||
, common-updater-scripts
|
||||
, coreutils
|
||||
, curl
|
||||
, fetchurl
|
||||
, forgejo
|
||||
, git
|
||||
, gzip
|
||||
, jq
|
||||
|
@ -15,6 +17,8 @@
|
|||
, pam
|
||||
, pamSupport ? true
|
||||
, sqliteSupport ? true
|
||||
, xorg
|
||||
, runCommand
|
||||
, stdenv
|
||||
, writeShellApplication
|
||||
}:
|
||||
|
@ -66,46 +70,60 @@ buildGoModule rec {
|
|||
--prefix PATH : ${lib.makeBinPath [ bash git gzip openssh ]}
|
||||
'';
|
||||
|
||||
passthru.tests = nixosTests.forgejo;
|
||||
passthru = {
|
||||
data-compressed = runCommand "forgejo-data-compressed" {
|
||||
nativeBuildInputs = [ brotli xorg.lndir ];
|
||||
} ''
|
||||
mkdir $out
|
||||
lndir ${forgejo.data}/ $out/
|
||||
|
||||
passthru.updateScript = lib.getExe (writeShellApplication {
|
||||
name = "update-forgejo";
|
||||
runtimeInputs = [
|
||||
common-updater-scripts
|
||||
coreutils
|
||||
curl
|
||||
jq
|
||||
nix
|
||||
];
|
||||
text = ''
|
||||
releases=$(curl "https://codeberg.org/api/v1/repos/forgejo/forgejo/releases?draft=false&pre-release=false&limit=1" \
|
||||
--silent \
|
||||
--header "accept: application/json")
|
||||
|
||||
stable=$(jq '.[0]
|
||||
| .tag_name[1:] as $version
|
||||
| ("forgejo-src-\($version).tar.gz") as $filename
|
||||
| { $version, html_url } + (.assets | map(select(.name | startswith($filename)) | {(.name | split(".") | last): .browser_download_url}) | add)' \
|
||||
<<< "$releases")
|
||||
|
||||
archive_url=$(jq -r .gz <<< "$stable")
|
||||
checksum_url=$(jq -r .sha256 <<< "$stable")
|
||||
release_url=$(jq -r .html_url <<< "$stable")
|
||||
version=$(jq -r .version <<< "$stable")
|
||||
|
||||
if [[ "${version}" = "$version" ]]; then
|
||||
echo "No new version found (already at $version)"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "Release: $release_url"
|
||||
|
||||
sha256=$(curl "$checksum_url" --silent | cut --delimiter " " --fields 1)
|
||||
sri_hash=$(nix hash to-sri --type sha256 "$sha256")
|
||||
|
||||
update-source-version "${pname}" "$version" "$sri_hash" "$archive_url"
|
||||
# Create static gzip and brotli files
|
||||
find -L $out -type f -regextype posix-extended -iregex '.*\.(css|html|js|svg|ttf|txt)' \
|
||||
-exec gzip --best --keep --force {} ';' \
|
||||
-exec brotli --best --keep --no-copy-stat {} ';'
|
||||
'';
|
||||
});
|
||||
|
||||
tests = nixosTests.forgejo;
|
||||
|
||||
updateScript = lib.getExe (writeShellApplication {
|
||||
name = "update-forgejo";
|
||||
runtimeInputs = [
|
||||
common-updater-scripts
|
||||
coreutils
|
||||
curl
|
||||
jq
|
||||
nix
|
||||
];
|
||||
text = ''
|
||||
releases=$(curl "https://codeberg.org/api/v1/repos/forgejo/forgejo/releases?draft=false&pre-release=false&limit=1" \
|
||||
--silent \
|
||||
--header "accept: application/json")
|
||||
|
||||
stable=$(jq '.[0]
|
||||
| .tag_name[1:] as $version
|
||||
| ("forgejo-src-\($version).tar.gz") as $filename
|
||||
| { $version, html_url } + (.assets | map(select(.name | startswith($filename)) | {(.name | split(".") | last): .browser_download_url}) | add)' \
|
||||
<<< "$releases")
|
||||
|
||||
archive_url=$(jq -r .gz <<< "$stable")
|
||||
checksum_url=$(jq -r .sha256 <<< "$stable")
|
||||
release_url=$(jq -r .html_url <<< "$stable")
|
||||
version=$(jq -r .version <<< "$stable")
|
||||
|
||||
if [[ "${version}" = "$version" ]]; then
|
||||
echo "No new version found (already at $version)"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "Release: $release_url"
|
||||
|
||||
sha256=$(curl "$checksum_url" --silent | cut --delimiter " " --fields 1)
|
||||
sri_hash=$(nix hash to-sri --type sha256 "$sha256")
|
||||
|
||||
update-source-version "${pname}" "$version" "$sri_hash" "$archive_url"
|
||||
'';
|
||||
});
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "A self-hosted lightweight software forge";
|
||||
|
|
|
@ -5,11 +5,15 @@
|
|||
, makeWrapper
|
||||
, git
|
||||
, bash
|
||||
, gitea
|
||||
, gzip
|
||||
, openssh
|
||||
, pam
|
||||
, sqliteSupport ? true
|
||||
, pamSupport ? true
|
||||
, runCommand
|
||||
, brotli
|
||||
, xorg
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
|
@ -61,7 +65,21 @@ buildGoModule rec {
|
|||
--prefix PATH : ${lib.makeBinPath [ bash git gzip openssh ]}
|
||||
'';
|
||||
|
||||
passthru.tests = nixosTests.gitea;
|
||||
passthru = {
|
||||
data-compressed = runCommand "gitea-data-compressed" {
|
||||
nativeBuildInputs = [ brotli xorg.lndir ];
|
||||
} ''
|
||||
mkdir $out
|
||||
lndir ${gitea.data}/ $out/
|
||||
|
||||
# Create static gzip and brotli files
|
||||
find -L $out -type f -regextype posix-extended -iregex '.*\.(css|html|js|svg|ttf|txt)' \
|
||||
-exec gzip --best --keep --force {} ';' \
|
||||
-exec brotli --best --keep --no-copy-stat {} ';'
|
||||
'';
|
||||
|
||||
tests = nixosTests.gitea;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Git with a cup of tea";
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
, libthai
|
||||
, pango
|
||||
, pcre
|
||||
, utillinux
|
||||
, util-linux
|
||||
, wayland
|
||||
, wayland-protocols
|
||||
, wayland-scanner
|
||||
|
@ -55,7 +55,7 @@ stdenv.mkDerivation {
|
|||
wayland-scanner
|
||||
wlroots
|
||||
libXdmcp
|
||||
utillinux
|
||||
util-linux
|
||||
];
|
||||
|
||||
configurePhase = ''
|
||||
|
|
|
@ -73,7 +73,7 @@ let
|
|||
# Remove old versions of elixir, when the supports fades out:
|
||||
# https://hexdocs.pm/elixir/compatibility-and-deprecations.html
|
||||
|
||||
elixir_ls = callPackage ./elixir-ls { inherit elixir fetchMixDeps mixRelease; };
|
||||
elixir-ls = callPackage ./elixir-ls { inherit elixir fetchMixDeps mixRelease; };
|
||||
|
||||
lfe = lfe_1_3;
|
||||
lfe_1_3 = lib'.callLFE ../interpreters/lfe/1.3.nix { inherit erlang buildRebar3 buildHex; };
|
||||
|
|
|
@ -23,7 +23,7 @@ mixRelease {
|
|||
sha256 = pinData.depsSha256;
|
||||
};
|
||||
|
||||
# elixir_ls is an umbrella app
|
||||
# elixir-ls is an umbrella app
|
||||
# override configurePhase to not skip umbrella children
|
||||
configurePhase = ''
|
||||
runHook preConfigure
|
||||
|
@ -31,12 +31,12 @@ mixRelease {
|
|||
runHook postConfigure
|
||||
'';
|
||||
|
||||
# elixir_ls require a special step for release
|
||||
# elixir-ls require a special step for release
|
||||
# compile and release need to be performed together because
|
||||
# of the no-deps-check requirement
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
mix do compile --no-deps-check, elixir_ls.release
|
||||
mix do compile --no-deps-check, elixir-ls.release
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@ if ("$latest_version" === "$current_version") {
|
|||
.\"sha256\" = \"$tarball_hash\" | \
|
||||
.\"depsSha256\" = \"\"" $directory/pin.json | sponge $directory/pin.json
|
||||
|
||||
const new_mix_hash = $(nix-build -A elixir_ls.mixFodDeps 2>&1 | \
|
||||
const new_mix_hash = $(nix-build -A elixir-ls.mixFodDeps 2>&1 | \
|
||||
tail -n 1 | \
|
||||
sd '\s+got:\s+' '')
|
||||
|
||||
|
|
|
@ -49,5 +49,6 @@ stdenv.mkDerivation rec {
|
|||
license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ];
|
||||
maintainers = with maintainers; [ prusnak ];
|
||||
platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ];
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -48,5 +48,6 @@ stdenv.mkDerivation rec {
|
|||
license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ];
|
||||
maintainers = with maintainers; [ prusnak ];
|
||||
platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ];
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -50,5 +50,6 @@ stdenv.mkDerivation rec {
|
|||
license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ];
|
||||
maintainers = with maintainers; [ prusnak ];
|
||||
platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -48,5 +48,6 @@ stdenv.mkDerivation rec {
|
|||
license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ];
|
||||
maintainers = with maintainers; [ prusnak ];
|
||||
platforms = [ "x86_64-linux" "x86_64-darwin" ];
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -48,5 +48,6 @@ stdenv.mkDerivation rec {
|
|||
license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ];
|
||||
maintainers = with maintainers; [ prusnak ];
|
||||
platforms = [ "x86_64-linux" "x86_64-darwin" ];
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -48,5 +48,6 @@ stdenv.mkDerivation rec {
|
|||
license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ];
|
||||
maintainers = with maintainers; [ prusnak ];
|
||||
platforms = [ "x86_64-linux" "x86_64-darwin" ];
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -50,5 +50,6 @@ stdenv.mkDerivation rec {
|
|||
license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ];
|
||||
maintainers = with maintainers; [ prusnak ];
|
||||
platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ];
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,28 +1,22 @@
|
|||
{ lib, stdenv, fetchFromGitHub, fixDarwinDylibNames }:
|
||||
{ lib, stdenv, fetchFromGitHub }:
|
||||
|
||||
let
|
||||
soVersion = "4";
|
||||
soVersion = "5";
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "liblinear";
|
||||
version = "2.43";
|
||||
version = "2.46";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cjlin1";
|
||||
repo = "liblinear";
|
||||
rev = "v${builtins.replaceStrings ["."] [""] version}";
|
||||
sha256 = "sha256-qcSMuWHJgsapWs1xgxv3fKSXcx18q8cwyIn3E4RCGKA=";
|
||||
sha256 = "sha256-mKd6idfr6mIIDEie8DCS+drtfpgKoS/5UXI0JenTxlA=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace blas/Makefile \
|
||||
--replace "ar rcv" "${stdenv.cc.targetPrefix}ar rcv" \
|
||||
--replace "ranlib" "${stdenv.cc.targetPrefix}ranlib"
|
||||
'';
|
||||
makeFlags = [ "AR=${stdenv.cc.targetPrefix}ar" "RANLIB=${stdenv.cc.targetPrefix}ranlib" ];
|
||||
|
||||
outputs = [ "bin" "dev" "out" ];
|
||||
|
||||
nativeBuildInputs = lib.optionals stdenv.isDarwin [ fixDarwinDylibNames ];
|
||||
|
||||
buildFlags = [ "lib" "predict" "train" ];
|
||||
|
||||
installPhase = ''
|
||||
|
|
|
@ -47,12 +47,12 @@ in
|
|||
lib.warnIf (enableQT != false) "geant4: enableQT is deprecated, please use enableQt"
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "11.0.3";
|
||||
version = "11.0.4";
|
||||
pname = "geant4";
|
||||
|
||||
src = fetchurl{
|
||||
src = fetchurl {
|
||||
url = "https://cern.ch/geant4-data/releases/geant4-v${version}.tar.gz";
|
||||
hash = "sha256-cvi2h1EtbmMNxsZMXEG6cRIgRoVAEymZ0A5PzhkIrkg=";
|
||||
hash = "sha256-4wofoo0vLPd8/9CFY8EonpL8R9mcg5Wa9H/ve9UDSyc=";
|
||||
};
|
||||
|
||||
cmakeFlags = [
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ lib
|
||||
, fetchFromGitHub
|
||||
, fetchurl
|
||||
, buildDunePackage
|
||||
, alcotest
|
||||
, dedukti
|
||||
|
@ -17,15 +17,14 @@
|
|||
|
||||
buildDunePackage rec {
|
||||
pname = "lambdapi";
|
||||
version = "2.2.1";
|
||||
version = "2.3.1";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
duneVersion = "3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Deducteam";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-p2ZjSfiZwkf8X4fSNJx7bAVpTFl4UBHIEANIWF7NGCs=";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/Deducteam/lambdapi/releases/download/${version}/lambdapi-${version}.tbz";
|
||||
hash = "sha256-7ww2TjVcbEQyfmLnnEhLGAjW4US9a4mdOfDJw6NR1fI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ menhir ];
|
||||
|
|
|
@ -11,11 +11,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyscreenshot";
|
||||
version = "3.0";
|
||||
version = "3.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "dd4fdfaeb617483913a6b16845b9f428de5db28758979f4b6cf8f236d292b908";
|
||||
sha256 = "sha256-jA6T8K72amv+Vahqv87WvTlq5LT2zB428EoorSYlWU0=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
let
|
||||
inherit (torch) cudaCapabilities cudaPackages cudaSupport;
|
||||
inherit (cudaPackages) cudatoolkit cudaFlags cudaVersion;
|
||||
inherit (cudaPackages) backendStdenv cudaVersion;
|
||||
|
||||
# NOTE: torchvision doesn't use cudnn; torch does!
|
||||
# For this reason it is not included.
|
||||
|
@ -65,8 +65,8 @@ buildPythonPackage {
|
|||
# NOTE: We essentially override the compilers provided by stdenv because we don't have a hook
|
||||
# for cudaPackages to swap in compilers supported by NVCC.
|
||||
+ lib.optionalString cudaSupport ''
|
||||
export CC=${cudatoolkit.cc}/bin/cc
|
||||
export CXX=${cudatoolkit.cc}/bin/c++
|
||||
export CC=${backendStdenv.cc}/bin/cc
|
||||
export CXX=${backendStdenv.cc}/bin/c++
|
||||
export TORCH_CUDA_ARCH_LIST="${lib.concatStringsSep ";" cudaCapabilities}"
|
||||
export FORCE_CUDA=1
|
||||
'';
|
||||
|
|
|
@ -4,6 +4,15 @@
|
|||
, gdk-pixbuf, wrapGAppsHook
|
||||
}:
|
||||
|
||||
let why3_1_5 = why3.overrideAttrs (o: rec {
|
||||
version = "1.5.1";
|
||||
src = fetchurl {
|
||||
url = "https://why3.gitlabpages.inria.fr/releases/${o.pname}-${version}.tar.gz";
|
||||
hash = "sha256-vNR7WeiSvg+763GcovoZBFDfncekJMeqNegP4fVw06I=";
|
||||
};
|
||||
}); in
|
||||
let why3 = why3_1_5; in
|
||||
|
||||
let
|
||||
mkocamlpath = p: "${p}/lib/ocaml/${ocamlPackages.ocaml.version}/site-lib";
|
||||
runtimeDeps = with ocamlPackages; [
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "argc";
|
||||
version = "0.15.0";
|
||||
version = "0.15.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sigoden";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-2J9Xx2DlMTh8o7T/tNZm3QK69gkQo3lj8kBVHhESMTs=";
|
||||
sha256 = "sha256-hN8M12evYxqNSsQKm0oRf3/b7WUf8k8pWa+0vRHstv4=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-2gZGEpYNR7/mOleAfhDf3hZq1vRKlfWwT25DFIi5w8o=";
|
||||
cargoSha256 = "sha256-JCFBA9LuNILJs4flzD/bGpv/R2vxMlA0aFTVdGKKs5I=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
|
|
@ -5,16 +5,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "benthos";
|
||||
version = "4.12.1";
|
||||
version = "4.13.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "benthosdev";
|
||||
repo = "benthos";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-6qBeMQSBleZTsq6sExIqkkyxJUx1yt2YhUogKYEWii0=";
|
||||
hash = "sha256-i4WsoZg22HCaDq6c9bQI3oAVGzW57Y6DrULyki3Hh+U=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-sNqWTgVgcjYEzFlneQaV3g80NTrVKeKz+mtahEOdyIw=";
|
||||
vendorHash = "sha256-Q+oEYP/IpCDdwj/mLl5nVZ+t+mPYtRpNrAwta4viPMo=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
|
40
pkgs/development/tools/git-ps-rs/default.nix
Normal file
40
pkgs/development/tools/git-ps-rs/default.nix
Normal file
|
@ -0,0 +1,40 @@
|
|||
{ lib
|
||||
, fetchFromGitHub
|
||||
, rustPlatform
|
||||
, stdenv
|
||||
, pkg-config
|
||||
, libgpg-error
|
||||
, gpgme
|
||||
, dbus
|
||||
, openssl
|
||||
, Security
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "git-ps-rs";
|
||||
version = "6.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "uptech";
|
||||
repo = "git-ps-rs";
|
||||
rev = version;
|
||||
hash = "sha256-4wSm3H+98ZJZ+fZdLYshPKafRkPq98Pv3Lwh9o0be6U=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-1p46xvo7abMPlVP8BeQ1j/8QQpK3kCgbTL3cdidfq04=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
gpgme # gpgme runs a small script at build time so has to go here
|
||||
];
|
||||
|
||||
buildInputs = [ openssl dbus libgpg-error ]
|
||||
++ lib.optionals stdenv.isDarwin [ Security ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Tool for working with a stack of patches";
|
||||
homepage = "https://git-ps.sh/";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ alizter ];
|
||||
};
|
||||
}
|
|
@ -9,16 +9,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cargo-about";
|
||||
version = "0.5.4";
|
||||
version = "0.5.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "EmbarkStudios";
|
||||
repo = "cargo-about";
|
||||
rev = version;
|
||||
sha256 = "sha256-zr9Y07VoW8XQELzw7C1QT8Ared8ntH9yjncZqZJ1uj4=";
|
||||
sha256 = "sha256-OAKTEU4+m9QMW/EMhCrN5HTMSjnPzEU0ISCeauI76SY=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-L01NvZbJggOMcoBLXZw8peiCQxA1DPqnrZVx2pMb40o=";
|
||||
cargoSha256 = "sha256-BGopHg4giLVie+z7kjlb9rTvLTovFyJ/emCF4j0Va04=";
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
|
|
|
@ -47,6 +47,7 @@ stdenv.mkDerivation rec {
|
|||
"-DBUILD_SHARED_LIBS=ON"
|
||||
"-DENABLE_EDEN_SUPPORT=NO" # requires sapling (formerly known as eden), which is not packaged in nixpkgs
|
||||
"-DWATCHMAN_STATE_DIR=${stateDir}"
|
||||
"-DWATCHMAN_VERSION_OVERRIDE=${version}"
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
"-DCMAKE_OSX_DEPLOYMENT_TARGET=10.14" # For aligned allocation
|
||||
];
|
||||
|
|
|
@ -1,28 +1,68 @@
|
|||
{ appimageTools, lib, fetchurl }:
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, fetchzip
|
||||
, appimageTools
|
||||
}:
|
||||
|
||||
appimageTools.wrapType2 rec {
|
||||
let
|
||||
pname = "osu-lazer-bin";
|
||||
version = "2023.301.0";
|
||||
version = "2023.305.0";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ppy/osu/releases/download/${version}/osu.AppImage";
|
||||
sha256 = "sha256-0c74bGOY9f2K52xE7CZy/i3OfyCC+a6XGI30c6hI7jM=";
|
||||
osu-lazer-bin-src = {
|
||||
aarch64-darwin = {
|
||||
url = "https://github.com/ppy/osu/releases/download/${version}/osu.app.Apple.Silicon.zip";
|
||||
sha256 = "sha256-nL5j0b4vD/tTYPPBLiMxiPWLHnP5hqco0DJ+7EZRSZY=";
|
||||
};
|
||||
x86_64-darwin = {
|
||||
url = "https://github.com/ppy/osu/releases/download/${version}/osu.app.Intel.zip";
|
||||
sha256 = "sha256-Er48BIzJlSzDaGb6IfhZoV62kj5GJ/rw9ifUw+ZCJkc=";
|
||||
};
|
||||
x86_64-linux = {
|
||||
url = "https://github.com/ppy/osu/releases/download/${version}/osu.AppImage";
|
||||
sha256 = "sha256-W3XJ7HtJM5iFI8OOTTu8IBHMerZSCETHMemkoTislK8=";
|
||||
};
|
||||
}.${stdenv.system} or (throw "${pname}-${version}: ${stdenv.system} is unsupported.");
|
||||
|
||||
linux = appimageTools.wrapType2 rec {
|
||||
inherit name pname version meta;
|
||||
|
||||
src = fetchurl (osu-lazer-bin-src);
|
||||
|
||||
extraPkgs = pkgs: with pkgs; [ icu ];
|
||||
|
||||
extraInstallCommands =
|
||||
let contents = appimageTools.extract { inherit pname version src; };
|
||||
in
|
||||
''
|
||||
mv -v $out/bin/${pname}-${version} $out/bin/osu\!
|
||||
install -m 444 -D ${contents}/osu\!.desktop -t $out/share/applications
|
||||
for i in 16 32 48 64 96 128 256 512 1024; do
|
||||
install -D ${contents}/osu\!.png $out/share/icons/hicolor/''${i}x$i/apps/osu\!.png
|
||||
done
|
||||
'';
|
||||
};
|
||||
|
||||
extraPkgs = pkgs: with pkgs; [ icu ];
|
||||
darwin = stdenv.mkDerivation rec {
|
||||
inherit name pname version meta;
|
||||
|
||||
extraInstallCommands =
|
||||
let contents = appimageTools.extract { inherit pname version src; };
|
||||
in ''
|
||||
mv -v $out/bin/${pname}-${version} $out/bin/osu\!
|
||||
install -m 444 -D ${contents}/osu\!.desktop -t $out/share/applications
|
||||
for i in 16 32 48 64 96 128 256 512 1024; do
|
||||
install -D ${contents}/osu\!.png $out/share/icons/hicolor/''${i}x$i/apps/osu\!.png
|
||||
done
|
||||
src = fetchzip (osu-lazer-bin-src // { stripRoot = false; });
|
||||
|
||||
dontBuild = true;
|
||||
dontFixup = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
APP_DIR="$out/Applications"
|
||||
mkdir -p "$APP_DIR"
|
||||
cp -r . "$APP_DIR"
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Rhythm is just a *click* away (AppImage version for score submission and multiplayer)";
|
||||
description = "Rhythm is just a *click* away (AppImage version for score submission and multiplayer, and binary distribution for Darwin systems)";
|
||||
homepage = "https://osu.ppy.sh";
|
||||
license = with licenses; [
|
||||
mit
|
||||
|
@ -30,8 +70,14 @@ appimageTools.wrapType2 rec {
|
|||
unfreeRedistributable # osu-framework contains libbass.so in repository
|
||||
];
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
maintainers = [ maintainers.delan ];
|
||||
maintainers = with maintainers; [ delan stepbrobd ];
|
||||
mainProgram = "osu!";
|
||||
platforms = [ "x86_64-linux" ];
|
||||
platforms = [ "aarch64-darwin" "x86_64-darwin" "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
|
||||
passthru.updateScript = ./update-bin.sh;
|
||||
in
|
||||
if stdenv.isDarwin
|
||||
then darwin
|
||||
else linux
|
||||
|
||||
|
|
|
@ -17,13 +17,13 @@
|
|||
|
||||
buildDotnetModule rec {
|
||||
pname = "osu-lazer";
|
||||
version = "2023.301.0";
|
||||
version = "2023.305.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ppy";
|
||||
repo = "osu";
|
||||
rev = version;
|
||||
sha256 = "sha256-SUVxe3PdUch8NYR7X4fatbmSpyYewI69usBDICcSq3s=";
|
||||
sha256 = "sha256-gkAHAiTwCYXTSIHrM3WWLBLbC7S9x1cAaEhSYvtNsvQ=";
|
||||
};
|
||||
|
||||
projectFile = "osu.Desktop/osu.Desktop.csproj";
|
||||
|
|
40
pkgs/games/osu-lazer/update-bin.sh
Executable file
40
pkgs/games/osu-lazer/update-bin.sh
Executable file
|
@ -0,0 +1,40 @@
|
|||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -I nixpkgs=../../../. -i bash -p unzip curl jq common-updater-scripts
|
||||
set -eo pipefail
|
||||
cd "$(dirname "${BASH_SOURCE[0]}")"
|
||||
|
||||
bin_file="$(realpath ./bin.nix)"
|
||||
|
||||
new_version="$(curl -s "https://api.github.com/repos/ppy/osu/releases?per_page=1" | jq -r '.[0].name')"
|
||||
old_version="$(sed -nE 's/\s*version = "(.*)".*/\1/p' ./bin.nix)"
|
||||
if [[ "$new_version" == "$old_version" ]]; then
|
||||
echo "Already up to date."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
cd ../../..
|
||||
|
||||
echo "Updating osu-lazer-bin from $old_version to $new_version..."
|
||||
sed -Ei.bak '/ *version = "/s/".+"/"'"$new_version"'"/' "$bin_file"
|
||||
rm "$bin_file.bak"
|
||||
|
||||
for pair in \
|
||||
'aarch64-darwin osu.app.Apple.Silicon.zip' \
|
||||
'x86_64-darwin osu.app.Intel.zip' \
|
||||
'x86_64-linux osu.AppImage'; do
|
||||
set -- $pair
|
||||
echo "Prefetching binary for $1..."
|
||||
prefetch_output=$(nix --extra-experimental-features nix-command store prefetch-file --json --hash-type sha256 "https://github.com/ppy/osu/releases/download/$new_version/$2")
|
||||
if [[ "$1" == *"darwin"* ]]; then
|
||||
store_path=$(jq -r '.storePath' <<<"$prefetch_output")
|
||||
tmpdir=$(mktemp -d)
|
||||
unzip -q "$store_path" -d "$tmpdir"
|
||||
hash=$(nix --extra-experimental-features nix-command hash path "$tmpdir")
|
||||
rm -r "$tmpdir"
|
||||
else
|
||||
hash=$(jq -r '.hash' <<<"$prefetch_output")
|
||||
fi
|
||||
echo "$1 ($2): sha256 = $hash"
|
||||
sed -Ei.bak '/ *'"$1"' = /{N;N; s@("sha256-)[^;"]+@"'"$hash"'@}' "$bin_file"
|
||||
rm "$bin_file.bak"
|
||||
done
|
|
@ -8,8 +8,8 @@ deps_file="$(realpath "./deps.nix")"
|
|||
new_version="$(curl -s "https://api.github.com/repos/ppy/osu/releases?per_page=1" | jq -r '.[0].name')"
|
||||
old_version="$(sed -nE 's/\s*version = "(.*)".*/\1/p' ./default.nix)"
|
||||
if [[ "$new_version" == "$old_version" ]]; then
|
||||
echo "Up to date"
|
||||
exit 0
|
||||
echo "Up to date"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
cd ../../..
|
||||
|
|
|
@ -36,10 +36,7 @@ let
|
|||
|
||||
debug = {
|
||||
# Necessary for BTF
|
||||
DEBUG_INFO = mkMerge [
|
||||
(whenOlder "5.2" (if (features.debug or false) then yes else no))
|
||||
(whenBetween "5.2" "5.18" yes)
|
||||
];
|
||||
DEBUG_INFO = yes;
|
||||
DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT = whenAtLeast "5.18" yes;
|
||||
# Reduced debug info conflict with BTF and have been enabled in
|
||||
# aarch64 defconfig since 5.13
|
||||
|
@ -62,6 +59,8 @@ let
|
|||
SUNRPC_DEBUG = yes;
|
||||
# Provide access to tunables like sched_migration_cost_ns
|
||||
SCHED_DEBUG = yes;
|
||||
|
||||
GDB_SCRIPTS = yes;
|
||||
};
|
||||
|
||||
power-management = {
|
||||
|
|
|
@ -115,6 +115,20 @@ let
|
|||
hash = "sha256-bBOyJcP6jUvozFJU0SPTOf3cmnTQ6ZZ4PlHjiniHXLU=";
|
||||
});
|
||||
|
||||
preUnpack = ''
|
||||
# The same preUnpack is used to build the configfile,
|
||||
# which does not have $dev.
|
||||
if [ -n "$dev" ]; then
|
||||
mkdir -p $dev/lib/modules/${modDirVersion}
|
||||
cd $dev/lib/modules/${modDirVersion}
|
||||
fi
|
||||
'';
|
||||
|
||||
postUnpack = ''
|
||||
mv -Tv "$sourceRoot" source 2>/dev/null || :
|
||||
export sourceRoot=$PWD/source
|
||||
'';
|
||||
|
||||
postPatch = ''
|
||||
sed -i Makefile -e 's|= depmod|= ${buildPackages.kmod}/bin/depmod|'
|
||||
|
||||
|
@ -156,8 +170,7 @@ let
|
|||
configurePhase = ''
|
||||
runHook preConfigure
|
||||
|
||||
mkdir build
|
||||
export buildRoot="$(pwd)/build"
|
||||
export buildRoot=$(mktemp -d)
|
||||
|
||||
echo "manual-config configurePhase buildRoot=$buildRoot pwd=$PWD"
|
||||
|
||||
|
@ -185,12 +198,14 @@ let
|
|||
'';
|
||||
|
||||
buildFlags = [
|
||||
"DTC_FLAGS=-@"
|
||||
"KBUILD_BUILD_VERSION=1-NixOS"
|
||||
kernelConf.target
|
||||
"vmlinux" # for "perf" and things like that
|
||||
] ++ optional isModular "modules"
|
||||
++ optionals buildDTBs ["dtbs" "DTC_FLAGS=-@"]
|
||||
++ extraMakeFlags;
|
||||
|
||||
# Set by default in the kernel since a73619a845d5,
|
||||
# replicated here to apply to older versions.
|
||||
# Makes __FILE__ relative to the build directory.
|
||||
"KCPPFLAGS=-fmacro-prefix-map=$(sourceRoot)/="
|
||||
] ++ extraMakeFlags;
|
||||
|
||||
installFlags = [
|
||||
"INSTALL_PATH=$(out)"
|
||||
|
@ -262,8 +277,6 @@ let
|
|||
];
|
||||
|
||||
postInstall = optionalString isModular ''
|
||||
mkdir -p $dev
|
||||
cp vmlinux $dev/
|
||||
if [ -z "''${dontStrip-}" ]; then
|
||||
installFlagsArray+=("INSTALL_MOD_STRIP=1")
|
||||
fi
|
||||
|
@ -272,12 +285,7 @@ let
|
|||
unlink $out/lib/modules/${modDirVersion}/build
|
||||
unlink $out/lib/modules/${modDirVersion}/source
|
||||
|
||||
mkdir -p $dev/lib/modules/${modDirVersion}/{build,source}
|
||||
|
||||
# To save space, exclude a bunch of unneeded stuff when copying.
|
||||
(cd .. && rsync --archive --prune-empty-dirs \
|
||||
--exclude='/build/' \
|
||||
* $dev/lib/modules/${modDirVersion}/source/)
|
||||
mkdir $dev/lib/modules/${modDirVersion}/build
|
||||
|
||||
cd $dev/lib/modules/${modDirVersion}/source
|
||||
|
||||
|
@ -288,12 +296,16 @@ let
|
|||
# from a `try-run` call from the Makefile
|
||||
rm -f $dev/lib/modules/${modDirVersion}/build/.[0-9]*.d
|
||||
|
||||
# Keep some extra files on some arches (powerpc, aarch64)
|
||||
for f in arch/powerpc/lib/crtsavres.o arch/arm64/kernel/ftrace-mod.o; do
|
||||
if [ -f "$buildRoot/$f" ]; then
|
||||
cp $buildRoot/$f $dev/lib/modules/${modDirVersion}/build/$f
|
||||
# Keep some extra files
|
||||
for f in arch/powerpc/lib/crtsavres.o arch/arm64/kernel/ftrace-mod.o \
|
||||
scripts/gdb/linux vmlinux vmlinux-gdb.py
|
||||
do
|
||||
if [ -e "$buildRoot/$f" ]; then
|
||||
mkdir -p "$(dirname "$dev/lib/modules/${modDirVersion}/build/$f")"
|
||||
cp -HR $buildRoot/$f $dev/lib/modules/${modDirVersion}/build/$f
|
||||
fi
|
||||
done
|
||||
ln -s $dev/lib/modules/${modDirVersion}/build/vmlinux $dev
|
||||
|
||||
# !!! No documentation on how much of the source tree must be kept
|
||||
# If/when kernel builds fail due to missing files, you can add
|
||||
|
@ -336,6 +348,11 @@ let
|
|||
sed -i Makefile -e 's|= ${buildPackages.kmod}/bin/depmod|= depmod|'
|
||||
'';
|
||||
|
||||
preFixup = ''
|
||||
# Don't strip $dev/lib/modules/*/vmlinux
|
||||
stripDebugList="$(cd $dev && echo lib/modules/*/build/*/)"
|
||||
'';
|
||||
|
||||
requiredSystemFeatures = [ "big-parallel" ];
|
||||
|
||||
meta = {
|
||||
|
|
|
@ -72,15 +72,13 @@ stdenv.mkDerivation rec {
|
|||
rm -rf ~/node_modules/.cache
|
||||
|
||||
# Create missing static gzip and brotli files
|
||||
gzip -9 -n -c ~/public/assets/500.html > ~/public/assets/500.html.gz
|
||||
gzip -9 -n -c ~/public/packs/report.html > ~/public/packs/report.html.gz
|
||||
find ~/public/assets -maxdepth 1 -type f -name ".*.json" | while read file; do
|
||||
gzip -9 -n -c $file > $file.gz
|
||||
done
|
||||
brotli --best -f ~/public/packs/report.html -o ~/public/packs/report.html.br
|
||||
find ~/public/assets -type f -regextype posix-extended -iregex '.*\.(css|js|json|html)' | while read file; do
|
||||
brotli --best -f $file -o $file.br
|
||||
done
|
||||
gzip --best --keep ~/public/assets/500.html
|
||||
gzip --best --keep ~/public/packs/report.html
|
||||
find ~/public/assets -maxdepth 1 -type f -name '.*.json' \
|
||||
-exec gzip --best --keep --force {} ';'
|
||||
brotli --best --keep ~/public/packs/report.html
|
||||
find ~/public/assets -type f -regextype posix-extended -iregex '.*\.(css|js|json|html)' \
|
||||
-exec brotli --best --keep {} ';'
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
|
@ -107,15 +105,16 @@ stdenv.mkDerivation rec {
|
|||
fi
|
||||
done
|
||||
|
||||
# Remove execute permissions
|
||||
chmod 0444 public/emoji/*.svg
|
||||
|
||||
# Create missing static gzip and brotli files
|
||||
find public -maxdepth 1 -type f -regextype posix-extended -iregex '.*\.(css|js|svg|txt|xml)' | while read file; do
|
||||
gzip -9 -n -c $file > $file.gz
|
||||
brotli --best -f $file -o $file.br
|
||||
done
|
||||
find public/emoji -type f -name "*.svg" | while read file; do
|
||||
gzip -9 -n -c $file > $file.gz
|
||||
brotli --best -f $file -o $file.br
|
||||
done
|
||||
find public -maxdepth 1 -type f -regextype posix-extended -iregex '.*\.(css|js|svg|txt|xml)' \
|
||||
-exec gzip --best --keep --force {} ';' \
|
||||
-exec brotli --best --keep {} ';'
|
||||
find public/emoji -type f -name '.*.svg' \
|
||||
-exec gzip --best --keep --force {} ';' \
|
||||
-exec brotli --best --keep {} ';'
|
||||
ln -s assets/500.html.gz public/500.html.gz
|
||||
ln -s assets/500.html.br public/500.html.br
|
||||
ln -s packs/sw.js.gz public/sw.js.gz
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
{ fetchgit, applyPatches }: let
|
||||
src = fetchgit {
|
||||
url = "https://github.com/mastodon/mastodon.git";
|
||||
rev = "v4.1.0";
|
||||
sha256 = "00nc80s1hz4sdpq81hsv2r9da3bjn4lgwpk7w24zy2016iwjjwbb";
|
||||
rev = "v4.1.1";
|
||||
sha256 = "1c0mxz45pkgmyw81z025n1ps1dkdq92337h7sd865w2fbgmzg50l";
|
||||
};
|
||||
in applyPatches {
|
||||
inherit src;
|
||||
|
|
|
@ -1 +1 @@
|
|||
"4.1.0"
|
||||
"4.1.1"
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "sonarr";
|
||||
version = "3.0.9.1549";
|
||||
version = "3.0.10.1567";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.sonarr.tv/v3/main/${version}/Sonarr.main.${version}.linux.tar.gz";
|
||||
sha256 = "sha256-Ba1nrvnlmVkPI+OEpwShNxfNLrpxS+N7wsx3ajkcGoQ=";
|
||||
hash = "sha256-6zdp/Bg+9pcrElW5neB+BC16Vn1VhTjhMRRIxGrKhxc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchzip
|
||||
, testers
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (stdenv.hostPlatform) system;
|
||||
throwSystem = throw "Unsupported system: ${system}";
|
||||
|
@ -21,27 +21,76 @@ let
|
|||
aarch64-darwin = "1ihxyf35px3s6q2yk4p3dy03rcj93hy96bj3pxqlv0rp05gnsf02";
|
||||
x86_64-windows = "104hc3qvs04l2hmjmp0bcjr5g5scp4frhprk1fpszziqhdmhwa40";
|
||||
}.${system} or throwSystem;
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "balena-cli";
|
||||
version = "15.1.1";
|
||||
|
||||
version = "15.1.1";
|
||||
src = fetchzip {
|
||||
url = "https://github.com/balena-io/balena-cli/releases/download/v${version}/balena-cli-v${version}-${plat}-standalone.zip";
|
||||
inherit sha256;
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "balena-cli";
|
||||
inherit version src;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin
|
||||
cp -r ./* $out/
|
||||
|
||||
ln -s $out/balena $out/bin/balena
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = finalAttrs.finalPackage;
|
||||
command = ''
|
||||
# Override default cache directory so Balena CLI's unavoidable update check does not fail due to write permissions
|
||||
BALENARC_DATA_DIRECTORY=./ balena --version
|
||||
'';
|
||||
inherit version;
|
||||
};
|
||||
|
||||
# https://github.com/NixOS/nixpkgs/pull/48193/files#diff-b65952dbe5271c002fbc941b01c3586bf5050ad0e6aa6b2fcc74357680e103ea
|
||||
preFixup =
|
||||
if stdenv.isLinux then
|
||||
let
|
||||
libPath = lib.makeLibraryPath [ stdenv.cc.cc ];
|
||||
in
|
||||
''
|
||||
orig_size=$(stat --printf=%s $out/balena)
|
||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/balena
|
||||
patchelf --set-rpath ${libPath} $out/balena
|
||||
chmod +x $out/balena
|
||||
new_size=$(stat --printf=%s $out/balena)
|
||||
###### zeit-pkg fixing starts here.
|
||||
# we're replacing plaintext js code that looks like
|
||||
# PAYLOAD_POSITION = '1234 ' | 0
|
||||
# [...]
|
||||
# PRELUDE_POSITION = '1234 ' | 0
|
||||
# ^-----20-chars-----^^------22-chars------^
|
||||
# ^-- grep points here
|
||||
#
|
||||
# var_* are as described above
|
||||
# shift_by seems to be safe so long as all patchelf adjustments occur
|
||||
# before any locations pointed to by hardcoded offsets
|
||||
var_skip=20
|
||||
var_select=22
|
||||
shift_by=$(expr $new_size - $orig_size)
|
||||
function fix_offset {
|
||||
# $1 = name of variable to adjust
|
||||
location=$(grep -obUam1 "$1" $out/bin/balena | cut -d: -f1)
|
||||
location=$(expr $location + $var_skip)
|
||||
value=$(dd if=$out/balena iflag=count_bytes,skip_bytes skip=$location \
|
||||
bs=1 count=$var_select status=none)
|
||||
value=$(expr $shift_by + $value)
|
||||
echo -n $value | dd of=$out/balena bs=1 seek=$location conv=notrunc
|
||||
}
|
||||
fix_offset PAYLOAD_POSITION
|
||||
fix_offset PRELUDE_POSITION
|
||||
'' else '''';
|
||||
dontStrip = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "A command line interface for balenaCloud or openBalena";
|
||||
longDescription = ''
|
||||
|
@ -58,4 +107,4 @@ stdenv.mkDerivation rec {
|
|||
sourceProvenance = [ sourceTypes.binaryNativeCode ];
|
||||
mainProgram = "balena";
|
||||
};
|
||||
}
|
||||
})
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "tmux-xpanes";
|
||||
version = "4.1.3";
|
||||
version = "4.1.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "greymd";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-e0dEkkEkColBQ0PgOQpoVbIkR3aVsrMZoSGbg4O11SU=";
|
||||
sha256 = "sha256-kS8VrD0CT350Y1ql6ta47nXdEzmuqEpFJeXRw58yMGc=";
|
||||
};
|
||||
|
||||
buildInputs = [ openssl perl ];
|
||||
|
|
|
@ -1,43 +1,81 @@
|
|||
{ lib
|
||||
, writeText
|
||||
, rustPlatform
|
||||
, fetchFromGitHub
|
||||
, curl
|
||||
, installShellFiles
|
||||
, makeWrapper
|
||||
, pkg-config
|
||||
, bzip2
|
||||
, libgit2_1_5
|
||||
, openssl
|
||||
, zlib
|
||||
, zstd
|
||||
, stdenv
|
||||
, darwin
|
||||
, spdx-license-list-data
|
||||
, nix
|
||||
, nurl
|
||||
, callPackage
|
||||
, spdx-license-list-data
|
||||
}:
|
||||
|
||||
let
|
||||
get-nix-license = import ./get-nix-license.nix {
|
||||
inherit lib writeText;
|
||||
};
|
||||
in
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "nix-init";
|
||||
version = "0.1.1";
|
||||
version = "0.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nix-community";
|
||||
repo = "nix-init";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-x9UrBCnEGz6nI1XGBLjIeiF3qi3EvynAfafiuhQdt9Q=";
|
||||
hash = "sha256-/lH8zO6ah7/HVZ7jOxTgs2iKND1UlGP5EQLtx6JsFxo=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-RUfprANAbj8w8LPRwQEF9SD9fhWb1CEcwbvOa6DX9Xk=";
|
||||
cargoHash = "sha256-jI/hysUq3JGe0hdZTQQw49BfcTWMx6jg+QAkd1QeBv4=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
curl
|
||||
installShellFiles
|
||||
makeWrapper
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
bzip2
|
||||
curl
|
||||
libgit2_1_5
|
||||
openssl
|
||||
zlib
|
||||
zstd
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
darwin.apple_sdk.frameworks.Security
|
||||
] ++ lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
|
||||
darwin.apple_sdk.frameworks.CoreFoundation
|
||||
];
|
||||
|
||||
buildNoDefaultFeatures = true;
|
||||
buildFeatures = [ "reqwest/rustls-tls" ];
|
||||
|
||||
checkFlags = [
|
||||
# requires internet access
|
||||
"--skip=lang::rust::tests"
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
mkdir -p data
|
||||
ln -s ${get-nix-license} data/get-nix-license.rs
|
||||
'';
|
||||
|
||||
preBuild = ''
|
||||
cargo run -p license-store-cache \
|
||||
-j $NIX_BUILD_CORES --frozen \
|
||||
data/license-store-cache.zstd ${spdx-license-list-data.json}/json/details
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/nix-init \
|
||||
--prefix PATH : ${lib.makeBinPath [ nix nurl ]}
|
||||
|
@ -46,8 +84,6 @@ rustPlatform.buildRustPackage rec {
|
|||
'';
|
||||
|
||||
GEN_ARTIFACTS = "artifacts";
|
||||
NIX_LICENSES = callPackage ./license.nix { };
|
||||
SPDX_LICENSE_LIST_DATA = "${spdx-license-list-data.json}/json/details";
|
||||
ZSTD_SYS_USE_PKG_CONFIG = true;
|
||||
|
||||
meta = with lib; {
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
# vendored from src/licenses.nix
|
||||
# vendored from src/get-nix-license.nix
|
||||
|
||||
{ lib, writeText }:
|
||||
|
||||
let
|
||||
inherit (lib)
|
||||
attrNames
|
||||
concatMapAttrs
|
||||
concatStringsSep
|
||||
filterAttrs
|
||||
flip
|
||||
id
|
||||
|
@ -14,9 +16,6 @@ let
|
|||
optionalAttrs
|
||||
pipe
|
||||
warn
|
||||
attrNames
|
||||
concatStringsSep
|
||||
length
|
||||
;
|
||||
|
||||
licenseMap = flip concatMapAttrs licenses
|
||||
|
@ -60,18 +59,17 @@ let
|
|||
else
|
||||
warn "${k}: ${concatStringsSep ", " v}"));
|
||||
|
||||
inserts = lint (mapAttrsToList
|
||||
(k: v: '' xs.insert("${k}", "${v}");'')
|
||||
(deprecatedAliases // licenseMap));
|
||||
arms = lint (concatStringsSep "\n "
|
||||
(mapAttrsToList
|
||||
(k: v: ''"${k}" => Some("${v}"),'')
|
||||
(deprecatedAliases // licenseMap)));
|
||||
in
|
||||
|
||||
writeText "license.rs" ''
|
||||
fn get_nix_licenses() -> rustc_hash::FxHashMap<&'static str, &'static str> {
|
||||
let mut xs = std::collections::HashMap::with_capacity_and_hasher(
|
||||
${toString (length inserts)},
|
||||
Default::default(),
|
||||
);
|
||||
${concatStringsSep "\n " inserts}
|
||||
xs
|
||||
writeText "get-nix-license.rs" ''
|
||||
pub fn get_nix_license(license: &str) -> Option<&'static str> {
|
||||
match license {
|
||||
${arms}
|
||||
_ => None,
|
||||
}
|
||||
}
|
||||
''
|
|
@ -3,31 +3,35 @@
|
|||
, fetchFromGitHub
|
||||
|
||||
, bubblewrap
|
||||
, nix-output-monitor
|
||||
, cacert
|
||||
, git
|
||||
, nix
|
||||
|
||||
, withSandboxSupport ? false
|
||||
, withNom ? false
|
||||
}:
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "nixpkgs-review";
|
||||
version = "2.8.0";
|
||||
version = "2.9.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Mic92";
|
||||
repo = "nixpkgs-review";
|
||||
rev = version;
|
||||
sha256 = "sha256-v8IRRmONb10sPndfsuaUYMrGbbosj48cbfgANZCtIN0=";
|
||||
sha256 = "sha256-SNAroKkPXiX5baGPRYnzqiVwPwko/Uari/tvjIU7/4k=";
|
||||
};
|
||||
|
||||
makeWrapperArgs =
|
||||
let
|
||||
binPath = [ nix git ] ++ lib.optional withSandboxSupport bubblewrap;
|
||||
binPath = [ nix git ]
|
||||
++ lib.optional withSandboxSupport bubblewrap
|
||||
++ lib.optional withNom nix-output-monitor;
|
||||
in
|
||||
[
|
||||
"--prefix PATH : ${lib.makeBinPath binPath}"
|
||||
"--set NIX_SSL_CERT_FILE ${cacert}/etc/ssl/certs/ca-bundle.crt"
|
||||
"--set-default NIX_SSL_CERT_FILE ${cacert}/etc/ssl/certs/ca-bundle.crt"
|
||||
# we don't have any runtime deps but nix-review shells might inject unwanted dependencies
|
||||
"--unset PYTHONPATH"
|
||||
];
|
||||
|
|
|
@ -5,16 +5,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "slsa-verifier";
|
||||
version = "2.0.1";
|
||||
version = "2.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "slsa-framework";
|
||||
repo = "slsa-verifier";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-Gef8TQSd6bTWIzFOQ9xjqB49We7IKBu9p/Lb426nNbc=";
|
||||
hash = "sha256-Y4qZMECw3o8Mr4w2mYe2sUyYes4J+SkO3rqfiuSYw2Y=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-1syIEjvqYHCiOLf8Fc2vghFKfN6ADM05By11jGNZODs=";
|
||||
vendorHash = "sha256-xDJLt9aQW3hJtbC15R+eMRVQOi/dYuYMWMsGNCkjaSQ=";
|
||||
|
||||
CGO_ENABLED = 0;
|
||||
GO111MODULE = "on";
|
||||
|
|
|
@ -416,6 +416,8 @@ mapAliases ({
|
|||
|
||||
electrum-dash = throw "electrum-dash has been removed from nixpkgs as the project is abandoned"; # Added 2022-01-01
|
||||
|
||||
elixir_ls = elixir-ls; # Added 2023-03-20
|
||||
|
||||
# Emacs
|
||||
emacs28NativeComp = emacs28; # Added 2022-06-08
|
||||
emacs28Packages = emacs28.pkgs; # Added 2021-10-04
|
||||
|
|
|
@ -1900,6 +1900,10 @@ with pkgs;
|
|||
|
||||
git-privacy = callPackage ../applications/version-management/git-privacy { };
|
||||
|
||||
git-ps-rs = callPackage ../development/tools/git-ps-rs {
|
||||
inherit (darwin.apple_sdk.frameworks) Security;
|
||||
};
|
||||
|
||||
git-publish = python3Packages.callPackage ../applications/version-management/git-publish { };
|
||||
|
||||
git-quick-stats = callPackage ../applications/version-management/git-quick-stats { };
|
||||
|
@ -16584,7 +16588,7 @@ with pkgs;
|
|||
erlang erlangR25 erlangR24 erlangR23 erlangR22 erlangR21
|
||||
erlang_odbc erlang_javac erlang_odbc_javac
|
||||
elixir elixir_1_14 elixir_1_13 elixir_1_12 elixir_1_11 elixir_1_10
|
||||
elixir_ls;
|
||||
elixir-ls;
|
||||
|
||||
erlang_nox = beam_nox.interpreters.erlang;
|
||||
|
||||
|
|
|
@ -108,7 +108,7 @@ in
|
|||
# access for example elixir built with different version of Erlang, use
|
||||
# `beam.packages.erlangR24.elixir`.
|
||||
inherit (self.packages.erlang)
|
||||
elixir elixir_1_14 elixir_1_13 elixir_1_12 elixir_1_11 elixir_1_10 elixir_ls;
|
||||
elixir elixir_1_14 elixir_1_13 elixir_1_12 elixir_1_11 elixir_1_10 elixir-ls;
|
||||
|
||||
inherit (self.packages.erlang) lfe lfe_1_3;
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue