diff options
Diffstat (limited to 'pkgs/applications')
33 files changed, 184 insertions, 1119 deletions
diff --git a/pkgs/applications/editors/rehex/default.nix b/pkgs/applications/editors/rehex/default.nix index 617ae79c6849..9a3ba2a4a59f 100644 --- a/pkgs/applications/editors/rehex/default.nix +++ b/pkgs/applications/editors/rehex/default.nix @@ -20,13 +20,13 @@ stdenv.mkDerivation rec { pname = "rehex"; - version = "0.61.0"; + version = "0.61.1"; src = fetchFromGitHub { owner = "solemnwarning"; repo = pname; rev = version; - hash = "sha256-NBBBeTy15q6G30XR2PVd/xdIg41U2pWSPtqpdQX/+9o="; + hash = "sha256-/m4s5BW33I9g9hi5j3Vtui271w8Jv91+rQrI3qpO5Og="; }; nativeBuildInputs = [ pkg-config which zip ] diff --git a/pkgs/applications/editors/vscode/vscode.nix b/pkgs/applications/editors/vscode/vscode.nix index 1c430546d21a..5d7342c823cf 100644 --- a/pkgs/applications/editors/vscode/vscode.nix +++ b/pkgs/applications/editors/vscode/vscode.nix @@ -30,21 +30,21 @@ let archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz"; sha256 = { - x86_64-linux = "1sasd183cf264a8am93ck35b485p5vl2bfzzxzpf65rvcmvhn7fh"; - x86_64-darwin = "01nfh5izc53sxfw27i0byn0l6q4qwp7y9zs0g9a3rx3qglm47qr8"; - aarch64-linux = "183583xnjv18ksy8bbkjfkxx3zy22anj14hi8bavhgix9bzk3wrb"; - aarch64-darwin = "1whjm4z922qq1yh4vliiab777n0la6sc45n2qf7q9pvxjj1f83wj"; - armv7l-linux = "171diqiv9yb9c5klihndsgk7qp7y80cc6bq8r4hnw1b834k0ywfp"; + x86_64-linux = "11brsgksn3bl3px0hwa83vr22gb2k19pn8hcn7xwn6zzcgf7rsf2"; + x86_64-darwin = "1ai7jmiq37zpicc5p387nvbx5122fp7c3qh2k596jq7l7k0iyfzd"; + aarch64-linux = "0psjz56h8asgdh0m6insfysw1f6d00hifvb0rfsi8qv0wca72wb4"; + aarch64-darwin = "0jskk6dvjg290mvw8hcs4hrhy7m3ridsj5w9lxs6kn74fdvg1byb"; + armv7l-linux = "0rz26xw312s0larjvkrf8np9c0yccppadiqmj69j47vavg78274c"; }.${system} or throwSystem; in callPackage ./generic.nix rec { # Please backport all compatible updates to the stable release. # This is important for the extension ecosystem. - version = "1.87.1"; + version = "1.87.2"; pname = "vscode" + lib.optionalString isInsiders "-insiders"; # This is used for VS Code - Remote SSH test - rev = "1e790d77f81672c49be070e04474901747115651"; + rev = "863d2581ecda6849923a2118d93a088b0745d9d6"; executableName = "code" + lib.optionalString isInsiders "-insiders"; longName = "Visual Studio Code" + lib.optionalString isInsiders " - Insiders"; @@ -68,7 +68,7 @@ in src = fetchurl { name = "vscode-server-${rev}.tar.gz"; url = "https://update.code.visualstudio.com/commit:${rev}/server-linux-x64/stable"; - sha256 = "19k2n1zlfvy1dczrslrdzhvpa27nc0mcg2x4bmp5yvvv5bpv3bbd"; + sha256 = "1hdny44f93qzpm9vgx14wk1myrnsv5qcj25rqcy2jb5kspnq6813"; }; }; diff --git a/pkgs/applications/gis/saga/default.nix b/pkgs/applications/gis/saga/default.nix deleted file mode 100644 index 817fa7b86f24..000000000000 --- a/pkgs/applications/gis/saga/default.nix +++ /dev/null @@ -1,87 +0,0 @@ -{ stdenv -, lib -, fetchurl -# native -, cmake -, desktopToDarwinBundle -, pkg-config -# not native -, gdal -, wxGTK32 -, proj -, dxflib -, curl -, libiodbc -, xz -, libharu -, opencv -, vigra -, postgresql -, Cocoa -, unixODBC -, poppler -, hdf5 -, netcdf -, sqlite -, qhull -, giflib -, libsvm -, fftw -}: - -stdenv.mkDerivation rec { - pname = "saga"; - version = "9.3.1"; - - src = fetchurl { - url = "mirror://sourceforge/saga-gis/saga-${version}.tar.gz"; - sha256 = "sha256-QrpEbb8zN003Afnu9UZUanWE0lIiy95POSWd1jB8EtA="; - }; - - sourceRoot = "saga-${version}/saga-gis"; - - nativeBuildInputs = [ - cmake - pkg-config - ] ++ lib.optional stdenv.isDarwin desktopToDarwinBundle; - - buildInputs = [ - curl - dxflib - fftw - libsvm - hdf5 - gdal - wxGTK32 - proj - libharu - opencv - vigra - postgresql - libiodbc - xz - qhull - giflib - ] - # See https://groups.google.com/forum/#!topic/nix-devel/h_vSzEJAPXs - # for why the have additional buildInputs on darwin - ++ lib.optionals stdenv.isDarwin [ - Cocoa - unixODBC - poppler - netcdf - sqlite - ]; - - cmakeFlags = [ - "-DOpenMP_SUPPORT=${if stdenv.isDarwin then "OFF" else "ON"}" - ]; - - meta = with lib; { - description = "System for Automated Geoscientific Analyses"; - homepage = "https://saga-gis.sourceforge.io"; - license = licenses.gpl2Plus; - maintainers = with maintainers; teams.geospatial.members ++ [ michelk mpickering ]; - platforms = with platforms; unix; - }; -} diff --git a/pkgs/applications/graphics/photoqt/default.nix b/pkgs/applications/graphics/photoqt/default.nix index 5d1ce4129791..ccc95ac94216 100644 --- a/pkgs/applications/graphics/photoqt/default.nix +++ b/pkgs/applications/graphics/photoqt/default.nix @@ -20,16 +20,17 @@ , qtmultimedia , qtpositioning , qtsvg +, zxing-cpp , qtwayland }: stdenv.mkDerivation rec { pname = "photoqt"; - version = "4.2"; + version = "4.3"; src = fetchurl { url = "https://photoqt.org/pkgs/photoqt-${version}.tar.gz"; - hash = "sha256-OUqsyvmv6ccJDzcWAeS1OOmK2eXOCEgGktz6GEUzoA8="; + hash = "sha256-B0ZubvWIEZFnD2v74bpPv+/wr7vaHS9QP4//9/afjzQ="; }; nativeBuildInputs = [ @@ -55,20 +56,19 @@ stdenv.mkDerivation rec { qtmultimedia qtpositioning qtsvg + zxing-cpp ] ++ lib.optionals stdenv.isLinux [ qtwayland ]; cmakeFlags = [ - "-DDEVIL=OFF" - "-DCHROMECAST=OFF" - "-DFREEIMAGE=OFF" - "-DIMAGEMAGICK=OFF" + (lib.cmakeBool "DEVIL" false) + (lib.cmakeBool "CHROMECAST" false) + (lib.cmakeBool "FREEIMAGE" false) + (lib.cmakeBool "IMAGEMAGICK" false) ]; - preConfigure = '' - export MAGICK_LOCATION="${graphicsmagick}/include/GraphicsMagick" - ''; + env.MAGICK_LOCATION = "${graphicsmagick}/include/GraphicsMagick"; postInstall = lib.optionalString stdenv.isDarwin '' mkdir -p $out/Applications diff --git a/pkgs/applications/misc/chatblade/default.nix b/pkgs/applications/misc/chatblade/default.nix index a285c88a36f9..62db56495860 100644 --- a/pkgs/applications/misc/chatblade/default.nix +++ b/pkgs/applications/misc/chatblade/default.nix @@ -2,12 +2,12 @@ python3Packages.buildPythonApplication rec { pname = "chatblade"; - version = "0.3.4"; + version = "0.4.0"; format = "setuptools"; src = fetchPypi { inherit pname version; - sha256 = "sha256-ODC8n4JS7IOfAJMn7CPzJcBNMhfD5A3eEqVUK1e4mZY="; + sha256 = "sha256-AjE+1MkSkZOtEUPKEPBKQ3n+aOB8cwsorBpL5skNskU="; }; doCheck = false; # there are no tests diff --git a/pkgs/applications/misc/inlyne/default.nix b/pkgs/applications/misc/inlyne/default.nix index d9698c04aed5..665a910cb103 100644 --- a/pkgs/applications/misc/inlyne/default.nix +++ b/pkgs/applications/misc/inlyne/default.nix @@ -6,6 +6,8 @@ , pkg-config , fontconfig , xorg +, libxkbcommon +, wayland , libGL , openssl , darwin @@ -13,16 +15,16 @@ rustPlatform.buildRustPackage rec { pname = "inlyne"; - version = "0.3.2"; + version = "0.4.0"; src = fetchFromGitHub { owner = "trimental"; repo = pname; rev = "v${version}"; - hash = "sha256-DSi6iS1ySdvGf6FxZpsDOAFpAKx/APcZjxA3Qy0gQBU="; + hash = "sha256-dDGTy5WOCyeWYfemVtv+YswNyHSqDL4C7MbHsKgRwLk="; }; - cargoHash = "sha256-UzegSJGAOBUDN8WluN7fLWS7NfHhm9YY0Zuq6DCIqHo="; + cargoHash = "sha256-GDy7/FooHD77X5dZmlLX+isRKr2WjadKPKyVD55M9ZE="; nativeBuildInputs = [ installShellFiles @@ -36,6 +38,8 @@ rustPlatform.buildRustPackage rec { xorg.libXi xorg.libXrandr xorg.libxcb + wayland + libxkbcommon openssl ] ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk_11_0.frameworks.AppKit diff --git a/pkgs/applications/misc/valent/default.nix b/pkgs/applications/misc/valent/default.nix index 09ec8609712d..fbd93fe504cc 100644 --- a/pkgs/applications/misc/valent/default.nix +++ b/pkgs/applications/misc/valent/default.nix @@ -82,7 +82,7 @@ stdenv.mkDerivation rec { homepage = "https://valent.andyholmes.ca"; changelog = "https://github.com/andyholmes/valent/blob/${src.rev}/CHANGELOG.md"; license = with licenses; [ gpl3Plus cc0 cc-by-sa-30 ]; - maintainers = with maintainers; [ federicoschonborn aleksana ]; + maintainers = with maintainers; [ aleksana ]; platforms = platforms.linux; }; } diff --git a/pkgs/applications/misc/whalebird/default.nix b/pkgs/applications/misc/whalebird/default.nix index ce7d178f1c05..665cae9d4bd9 100644 --- a/pkgs/applications/misc/whalebird/default.nix +++ b/pkgs/applications/misc/whalebird/default.nix @@ -1,38 +1,54 @@ -{ lib, stdenv, fetchurl -, autoPatchelfHook, makeDesktopItem, copyDesktopItems, makeWrapper, gnugrep, asar -, electron, python3, alsa-lib, gtk3, libdbusmenu, libxshmfence, mesa, nss +{ lib +, stdenv +, fetchFromGitHub +, makeDesktopItem +, copyDesktopItems +, makeWrapper +, electron +, cacert +, gitMinimal +, yarn }: - stdenv.mkDerivation rec { pname = "whalebird"; - version = "5.0.7"; - - src = let - downloads = "https://github.com/h3poteto/whalebird-desktop/releases/download/v${version}"; - in - if stdenv.system == "x86_64-linux" then - fetchurl { - url = downloads + "/Whalebird-${version}-linux-x64.tar.bz2"; - hash = "sha256-eufP038REwF2VwAxxI8R0S3fE8oJ+SX/CES5ozuut2w="; - } - else if stdenv.system == "aarch64-linux" then - fetchurl { - url = downloads + "/Whalebird-${version}-linux-arm64.tar.bz2"; - hash = "sha256-U0xVTUUm6wsRxYc1w4vfNtVE6o8dNzXTSi+IX4mgDEE="; - } - else - throw "Whalebird is not supported for ${stdenv.system}"; + version = "6.0.4"; + + src = fetchFromGitHub { + owner = "h3poteto"; + repo = "whalebird-desktop"; + rev = "v${version}"; + hash = "sha256-Yx0GEEPJ+d4/RvCbqZdKR6iE2iUNbOJr+RuboqjT8z8="; + }; + # we cannot use fetchYarnDeps because that doesn't support yarn 2/berry lockfiles + offlineCache = stdenv.mkDerivation { + name = "whalebird-${version}-offline-cache"; + inherit src; + + nativeBuildInputs = [ + cacert # needed for git + gitMinimal # needed to download git dependencies + yarn + ]; + + buildPhase = '' + export HOME=$(mktemp -d) + yarn config set enableTelemetry 0 + yarn config set cacheFolder $out + yarn config set --json supportedArchitectures.os '[ "linux" ]' + yarn config set --json supportedArchitectures.cpu '[ "arm64", "x64" ]' + yarn + ''; + + outputHashMode = "recursive"; + outputHash = "sha256-RjTGAgHRRQ4O3eTYpmTrl+KXafDZkWf1NH6lzdozVAA="; + }; nativeBuildInputs = [ - autoPatchelfHook makeWrapper copyDesktopItems - gnugrep - asar + yarn ]; - buildInputs = [ alsa-lib gtk3 libdbusmenu libxshmfence mesa nss ]; - desktopItems = [ (makeDesktopItem { desktopName = "Whalebird"; @@ -44,28 +60,21 @@ stdenv.mkDerivation rec { }) ]; - unpackPhase = '' - mkdir -p opt - tar -xf ${src} -C opt - # remove the version/target suffix from the untar'd directory - mv opt/Whalebird-* opt/Whalebird - ''; + ELECTRON_SKIP_BINARY_DOWNLOAD = "1"; buildPhase = '' runHook preBuild - # Necessary steps to find the tray icon - # For aarch64-linux, we need to overwrite this symlink first as it points to - # /usr/bin/python3 - if [ "${stdenv.system}" = "aarch64-linux" ] - then ln -sf ${python3}/bin/python3 \ - opt/Whalebird/resources/app.asar.unpacked/node_modules/better-sqlite3/build/node_gyp_bins/python3 - fi - asar extract opt/Whalebird/resources/app.asar "$TMP/work" - substituteInPlace "$TMP/work/dist/electron/main.js" \ - --replace "$(grep -oE '.{2},"tray_icon.png"' "$TMP/work/dist/electron/main.js")" \ - "\"$out/opt/Whalebird/resources/build/icons/tray_icon.png\"" - asar pack --unpack='{*.node,*.ftz,rect-overlay}' "$TMP/work" opt/Whalebird/resources/app.asar + export HOME=$(mktemp -d) + yarn config set enableTelemetry 0 + yarn config set cacheFolder ${offlineCache} + + yarn --immutable-cache + yarn run nextron build --no-pack + yarn run electron-builder --dir \ + --config electron-builder.yml \ + -c.electronDist="${electron}/libexec/electron" \ + -c.electronVersion=${electron.version} runHook postBuild ''; @@ -73,26 +82,29 @@ stdenv.mkDerivation rec { installPhase = '' runHook preInstall - mkdir $out - mv opt $out + mkdir -p $out/opt + cp -r ./dist/linux-unpacked $out/opt/Whalebird - # install icons - for icon in $out/opt/Whalebird/resources/build/icons/*.png; do - mkdir -p "$out/share/icons/hicolor/$(basename $icon .png)/apps" - ln -s "$icon" "$out/share/icons/hicolor/$(basename $icon .png)/apps/whalebird.png" + # Install icons + # Taken from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=whalebird#n41 + for i in 16 32 128 256 512; do + install -Dm644 "resources/icons/icon.iconset/icon_$i"x"$i.png" \ + "$out/share/icons/hicolor/$i"x"$i/apps/whalebird.png" done + install -Dm644 "resources/icons/icon.iconset/icon_32x32@2x.png" \ + "$out/share/icons/hicolor/64x64/apps/whalebird.png" - makeWrapper ${electron}/bin/electron $out/bin/whalebird \ - --add-flags $out/opt/Whalebird/resources/app.asar \ + makeWrapper "${electron}/bin/electron" "$out/bin/whalebird" \ + --add-flags "$out/opt/Whalebird/resources/app.asar" \ --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" runHook postInstall ''; meta = with lib; { - description = "Electron based Mastodon, Pleroma and Misskey client for Windows, Mac and Linux"; + description = "Single-column Fediverse client for desktop"; homepage = "https://whalebird.social"; - sourceProvenance = with sourceTypes; [ binaryNativeCode ]; + sourceProvenance = with sourceTypes; [ fromSource ]; license = licenses.gpl3Only; maintainers = with maintainers; [ wolfangaukang colinsane weathercold ]; platforms = [ "x86_64-linux" "aarch64-linux" ]; diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix index fccf83101ff0..ad3913aedb2b 100644 --- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix +++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix @@ -28,12 +28,12 @@ version = "2024-01-22"; }; ungoogled-patches = { - hash = "sha256-7c4VQLotLHmSFKfzzXrlwXKB3XPFpyRTnuATrS9RfEw="; - rev = "122.0.6261.111-1"; + hash = "sha256-YIJysusNifUPN3Ii2tCUSvHEe63RWlTrTdOt5KBVyK4="; + rev = "122.0.6261.128-1"; }; }; - hash = "sha256-43h11bx/k78W7fEPZz4LwxNVExwGSSt74mlbiUYf5ig="; - hash_deb_amd64 = "sha256-juwTFdJB1hgAA14aabNIrql5aaP1JWQy7nOsoTF2Vto="; - version = "122.0.6261.111"; + hash = "sha256-BzLSwDQrmKavh4s2uOSfP935NnB5+Hw7oD7YDbSWp2g="; + hash_deb_amd64 = "sha256-SxdYfWhV3ZpiGWmagOM6JUfjAmU9pzFGDQDinXrweas="; + version = "122.0.6261.128"; }; } diff --git a/pkgs/applications/networking/cluster/helm/default.nix b/pkgs/applications/networking/cluster/helm/default.nix index 4dc1fbd91a34..b46ed8f329b1 100644 --- a/pkgs/applications/networking/cluster/helm/default.nix +++ b/pkgs/applications/networking/cluster/helm/default.nix @@ -2,15 +2,15 @@ buildGoModule rec { pname = "kubernetes-helm"; - version = "3.14.2"; + version = "3.14.3"; src = fetchFromGitHub { owner = "helm"; repo = "helm"; rev = "v${version}"; - sha256 = "sha256-7Cd5lxPSXXCvYLLh334qnDmd9zbF1LMxTNoZEBpzHS4="; + sha256 = "sha256-GC9rkB35m+a/9pEvD7aNjE4z3qrv33NES842crrzD3I="; }; - vendorHash = "sha256-pYB9J7Zf6MApGpFL7HzqIDcC/vERiVE4z8SsipIeJ7c="; + vendorHash = "sha256-f5tLyq9tP5tdE73Mlee9vAUSHqkUAtAJkwjZP/K6wPM="; subPackages = [ "cmd/helm" ]; ldflags = [ diff --git a/pkgs/applications/networking/cluster/k3s/1_24/chart-versions.nix b/pkgs/applications/networking/cluster/k3s/1_24/chart-versions.nix deleted file mode 100644 index 8c40604d0f1c..000000000000 --- a/pkgs/applications/networking/cluster/k3s/1_24/chart-versions.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ - traefik-crd = { - url = "https://k3s.io/k3s-charts/assets/traefik-crd/traefik-crd-20.3.1+up20.3.0.tgz"; - sha256 = "1775vjldvqvhzdbzanxhbaqbmkih09yb91im651q8bc7z5sb9ckn"; - }; - traefik = { - url = "https://k3s.io/k3s-charts/assets/traefik/traefik-20.3.1+up20.3.0.tgz"; - sha256 = "1rj0f0n0vgjcbzfwzhqmsd501i2f6vw145w9plbp8gwdyzmg2nc6"; - }; -} diff --git a/pkgs/applications/networking/cluster/k3s/1_24/default.nix b/pkgs/applications/networking/cluster/k3s/1_24/default.nix deleted file mode 100644 index 25b615d6718f..000000000000 --- a/pkgs/applications/networking/cluster/k3s/1_24/default.nix +++ /dev/null @@ -1,332 +0,0 @@ -{ stdenv -, lib -, makeWrapper -, socat -, iptables -, iproute2 -, ipset -, bridge-utils -, btrfs-progs -, conntrack-tools -, buildGoModule -, runc -, rsync -, kmod -, libseccomp -, pkg-config -, ethtool -, util-linux -, fetchFromGitHub -, fetchurl -, fetchzip -, fetchgit -, zstd -, yq-go -, sqlite -, nixosTests -, k3s -, pkgsBuildBuild -}: - -# k3s is a kinda weird derivation. One of the main points of k3s is the -# simplicity of it being one binary that can perform several tasks. -# However, when you have a good package manager (like nix), that doesn't -# actually make much of a difference; you don't really care if it's one binary -# or 10 since with a good package manager, installing and running it is -# identical. -# Since upstream k3s packages itself as one large binary with several -# "personalities" (in the form of subcommands like 'k3s agent' and 'k3s -# kubectl'), it ends up being easiest to mostly mimic upstream packaging, with -# some exceptions. -# K3s also carries patches to some packages (such as containerd and cni -# plugins), so we intentionally use the k3s versions of those binaries for k3s, -# even if the upstream version of those binaries exist in nixpkgs already. In -# the end, that means we have a thick k3s binary that behaves like the upstream -# one for the most part. -# However, k3s also bundles several pieces of unpatched software, from the -# strongswan vpn software, to iptables, to socat, conntrack, busybox, etc. -# Those pieces of software we entirely ignore upstream's handling of, and just -# make sure they're in the path if desired. -let - k3sVersion = "1.24.10+k3s1"; # k3s git tag - k3sCommit = "546a94e9ae1c3be6f9c0dcde32a6e6672b035bc8"; # k3s git commit at the above version - k3sRepoSha256 = "sha256-HfkGb3GtR2wQkVIze26aFh6A6W0fegr8ovpSel7oujQ="; - k3sVendorHash = "sha256-YAerisDr/knlKPaO2fVMZA4FUpwshFmkpi3mJAmLqKM="; - - # Based on the traefik charts here: https://github.com/k3s-io/k3s/blob/v1.24.10%2Bk3s1/scripts/download#L29-L32 - # see also https://github.com/k3s-io/k3s/blob/v1.24.10%2Bk3s1/manifests/traefik.yaml#L8-L16 - # At the time of writing, there are two traefik charts, and that's it - charts = import ./chart-versions.nix; - - # taken from ./scripts/version.sh VERSION_ROOT https://github.com/k3s-io/k3s/blob/v1.24.10%2Bk3s1/scripts/version.sh#L56 - k3sRootVersion = "0.12.1"; - k3sRootSha256 = "sha256-xCXbarWztnvW2xn3cGa84hie3OevVZeGEDWh+Uf3RBw="; - - # taken from ./scripts/version.sh VERSION_CNIPLUGINS https://github.com/k3s-io/k3s/blob/v1.24.10%2Bk3s1/scripts/version.sh#L49 - k3sCNIVersion = "1.1.1-k3s1"; - k3sCNISha256 = "14mb3zsqibj1sn338gjmsyksbm0mxv9p016dij7zidccx2rzn6nl"; - - # taken from go.mod, the 'github.com/containerd/containerd' line - # run `grep github.com/containerd/containerd go.mod | head -n1 | awk '{print $4}'` - # https://github.com/k3s-io/k3s/blob/v1.24.10%2Bk3s1/go.mod#L10 - containerdVersion = "1.5.16-k3s1"; - containerdSha256 = "sha256-dxC44qE1A20Hd2j77Ir9Sla8xncttswWIuGGM/5FWi8="; - - # run `grep github.com/kubernetes-sigs/cri-tools go.mod | head -n1 | awk '{print $4}'` in the k3s repo at the tag - # https://github.com/k3s-io/k3s/blob/v1.24.10%2Bk3s1/go.mod#L18 - criCtlVersion = "1.24.0-k3s1"; - - baseMeta = k3s.meta; - - # https://github.com/k3s-io/k3s/blob/5fb370e53e0014dc96183b8ecb2c25a61e891e76/scripts/build#L19-L40 - versionldflags = [ - "-X github.com/rancher/k3s/pkg/version.Version=v${k3sVersion}" - "-X github.com/rancher/k3s/pkg/version.GitCommit=${lib.substring 0 8 k3sCommit}" - "-X k8s.io/client-go/pkg/version.gitVersion=v${k3sVersion}" - "-X k8s.io/client-go/pkg/version.gitCommit=${k3sCommit}" - "-X k8s.io/client-go/pkg/version.gitTreeState=clean" - "-X k8s.io/client-go/pkg/version.buildDate=1970-01-01T01:01:01Z" - "-X k8s.io/component-base/version.gitVersion=v${k3sVersion}" - "-X k8s.io/component-base/version.gitCommit=${k3sCommit}" - "-X k8s.io/component-base/version.gitTreeState=clean" - "-X k8s.io/component-base/version.buildDate=1970-01-01T01:01:01Z" - "-X github.com/kubernetes-sigs/cri-tools/pkg/version.Version=v${criCtlVersion}" - "-X github.com/containerd/containerd/version.Version=v${containerdVersion}" - "-X github.com/containerd/containerd/version.Package=github.com/k3s-io/containerd" - ]; - - # bundled into the k3s binary - traefikChart = fetchurl charts.traefik; - traefik-crdChart = fetchurl charts.traefik-crd; - - # so, k3s is a complicated thing to package - # This derivation attempts to avoid including any random binaries from the - # internet. k3s-root is _mostly_ binaries built to be bundled in k3s (which - # we don't care about doing, we can add those as build or runtime - # dependencies using a real package manager). - # In addition to those binaries, it's also configuration though (right now - # mostly strongswan configuration), and k3s does use those files. - # As such, we download it in order to grab 'etc' and bundle it into the final - # k3s binary. - k3sRoot = fetchzip { - # Note: marked as apache 2.0 license - url = "https://github.com/k3s-io/k3s-root/releases/download/v${k3sRootVersion}/k3s-root-amd64.tar"; - sha256 = k3sRootSha256; - stripRoot = false; - }; - k3sCNIPlugins = buildGoModule rec { - pname = "k3s-cni-plugins"; - version = k3sCNIVersion; - vendorHash = null; - - subPackages = [ "." ]; - - src = fetchFromGitHub { - owner = "rancher"; - repo = "plugins"; - rev = "v${version}"; - sha256 = k3sCNISha256; - }; - - postInstall = '' - mv $out/bin/plugins $out/bin/cni - ''; - - meta = baseMeta // { - description = "CNI plugins, as patched by rancher for k3s"; - }; - }; - # Grab this separately from a build because it's used by both stages of the - # k3s build. - k3sRepo = fetchgit { - url = "https://github.com/k3s-io/k3s"; - rev = "v${k3sVersion}"; - sha256 = k3sRepoSha256; - }; - # Stage 1 of the k3s build: - # Let's talk about how k3s is structured. - # One of the ideas of k3s is that there's the single "k3s" binary which can - # do everything you need, from running a k3s server, to being a worker node, - # to running kubectl. - # The way that actually works is that k3s is a single go binary that contains - # a bunch of bindata that it unpacks at runtime into directories (either the - # user's home directory or /var/lib/rancher if run as root). - # This bindata includes both binaries and configuration. - # In order to let nixpkgs do all its autostripping/patching/etc, we split this into two derivations. - # First, we build all the binaries that get packed into the thick k3s binary - # (and output them from one derivation so they'll all be suitably patched up). - # Then, we bundle those binaries into our thick k3s binary and use that as - # the final single output. - # This approach was chosen because it ensures the bundled binaries all are - # correctly built to run with nix (we can lean on the existing buildGoModule - # stuff), and we can again lean on that tooling for the final k3s binary too. - # Other alternatives would be to manually run the - # strip/patchelf/remove-references step ourselves in the installPhase of the - # derivation when we've built all the binaries, but haven't bundled them in - # with generated bindata yet. - - k3sServer = buildGoModule rec { - pname = "k3s-server"; - version = k3sVersion; - - src = k3sRepo; - vendorHash = k3sVendorHash; - - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ libseccomp sqlite.dev ]; - - subPackages = [ "cmd/server" ]; - ldflags = versionldflags; - - tags = [ "libsqlite3" "linux" ]; - - # create the multicall symlinks for k3s - postInstall = '' - mv $out/bin/server $out/bin/k3s - pushd $out - # taken verbatim from https://github.com/k3s-io/k3s/blob/v1.24.10%2Bk3s1/scripts/build#L123-L131 - ln -s k3s ./bin/k3s-agent - ln -s k3s ./bin/k3s-server - ln -s k3s ./bin/k3s-etcd-snapshot - ln -s k3s ./bin/k3s-secrets-encrypt - ln -s k3s ./bin/k3s-certificate - ln -s k3s ./bin/k3s-completion - ln -s k3s ./bin/kubectl - ln -s k3s ./bin/crictl - ln -s k3s ./bin/ctr - popd - ''; - - meta = baseMeta // { - description = "The various binaries that get packaged into the final k3s binary"; - }; - }; - k3sContainerd = buildGoModule { - pname = "k3s-containerd"; - version = containerdVersion; - src = fetchFromGitHub { - owner = "k3s-io"; - repo = "containerd"; - rev = "v${containerdVersion}"; - sha256 = containerdSha256; - }; - vendorHash = null; - buildInputs = [ btrfs-progs ]; - subPackages = [ "cmd/containerd" "cmd/containerd-shim-runc-v2" ]; - ldflags = versionldflags; - }; -in -buildGoModule rec { - pname = "k3s"; - version = k3sVersion; - - src = k3sRepo; - vendorHash = k3sVendorHash; - - postPatch = '' - # Nix prefers dynamically linked binaries over static binary. - - substituteInPlace scripts/package-cli \ - --replace '"$LDFLAGS $STATIC" -o' \ - '"$LDFLAGS" -o' \ - --replace "STATIC=\"-extldflags \'-static\'\"" \ - "" - - # Upstream codegen fails with trimpath set. Removes "trimpath" for 'go generate': - - substituteInPlace scripts/package-cli \ - --replace '"''${GO}" generate' \ - 'GOFLAGS="" \ - GOOS="${pkgsBuildBuild.go.GOOS}" \ - GOARCH="${pkgsBuildBuild.go.GOARCH}" \ - CC="${pkgsBuildBuild.stdenv.cc}/bin/cc" \ - "''${GO}" generate' - ''; - - # Important utilities used by the kubelet, see - # https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-237202494 - # Note the list in that issue is stale and some aren't relevant for k3s. - k3sRuntimeDeps = [ - kmod - socat - iptables - iproute2 - ipset - bridge-utils - ethtool - util-linux # kubelet wants 'nsenter' from util-linux: https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-705994388 - conntrack-tools - ]; - - buildInputs = k3sRuntimeDeps; - - nativeBuildInputs = [ - makeWrapper - rsync - yq-go - zstd - ]; - - # embedded in the final k3s cli - propagatedBuildInputs = [ - k3sCNIPlugins - k3sContainerd - k3sServer - runc - ]; - - # We override most of buildPhase due to peculiarities in k3s's build. - # Specifically, it has a 'go generate' which runs part of the package. See - # this comment: - # https://github.com/NixOS/nixpkgs/pull/158089#discussion_r799965694 - # So, why do we use buildGoModule at all? For the `vendorHash` / `go mod download` stuff primarily. - buildPhase = '' - patchShebangs ./scripts/package-cli ./scripts/download ./scripts/build-upload - - # copy needed 'go generate' inputs into place - mkdir -p ./bin/aux - rsync -a --no-perms ${k3sServer}/bin/ ./bin/ - ln -vsf ${runc}/bin/runc ./bin/runc - ln -vsf ${k3sCNIPlugins}/bin/cni ./bin/cni - ln -vsf ${k3sContainerd}/bin/* ./bin/ - rsync -a --no-perms --chmod u=rwX ${k3sRoot}/etc/ ./etc/ - mkdir -p ./build/static/charts - - cp ${traefikChart} ./build/static/charts - cp ${traefik-crdChart} ./build/static/charts - - export ARCH=$GOARCH - export DRONE_TAG="v${k3sVersion}" - export DRONE_COMMIT="${k3sCommit}" - # use ./scripts/package-cli to run 'go generate' + 'go build' - - ./scripts/package-cli - mkdir -p $out/bin - ''; - - # Otherwise it depends on 'getGoDirs', which is normally set in buildPhase - doCheck = false; - - installPhase = '' - # wildcard to match the arm64 build too - install -m 0755 dist/artifacts/k3s* -D $out/bin/k3s - wrapProgram $out/bin/k3s \ - --prefix PATH : ${lib.makeBinPath k3sRuntimeDeps} \ - --prefix PATH : "$out/bin" - ln -s $out/bin/k3s $out/bin/kubectl - ln -s $out/bin/k3s $out/bin/crictl - ln -s $out/bin/k3s $out/bin/ctr - ''; - - doInstallCheck = true; - installCheckPhase = '' - $out/bin/k3s --version | grep -F "v${k3sVersion}" >/dev/null - ''; - - # Fix-Me: Needs to be adapted specifically for 1.24 - # passthru.updateScript = ./update.sh; - - passthru.tests = k3s.passthru.mkTests k3sVersion; - - meta = baseMeta; -} diff --git a/pkgs/applications/networking/cluster/k3s/1_25/0001-script-download-strip-downloading-just-package-CRD.patch b/pkgs/applications/networking/cluster/k3s/1_25/0001-script-download-strip-downloading-just-package-CRD.patch deleted file mode 100644 index 115fd6824772..000000000000 --- a/pkgs/applications/networking/cluster/k3s/1_25/0001-script-download-strip-downloading-just-package-CRD.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 6f53bd36a40da4c71486e3b79f6e32d53d6eea5d Mon Sep 17 00:00:00 2001 -From: Euan Kemp <euank@euank.com> -Date: Thu, 3 Feb 2022 23:50:40 -0800 -Subject: [PATCH 2/2] scrips/download: strip downloading, just package CRD - -The CRD packaging is a complicated set of commands, so let's reuse it. ---- - scripts/download | 10 ++-------- - 1 file changed, 2 insertions(+), 8 deletions(-) - -diff --git a/scripts/download b/scripts/download -index 5effc0562a..82361803ee 100755 ---- a/scripts/download -+++ b/scripts/download -@@ -24,12 +24,6 @@ rm -rf ${CONTAINERD_DIR} - mkdir -p ${CHARTS_DIR} - mkdir -p ${DATA_DIR} - --curl --compressed -sfL https://github.com/k3s-io/k3s-root/releases/download/${VERSION_ROOT}/k3s-root-${ARCH}.tar | tar xf - --exclude=bin/socat -- --git clone --single-branch --branch=${VERSION_RUNC} --depth=1 https://github.com/opencontainers/runc ${RUNC_DIR} -- --git clone --single-branch --branch=${VERSION_CONTAINERD} --depth=1 https://github.com/k3s-io/containerd ${CONTAINERD_DIR} -- - setup_tmp() { - TMP_DIR=$(mktemp -d --tmpdir=${CHARTS_DIR}) - cleanup() { -@@ -44,8 +38,8 @@ setup_tmp() { - - download_and_package_traefik () { - echo "Downloading Traefik Helm chart from ${TRAEFIK_URL}" -- curl -sfL ${TRAEFIK_URL} -o ${TMP_DIR}/${TRAEFIK_FILE} -- code=$? -+ # nixpkgs: copy in our known traefik chart instead -+ cp $TRAEFIK_CHART_FILE ${TMP_DIR}/${TRAEFIK_FILE} - - if [ $code -ne 0 ]; then - echo "Error: Failed to download Traefik Helm chart!" --- -2.34.1 - diff --git a/pkgs/applications/networking/cluster/k3s/1_25/default.nix b/pkgs/applications/networking/cluster/k3s/1_25/default.nix deleted file mode 100644 index 7ea3ff7867e6..000000000000 --- a/pkgs/applications/networking/cluster/k3s/1_25/default.nix +++ /dev/null @@ -1,336 +0,0 @@ -{ stdenv -, lib -, makeWrapper -, socat -, iptables -, iproute2 -, ipset -, bridge-utils -, btrfs-progs -, conntrack-tools -, buildGoModule -, runc -, rsync -, kmod -, libseccomp -, pkg-config -, ethtool -, util-linux -, fetchFromGitHub -, fetchurl -, fetchzip -, fetchgit -, zstd -, yq-go -, sqlite -, nixosTests -, pkgsBuildBuild -, k3s -}: - -# k3s is a kinda weird derivation. One of the main points of k3s is the -# simplicity of it being one binary that can perform several tasks. -# However, when you have a good package manager (like nix), that doesn't -# actually make much of a difference; you don't really care if it's one binary -# or 10 since with a good package manager, installing and running it is -# identical. -# Since upstream k3s packages itself as one large binary with several -# "personalities" (in the form of subcommands like 'k3s agent' and 'k3s -# kubectl'), it ends up being easiest to mostly mimic upstream packaging, with -# some exceptions. -# K3s also carries patches to some packages (such as containerd and cni -# plugins), so we intentionally use the k3s versions of those binaries for k3s, -# even if the upstream version of those binaries exist in nixpkgs already. In -# the end, that means we have a thick k3s binary that behaves like the upstream -# one for the most part. -# However, k3s also bundles several pieces of unpatched software, from the -# strongswan vpn software, to iptables, to socat, conntrack, busybox, etc. -# Those pieces of software we entirely ignore upstream's handling of, and just -# make sure they're in the path if desired. -let - k3sVersion = "1.25.3+k3s1"; # k3s git tag - k3sCommit = "f2585c1671b31b4b34bddbb3bf4e7d69662b0821"; # k3s git commit at the above version - k3sRepoSha256 = "0zwf3iwjcidx14zw36s1hr0q8wmmbfc0rfqwd7fmpjq597h8zkms"; - k3sVendorHash = "sha256-U67tJRGqPFk5AfRe7I50zKGC9HJ2oh+iI/C7qF/76BQ="; - - # taken from ./manifests/traefik.yaml, extracted from '.spec.chart' https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/download#L9 - # The 'patch' and 'minor' versions are currently hardcoded as single digits only, so ignore the trailing two digits. Weird, I know. - traefikChartVersion = "12.0.0"; - traefikChartSha256 = "1sqmi71fi3ad5dh5fmsp9mv80x6pkgqwi4r9fr8l6i9sdnai6f1a"; - - # taken from ./scripts/version.sh VERSION_ROOT https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/version.sh#L47 - k3sRootVersion = "0.11.0"; - k3sRootSha256 = "016n56vi09xkvjph7wgzb2m86mhd5x65fs4d11pmh20hl249r620"; - - # taken from ./scripts/version.sh VERSION_CNIPLUGINS https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/version.sh#L45 - k3sCNIVersion = "1.1.1-k3s1"; - k3sCNISha256 = "14mb3zsqibj1sn338gjmsyksbm0mxv9p016dij7zidccx2rzn6nl"; - - # taken from go.mod, the 'github.com/containerd/containerd' line - # run `grep github.com/containerd/containerd go.mod | head -n1 | awk '{print $4}'` - containerdVersion = "1.5.13-k3s2"; - containerdSha256 = "1pfr2ji4aij9js90gf4a3hqnhyw5hshcjdccm62l700j68gs5z97"; - - # run `grep github.com/kubernetes-sigs/cri-tools go.mod | head -n1 | awk '{print $4}'` in the k3s repo at the tag - criCtlVersion = "1.25.0-k3s1"; - - baseMeta = k3s.meta; - - # https://github.com/k3s-io/k3s/blob/5fb370e53e0014dc96183b8ecb2c25a61e891e76/scripts/build#L19-L40 - versionldflags = [ - "-X github.com/rancher/k3s/pkg/version.Version=v${k3sVersion}" - "-X github.com/rancher/k3s/pkg/version.GitCommit=${lib.substring 0 8 k3sCommit}" - "-X k8s.io/client-go/pkg/version.gitVersion=v${k3sVersion}" - "-X k8s.io/client-go/pkg/version.gitCommit=${k3sCommit}" - "-X k8s.io/client-go/pkg/version.gitTreeState=clean" - "-X k8s.io/client-go/pkg/version.buildDate=1970-01-01T01:01:01Z" - "-X k8s.io/component-base/version.gitVersion=v${k3sVersion}" - "-X k8s.io/component-base/version.gitCommit=${k3sCommit}" - "-X k8s.io/component-base/version.gitTreeState=clean" - "-X k8s.io/component-base/version.buildDate=1970-01-01T01:01:01Z" - "-X github.com/kubernetes-sigs/cri-tools/pkg/version.Version=v${criCtlVersion}" - "-X github.com/containerd/containerd/version.Version=v${containerdVersion}" - "-X github.com/containerd/containerd/version.Package=github.com/k3s-io/containerd" - ]; - - # bundled into the k3s binary - traefikChart = fetchurl { - url = "https://helm.traefik.io/traefik/traefik-${traefikChartVersion}.tgz"; - sha256 = traefikChartSha256; - }; - # so, k3s is a complicated thing to package - # This derivation attempts to avoid including any random binaries from the - # internet. k3s-root is _mostly_ binaries built to be bundled in k3s (which - # we don't care about doing, we can add those as build or runtime - # dependencies using a real package manager). - # In addition to those binaries, it's also configuration though (right now - # mostly strongswan configuration), and k3s does use those files. - # As such, we download it in order to grab 'etc' and bundle it into the final - # k3s binary. - k3sRoot = fetchzip { - # Note: marked as apache 2.0 license - url = "https://github.com/k3s-io/k3s-root/releases/download/v${k3sRootVersion}/k3s-root-amd64.tar"; - sha256 = k3sRootSha256; - stripRoot = false; - }; - k3sCNIPlugins = buildGoModule rec { - pname = "k3s-cni-plugins"; - version = k3sCNIVersion; - vendorHash = null; - - subPackages = [ "." ]; - - src = fetchFromGitHub { - owner = "rancher"; - repo = "plugins"; - rev = "v${version}"; - sha256 = k3sCNISha256; - }; - - postInstall = '' - mv $out/bin/plugins $out/bin/cni - ''; - - meta = baseMeta // { - description = "CNI plugins, as patched by rancher for k3s"; - }; - }; - # Grab this separately from a build because it's used by both stages of the - # k3s build. - k3sRepo = fetchgit { - url = "https://github.com/k3s-io/k3s"; - rev = "v${k3sVersion}"; - sha256 = k3sRepoSha256; - }; - # Stage 1 of the k3s build: - # Let's talk about how k3s is structured. - # One of the ideas of k3s is that there's the single "k3s" binary which can - # do everything you need, from running a k3s server, to being a worker node, - # to running kubectl. - # The way that actually works is that k3s is a single go binary that contains - # a bunch of bindata that it unpacks at runtime into directories (either the - # user's home directory or /var/lib/rancher if run as root). - # This bindata includes both binaries and configuration. - # In order to let nixpkgs do all its autostripping/patching/etc, we split this into two derivations. - # First, we build all the binaries that get packed into the thick k3s binary - # (and output them from one derivation so they'll all be suitably patched up). - # Then, we bundle those binaries into our thick k3s binary and use that as - # the final single output. - # This approach was chosen because it ensures the bundled binaries all are - # correctly built to run with nix (we can lean on the existing buildGoModule - # stuff), and we can again lean on that tooling for the final k3s binary too. - # Other alternatives would be to manually run the - # strip/patchelf/remove-references step ourselves in the installPhase of the - # derivation when we've built all the binaries, but haven't bundled them in - # with generated bindata yet. - - k3sServer = buildGoModule rec { - pname = "k3s-server"; - version = k3sVersion; - - src = k3sRepo; - vendorHash = k3sVendorHash; - - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ libseccomp sqlite.dev ]; - - subPackages = [ "cmd/server" ]; - ldflags = versionldflags; - - tags = [ "libsqlite3" "linux" ]; - - # create the multicall symlinks for k3s - postInstall = '' - mv $out/bin/server $out/bin/k3s - pushd $out - # taken verbatim from https://github.com/k3s-io/k3s/blob/v1.23.3%2Bk3s1/scripts/build#L105-L113 - ln -s k3s ./bin/k3s-agent - ln -s k3s ./bin/k3s-server - ln -s k3s ./bin/k3s-etcd-snapshot - ln -s k3s ./bin/k3s-secrets-encrypt - ln -s k3s ./bin/k3s-certificate - ln -s k3s ./bin/kubectl - ln -s k3s ./bin/crictl - ln -s k3s ./bin/ctr - popd - ''; - - meta = baseMeta // { - description = "The various binaries that get packaged into the final k3s binary"; - }; - }; - k3sContainerd = buildGoModule { - pname = "k3s-containerd"; - version = containerdVersion; - src = fetchFromGitHub { - owner = "k3s-io"; - repo = "containerd"; - rev = "v${containerdVersion}"; - sha256 = containerdSha256; - }; - vendorHash = null; - buildInputs = [ btrfs-progs ]; - subPackages = [ "cmd/containerd" "cmd/containerd-shim-runc-v2" ]; - ldflags = versionldflags; - }; -in -buildGoModule rec { - pname = "k3s"; - version = k3sVersion; - - src = k3sRepo; - vendorHash = k3sVendorHash; - - patches = [ - ./0001-script-download-strip-downloading-just-package-CRD.patch - ]; - - postPatch = '' - # Nix prefers dynamically linked binaries over static binary. - - substituteInPlace scripts/package-cli \ - --replace '"$LDFLAGS $STATIC" -o' \ - '"$LDFLAGS" -o' \ - --replace "STATIC=\"-extldflags \'-static\'\"" \ - "" - - # Upstream codegen fails with trimpath set. Removes "trimpath" for 'go generate': - - substituteInPlace scripts/package-cli \ - --replace '"''${GO}" generate' \ - 'GOFLAGS="" \ - GOOS="${pkgsBuildBuild.go.GOOS}" \ - GOARCH="${pkgsBuildBuild.go.GOARCH}" \ - CC="${pkgsBuildBuild.stdenv.cc}/bin/cc" \ - "''${GO}" generate' - ''; - - # Important utilities used by the kubelet, see - # https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-237202494 - # Note the list in that issue is stale and some aren't relevant for k3s. - k3sRuntimeDeps = [ - kmod - socat - iptables - iproute2 - ipset - bridge-utils - ethtool - util-linux # kubelet wants 'nsenter' from util-linux: https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-705994388 - conntrack-tools - ]; - - buildInputs = k3sRuntimeDeps; - - nativeBuildInputs = [ - makeWrapper - rsync - yq-go - zstd - ]; - - # embedded in the final k3s cli - propagatedBuildInputs = [ - k3sCNIPlugins - k3sContainerd - k3sServer - runc - ]; - - # We override most of buildPhase due to peculiarities in k3s's build. - # Specifically, it has a 'go generate' which runs part of the package. See - # this comment: - # https://github.com/NixOS/nixpkgs/pull/158089#discussion_r799965694 - # So, why do we use buildGoModule at all? For the `vendorHash` / `go mod download` stuff primarily. - buildPhase = '' - patchShebangs ./scripts/package-cli ./scripts/download ./scripts/build-upload - - # copy needed 'go generate' inputs into place - mkdir -p ./bin/aux - rsync -a --no-perms ${k3sServer}/bin/ ./bin/ - ln -vsf ${runc}/bin/runc ./bin/runc - ln -vsf ${k3sCNIPlugins}/bin/cni ./bin/cni - ln -vsf ${k3sContainerd}/bin/* ./bin/ - rsync -a --no-perms --chmod u=rwX ${k3sRoot}/etc/ ./etc/ - mkdir -p ./build/static/charts - # Note, upstream's chart has a 00 suffix. This seems to not matter though, so we're ignoring that naming detail. - export TRAEFIK_CHART_FILE=${traefikChart} - # place the traefik chart using their code since it's complicated - # We trim the actual download, see patches - ./scripts/download - - export ARCH=$GOARCH - export DRONE_TAG="v${k3sVersion}" - export DRONE_COMMIT="${k3sCommit}" - # use ./scripts/package-cli to run 'go generate' + 'go build' - - ./scripts/package-cli - mkdir -p $out/bin - ''; - - # Otherwise it depends on 'getGoDirs', which is normally set in buildPhase - doCheck = false; - - installPhase = '' - # wildcard to match the arm64 build too - install -m 0755 dist/artifacts/k3s* -D $out/bin/k3s - wrapProgram $out/bin/k3s \ - --prefix PATH : ${lib.makeBinPath k3sRuntimeDeps} \ - --prefix PATH : "$out/bin" - ln -s $out/bin/k3s $out/bin/kubectl - ln -s $out/bin/k3s $out/bin/crictl - ln -s $out/bin/k3s $out/bin/ctr - ''; - - doInstallCheck = true; - installCheckPhase = '' - $out/bin/k3s --version | grep -F "v${k3sVersion}" >/dev/null - ''; - - # Fix-Me: Needs to be adapted specifically for 1.25 - # passthru.updateScript = ./update.sh; - - passthru.tests = k3s.passthru.mkTests k3sVersion; - - meta = baseMeta; -} diff --git a/pkgs/applications/networking/cluster/kube-router/default.nix b/pkgs/applications/networking/cluster/kube-router/default.nix index 2701db12e61d..fc2f9cc20660 100644 --- a/pkgs/applications/networking/cluster/kube-router/default.nix +++ b/pkgs/applications/networking/cluster/kube-router/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "kube-router"; - version = "2.0.1"; + version = "2.1.0"; src = fetchFromGitHub { owner = "cloudnativelabs"; repo = pname; rev = "v${version}"; - hash = "sha256-Iwo+I1EfclkF4FL8QM3xGkIFxakmelI+hSUepLwfFSw="; + hash = "sha256-5aOAQ5kRnNsCn5EH9RKoeEfcFB3g59eqYIdSNjQxdjM="; }; - vendorHash = "sha256-VjPesQ27GcwnFQrNI+VYzJ4/aahcjASbfMi//Zs/KLM="; + vendorHash = "sha256-5aGcDO+dV9XinH0vw6uNB0mnWuFQcyLhRB7zYr+sRfg="; CGO_ENABLED = 0; diff --git a/pkgs/applications/networking/cluster/roxctl/default.nix b/pkgs/applications/networking/cluster/roxctl/default.nix index 607137c8d77a..1bac7a553ecb 100644 --- a/pkgs/applications/networking/cluster/roxctl/default.nix +++ b/pkgs/applications/networking/cluster/roxctl/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "roxctl"; - version = "4.3.4"; + version = "4.3.5"; src = fetchFromGitHub { owner = "stackrox"; repo = "stackrox"; rev = version; - sha256 = "sha256-5UMU3oKi3QhREum2YevOzwF5OOi8quPWgt+kgGjkeFQ="; + sha256 = "sha256-zTZ03Qtb3ndBf1MunhYS8rzPReExzEPGxCh1JexkwuA="; }; - vendorHash = "sha256-Jzv4ozR8RJiwkgVGGq6dlV/7rbBLq8hFe/Pm4SJZCkU="; + vendorHash = "sha256-Sl5eIK8PWeGi2V7q/Qm5Gfjj1A9nQPtM0BGdO6inPxk="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/applications/networking/cluster/terraform/default.nix b/pkgs/applications/networking/cluster/terraform/default.nix index ee0d92436ee3..94b7fe50c5a9 100644 --- a/pkgs/applications/networking/cluster/terraform/default.nix +++ b/pkgs/applications/networking/cluster/terraform/default.nix @@ -167,9 +167,9 @@ rec { mkTerraform = attrs: pluggable (generic attrs); terraform_1 = mkTerraform { - version = "1.7.4"; - hash = "sha256-LF8lFDZtDowHqa0z/TCVKznxn15Msha/af8p/w0bI1k="; - vendorHash = "sha256-DI4YTjdFFvfby8ExEY3KoK4J9YKK5LPpMbelzFMDVVs="; + version = "1.7.5"; + hash = "sha256-k/ugXlHK7lEKfOpSBXQNUdcq26rVVdjo53U+7ChJLIc="; + vendorHash = "sha256-5sCf65gFpI3y+qwDYvD08OZHNsDMg2IuDL65NMsLQ4Y="; patches = [ ./provider-path-0_15.patch ]; passthru = { inherit plugins; diff --git a/pkgs/applications/networking/deck/default.nix b/pkgs/applications/networking/deck/default.nix index 203007087836..e6cccf088e46 100644 --- a/pkgs/applications/networking/deck/default.nix +++ b/pkgs/applications/networking/deck/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "deck"; - version = "1.35.0"; + version = "1.36.0"; src = fetchFromGitHub { owner = "Kong"; repo = "deck"; rev = "v${version}"; - hash = "sha256-Cng1T/TjhPttLFcI3if0Ea/M2edXDnrMVAFzAZmNAD8="; + hash = "sha256-bbHJilMh7qnGvYuid8/PmIg5m42jddqOOuMd7mzQmCo="; }; nativeBuildInputs = [ installShellFiles ]; @@ -21,7 +21,7 @@ buildGoModule rec { ]; proxyVendor = true; # darwin/linux hash mismatch - vendorHash = "sha256-tv/wI4AN10io9x1wl2etKC+MB2vz+6FkmT/eJSsT4VI="; + vendorHash = "sha256-Er9m8G020SKEN8jMIhEYiKvF27YY4dZvG0noYaH3bPU="; postInstall = '' installShellCompletion --cmd deck \ diff --git a/pkgs/applications/networking/instant-messengers/beeper/default.nix b/pkgs/applications/networking/instant-messengers/beeper/default.nix index f5363ee4cb63..f2c7d287d01e 100644 --- a/pkgs/applications/networking/instant-messengers/beeper/default.nix +++ b/pkgs/applications/networking/instant-messengers/beeper/default.nix @@ -11,11 +11,11 @@ }: let pname = "beeper"; - version = "3.99.22"; + version = "3.99.23"; name = "${pname}-${version}"; src = fetchurl { - url = "https://download.todesktop.com/2003241lzgn20jd/beeper-3.99.22-build-240307lufv3wsra-x86_64.AppImage"; - hash = "sha256-T3MABc11rWRjCU+4fvbpYDVq4XjSVfEeBrS03ITw8x8="; + url = "https://download.todesktop.com/2003241lzgn20jd/beeper-3.99.23-build-240309svrjfqia1-x86_64.AppImage"; + hash = "sha256-8kZk5tEJCcSPKgpsVKrHB5twujZF2LdepW7HIJsb52E="; }; appimage = appimageTools.wrapType2 { inherit version pname src; diff --git a/pkgs/applications/networking/instant-messengers/element/pin.nix b/pkgs/applications/networking/instant-messengers/element/pin.nix index 19ea95b452ff..8cb54de82410 100644 --- a/pkgs/applications/networking/instant-messengers/element/pin.nix +++ b/pkgs/applications/networking/instant-messengers/element/pin.nix @@ -1,9 +1,9 @@ { - "version" = "1.11.59"; + "version" = "1.11.60"; "hashes" = { - "desktopSrcHash" = "sha256-dasRfLsa8Jc6Vyay02f6IytjvYs3xbSFB2fU5bxi79E="; - "desktopYarnHash" = "00jvid2li68ji1xkbbpdiy39fzvhmw7ypnr3x82wbqqafkc5vil6"; - "webSrcHash" = "sha256-UpRRTPrNiFsqXKD072jXVIqS8ZiuKt/BUzx1oja90VA="; - "webYarnHash" = "1s9lp2dd3slpp70rrbmsbmzphm6fwglnrqwk9fgylzqa1ds8nfjd"; + "desktopSrcHash" = "sha256-r4Kcf8iBACHSiUceHq5T2BswGqgVkMBm/5ANq0smA20="; + "desktopYarnHash" = "16psxfai8dyckm4xwrg5czv6l4163x2nlqqcdgly6axabllgacj1"; + "webSrcHash" = "sha256-k+jtTUuLaux2HSDsLT2ktcShQTNNnDe0e3Icoa31WdE="; + "webYarnHash" = "0rgdfdkri7mxs7rvp3rwbnijbcs5chc02smw1kbb00j6qzf6k3dj"; }; } diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix index d12bea03460e..5c96be3bb82e 100644 --- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix +++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix @@ -48,23 +48,23 @@ let # and often with different versions. We write them on three lines # like this (rather than using {}) so that the updater script can # find where to edit them. - versions.aarch64-darwin = "5.17.10.30974"; - versions.x86_64-darwin = "5.17.10.30974"; - versions.x86_64-linux = "5.17.10.3512"; + versions.aarch64-darwin = "5.17.11.31580"; + versions.x86_64-darwin = "5.17.11.31580"; + versions.x86_64-linux = "5.17.11.3835"; srcs = { aarch64-darwin = fetchurl { url = "https://zoom.us/client/${versions.aarch64-darwin}/zoomusInstallerFull.pkg?archType=arm64"; name = "zoomusInstallerFull.pkg"; - hash = "sha256-JWGy8je6hFDTSKPx4GAUDMJdi5/zKoj4KK5w6E0pcsI="; + hash = "sha256-oCCZksH5sgfPVxh6I7ZpIMvkMX0+HnL1R9voNRjTUP4="; }; x86_64-darwin = fetchurl { url = "https://zoom.us/client/${versions.x86_64-darwin}/zoomusInstallerFull.pkg"; - hash = "sha256-lO0fyW5catdgKZ7cAQhdAbfQW+EewdCjTne+ZC3UW3w="; + hash = "sha256-6bIUfS6bZWh7fEq2xY++nIbnmE5DJxte6sjyoSKUMzU="; }; x86_64-linux = fetchurl { url = "https://zoom.us/client/${versions.x86_64-linux}/zoom_x86_64.pkg.tar.xz"; - hash = "sha256-dXpfgouZjd+0YyHz1c/7VL3a1SATAX8BpkR4KBeEDbc="; + hash = "sha256-eIa8ESoYi0gPbJbqahqKKvnM7rGPT+WeMIYCyFEWHGE="; }; }; diff --git a/pkgs/applications/networking/remote/citrix-workspace/default.nix b/pkgs/applications/networking/remote/citrix-workspace/default.nix index f6004c2a3fae..891dfe5d8e9e 100644 --- a/pkgs/applications/networking/remote/citrix-workspace/default.nix +++ b/pkgs/applications/networking/remote/citrix-workspace/default.nix @@ -1,7 +1,7 @@ { lib, callPackage }: # For detailed information about the Citrix source-tarball, please refer to the OEM -# reference guide: https://developer-docs.citrix.com/projects/workspace-app-for-linux-oem-guide/en/latest/ +# reference guide: https://developer-docs.citrix.com/en-us/citrix-workspace-app-for-linux/citrix-workspace-app-for-linux-oem-reference-guide let inherit (callPackage ./sources.nix { }) supportedVersions unsupportedVersions; @@ -13,7 +13,7 @@ let Citrix Workspace at version ${x} is not supported anymore! Actively supported releases are listed here: - https://www.citrix.com/support/product-lifecycle/milestones/receiver.html + https://www.citrix.com/support/product-lifecycle/workspace-app.html '')) unsupportedVersions ); diff --git a/pkgs/applications/networking/remote/citrix-workspace/generic.nix b/pkgs/applications/networking/remote/citrix-workspace/generic.nix index ff945e3aeed2..ec44f3da0493 100644 --- a/pkgs/applications/networking/remote/citrix-workspace/generic.nix +++ b/pkgs/applications/networking/remote/citrix-workspace/generic.nix @@ -196,7 +196,7 @@ stdenv.mkDerivation rec { ${mkWrappers copyCert extraCerts} - # See https://developer-docs.citrix.com/projects/workspace-app-for-linux-oem-guide/en/latest/reference-information/#library-files + # See https://developer-docs.citrix.com/en-us/citrix-workspace-app-for-linux/citrix-workspace-app-for-linux-oem-reference-guide/reference-information/#library-files # Those files are fallbacks to support older libwekit.so and libjpeg.so rm $out/opt/citrix-icaclient/lib/ctxjpeg_fb_8.so || true rm $out/opt/citrix-icaclient/lib/UIDialogLibWebKit.so || true @@ -238,7 +238,7 @@ stdenv.mkDerivation rec { license = licenses.unfree; description = "Citrix Workspace"; sourceProvenance = with sourceTypes; [ binaryNativeCode ]; - platforms = platforms.linux; + platforms = [ "x86_64-linux" ] ++ optional (versionOlder version "24") "i686-linux"; maintainers = with maintainers; [ michaeladler ]; inherit homepage; }; diff --git a/pkgs/applications/networking/remote/citrix-workspace/sources.nix b/pkgs/applications/networking/remote/citrix-workspace/sources.nix index 3d9391168514..00c1ff878b96 100644 --- a/pkgs/applications/networking/remote/citrix-workspace/sources.nix +++ b/pkgs/applications/networking/remote/citrix-workspace/sources.nix @@ -12,30 +12,8 @@ let # for Linux. # # The latest versions can be found at https://www.citrix.com/downloads/workspace-app/linux/ + # x86 is unsupported past 23.11, see https://docs.citrix.com/en-us/citrix-workspace-app-for-linux/deprecation supportedVersions = lib.mapAttrs mkVersionInfo { - - "23.02.0" = { - major = "23"; - minor = "2"; - patch = "0"; - x64hash = "d0030a4782ba4b2628139635a12a7de044a4eb36906ef1eadb05b6ea77c1a7bc"; - x86hash = "39228fc8dd69adca4e56991c1ebc0832fec183c3ab5abd2d65c66b39b634391b"; - x64suffix = "10"; - x86suffix = "10"; - homepage = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-latest6.html"; - }; - - "23.07.0" = { - major = "23"; - minor = "7"; - patch = "0"; - x64hash = "d4001226e79b5353fc74da4c8ed4f6295c1859fe18142cb5de345a3c7ae48168"; - x86hash = "4a7da238286ae28d7baf0fefa1e7e09d077c8bc56c2bf7bec00da42c331bee59"; - x64suffix = "17"; - x86suffix = "17"; - homepage = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-latest21.html"; - }; - "23.09.0" = { major = "23"; minor = "9"; @@ -55,17 +33,27 @@ let x86hash = "65b8c144e51b5bd78b98ae69e0fa76d6c020a857d74fd5254be49492527072b6"; x64suffix = "82"; x86suffix = "82"; - homepage = "https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html"; + homepage = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-latest10.html"; }; + "24.02.0" = { + major = "24"; + minor = "2"; + patch = "0"; + x64hash = "eaeb5d3bd079d4e5c9707da67f5f7a25cb765e19c36d01861290655dbf2aaee4"; + x86hash = ""; + x64suffix = "65"; + x86suffix = ""; + homepage = "https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html"; + }; }; # Retain attribute-names for abandoned versions of Citrix workspace to # provide a meaningful error-message if it's attempted to use such an old one. # # The lifespans of Citrix products can be found here: - # https://www.citrix.com/support/product-lifecycle/milestones/receiver.html - unsupportedVersions = [ ]; + # https://www.citrix.com/support/product-lifecycle/workspace-app.html + unsupportedVersions = [ "23.02.0" "23.07.0" ]; in { inherit supportedVersions unsupportedVersions; } diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix index 9cdc5d1b5014..d66587e79108 100644 --- a/pkgs/applications/office/fava/default.nix +++ b/pkgs/applications/office/fava/default.nix @@ -2,12 +2,12 @@ python3.pkgs.buildPythonApplication rec { pname = "fava"; - version = "1.27.2"; + version = "1.27.3"; format = "pyproject"; src = fetchPypi { inherit pname version; - hash = "sha256-kLQAWFHDmzsBjVMm/ZUn+TFkM52W0h0jg0wSp1tmPZQ="; + hash = "sha256-GsnXZaazEiOhyjbIinHRD1fdoqlAp3d5csrmtydxmGM="; }; nativeBuildInputs = with python3.pkgs; [ setuptools-scm ]; diff --git a/pkgs/applications/office/timeular/default.nix b/pkgs/applications/office/timeular/default.nix index 8ea89c5b058b..ef6c931bcc6a 100644 --- a/pkgs/applications/office/timeular/default.nix +++ b/pkgs/applications/office/timeular/default.nix @@ -5,12 +5,12 @@ }: let - version = "6.7.3"; + version = "6.7.5"; pname = "timeular"; src = fetchurl { url = "https://s3.amazonaws.com/timeular-desktop-packages/linux/production/Timeular-${version}.AppImage"; - hash = "sha256-VnjCTf2x3GzmKW9EfNWGsN/aK7DKjTo8DZOF2qqGJ0Q="; + hash = "sha256-b/I34f8fGgPr4+fZJ+2cb+Xi/AvotxNHYg7IaLTByPk="; }; appimageContents = appimageTools.extractType2 { diff --git a/pkgs/applications/science/misc/foldingathome/client.nix b/pkgs/applications/science/misc/foldingathome/client.nix index 108dcc284ea9..6ff159cc54cb 100644 --- a/pkgs/applications/science/misc/foldingathome/client.nix +++ b/pkgs/applications/science/misc/foldingathome/client.nix @@ -3,18 +3,23 @@ , fetchFromGitHub , ocl-icd , openssl +, re2 +, libevent +, git +, zlib +, expat , scons , stdenv , extraPkgs ? [ ] }: let - version = "8.3.1"; + version = "8.3.7"; cbangSrc = fetchFromGitHub { owner = "cauldrondevelopmentllc"; repo = "cbang"; rev = "bastet-v${version}"; - hash = "sha256-cuyfJG5aDJ6e2SllxwKTViG0j8FWHvjcTaaBBtkgEdU="; + sha256 = "sha256-acAImItdkgo6PBFL6Vu/caIdcnvp/3VEW2lgVDgKy9g="; }; fah-client = stdenv.mkDerivation { @@ -25,10 +30,10 @@ let owner = "FoldingAtHome"; repo = "fah-client-bastet"; rev = "v${version}"; - hash = "sha256-Ztc2im4Xmk8f6GotGRgA5zDkcyQFnodUvroJVl+ApT4="; + sha256 = "sha256-d+LY/R4TAko+2e2W76KEBQ8fXj0hzzmBOm+c4tksXMA="; }; - nativeBuildInputs = [ scons ]; + nativeBuildInputs = [ scons re2 libevent git ]; buildInputs = [ openssl ]; @@ -63,7 +68,7 @@ in buildFHSEnv { name = fah-client.name; - targetPkgs = _: [ fah-client ocl-icd ] ++ extraPkgs; + targetPkgs = _: [ fah-client ocl-icd zlib expat ] ++ extraPkgs; runScript = "/bin/fah-client"; diff --git a/pkgs/applications/version-management/josh/default.nix b/pkgs/applications/version-management/josh/default.nix index 5acd1a634344..b127966176cd 100644 --- a/pkgs/applications/version-management/josh/default.nix +++ b/pkgs/applications/version-management/josh/default.nix @@ -11,36 +11,24 @@ , darwin }: +let + # josh-ui requires javascript dependencies, haven't tried to figure it out yet + cargoFlags = [ "--workspace" "--exclude" "josh-ui" ]; +in + rustPlatform.buildRustPackage rec { pname = "josh"; - version = "23.02.14"; + version = "23.12.04"; JOSH_VERSION = "r${version}"; src = fetchFromGitHub { owner = "esrlabs"; repo = "josh"; rev = JOSH_VERSION; - sha256 = "1sqa8xi5d55zshky7gicac02f67vp944hclkdsmwy0bczk9hgssr"; + sha256 = "10fspcafqnv6if5c1h8z9pf9140jvvlrch88w62wsg4w2vhaii0v"; }; - patches = [ - # Unreleased patch allowing compilation from the GitHub tarball download - (fetchpatch { - name = "josh-version-without-git.patch"; - url = "https://github.com/josh-project/josh/commit/13e7565ab029206598881391db4ddc6dface692b.patch"; - sha256 = "1l5syqj51sn7kcqvffwl6ggn5sq8wfkpviga860agghnw5dpf7ns"; - }) - - # Merged upstream, fixes builds with newer rustc - (fetchpatch { - name = "josh-fix-builds-with-rust-173.patch"; - url = "https://github.com/josh-project/josh/commit/7b8259b81a9acabb528ddebc4ab30fc712f756fb.patch"; - sha256 = "sha256-YfrVlH6Ox05ZbmB/15HVaFlOyRTOFbYflq0edi6/X9k="; - includes = [ "josh-proxy/src/bin/josh-proxy.rs" ]; - }) - ]; - - cargoSha256 = "0f6cvz2s8qs53b2g6xja38m24hafqla61s4r5za0a1dyndgms7sl"; + cargoSha256 = "1j0vl3h6f65ldg80bgryh1mz423lcrcdkn8rmajya1850pfxk3w3"; nativeBuildInputs = [ pkg-config @@ -54,11 +42,8 @@ rustPlatform.buildRustPackage rec { darwin.Security ]; - cargoBuildFlags = [ - "-p" "josh" - "-p" "josh-proxy" - # TODO: josh-ui - ]; + cargoBuildFlags = cargoFlags; + cargoTestFlags = cargoFlags; postInstall = '' wrapProgram "$out/bin/josh-proxy" --prefix PATH : "${git}/bin" diff --git a/pkgs/applications/version-management/smartgithg/default.nix b/pkgs/applications/version-management/smartgithg/default.nix deleted file mode 100644 index 693505b20305..000000000000 --- a/pkgs/applications/version-management/smartgithg/default.nix +++ /dev/null @@ -1,97 +0,0 @@ -{ lib -, stdenv -, fetchurl -, makeDesktopItem -, openjdk19 -, gtk3 -, glib -, gnome -, wrapGAppsHook -, libXtst -, which -}: -let - jre = openjdk19; -in -stdenv.mkDerivation rec { - pname = "smartgithg"; - version = "23.1.1"; - - src = fetchurl { - url = "https://www.syntevo.com/downloads/smartgit/smartgit-linux-${builtins.replaceStrings [ "." ] [ "_" ] version}.tar.gz"; - sha256 = "sha256-LXB+OymApJjL4bgOZ8Vfd193jZHVbQ6G2zmrHNE/OJk="; - }; - - nativeBuildInputs = [ wrapGAppsHook ]; - - buildInputs = [ jre gnome.adwaita-icon-theme gtk3 ]; - - preFixup = with lib; '' - gappsWrapperArgs+=( \ - --prefix PATH : ${makeBinPath [ jre which ]} \ - --prefix LD_LIBRARY_PATH : ${makeLibraryPath [ - gtk3 - glib - libXtst - ]} \ - --prefix JRE_HOME : ${jre} \ - --prefix JAVA_HOME : ${jre} \ - --prefix SMARTGITHG_JAVA_HOME : ${jre} \ - ) - # add missing shebang for start script - sed -i $out/bin/smartgit \ - -e '1i#!/bin/bash' - ''; - - installPhase = '' - runHook preInstall - - sed -i '/ --login/d' bin/smartgit.sh - mkdir -pv $out/{bin,share/applications,share/icons/hicolor/scalable/apps/} - cp -av ./{dictionaries,lib} $out/ - cp -av bin/smartgit.sh $out/bin/smartgit - ln -sfv $out/bin/smartgit $out/bin/smartgithg - - cp -av $desktopItem/share/applications/* $out/share/applications/ - for icon_size in 32 48 64 128 256; do - path=$icon_size'x'$icon_size - icon=bin/smartgit-$icon_size.png - mkdir -p $out/share/icons/hicolor/$path/apps - cp $icon $out/share/icons/hicolor/$path/apps/smartgit.png - done - - cp -av bin/smartgit.svg $out/share/icons/hicolor/scalable/apps/ - - runHook postInstall - ''; - - desktopItem = with lib; makeDesktopItem rec { - name = "smartgit"; - exec = "smartgit"; - comment = meta.description; - icon = "smartgit"; - desktopName = "SmartGit"; - categories = [ - "Application" - "Development" - "RevisionControl" - ]; - mimeTypes = [ - "x-scheme-handler/git" - "x-scheme-handler/smartgit" - "x-scheme-handler/sourcetree" - ]; - startupNotify = true; - startupWMClass = name; - keywords = [ "git" ]; - }; - - meta = with lib; { - description = "GUI for Git, Mercurial, Subversion"; - homepage = "https://www.syntevo.com/smartgit/"; - changelog = "https://www.syntevo.com/smartgit/changelog.txt"; - license = licenses.unfree; - platforms = platforms.linux; - maintainers = with lib.maintainers; [ jraygauthier ]; - }; -} diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix index 29bb90a9dd8d..fee1addf0e6d 100644 --- a/pkgs/applications/video/obs-studio/default.nix +++ b/pkgs/applications/video/obs-studio/default.nix @@ -53,6 +53,7 @@ , libdatachannel , libvpl , qrcodegencpp +, nix-update-script }: let @@ -61,13 +62,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "obs-studio"; - version = "30.0.2"; + version = "30.1.0"; src = fetchFromGitHub { owner = "obsproject"; repo = finalAttrs.pname; rev = finalAttrs.version; - sha256 = "sha256-8pX1kqibrtDIaE1+/Pey1A5bu6MwFTXLrBOah4rsF+4="; + sha256 = "sha256-9rf3UGazEL5Obd6tqDwM5LOC6D1X6HNzs5sn5z1tOCA="; fetchSubmodules = true; }; @@ -76,25 +77,6 @@ stdenv.mkDerivation (finalAttrs: { ./Enable-file-access-and-universal-access-for-file-URL.patch ./fix-nix-plugin-path.patch - # Backport ffmpeg 6.1 / GCC 13 build fixes - # FIXME: remove in next release - (fetchpatch { - url = "https://github.com/obsproject/obs-studio/commit/cd784644f5e82b9988043f229c19603289c6d32c.patch"; - hash = "sha256-S4JE5kgr4x3uMHY2GRh0GBJpb7o/wYZb/v0CDITFNnQ="; - }) - (fetchpatch { - url = "https://github.com/obsproject/obs-studio/commit/758b47d4ed9a25b8d64ad481d8d039990b9e57c9.patch"; - hash = "sha256-jYpjwhx6e+dhN3kzbd6FcdjQ+WhIX0/BOu9PSkt+2yI="; - }) - (fetchpatch { - url = "https://github.com/obsproject/obs-studio/commit/4b5be75c7e4b8cee908ed4a02fe0078285b4e8c9.patch"; - hash = "sha256-tuOevhyxchwG42ilrplbiWoiDAKaY4HgzShlvp4VSQI="; - }) - (fetchpatch { - url = "https://github.com/obsproject/obs-studio/commit/6e080a68067b27fe5463f0f4eee7df690451f3d7.patch"; - hash = "sha256-nbn/q3uszoHaDvaW8Et1MS1sgQzMsJRmjGSMHzUxV70="; - }) - # Fix libobs.pc for plugins on non-x86 systems (fetchpatch { name = "fix-arm64-cmake.patch"; @@ -175,6 +157,10 @@ stdenv.mkDerivation (finalAttrs: { (lib.cmakeBool "ENABLE_PIPEWIRE" pipewireSupport) ]; + env.NIX_CFLAGS_COMPILE = toString [ + "-Wno-error=sign-compare" # https://github.com/obsproject/obs-studio/issues/10200 + ]; + dontWrapGApps = true; preFixup = let wrapperLibraries = [ @@ -202,6 +188,8 @@ stdenv.mkDerivation (finalAttrs: { ln -s ${libcef}/lib/* $out/lib/obs-plugins/ ''; + passthru.updateScript = nix-update-script { }; + meta = with lib; { description = "Free and open source software for video recording and live streaming"; longDescription = '' diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix index 9b6bb0a48be3..a82a00fd5412 100644 --- a/pkgs/applications/virtualization/docker/default.nix +++ b/pkgs/applications/virtualization/docker/default.nix @@ -279,20 +279,6 @@ rec { # Get revisions from # https://github.com/moby/moby/tree/${version}/hack/dockerfile/install/* - docker_20_10 = callPackage dockerGen rec { - version = "20.10.26"; - cliRev = "v${version}"; - cliHash = "sha256-EPhsng0kLnweVbC8ZnH0NK1/yHlYSA5Sred4rWJX/Gs="; - mobyRev = "v${version}"; - mobyHash = "sha256-IJ7m2mQnsLiom0EuZLpuLY6fYEko7rEy35igJv1AY04="; - runcRev = "v1.1.8"; - runcHash = "sha256-rDJYEc64KW4Qa3Eg2oUjJqIKrg6THb5hxQFFbvb9Zp4="; - containerdRev = "v1.6.22"; - containerdHash = "sha256-In7OkK3xm7Cz3H1jzG9b4tsZbmo44QCq8pNU+PPy8dY="; - tiniRev = "v0.19.0"; - tiniHash = "sha256-ZDKu/8yE5G0RYFJdhgmCdN3obJNyRWv6K/Gd17zc1sI="; - }; - docker_24 = callPackage dockerGen rec { version = "24.0.5"; cliRev = "v${version}"; diff --git a/pkgs/applications/virtualization/imgcrypt/default.nix b/pkgs/applications/virtualization/imgcrypt/default.nix index 25adabdba0a6..bb703e3a0ac6 100644 --- a/pkgs/applications/virtualization/imgcrypt/default.nix +++ b/pkgs/applications/virtualization/imgcrypt/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "imgcrypt"; - version = "1.1.9"; + version = "1.1.10"; src = fetchFromGitHub { owner = "containerd"; repo = pname; rev = "v${version}"; - hash = "sha256-EStyi6RDK1G6kuaDGumZaHB4OrSrhhx/F5GsLe0amyA="; + hash = "sha256-81jfoWHYYenGQFcQI9kk8uPnv6FcyOtcJjpo1ykdtOI="; }; vendorHash = null; diff --git a/pkgs/applications/window-managers/wayfire/wf-shell.nix b/pkgs/applications/window-managers/wayfire/wf-shell.nix index 229a87234924..b71e667b31ad 100644 --- a/pkgs/applications/window-managers/wayfire/wf-shell.nix +++ b/pkgs/applications/window-managers/wayfire/wf-shell.nix @@ -16,14 +16,14 @@ stdenv.mkDerivation (finalAttrs: { pname = "wf-shell"; - version = "0.8.0"; + version = "0.8.1"; src = fetchFromGitHub { owner = "WayfireWM"; repo = "wf-shell"; rev = "v${finalAttrs.version}"; fetchSubmodules = true; - hash = "sha256-K5g9DfFlqZyPHDUswx3vtzh0D9ogOQ1p87ZrqyH35vs="; + hash = "sha256-/ajFPIk8VJnlu2DzvSyGD3bC4r/pxALTkZeLNvs9dTw="; }; nativeBuildInputs = [ |