mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-29 10:23:29 +00:00
Merge release-24.05 into staging-next-24.05
This commit is contained in:
commit
9ab6d219a0
7
.github/CODEOWNERS
vendored
7
.github/CODEOWNERS
vendored
@ -11,11 +11,14 @@
|
||||
# This also holds true for GitHub teams. Since almost none of our teams have write
|
||||
# permissions, you need to list all members of the team with commit access individually.
|
||||
|
||||
# GitHub actions
|
||||
# CI
|
||||
/.github/workflows @NixOS/Security @Mic92 @zowoq
|
||||
/.github/workflows/check-nix-format.yml @infinisil
|
||||
/ci @infinisil
|
||||
|
||||
# EditorConfig
|
||||
# Develompent support
|
||||
/.editorconfig @Mic92 @zowoq
|
||||
/shell.nix @infinisil @NixOS/Security
|
||||
|
||||
# Libraries
|
||||
/lib @infinisil
|
||||
|
27
.github/workflows/check-nix-format.yml
vendored
27
.github/workflows/check-nix-format.yml
vendored
@ -19,13 +19,18 @@ jobs:
|
||||
with:
|
||||
# pull_request_target checks out the base branch by default
|
||||
ref: refs/pull/${{ github.event.pull_request.number }}/merge
|
||||
- name: Get Nixpkgs revision for nixfmt
|
||||
run: |
|
||||
# pin to a commit from nixpkgs-unstable to avoid e.g. building nixfmt
|
||||
# from staging
|
||||
# This should not be a URL, because it would allow PRs to run arbitrary code in CI!
|
||||
rev=$(jq -r .rev ci/pinned-nixpkgs.json)
|
||||
echo "url=https://github.com/NixOS/nixpkgs/archive/$rev.tar.gz" >> "$GITHUB_ENV"
|
||||
- uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
|
||||
with:
|
||||
# explicitly enable sandbox
|
||||
extra_nix_config: sandbox = true
|
||||
# fix a commit from nixpkgs-unstable to avoid e.g. building nixfmt
|
||||
# from staging
|
||||
nix_path: nixpkgs=https://github.com/NixOS/nixpkgs/archive/4b455dc2048f73a79eb3713f342369ff58f93e0b.tar.gz
|
||||
nix_path: nixpkgs=${{ env.url }}
|
||||
- name: Install nixfmt
|
||||
run: "nix-env -f '<nixpkgs>' -iAP nixfmt-rfc-style"
|
||||
- name: Check that Nix files are formatted according to the RFC style
|
||||
@ -35,14 +40,14 @@ jobs:
|
||||
NIX_FMT_PATHS_BSD: pkgs/os-specific/bsd
|
||||
NIX_FMT_PATHS_MPVSCRIPTS: pkgs/applications/video/mpv/scripts
|
||||
# Format paths related to the Nixpkgs CUDA ecosystem.
|
||||
NIX_FMT_PATHS_CUDA: |
|
||||
NIX_FMT_PATHS_CUDA: |-
|
||||
pkgs/development/cuda-modules
|
||||
pkgs/test/cuda
|
||||
pkgs/top-level/cuda-packages.nix
|
||||
NIX_FMT_PATHS_MAINTAINERS: |
|
||||
NIX_FMT_PATHS_MAINTAINERS: |-
|
||||
maintainers/maintainer-list.nix
|
||||
maintainers/team-list.nix
|
||||
NIX_FMT_PATHS_K3S: |
|
||||
NIX_FMT_PATHS_K3S: |-
|
||||
nixos/modules/services/cluster/k3s
|
||||
nixos/tests/k3s
|
||||
pkgs/applications/networking/cluster/k3s
|
||||
@ -51,6 +56,7 @@ jobs:
|
||||
NIX_FMT_PATHS_BUILD_SUPPORT_PHP: pkgs/build-support/php
|
||||
# Iterate over all environment variables beginning with NIX_FMT_PATHS_.
|
||||
run: |
|
||||
unformattedPaths=()
|
||||
for env_var in "${!NIX_FMT_PATHS_@}"; do
|
||||
readarray -t paths <<< "${!env_var}"
|
||||
if [[ "${paths[*]}" == "" ]]; then
|
||||
@ -59,7 +65,12 @@ jobs:
|
||||
fi
|
||||
echo "Checking paths: ${paths[@]}"
|
||||
if ! nixfmt --check "${paths[@]}"; then
|
||||
echo "Error: nixfmt failed."
|
||||
exit 1
|
||||
unformattedPaths+=("${paths[@]}")
|
||||
fi
|
||||
done
|
||||
if (( "${#unformattedPaths[@]}" > 0 )); then
|
||||
echo "Some required Nix files are not properly formatted"
|
||||
echo "Please run the following in \`nix-shell\`:"
|
||||
echo "nixfmt ${unformattedPaths[*]@Q}"
|
||||
exit 1
|
||||
fi
|
||||
|
29
.github/workflows/check-shell.yml
vendored
Normal file
29
.github/workflows/check-shell.yml
vendored
Normal file
@ -0,0 +1,29 @@
|
||||
name: "Check shell"
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
|
||||
permissions: {}
|
||||
|
||||
jobs:
|
||||
x86_64-linux:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
|
||||
with:
|
||||
# pull_request_target checks out the base branch by default
|
||||
ref: refs/pull/${{ github.event.pull_request.number }}/merge
|
||||
- uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
|
||||
- name: Build shell
|
||||
run: nix-build shell.nix
|
||||
|
||||
aarch64-darwin:
|
||||
runs-on: macos-latest
|
||||
steps:
|
||||
- uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
|
||||
with:
|
||||
# pull_request_target checks out the base branch by default
|
||||
ref: refs/pull/${{ github.event.pull_request.number }}/merge
|
||||
- uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
|
||||
- name: Build shell
|
||||
run: nix-build shell.nix
|
12
ci/README.md
Normal file
12
ci/README.md
Normal file
@ -0,0 +1,12 @@
|
||||
# CI support files
|
||||
|
||||
This directory contains files to support CI, such as [GitHub Actions](https://github.com/NixOS/nixpkgs/tree/master/.github/workflows) and [Ofborg](https://github.com/nixos/ofborg).
|
||||
This is in contrast with [`maintainers/scripts`](`../maintainers/scripts`) which is for human use instead.
|
||||
|
||||
## Pinned Nixpkgs
|
||||
|
||||
CI may need certain packages from Nixpkgs.
|
||||
In order to ensure that the needed packages are generally available without building,
|
||||
[`pinned-nixpkgs.json`](./pinned-nixpkgs.json) contains a pinned Nixpkgs version tested by Hydra.
|
||||
|
||||
Run [`update-pinned-nixpkgs.sh`](./update-pinned-nixpkgs.sh) to update it.
|
4
ci/pinned-nixpkgs.json
Normal file
4
ci/pinned-nixpkgs.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"rev": "cfb89a95f19bea461fc37228dc4d07b22fe617c2",
|
||||
"sha256": "1yhsacvry6j8r02lk70p9dphjpi8lpzgq2qay8hiy4nqlys0mrch"
|
||||
}
|
16
ci/update-pinned-nixpkgs.sh
Executable file
16
ci/update-pinned-nixpkgs.sh
Executable file
@ -0,0 +1,16 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p jq
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# https://stackoverflow.com/a/246128
|
||||
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||
|
||||
repo=https://github.com/nixos/nixpkgs
|
||||
branch=nixpkgs-unstable
|
||||
file=$SCRIPT_DIR/pinned-nixpkgs.json
|
||||
|
||||
rev=$(git ls-remote "$repo" refs/heads/"$branch" | cut -f1)
|
||||
sha256=$(nix-prefetch-url --unpack "$repo/archive/$rev.tar.gz" --name source)
|
||||
|
||||
jq -n --arg rev "$rev" --arg sha256 "$sha256" '$ARGS.named' | tee /dev/stderr > $file
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
x86_64-linux = "/nix/store/1w4b47zhp33md29wjhgg549pc281vv02-nix-2.18.4";
|
||||
i686-linux = "/nix/store/hz02kn0ffn3wdi2xs7lndpr88v4v4fp2-nix-2.18.4";
|
||||
aarch64-linux = "/nix/store/90zwqa9z2fgldc7ki1p5gfvglchjh9r6-nix-2.18.4";
|
||||
x86_64-darwin = "/nix/store/bd1ix5mj9lj2yh7bqnmdjc24zlg5jivk-nix-2.18.4";
|
||||
aarch64-darwin = "/nix/store/5hvsmklhqiay5i4q5vdkg60p8qpc69rz-nix-2.18.4";
|
||||
x86_64-linux = "/nix/store/4rs65bbl7x7ba8xi65x3j9zfc219vp8j-nix-2.18.5";
|
||||
i686-linux = "/nix/store/qfzjbq958jnscjl1k8wr6gmpi5876dw6-nix-2.18.5";
|
||||
aarch64-linux = "/nix/store/ns0ir4zmhn4bj55h3vvjcx1y3h5f6gy5-nix-2.18.5";
|
||||
x86_64-darwin = "/nix/store/h8pgzxglir6jdpv07plxz01z9ak7m9md-nix-2.18.5";
|
||||
aarch64-darwin = "/nix/store/8grhqqmsmpsvn7d4m30g3jgwn5ik9i7k-nix-2.18.5";
|
||||
}
|
||||
|
@ -29,7 +29,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
install -Dm644 'LDtk ${finalAttrs.version} installer.AppImage' $out/share/ldtk.AppImage
|
||||
makeWrapper ${appimage-run}/bin/appimage-run $out/bin/ldtk \
|
||||
--add-flags $out/share/ldtk.AppImage
|
||||
install -Dm644 src/ldtk.png $out/share/icons/hicolor/1024x1024/apps/ldtk.png
|
||||
install -Dm644 src/ldtk.png $out/share/icons/hicolor/512x512/apps/ldtk.png
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
@ -77,14 +77,14 @@ let
|
||||
urllib3
|
||||
];
|
||||
in mkDerivation rec {
|
||||
version = "3.34.7";
|
||||
version = "3.34.8";
|
||||
pname = "qgis-ltr-unwrapped";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "qgis";
|
||||
repo = "QGIS";
|
||||
rev = "final-${lib.replaceStrings [ "." ] [ "_" ] version}";
|
||||
hash = "sha256-6fIBmIoCVo0AtkjC4Vn3jMjz93gZmvkFAgo+KnasyXo=";
|
||||
hash = "sha256-UeyGx+C7szXv++hXFV006Xk4oSKfSj4teJIwaD4ODVk=";
|
||||
};
|
||||
|
||||
passthru = {
|
||||
@ -147,9 +147,7 @@ in mkDerivation rec {
|
||||
|
||||
# Add path to Qt platform plugins
|
||||
# (offscreen is needed by "${APIS_SRC_DIR}/generate_console_pap.py")
|
||||
preBuild = ''
|
||||
export QT_QPA_PLATFORM_PLUGIN_PATH=${qtbase.bin}/lib/qt-${qtbase.version}/plugins/platforms
|
||||
'';
|
||||
env.QT_QPA_PLATFORM_PLUGIN_PATH="${qtbase}/${qtbase.qtPluginPrefix}/platforms";
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_BUILD_TYPE=Release"
|
||||
@ -164,7 +162,7 @@ in mkDerivation rec {
|
||||
);
|
||||
|
||||
qtWrapperArgs = [
|
||||
"--set QT_QPA_PLATFORM_PLUGIN_PATH ${qtbase.bin}/lib/qt-${qtbase.version}/plugins/platforms"
|
||||
"--set QT_QPA_PLATFORM_PLUGIN_PATH ${qtbase}/${qtbase.qtPluginPrefix}/platforms"
|
||||
];
|
||||
|
||||
dontWrapGApps = true; # wrapper params passed below
|
||||
|
@ -1,14 +1,14 @@
|
||||
{
|
||||
k3sVersion = "1.28.10+k3s1";
|
||||
k3sCommit = "a4c5612ea3dd202135e7c691c534c671a7d43690";
|
||||
k3sRepoSha256 = "00r06kc98nvbmaai8m2pbqsl0v6y3kbc3rz3l7lb9wy4qhiyxrww";
|
||||
k3sVendorHash = "sha256-8PbpjPVX+Yimhwbydu9YOTIMRTf/iLG21Ee/QMowp5Y=";
|
||||
k3sVersion = "1.28.11+k3s1";
|
||||
k3sCommit = "617b0e84f419e37ba995c6dec06ccfbb24bd649c";
|
||||
k3sRepoSha256 = "04pmg0qx1sidpkv72vllmnk82v4fg490gvppp79m3jc931v059w9";
|
||||
k3sVendorHash = "sha256-6uCzObYCIETT/aswsHR9hOzUPNZe8GJbLWfNqOKWyag=";
|
||||
chartVersions = import ./chart-versions.nix;
|
||||
k3sRootVersion = "0.12.2";
|
||||
k3sRootSha256 = "1gjynvr350qni5mskgm7pcc7alss4gms4jmkiv453vs8mmma9c9k";
|
||||
k3sCNIVersion = "1.4.0-k3s2";
|
||||
k3sCNISha256 = "17dg6jgjx18nrlyfmkv14dhzxsljz4774zgwz5dchxcf38bvarqa";
|
||||
containerdVersion = "1.7.15-k3s1";
|
||||
containerdSha256 = "18hlj4ixjk7wvamfd66xyc0cax2hs9s7yjvlx52afxdc73194y0f";
|
||||
containerdVersion = "1.7.17-k3s1.28";
|
||||
containerdSha256 = "0nhhx932j551ran3kkvyp4nmsg5c71mq0g6jrcbs2j4nn7yqdkhm";
|
||||
criCtlVersion = "1.26.0-rc.0-k3s1";
|
||||
}
|
||||
|
@ -1,14 +1,14 @@
|
||||
{
|
||||
k3sVersion = "1.29.5+k3s1";
|
||||
k3sCommit = "4e53a32306759581f4ed938bcd18b6fa20b83230";
|
||||
k3sRepoSha256 = "169hzl23chs4qblicmqj3j10jg1xdq8s9717bd3pzx7wzz9s9mqw";
|
||||
k3sVendorHash = "sha256-QreiB4JMtfBjHlkAyflQAW2rnfgay62UD6emx8TgUpM=";
|
||||
k3sVersion = "1.29.6+k3s2";
|
||||
k3sCommit = "b4b156d9d14eeb475e789718b3a6b78aba00019e";
|
||||
k3sRepoSha256 = "0wagfh4vbvyi62np6zx7b4p6myn0xavw691y78rnbl32jckiy14f";
|
||||
k3sVendorHash = "sha256-o36gf3q7Vv+RoY681cL44rU2QFrdFW3EbRpw3dLcVTI=";
|
||||
chartVersions = import ./chart-versions.nix;
|
||||
k3sRootVersion = "0.13.0";
|
||||
k3sRootSha256 = "1jq5f0lm08abx5ikarf92z56fvx4kjpy2nmzaazblb34lajw87vj";
|
||||
k3sCNIVersion = "1.4.0-k3s2";
|
||||
k3sCNISha256 = "17dg6jgjx18nrlyfmkv14dhzxsljz4774zgwz5dchxcf38bvarqa";
|
||||
containerdVersion = "1.7.15-k3s1";
|
||||
containerdSha256 = "18hlj4ixjk7wvamfd66xyc0cax2hs9s7yjvlx52afxdc73194y0f";
|
||||
containerdVersion = "1.7.17-k3s1";
|
||||
containerdSha256 = "1j61mbgx346ydvnjd8b07wf7nmvvplx28wi5jjdzi1k688r2hxpf";
|
||||
criCtlVersion = "1.29.0-k3s1";
|
||||
}
|
||||
|
@ -54,7 +54,7 @@ assert withQt -> qt6 != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "wireshark-${if withQt then "qt" else "cli"}";
|
||||
version = "4.2.5";
|
||||
version = "4.2.6";
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
|
||||
repo = "wireshark";
|
||||
owner = "wireshark";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-g0b0YGWQzWsALVnNJl/WQGl9J2QjaLnry2VL6qvN1FQ=";
|
||||
hash = "sha256-zlFTUgsEKraE9crS5SZ13r93JJzUb6eyBhusJbbGwsE=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -9,14 +9,14 @@ let
|
||||
callPackage
|
||||
(import ./generic.nix rec {
|
||||
pname = "apptainer";
|
||||
version = "1.3.2";
|
||||
version = "1.3.3";
|
||||
projectName = "apptainer";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "apptainer";
|
||||
repo = "apptainer";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-NseigaPmRKDsBk8v7RpYf+uoEGvQHVnqOMO49kP0mQ8=";
|
||||
hash = "sha256-xQZCQa9z1aJ2tVtxMlwcNhlm0EV/nn8OnbfaVZRm4JI=";
|
||||
};
|
||||
|
||||
# Update by running
|
||||
@ -47,20 +47,20 @@ let
|
||||
callPackage
|
||||
(import ./generic.nix rec {
|
||||
pname = "singularity-ce";
|
||||
version = "4.1.3";
|
||||
version = "4.1.4";
|
||||
projectName = "singularity";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sylabs";
|
||||
repo = "singularity";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-pR8zyMr23wcbDCXAysVEgGUDHkrfhLoVF3fjMLgZFYs=";
|
||||
hash = "sha256-+qwPzgwfF6A1c/rmSM/5T2N9/wVeWhMoAthj3eSQmh8=";
|
||||
};
|
||||
|
||||
# Update by running
|
||||
# nix-prefetch -E "{ sha256 }: ((import ./. { }).singularity.override { vendorHash = sha256; }).goModules"
|
||||
# at the root directory of the Nixpkgs repository
|
||||
vendorHash = "sha256-332GFL04aE6B6vxgtJJH4TeI6YJCDBpCClJ3sc5gN3A=";
|
||||
vendorHash = "sha256-dTqOSk8APLOsqwEiZ/IL8Zu1SR48MyEYPgRe6PC2nd8=";
|
||||
|
||||
# Do not build conmon and squashfuse from the Git submodule sources,
|
||||
# Use Nixpkgs provided version
|
||||
|
@ -32,11 +32,11 @@ let
|
||||
buildType = "release";
|
||||
# Use maintainers/scripts/update.nix to update the version and all related hashes or
|
||||
# change the hashes in extpack.nix and guest-additions/default.nix as well manually.
|
||||
virtualboxVersion = "7.0.14";
|
||||
virtualboxSha256 = "45860d834804a24a163c1bb264a6b1cb802a5bc7ce7e01128072f8d6a4617ca9";
|
||||
virtualboxVersion = "7.0.18";
|
||||
virtualboxSha256 = "d999513533631674a024762668de999411d8197060c51e68c5faf0a2c0eea1a5";
|
||||
|
||||
kvmPatchVersion = "20240502";
|
||||
kvmPatchHash = "sha256-KokIrrAoJutHzPg6e5YAJgDGs+nQoVjapmyn9kG5tV0=";
|
||||
kvmPatchVersion = "20240515";
|
||||
kvmPatchHash = "sha256-Kh/tlPScdf7CbEEpL54iqMpeUIdmnJL2r/mxnlEzLd0=";
|
||||
|
||||
# The KVM build is not compatible to VirtualBox's kernel modules. So don't export
|
||||
# modsrc at all.
|
||||
@ -135,8 +135,6 @@ in stdenv.mkDerivation (finalAttrs: {
|
||||
./qt-dependency-paths.patch
|
||||
# https://github.com/NixOS/nixpkgs/issues/123851
|
||||
./fix-audio-driver-loading.patch
|
||||
./libxml-2.12.patch
|
||||
./gcc-13.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
@ -12,7 +12,7 @@ fetchurl rec {
|
||||
# Manually sha256sum the extensionPack file, must be hex!
|
||||
# Thus do not use `nix-prefetch-url` but instead plain old `sha256sum`.
|
||||
# Checksums can also be found at https://www.virtualbox.org/download/hashes/${version}/SHA256SUMS
|
||||
let value = "42cb36fbf439a9ed28c95d2bbc718a0eac902225eb579c884c549af2e94be633";
|
||||
let value = "cab1abad478679fc34a0c5cb4a6d3566edc20e3c54cbed39c8e895d8cfad3ee2";
|
||||
in assert (builtins.stringLength value) == 64; value;
|
||||
|
||||
meta = {
|
||||
|
@ -1,35 +0,0 @@
|
||||
diff --git a/src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR3LibRuntimeXF86.cpp b/src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR3LibRuntimeXF86.cpp
|
||||
index 8a9d15c0..260ebc5c 100644
|
||||
--- a/src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR3LibRuntimeXF86.cpp
|
||||
+++ b/src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR3LibRuntimeXF86.cpp
|
||||
@@ -46,6 +46,9 @@
|
||||
#if defined(VBOX_VBGLR3_XFREE86)
|
||||
extern "C" {
|
||||
# define XFree86LOADER
|
||||
+# ifdef RT_GNUC_PREREQ(13,0) /* cmath gets dragged in and the c++/13/cmath header is allergic to -ffreestanding. */
|
||||
+# define _GLIBCXX_INCLUDE_NEXT_C_HEADERS
|
||||
+# endif
|
||||
# include <xf86_ansic.h>
|
||||
# undef size_t
|
||||
}
|
||||
diff --git a/src/libs/dxvk-native-1.9.2a/src/util/util_matrix.cpp b/src/libs/dxvk-native-1.9.2a/src/util/util_matrix.cpp
|
||||
index 2c5e9314..64890169 100644
|
||||
--- a/src/libs/dxvk-native-1.9.2a/src/util/util_matrix.cpp
|
||||
+++ b/src/libs/dxvk-native-1.9.2a/src/util/util_matrix.cpp
|
||||
@@ -1,3 +1,5 @@
|
||||
+#include <cstdint>
|
||||
+
|
||||
#include "util_matrix.h"
|
||||
|
||||
namespace dxvk {
|
||||
diff --git a/src/libs/dxvk-native-1.9.2a/src/util/util_vector.h b/src/libs/dxvk-native-1.9.2a/src/util/util_vector.h
|
||||
index 77cdf294..9dcb4bf9 100644
|
||||
--- a/src/libs/dxvk-native-1.9.2a/src/util/util_vector.h
|
||||
+++ b/src/libs/dxvk-native-1.9.2a/src/util/util_vector.h
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
+#include <cstdint>
|
||||
#include <iostream>
|
||||
|
||||
#include "util_bit.h"
|
@ -5,7 +5,7 @@ let
|
||||
in
|
||||
fetchurl {
|
||||
url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
|
||||
sha256 = "0efbcb9bf4722cb19292ae00eba29587432e918d3b1f70905deb70f7cf78e8ce";
|
||||
sha256 = "4469bab0f59c62312b0a1b67dcf9c07a8a971afad339fa2c3eb80e209e099ef9";
|
||||
meta = {
|
||||
description = "Guest additions ISO for VirtualBox";
|
||||
longDescription = ''
|
||||
|
@ -10,11 +10,11 @@ let
|
||||
|
||||
in stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "VirtualBox-GuestAdditions-builder-${kernel.version}";
|
||||
version = "7.0.14";
|
||||
version = "7.0.18";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.virtualbox.org/virtualbox/${finalAttrs.version}/VirtualBox-${finalAttrs.version}.tar.bz2";
|
||||
sha256 = "45860d834804a24a163c1bb264a6b1cb802a5bc7ce7e01128072f8d6a4617ca9";
|
||||
sha256 = "d999513533631674a024762668de999411d8197060c51e68c5faf0a2c0eea1a5";
|
||||
};
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = "-Wno-error=incompatible-pointer-types -Wno-error=implicit-function-declaration";
|
||||
@ -37,13 +37,9 @@ in stdenv.mkDerivation (finalAttrs: {
|
||||
'';
|
||||
|
||||
patches = [
|
||||
../gcc-13.patch
|
||||
# https://www.virtualbox.org/changeset/100258/vbox
|
||||
#../gcc-13.patch
|
||||
## https://www.virtualbox.org/changeset/100258/vbox
|
||||
./no-legacy-xorg.patch
|
||||
# https://www.virtualbox.org/changeset/102989/vbox
|
||||
./strlcpy-1.patch
|
||||
# https://www.virtualbox.org/changeset/102990/vbox
|
||||
./strlcpy-2.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
@ -1,29 +0,0 @@
|
||||
# https://www.virtualbox.org/changeset/102989/vbox
|
||||
--- a/include/iprt/string.h
|
||||
+++ b/include/iprt/string.h
|
||||
@@ -244,4 +244,26 @@
|
||||
#else /* !RT_OS_LINUX && !__KERNEL__ */
|
||||
# define RT_BCOPY_UNFORTIFIED(a_pDst, a_pSrc, a_cbToCopy) memcpy((a_pDst), (a_pSrc), (a_cbToCopy))
|
||||
+#endif /* !RT_OS_LINUX && !__KERNEL__ */
|
||||
+
|
||||
+/** @def RT_STRSCPY
|
||||
+ * Copy string and NULL-terminate output buffer.
|
||||
+ *
|
||||
+ * This macro should mostly be used in Linux kernel code. This is
|
||||
+ * the replacement for deprecated strlcpy. It was deprecated since 3.16.60
|
||||
+ * when strscpy was introduced as an alternative. Finally, strlcpy was
|
||||
+ * completely removed from kernel code in 6.8.0.
|
||||
+ *
|
||||
+ * @param a_pDst Pointer to the destination string buffer.
|
||||
+ * @param a_pSrc Pointer to the source NULL-terminated string buffer.
|
||||
+ * @param a_cbToCopy Size of destination buffer..
|
||||
+ */
|
||||
+#if defined(RT_OS_LINUX) && defined(__KERNEL__)
|
||||
+# if (RTLNX_VER_MIN(3,16,60))
|
||||
+# define RT_STRSCPY(a_pDst, a_pSrc, a_cbToCopy) strscpy((a_pDst), (a_pSrc), (a_cbToCopy))
|
||||
+# else /* < 3.16.60 */
|
||||
+# define RT_STRSCPY(a_pDst, a_pSrc, a_cbToCopy) strlcpy((a_pDst), (a_pSrc), (a_cbToCopy))
|
||||
+# endif
|
||||
+#else /* !RT_OS_LINUX && !__KERNEL__ */
|
||||
+# define RT_STRSCPY(a_pDst, a_pSrc, a_cbToCopy) strscpy((a_pDst), (a_pSrc), (a_cbToCopy))
|
||||
#endif /* !RT_OS_LINUX && !__KERNEL__ */
|
@ -1,86 +0,0 @@
|
||||
# https://www.virtualbox.org/changeset/102990/vbox
|
||||
--- a/src/VBox/Additions/common/VBoxGuest/VBoxGuest-linux.c
|
||||
+++ b/src/VBox/Additions/common/VBoxGuest/VBoxGuest-linux.c
|
||||
@@ -1411,5 +1411,5 @@
|
||||
}
|
||||
else if (pParam->name[0] != 'd')
|
||||
- strlcpy(&g_szLogGrp[0], pszValue, sizeof(g_szLogGrp));
|
||||
+ RT_STRSCPY(&g_szLogGrp[0], pszValue, sizeof(g_szLogGrp));
|
||||
|
||||
return 0;
|
||||
@@ -1437,5 +1437,5 @@
|
||||
}
|
||||
else if (pParam->name[0] != 'd')
|
||||
- strlcpy(&g_szLogFlags[0], pszValue, sizeof(g_szLogFlags));
|
||||
+ RT_STRSCPY(&g_szLogFlags[0], pszValue, sizeof(g_szLogFlags));
|
||||
return 0;
|
||||
}
|
||||
@@ -1462,5 +1462,5 @@
|
||||
}
|
||||
else if (pParam->name[0] != 'd')
|
||||
- strlcpy(&g_szLogDst[0], pszValue, sizeof(g_szLogDst));
|
||||
+ RT_STRSCPY(&g_szLogDst[0], pszValue, sizeof(g_szLogDst));
|
||||
return 0;
|
||||
}
|
||||
|
||||
# https://www.virtualbox.org/changeset/102990/vbox
|
||||
--- a/src/VBox/Additions/linux/drm/vbox_drv.h
|
||||
+++ b/src/VBox/Additions/linux/drm/vbox_drv.h
|
||||
@@ -539,7 +539,5 @@
|
||||
void vbox_irq_fini(struct vbox_private *vbox);
|
||||
void vbox_report_hotplug(struct vbox_private *vbox);
|
||||
-#if RTLNX_VER_MAX(5,15,0) && !RTLNX_RHEL_MAJ_PREREQ(9,1) && !RTLNX_SUSE_MAJ_PREREQ(15,5)
|
||||
irqreturn_t vbox_irq_handler(int irq, void *arg);
|
||||
-#endif
|
||||
|
||||
/* vbox_hgsmi.c */
|
||||
|
||||
# https://www.virtualbox.org/changeset/102990/vbox
|
||||
--- a/src/VBox/Additions/linux/sharedfolders/regops.c
|
||||
+++ b/src/VBox/Additions/linux/sharedfolders/regops.c
|
||||
@@ -3506,5 +3506,5 @@
|
||||
|
||||
/** file_operations::mmap wrapper for logging purposes. */
|
||||
-extern int vbsf_reg_mmap(struct file *file, struct vm_area_struct *vma)
|
||||
+static int vbsf_reg_mmap(struct file *file, struct vm_area_struct *vma)
|
||||
{
|
||||
int rc;
|
||||
@@ -3787,5 +3787,5 @@
|
||||
|
||||
# if RTLNX_VER_MIN(5,19,0) || RTLNX_RHEL_RANGE(9,3, 9,99)
|
||||
-int vbsf_write_begin(struct file *file, struct address_space *mapping, loff_t pos,
|
||||
+static int vbsf_write_begin(struct file *file, struct address_space *mapping, loff_t pos,
|
||||
unsigned len, struct page **pagep, void **fsdata)
|
||||
{
|
||||
@@ -3794,5 +3794,5 @@
|
||||
}
|
||||
# else
|
||||
-int vbsf_write_begin(struct file *file, struct address_space *mapping, loff_t pos,
|
||||
+static int vbsf_write_begin(struct file *file, struct address_space *mapping, loff_t pos,
|
||||
unsigned len, unsigned flags, struct page **pagep, void **fsdata)
|
||||
{
|
||||
|
||||
# https://www.virtualbox.org/changeset/102990/vbox
|
||||
--- a/src/VBox/Additions/linux/sharedfolders/vfsmod.c
|
||||
+++ b/src/VBox/Additions/linux/sharedfolders/vfsmod.c
|
||||
@@ -1409,5 +1409,5 @@
|
||||
case Opt_iocharset:
|
||||
case Opt_nls:
|
||||
- strlcpy(info->nls_name, param->string, sizeof(info->nls_name));
|
||||
+ RT_STRSCPY(info->nls_name, param->string, sizeof(info->nls_name));
|
||||
break;
|
||||
case Opt_uid:
|
||||
@@ -1470,5 +1470,5 @@
|
||||
break;
|
||||
case Opt_tag:
|
||||
- strlcpy(info->szTag, param->string, sizeof(info->szTag));
|
||||
+ RT_STRSCPY(info->szTag, param->string, sizeof(info->szTag));
|
||||
break;
|
||||
default:
|
||||
@@ -1529,5 +1529,5 @@
|
||||
|
||||
/* fc->source (the shared folder name) is set after vbsf_init_fs_ctx() */
|
||||
- strlcpy(info->name, fc->source, sizeof(info->name));
|
||||
+ RT_STRSCPY(info->name, fc->source, sizeof(info->name));
|
||||
|
||||
# if RTLNX_VER_MAX(5,3,0)
|
@ -1,47 +0,0 @@
|
||||
diff --git a/include/iprt/cpp/xml.h b/include/iprt/cpp/xml.h
|
||||
index 40975e86..7639c281 100644
|
||||
--- a/include/iprt/cpp/xml.h
|
||||
+++ b/include/iprt/cpp/xml.h
|
||||
@@ -113,9 +113,9 @@ public:
|
||||
class RT_DECL_CLASS XmlError : public RuntimeError
|
||||
{
|
||||
public:
|
||||
- XmlError(xmlErrorPtr aErr);
|
||||
+ XmlError(const xmlError *aErr);
|
||||
|
||||
- static char* Format(xmlErrorPtr aErr);
|
||||
+ static char* Format(const xmlError *aErr);
|
||||
};
|
||||
|
||||
// Logical errors
|
||||
diff --git a/src/VBox/Runtime/r3/xml.cpp b/src/VBox/Runtime/r3/xml.cpp
|
||||
index a6661760..b301a6c6 100644
|
||||
--- a/src/VBox/Runtime/r3/xml.cpp
|
||||
+++ b/src/VBox/Runtime/r3/xml.cpp
|
||||
@@ -131,7 +131,7 @@ LogicError::LogicError(RT_SRC_POS_DECL)
|
||||
RTStrFree(msg);
|
||||
}
|
||||
|
||||
-XmlError::XmlError(xmlErrorPtr aErr)
|
||||
+XmlError::XmlError(const xmlError *aErr)
|
||||
{
|
||||
if (!aErr)
|
||||
throw EInvalidArg(RT_SRC_POS);
|
||||
@@ -145,7 +145,7 @@ XmlError::XmlError(xmlErrorPtr aErr)
|
||||
* Composes a single message for the given error. The caller must free the
|
||||
* returned string using RTStrFree() when no more necessary.
|
||||
*/
|
||||
-/* static */ char *XmlError::Format(xmlErrorPtr aErr)
|
||||
+/* static */ char *XmlError::Format(const xmlError *aErr)
|
||||
{
|
||||
const char *msg = aErr->message ? aErr->message : "<none>";
|
||||
size_t msgLen = strlen(msg);
|
||||
@@ -1856,7 +1856,7 @@ static void xmlParserBaseGenericError(void *pCtx, const char *pszMsg, ...) RT_NO
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
-static void xmlParserBaseStructuredError(void *pCtx, xmlErrorPtr error) RT_NOTHROW_DEF
|
||||
+static void xmlParserBaseStructuredError(void *pCtx, const xmlError *error) RT_NOTHROW_DEF
|
||||
{
|
||||
NOREF(pCtx);
|
||||
/* we expect that there is always a trailing NL */
|
@ -9,11 +9,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "arc-browser";
|
||||
version = "1.49.1-51495";
|
||||
version = "1.51.0-51691";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://releases.arc.net/release/Arc-${finalAttrs.version}.dmg";
|
||||
hash = "sha256-9wuZQgf8uta0ynMRe3GKqORZsCuwhvxjSpGLajCp7N8=";
|
||||
hash = "sha256-d1dCx9knh7LqtRWzDsuPW1OD65CuZ9SPkOvyoDT4Q6c=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ undmg ];
|
||||
|
@ -8,11 +8,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "stats";
|
||||
version = "2.10.19";
|
||||
version = "2.11.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/exelban/stats/releases/download/v${finalAttrs.version}/Stats.dmg";
|
||||
hash = "sha256-1mmKpcJJdEiX/KZkE/VnL/xMrNzlq1LSAr5z3CdoPMI=";
|
||||
hash = "sha256-/6QFchDpWrJZEKuIsQi6FcGprVOa8J8THJ9Kt3ESrwY=";
|
||||
};
|
||||
|
||||
sourceRoot = ".";
|
||||
|
35
pkgs/by-name/us/username-anarchy/package.nix
Normal file
35
pkgs/by-name/us/username-anarchy/package.nix
Normal file
@ -0,0 +1,35 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
ruby,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "username-anarchy";
|
||||
version = "0.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
rev = "d5e653f0ab31d8d3fff79b2986f6ef9624d80fba";
|
||||
owner = "urbanadventurer";
|
||||
repo = "username-anarchy";
|
||||
hash = "sha256-1he1FzNc6y7jm/UwedG81z5QGehh2qsd1QkAsIXwrag=";
|
||||
};
|
||||
|
||||
buildInputs = [ ruby ];
|
||||
|
||||
preInstall = ''
|
||||
mkdir -p $out/bin
|
||||
install -Dm 555 format-plugins.rb $out/bin/
|
||||
install -Dm 555 username-anarchy $out/bin/
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/urbanadventurer/username-anarchy/";
|
||||
description = "Username generator tool for penetration testing";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.akechishiro ];
|
||||
platforms = platforms.unix;
|
||||
mainProgram = "username-anarchy";
|
||||
};
|
||||
}
|
@ -1,10 +1,10 @@
|
||||
{
|
||||
"darwin": {
|
||||
"hash": "sha256-vogQAVbtiw2/U3oJrTj8SUexkEsEfYvmGq50nzy5aYo=",
|
||||
"version": "0.2024.06.25.08.02.stable_01"
|
||||
"hash": "sha256-ku1zQLrRDCvw8RJueWQb8rFJneW943mcPUJ5QB4SXzg=",
|
||||
"version": "0.2024.07.09.08.01.stable_00"
|
||||
},
|
||||
"linux": {
|
||||
"hash": "sha256-Fc48bZzFBw9p636Mr8R+W/d1B3kIcOAu/Gd17nbzNfI=",
|
||||
"version": "0.2024.06.25.08.02.stable_01"
|
||||
"hash": "sha256-EZrANAhkXukquQuCmfA/bIhQnJExE003WZuKU/axr98=",
|
||||
"version": "0.2024.07.09.08.01.stable_00"
|
||||
}
|
||||
}
|
||||
|
@ -6,13 +6,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "xcbeautify";
|
||||
version = "1.4.0";
|
||||
version = "2.4.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/cpisciotta/xcbeautify/releases/download/${version}/xcbeautify-${version}-${stdenv.hostPlatform.darwinArch}-apple-macosx.zip";
|
||||
hash = lib.getAttr stdenv.hostPlatform.darwinArch {
|
||||
arm64 = "sha256-4b4mXT5IfNOS8iOrZASDhTrmOehG4mePcoiKxR+IdZk=";
|
||||
x86_64 = "sha256-adEfAK7n3Q/Yd1deyJx7htX7hZaGDztEeBv4z2A0wzg=";
|
||||
arm64 = "sha256-EjBhpw9qsOEweXOepQVPNL/hCxj12Z5gyvv7neNEeMU=";
|
||||
x86_64 = "sha256-Zb54g0cMWB6ouzLPUd+VTCicp+bVb5aDKxNSB3eGaZU=";
|
||||
};
|
||||
};
|
||||
|
||||
@ -30,12 +30,13 @@ stdenv.mkDerivation rec {
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Little beautifier tool for xcodebuild";
|
||||
homepage = "https://github.com/cpisciotta/xcbeautify";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.darwin;
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.darwin;
|
||||
mainProgram = "xcbeautify";
|
||||
maintainers = with maintainers; [ siddarthkay ];
|
||||
maintainers = with lib.maintainers; [ siddarthkay ];
|
||||
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
|
||||
};
|
||||
}
|
||||
|
@ -13,17 +13,17 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "unison-code-manager";
|
||||
version = "0.5.22";
|
||||
version = "0.5.24";
|
||||
|
||||
src = if stdenv.isDarwin then
|
||||
fetchurl {
|
||||
url = "https://github.com/unisonweb/unison/releases/download/release/${finalAttrs.version}/ucm-macos.tar.gz";
|
||||
hash = "sha256-Exgi0eKk+ZngpnbfY/btHf+uiXcmummnWKfmCUESWgc=";
|
||||
hash = "sha256-5LVcN7ly0n68DFqIjA8EJabZa3WwJf1ueqgJ+gPHNbA=";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = "https://github.com/unisonweb/unison/releases/download/release/${finalAttrs.version}/ucm-linux.tar.gz";
|
||||
hash = "sha256-EWfyqaFtGJJ5GE0mRTtNC9hHOzbqG9MsvRh5sFq5pRY=";
|
||||
hash = "sha256-nCNmUYkBWhXL2eN+uQblf7oPkiVwfAKi6v+Cb9Co19g=";
|
||||
};
|
||||
|
||||
# The tarball is just the prebuilt binary, in the archive root.
|
||||
|
@ -19,6 +19,7 @@
|
||||
, pkg-config
|
||||
, postgresql
|
||||
, proj
|
||||
, sqlite
|
||||
, tiledb
|
||||
, xercesc
|
||||
, zlib
|
||||
@ -27,13 +28,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "pdal";
|
||||
version = "2.7.1";
|
||||
version = "2.7.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "PDAL";
|
||||
repo = "PDAL";
|
||||
rev = finalAttrs.version;
|
||||
sha256 = "sha256-JoHBxJ0hCWH7ZhmeJk4huT2k0AK5CzIV58NWCjWj5T0=";
|
||||
sha256 = "sha256-ukBZLr/iyYQ68sv9JWrR4YP0ahHfGhytgcWKPzrF3Ps=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -52,6 +53,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
openscenegraph
|
||||
postgresql
|
||||
proj
|
||||
sqlite
|
||||
tiledb
|
||||
xercesc
|
||||
zlib
|
||||
|
@ -49,7 +49,9 @@ let
|
||||
# The latest Dwarf Fortress version. Maintainers: when a new version comes
|
||||
# out, ensure that (unfuck|dfhack|twbt) are all up to date before changing
|
||||
# this. Note that unfuck and twbt are not required for 50.
|
||||
latestVersion = "50.13";
|
||||
latestVersion = if stdenv.isLinux then "50.13"
|
||||
else if stdenv.isDarwin then "0.47.05"
|
||||
else throw "Unsupported system";
|
||||
|
||||
# Converts a version to a package name.
|
||||
versionToName = version: "dwarf-fortress_${replaceStrings ["."] ["_"] version}";
|
||||
@ -62,7 +64,7 @@ let
|
||||
let
|
||||
isAtLeast50 = versionAtLeast dfVersion "50.0";
|
||||
|
||||
dwarf-fortress-unfuck = optionalAttrs (!isAtLeast50) (callPackage ./unfuck.nix { inherit dfVersion; });
|
||||
dwarf-fortress-unfuck = optionalAttrs (!isAtLeast50 && stdenv.isLinux) (callPackage ./unfuck.nix { inherit dfVersion; });
|
||||
|
||||
dwarf-fortress = callPackage ./game.nix {
|
||||
inherit dfVersion;
|
||||
|
@ -90,9 +90,9 @@ let
|
||||
xmlRev = "980b1af13acc31660dce632f913c968f52e2b275";
|
||||
};
|
||||
"50.13" = {
|
||||
dfHackRelease = "50.13-r1.1";
|
||||
hash = "sha256-FiXanXflszTr4ogz+EoDAUxzE2U9ODeZIJJ1u6Xm4Mo=";
|
||||
xmlRev = "3507715fd07340de5a6c47064220f6e17343e5d5";
|
||||
dfHackRelease = "50.13-r3";
|
||||
hash = "sha256-WbkJ8HmLT5GdZgDmcuFh+1uzhloKM9um0b9YO//uR7Y=";
|
||||
xmlRev = "f0530a22149606596e97e3e17d941df3aafe29b9";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -53,7 +53,7 @@ let
|
||||
patchVersion = elemAt dfVersionTuple (dfVersionBaseIndex + 1);
|
||||
|
||||
isAtLeast50 = baseVersion >= 50;
|
||||
enableUnfuck = !isAtLeast50 && dwarf-fortress-unfuck != null;
|
||||
enableUnfuck = !isAtLeast50 && dwarf-fortress-unfuck != null && (dwarf-fortress-unfuck.dfVersion or null) == dfVersion;
|
||||
|
||||
game =
|
||||
if hasAttr dfVersion df-hashes
|
||||
@ -84,7 +84,7 @@ stdenv.mkDerivation {
|
||||
|
||||
sourceRoot = ".";
|
||||
|
||||
postUnpack = optionalString stdenv.isLinux ''
|
||||
postUnpack = ''
|
||||
directory=${
|
||||
if stdenv.isLinux then "df_linux"
|
||||
else if stdenv.isDarwin then "df_osx"
|
||||
@ -95,7 +95,7 @@ stdenv.mkDerivation {
|
||||
fi
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ autoPatchelfHook ];
|
||||
nativeBuildInputs = optional stdenv.isLinux autoPatchelfHook;
|
||||
buildInputs = optionals isAtLeast50 [ SDL2 SDL2_image SDL2_mixer ]
|
||||
++ optional (!isAtLeast50) SDL
|
||||
++ optional enableUnfuck dwarf-fortress-unfuck
|
||||
@ -108,6 +108,9 @@ stdenv.mkDerivation {
|
||||
mkdir -p $out
|
||||
cp -r * $out
|
||||
|
||||
# Clean up OS X detritus in the tarball.
|
||||
find $out -type f -name '._*' -exec rm -rf {} \;
|
||||
|
||||
# Lots of files are +x in the newer releases...
|
||||
find $out -type d -exec chmod 0755 {} \;
|
||||
find $out -type f -exec chmod 0644 {} \;
|
||||
@ -116,7 +119,7 @@ stdenv.mkDerivation {
|
||||
[ -f $out/run_df ] && chmod +x $out/run_df
|
||||
|
||||
# We don't need any of these since they will just break autoPatchelf on <version 50.
|
||||
[ -d $out/libs ] && rm -f $out/libs/*.so $out/libs/*.so.*
|
||||
[ -d $out/libs ] && rm -rf $out/libs/*.so $out/libs/*.so.* $out/libs/*.dylib
|
||||
|
||||
# Store the original hash
|
||||
md5sum $exe | awk '{ print $1 }' > $out/hash.md5.orig
|
||||
@ -129,6 +132,7 @@ stdenv.mkDerivation {
|
||||
|
||||
ln -s ${getLib ncurses}/lib/libncurses.dylib $out/libs
|
||||
ln -s ${getLib gcc.cc}/lib/libstdc++.6.dylib $out/libs
|
||||
ln -s ${getLib gcc.cc}/lib/libgcc_s.1.dylib $out/libs
|
||||
ln -s ${getLib fmodex}/lib/libfmodex.dylib $out/libs
|
||||
|
||||
install_name_tool \
|
||||
|
@ -197,8 +197,8 @@ stdenv.mkDerivation rec {
|
||||
chmod 755 $out/bin/soundsense
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
nativeInstallCheckInputs = [ expect xvfb-run ];
|
||||
doInstallCheck = stdenv.isLinux;
|
||||
nativeInstallCheckInputs = lib.optionals stdenv.isLinux [ expect xvfb-run ];
|
||||
|
||||
installCheckPhase = let
|
||||
commonExpectStatements = fmod: lib.optionalString isAtLeast50 ''
|
||||
|
@ -4,18 +4,6 @@ shopt -s extglob
|
||||
|
||||
export NIXPKGS_DF_ENV="@env@"
|
||||
|
||||
if [[ -v DF_DIR ]] && [ -n "$DF_DIR" ] && { [[ ! -v NIXPKGS_DF_HOME ]] || [ -z "$NIXPKGS_DF_HOME" ]; }; then
|
||||
# Compatibility for users that were using DF_DIR, since the dfhack script clobbers this variable.
|
||||
export NIXPKGS_DF_HOME="$DF_DIR"
|
||||
fi
|
||||
|
||||
if [[ ! -v NIXPKGS_DF_HOME ]] || [ -z "$NIXPKGS_DF_HOME" ]; then
|
||||
export NIXPKGS_DF_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/df_linux"
|
||||
fi
|
||||
|
||||
# Compatibility.
|
||||
export DF_DIR="$NIXPKGS_DF_HOME"
|
||||
|
||||
### BEGIN: Default DF options
|
||||
declare -A _NIXPKGS_DF_OPTS
|
||||
_NIXPKGS_DF_OPTS[fmod]=0 # Don't use fmod by default.
|
||||
@ -131,6 +119,30 @@ go() {
|
||||
exit 1
|
||||
}
|
||||
|
||||
os_name="$(@uname@)"
|
||||
os_rev="$(@uname@ -r)"
|
||||
|
||||
if [ "$os_name" == Linux ]; then
|
||||
df_dir="df_linux"
|
||||
elif [ "$os_name" == Darwin ]; then
|
||||
df_dir="df_osx"
|
||||
else
|
||||
log "Unknown platform: $os_name"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ -v DF_DIR ]] && [ -n "$DF_DIR" ] && { [[ ! -v NIXPKGS_DF_HOME ]] || [ -z "$NIXPKGS_DF_HOME" ]; }; then
|
||||
# Compatibility for users that were using DF_DIR, since the dfhack script clobbers this variable.
|
||||
export NIXPKGS_DF_HOME="$DF_DIR"
|
||||
fi
|
||||
|
||||
if [[ ! -v NIXPKGS_DF_HOME ]] || [ -z "$NIXPKGS_DF_HOME" ]; then
|
||||
export NIXPKGS_DF_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/$df_dir"
|
||||
fi
|
||||
|
||||
# Compatibility.
|
||||
export DF_DIR="$NIXPKGS_DF_HOME"
|
||||
|
||||
@mkdir@ -p "$NIXPKGS_DF_HOME"
|
||||
|
||||
@cat@ <<EOF >&2
|
||||
@ -156,7 +168,7 @@ EOF
|
||||
cd "$NIXPKGS_DF_ENV"
|
||||
|
||||
# All potential important files in DF 50 and below.
|
||||
for path in dwarfort *.so libs raw data/init/* data/!(init|index|announcement); do
|
||||
for path in dwarfort dwarfort.exe df *.so libs raw data/init/* data/!(init|index|announcement); do
|
||||
force_delete=0
|
||||
if [[ "$path" == libfmod*.so* ]] && [ "${_NIXPKGS_DF_OPTS[fmod]}" -eq 0 ]; then
|
||||
force_delete=1
|
||||
@ -175,7 +187,12 @@ for path in index announcement help dipscript; do
|
||||
done
|
||||
|
||||
# Handle library paths on Darwin.
|
||||
if [ "$(@uname@)" == Darwin ]; then
|
||||
export DYLD_LIBRARY_PATH="$NIXPKGS_DF_ENV/libs"
|
||||
export DYLD_FRAMEWORK_PATH="$NIXPKGS_DF_ENV/libs"
|
||||
if [ "$os_name" == Darwin ]; then
|
||||
if [ "${os_rev%%.*}" -ge 11 ]; then
|
||||
export DYLD_LIBRARY_PATH="$NIXPKGS_DF_ENV/libs"
|
||||
export DYLD_FRAMEWORK_PATH="$NIXPKGS_DF_ENV/libs"
|
||||
else
|
||||
export DYLD_FALLBACK_LIBRARY_PATH="$NIXPKGS_DF_ENV/libs"
|
||||
export DYLD_FALLBACK_FRAMEWORK_PATH="$NIXPKGS_DF_ENV/libs"
|
||||
fi
|
||||
fi
|
||||
|
@ -4,8 +4,8 @@
|
||||
"hash": "sha256:0i29ga9lzqd4zcsbr4bbb122i8nyfhcalihnq3bgsg04dwb36s19"
|
||||
},
|
||||
"6.1": {
|
||||
"version": "6.1.98",
|
||||
"hash": "sha256:01ilkykg65590f1gndhnp3s75wscqah6f4l9l1p5a03pgh9ckkcp"
|
||||
"version": "6.1.99",
|
||||
"hash": "sha256:1lsdwdx7i7xw1rzq88k3bz8sar77gb4rnmjx11pbmvmiwaffx1n0"
|
||||
},
|
||||
"5.15": {
|
||||
"version": "5.15.162",
|
||||
@ -24,8 +24,8 @@
|
||||
"hash": "sha256:109mk4zscm8611xs3bchnr94gasvw3vxsi6zhp3f2y132g670aq6"
|
||||
},
|
||||
"6.6": {
|
||||
"version": "6.6.39",
|
||||
"hash": "sha256:0svpgakk81082mhhq17r8nlbz36zavq23d71232rapq928hx90r7"
|
||||
"version": "6.6.40",
|
||||
"hash": "sha256:0f7mmw5pzd174376m7r928xbi9mdcla0vy6plq0xdf2mq01kqfjw"
|
||||
},
|
||||
"6.8": {
|
||||
"version": "6.8.12",
|
||||
@ -34,5 +34,9 @@
|
||||
"6.9": {
|
||||
"version": "6.9.9",
|
||||
"hash": "sha256:1f8y88rif3z5lp1bq00g66fd0xs1227qlqkxd2zs6fdjgr45pq1b"
|
||||
},
|
||||
"6.10": {
|
||||
"version": "6.10",
|
||||
"hash": "sha256:09p2z3z8c3aq6ipqdc58x6s52sy0cmyg6mj4f0g5yk755r19hikp"
|
||||
}
|
||||
}
|
||||
|
@ -1,8 +1,8 @@
|
||||
{ stdenv, lib, fetchsvn, linux
|
||||
, scripts ? fetchsvn {
|
||||
url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/";
|
||||
rev = "19597";
|
||||
sha256 = "0bxljx9dgz23ax2pjvx07sqks4s7al2qhn3zcjyxfqv69a0awa8w";
|
||||
rev = "19607";
|
||||
sha256 = "1kf1hm553g8sh7wyh0jw7nl2nmrzg74b62z1q17bznq5a7qf87pn";
|
||||
}
|
||||
, ...
|
||||
}:
|
||||
|
@ -6,7 +6,7 @@
|
||||
, ... } @ args:
|
||||
|
||||
let
|
||||
version = "5.10.220-rt112"; # updated by ./update-rt.sh
|
||||
version = "5.10.221-rt113"; # updated by ./update-rt.sh
|
||||
branch = lib.versions.majorMinor version;
|
||||
kversion = builtins.elemAt (lib.splitString "-" version) 0;
|
||||
in buildLinux (args // {
|
||||
@ -17,14 +17,14 @@ in buildLinux (args // {
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz";
|
||||
sha256 = "16z1xqm7djm8pl15s5wvgc4pwq81gydcf00jpxfplw794kwszhvw";
|
||||
sha256 = "09975sby114mwfb8x2rlpaps6vb60dvs8f20cmb7hkxcxdzx87fs";
|
||||
};
|
||||
|
||||
kernelPatches = let rt-patch = {
|
||||
name = "rt";
|
||||
patch = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
|
||||
sha256 = "149m51kkzhx9fhqdf6k7chi38rm2iw3ld18qzh8afmq8dc1dcimq";
|
||||
sha256 = "1aaamfnlhzhi4lj1sk2m082fpgr3qxs3b3a1ikh8zwmy89kw9i9x";
|
||||
};
|
||||
}; in [ rt-patch ] ++ kernelPatches;
|
||||
|
||||
|
@ -61,6 +61,23 @@ stdenv.mkDerivation {
|
||||
|
||||
inherit (kernel) src;
|
||||
|
||||
# Fix 6.10.0 holding pkg-config completely wrong.
|
||||
# Patches from perf-tools-next, should be in 6.11 or hopefully backported.
|
||||
patches = lib.optionals (lib.versionAtLeast kernel.version "6.10") [
|
||||
(fetchpatch {
|
||||
url = "https://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools-next.git/patch/?id=0f0e1f44569061e3dc590cd0b8cb74d8fd53706b";
|
||||
hash = "sha256-9u/zhbsDgwOr4T4k9td/WJYRuSHIfbtfS+oNx8nbOlM=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools-next.git/patch/?id=366e17409f1f17ad872259ce4a4f8a92beb4c4ee";
|
||||
hash = "sha256-NZK1u40qvMwWcgkgJPGpEax2eMo9xHrCQxSYYOK0rbo=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools-next.git/patch/?id=1d302f626c2a23e4fd05bb810eff300e8f2174fd";
|
||||
hash = "sha256-KhCmof8LkyTcBBpfMEtolL3m3kmC5rukKzQvufVKCdI=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# Linux scripts
|
||||
patchShebangs scripts
|
||||
|
@ -46,13 +46,13 @@
|
||||
}@args:
|
||||
|
||||
let
|
||||
version = "3.2.3";
|
||||
version = "3.2.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "discourse";
|
||||
repo = "discourse";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-ehv81trN8eG7QRAD5ERiSql6ZRCJK9cz6VOT9OzjZhg=";
|
||||
sha256 = "sha256-bwYMLkBtdfgfAX8vKpsFRg5tpBtoaURKGF0rs/CtJ2U=";
|
||||
};
|
||||
|
||||
ruby = ruby_3_2;
|
||||
|
@ -5,8 +5,8 @@ mkDiscoursePlugin {
|
||||
src = fetchFromGitHub {
|
||||
owner = "discourse";
|
||||
repo = "discourse-docs";
|
||||
rev = "94c7b7da216c66d773f800a714493f087affaac9";
|
||||
sha256 = "sha256-4ZPv42fw5YdJ3+QUGOh5CJMWkXoUVs4bTVd9zuFekQM=";
|
||||
rev = "11dcab84669462b05eba3f1a59401727cafe8188";
|
||||
sha256 = "sha256-zVzmEfaANwX24rMq91gom6XmhKsEGraWon8vJu8j7iY=";
|
||||
};
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/discourse/discourse-docs";
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#! nix-shell -i python3 -p bundix bundler nix-update nurl "python3.withPackages (ps: with ps; [ requests click click-log packaging ])" prefetch-yarn-deps
|
||||
#! nix-shell -i python3 -p "python3.withPackages (ps: with ps; [ requests click click-log packaging ])" bundix bundler nix-update nurl prefetch-yarn-deps
|
||||
from __future__ import annotations
|
||||
|
||||
import click
|
||||
|
@ -147,8 +147,8 @@ in lib.makeExtensible (self: ({
|
||||
};
|
||||
|
||||
nix_2_18 = common {
|
||||
version = "2.18.4";
|
||||
hash = "sha256-tebjp83ABKrBW3d/6n/Irr1+xhtw8qIkqHZHJOoJaLk=";
|
||||
version = "2.18.5";
|
||||
hash = "sha256-xEcYQuJz6DjdYfS6GxIYcn8U+3Hgopne3CvqrNoGguQ=";
|
||||
self_attribute_name = "nix_2_18";
|
||||
};
|
||||
|
||||
|
@ -692,6 +692,7 @@ mapAliases ({
|
||||
linuxPackages_6_7 = linuxKernel.packages.linux_6_7;
|
||||
linuxPackages_6_8 = linuxKernel.packages.linux_6_8;
|
||||
linuxPackages_6_9 = linuxKernel.packages.linux_6_9;
|
||||
linuxPackages_6_10 = linuxKernel.packages.linux_6_10;
|
||||
linuxPackages_rpi0 = linuxKernel.packages.linux_rpi1;
|
||||
linuxPackages_rpi02w = linuxKernel.packages.linux_rpi3;
|
||||
linuxPackages_rpi1 = linuxKernel.packages.linux_rpi1;
|
||||
@ -720,6 +721,7 @@ mapAliases ({
|
||||
linux_6_7 = linuxKernel.kernels.linux_6_7;
|
||||
linux_6_8 = linuxKernel.kernels.linux_6_8;
|
||||
linux_6_9 = linuxKernel.kernels.linux_6_9;
|
||||
linux_6_10 = linuxKernel.kernels.linux_6_10;
|
||||
linux_rpi0 = linuxKernel.kernels.linux_rpi1;
|
||||
linux_rpi02w = linuxKernel.kernels.linux_rpi3;
|
||||
linux_rpi1 = linuxKernel.kernels.linux_rpi1;
|
||||
|
@ -205,6 +205,14 @@ in {
|
||||
];
|
||||
};
|
||||
|
||||
linux_6_10 = callPackage ../os-specific/linux/kernel/mainline.nix {
|
||||
branch = "6.10";
|
||||
kernelPatches = [
|
||||
kernelPatches.bridge_stp_helper
|
||||
kernelPatches.request_key_helper
|
||||
];
|
||||
};
|
||||
|
||||
linux_testing = let
|
||||
testing = callPackage ../os-specific/linux/kernel/mainline.nix {
|
||||
# A special branch that tracks the kernel under the release process
|
||||
@ -613,6 +621,7 @@ in {
|
||||
linux_6_6 = recurseIntoAttrs (packagesFor kernels.linux_6_6);
|
||||
linux_6_8 = recurseIntoAttrs (packagesFor kernels.linux_6_8);
|
||||
linux_6_9 = recurseIntoAttrs (packagesFor kernels.linux_6_9);
|
||||
linux_6_10 = recurseIntoAttrs (packagesFor kernels.linux_6_10);
|
||||
__attrsFailEvaluation = true;
|
||||
} // lib.optionalAttrs config.allowAliases {
|
||||
linux_4_9 = throw "linux 4.9 was removed because it will reach its end of life within 22.11"; # Added 2022-11-08
|
||||
@ -682,7 +691,7 @@ in {
|
||||
packageAliases = {
|
||||
linux_default = packages.linux_6_6;
|
||||
# Update this when adding the newest kernel major version!
|
||||
linux_latest = packages.linux_6_9;
|
||||
linux_latest = packages.linux_6_10;
|
||||
linux_mptcp = throw "'linux_mptcp' has been moved to https://github.com/teto/mptcp-flake";
|
||||
linux_rt_default = packages.linux_rt_5_15;
|
||||
linux_rt_latest = packages.linux_rt_6_6;
|
||||
|
30
shell.nix
Normal file
30
shell.nix
Normal file
@ -0,0 +1,30 @@
|
||||
# A shell to get tooling for Nixpkgs development
|
||||
#
|
||||
# Note: We intentionally don't use Flakes here,
|
||||
# because every time you change any file and do another `nix develop`,
|
||||
# it would create another copy of the entire ~500MB tree in the store.
|
||||
# See https://github.com/NixOS/nix/pull/6530 for the future
|
||||
{
|
||||
system ? builtins.currentSystem,
|
||||
}:
|
||||
let
|
||||
pinnedNixpkgs = builtins.fromJSON (builtins.readFile ci/pinned-nixpkgs.json);
|
||||
|
||||
nixpkgs = fetchTarball {
|
||||
url = "https://github.com/NixOS/nixpkgs/archive/${pinnedNixpkgs.rev}.tar.gz";
|
||||
sha256 = pinnedNixpkgs.sha256;
|
||||
};
|
||||
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config = {};
|
||||
overlays = [];
|
||||
};
|
||||
in
|
||||
pkgs.mkShellNoCC {
|
||||
packages = [
|
||||
# The default formatter for Nix code
|
||||
# https://github.com/NixOS/nixfmt
|
||||
pkgs.nixfmt-rfc-style
|
||||
];
|
||||
}
|
Loading…
Reference in New Issue
Block a user