Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2024-01-11 12:01:43 +00:00 committed by GitHub
commit aeb47665cf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
50 changed files with 531 additions and 656 deletions

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -85,19 +85,26 @@ stdenv.mkDerivation rec {
patchShebangs notmuch-git
'';
preCheck = let
test-database = fetchurl {
url = "https://notmuchmail.org/releases/test-databases/database-v1.tar.xz";
sha256 = "1lk91s00y4qy4pjh8638b5lfkgwyl282g1m27srsf7qfn58y16a2";
};
in ''
mkdir -p test/test-databases
ln -s ${test-database} test/test-databases/database-v1.tar.xz
''
# Issues since gnupg: 2.4.0 -> 2.4.1
+ ''
rm test/{T350-crypto,T357-index-decryption}.sh
'';
preCheck =
let
test-database = fetchurl {
url = "https://notmuchmail.org/releases/test-databases/database-v1.tar.xz";
sha256 = "1lk91s00y4qy4pjh8638b5lfkgwyl282g1m27srsf7qfn58y16a2";
};
in
''
mkdir -p test/test-databases
ln -s ${test-database} test/test-databases/database-v1.tar.xz
''
+ ''
# Issues since gnupg: 2.4.0 -> 2.4.1
rm test/{T350-crypto,T357-index-decryption}.sh
# Issues since pbr 6.0.0 bump (ModuleNotFoundError: No module named 'notmuch2')
rm test/T055-path-config.sh
# Flaky, seems to get its paths wrong sometimes (?)
# *ERROR*: Opening output file: Permission denied, /nix/store/bzy21v2cd5sq1djzwa9b19q08wpp9mm0-emacs-29.1/bin/OUTPUT
rm test/T460-emacs-tree.sh
'';
doCheck = !stdenv.hostPlatform.isDarwin && (lib.versionAtLeast gmime3.version "3.0.3");
checkTarget = "test";

View File

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

View File

@ -93,10 +93,6 @@ stdenv.mkDerivation (finalAttrs: {
url = "https://github.com/obsproject/obs-studio/commit/6e080a68067b27fe5463f0f4eee7df690451f3d7.patch";
hash = "sha256-nbn/q3uszoHaDvaW8Et1MS1sgQzMsJRmjGSMHzUxV70=";
})
(fetchpatch {
url = "https://github.com/obsproject/obs-studio/commit/df70743385965f979f922e05af9a249f20f94869.patch";
hash = "sha256-uIBsFuggz8SgQsQ0Ry2lvSPeMm63lgVe7oFx/3aT12k=";
})
];
nativeBuildInputs = [

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -55,6 +55,17 @@ in stdenv.mkDerivation {
patches = map fetchpatch patchesToFetch;
# GCC 13: error: 'int64_t' in namespace 'std' does not name a type
postPatch = ''
sed '1i#include <cstdint>' \
-i ThirdParty/libproj/vtklibproj/src/proj_json_streaming_writer.hpp
''
+ optionalString stdenv.isDarwin ''
sed -i 's|COMMAND vtkHashSource|COMMAND "DYLD_LIBRARY_PATH=''${VTK_BINARY_DIR}/lib" ''${VTK_BINARY_DIR}/bin/vtkHashSource-${majorVersion}|' ./Parallel/Core/CMakeLists.txt
sed -i 's/fprintf(output, shift)/fprintf(output, "%s", shift)/' ./ThirdParty/libxml2/vtklibxml2/xmlschemas.c
sed -i 's/fprintf(output, shift)/fprintf(output, "%s", shift)/g' ./ThirdParty/libxml2/vtklibxml2/xpath.c
'';
dontWrapQtApps = true;
# Shared libraries don't work, because of rpath troubles with the current
@ -87,12 +98,6 @@ in stdenv.mkDerivation {
NIX_CFLAGS_COMPILE = "-Wno-error=incompatible-function-pointer-types";
};
postPatch = optionalString stdenv.isDarwin ''
sed -i 's|COMMAND vtkHashSource|COMMAND "DYLD_LIBRARY_PATH=''${VTK_BINARY_DIR}/lib" ''${VTK_BINARY_DIR}/bin/vtkHashSource-${majorVersion}|' ./Parallel/Core/CMakeLists.txt
sed -i 's/fprintf(output, shift)/fprintf(output, "%s", shift)/' ./ThirdParty/libxml2/vtklibxml2/xmlschemas.c
sed -i 's/fprintf(output, shift)/fprintf(output, "%s", shift)/g' ./ThirdParty/libxml2/vtklibxml2/xpath.c
'';
postInstall = optionalString enablePython ''
substitute \
${./vtk.egg-info} \

View File

@ -19,9 +19,6 @@ stdenv.mkDerivation rec {
substituteInPlace wlr-protocols.pc.in \
--replace '=''${pc_sysrootdir}' "=" \
--replace '=@prefix@' "=$out"
substituteInPlace Makefile \
--replace 'wlr-output-power-management-v1.xml' 'wlr-output-power-management-unstable-v1.xml'
'';
doCheck = true;

View File

@ -2,14 +2,13 @@
buildDunePackage rec {
pname = "metrics";
version = "0.4.0";
version = "0.4.1";
minimalOCamlVersion = "4.04";
duneVersion = "3";
src = fetchurl {
url = "https://github.com/mirage/metrics/releases/download/v${version}/metrics-${version}.tbz";
sha256 = "sha256-kbh1WktQkDcXE8O1WRm+vtagVfSql8S5gr0bXn/jia8=";
sha256 = "sha256-d+DCD7XB0GED27DsC8YEW+48YcAK0EI8l4Uqx/PGFE0=";
};
propagatedBuildInputs = [ fmt ];

View File

@ -6,13 +6,6 @@ buildDunePackage rec {
inherit (metrics) version src;
duneVersion = "3";
# Fixes https://github.com/mirage/metrics/issues/57
postPatch = ''
substituteInPlace src/unix/dune --replace "mtime mtime.clock" "mtime"
'';
propagatedBuildInputs = [ gnuplot lwt metrics mtime uuidm ];
nativeCheckInputs = [ gnuplot ];

View File

@ -8,7 +8,7 @@
buildPythonPackage rec {
pname = "airthings-cloud";
version = "0.1.0";
version = "0.2.0";
format = "setuptools";
disabled = pythonOlder "3.8";
@ -16,8 +16,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "Danielhiversen";
repo = "pyAirthings";
rev = version;
hash = "sha256-sqHNK6biSWso4uOYimzU7PkEn0uP5sHAaPGsS2vSMNY=";
rev = "refs/tags/${version}";
hash = "sha256-HdH/z5xsumOXU0ZYOUc8LHpjKGkfp5e5yGER+Nm8xB4=";
};
propagatedBuildInputs = [
@ -35,6 +35,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "Python module for Airthings";
homepage = "https://github.com/Danielhiversen/pyAirthings";
changelog = "https://github.com/Danielhiversen/pyAirthings/releases/tag/${version}";
license = with licenses; [ mit ];
maintainers = with maintainers; [ fab ];
};

View File

@ -1,37 +1,43 @@
{ lib
, fetchPypi
, buildPythonPackage
, blessed
, browser-cookie3
, buildPythonPackage
, cloudscraper
, fetchPypi
, keyring
, keyrings-alt
, lxml
, measurement
, mock
, pytestCheckHook
, python-dateutil
, pythonOlder
, requests
, rich
, setuptools
, typing-extensions
, pytestCheckHook
, mock
, nose
, pythonOlder
}:
buildPythonPackage rec {
pname = "myfitnesspal";
version = "2.0.1";
format = "setuptools";
version = "2.1.0";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-wlQ/mo9MBQo0t1p0h6/TJir3I87DKYAUc022T3hZjH8=";
hash = "sha256-H9oKSio+2x4TDCB4YN5mmERUEeETLKahPlW3TDDFE/E=";
};
nativeBuildInputs = [
setuptools
];
propagatedBuildInputs = [
blessed
browser-cookie3
cloudscraper
keyring
keyrings-alt
lxml
@ -44,7 +50,6 @@ buildPythonPackage rec {
nativeCheckInputs = [
mock
nose
pytestCheckHook
];

View File

@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "toml-adapt";
version = "0.3.0";
version = "0.3.2";
format = "pyproject";
disabled = pythonOlder "3.6";
@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "firefly-cpp";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-BI0yZlut9PEupa597KN4qdVABOiOLwFpovN8L1lfUmk=";
hash = "sha256-Za2v1Mon6e0mmGGTNXf1bCV5CIL8hrl7jGz4Lk3N8xc=";
};
nativeBuildInputs = [

View File

@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "xmlschema";
version = "2.5.1";
version = "3.0.1";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "sissaschool";
repo = "xmlschema";
rev = "refs/tags/v${version}";
hash = "sha256-qUc67KdCcnPZszgUiET9T8vpmI1QoM95vzLPAU+4lnI=";
hash = "sha256-7gko4BFbTnQ+MpSQiGVaAldZcb1X16hinXaHg+nvPgs=";
};
propagatedBuildInputs = [

View File

@ -1,14 +1,14 @@
{ lib, stdenv, runtimeShell, writeText, fetchFromGitHub, gradle_7, openjdk17, git, perl, cmake }:
let
pname = "fastddsgen";
version = "3.2.0";
version = "3.2.1";
src = fetchFromGitHub {
owner = "eProsima";
repo = "Fast-DDS-Gen";
rev = "v${version}";
fetchSubmodules = true;
hash = "sha256-NG4Ndc2eJjXA3bKWuwifgHX1kWtC5wWiiDKinlG2up0=";
hash = "sha256-3REInKZ787RSXED8iAMlt2mJodJTp5+/ldQsbUGpn0g=";
};
gradle = gradle_7;

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "astyle";
version = "3.4.10";
version = "3.4.11";
src = fetchurl {
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
hash = "sha256-b2fshytDe9PFHg914RLk2/2ybV+3vZz4pIDxCvVVcGM=";
hash = "sha256-FbIrxsvAOMzYzvOATv7ALzXG8lOLdck7x/duTemKupI=";
};
nativeBuildInputs = [ cmake ];

View File

@ -5,14 +5,14 @@
stdenv.mkDerivation (finalAttrs: {
pname = "byacc";
version = "20230521";
version = "20240109";
src = fetchurl {
urls = [
"https://invisible-mirror.net/archives/byacc/byacc-${finalAttrs.version}.tgz"
"ftp://ftp.invisible-island.net/byacc/byacc-${finalAttrs.version}.tgz"
];
hash = "sha256-WtkVp9WDOqOKXjG9B3UFZmApw142Xf+Faf5FmOqp/vI=";
hash = "sha256-8ol3eQFxifGpR1dwXvb24V3JII7wee6n8oq+xXfghEY=";
};
configureFlags = [

View File

@ -8,13 +8,13 @@
buildGoModule rec {
pname = "pscale";
version = "0.176.0";
version = "0.177.0";
src = fetchFromGitHub {
owner = "planetscale";
repo = "cli";
rev = "v${version}";
sha256 = "sha256-D7imFHCukjNT9Sd+URTZXdAioF3NWptnxMyv4EWC69o=";
sha256 = "sha256-nvtLUrJhxqMWi/NzKw1KYOEL+1DsWfJoLXoXQI7QP6M=";
};
vendorHash = "sha256-n6vPeeOmSB/qHBGCdZHZtf3JD/wgFYD0+VO3Ir8MtqE=";

View File

@ -717,6 +717,10 @@ in makeScopeWithSplicing' {
buildInputs = with self; [ include csu ];
env.NIX_CFLAGS_COMPILE = "-B${self.csu}/lib";
# Suppress lld >= 16 undefined version errors
# https://github.com/freebsd/freebsd-src/commit/2ba84b4bcdd6012e8cfbf8a0d060a4438623a638
env.NIX_LDFLAGS = lib.optionalString (stdenv.targetPlatform.linker == "lld") "--undefined-version";
makeFlags = [
"STRIP=-s" # flag to install, not command
# lib/libc/gen/getgrent.c has sketchy cast from `void *` to enum

View File

@ -123,6 +123,7 @@ let
};
optimization = {
X86_GENERIC = mkIf (stdenv.hostPlatform.system == "i686-linux") yes;
# Optimize with -O2, not -Os
CC_OPTIMIZE_FOR_SIZE = no;
};
@ -994,6 +995,9 @@ let
# > CONFIG_KUNIT should not be enabled in a production environment. Enabling KUnit disables Kernel Address-Space Layout Randomization (KASLR), and tests may affect the state of the kernel in ways not suitable for production.
# https://www.kernel.org/doc/html/latest/dev-tools/kunit/start.html
KUNIT = whenAtLeast "5.5" no;
# Set system time from RTC on startup and resume
RTC_HCTOSYS = option yes;
} // optionalAttrs (stdenv.hostPlatform.system == "x86_64-linux" || stdenv.hostPlatform.system == "aarch64-linux") {
# Enable CPU/memory hotplug support
# Allows you to dynamically add & remove CPUs/memory to a VM client running NixOS without requiring a reboot

View File

@ -2,52 +2,52 @@
"4.19": {
"patch": {
"extra": "-hardened1",
"name": "linux-hardened-4.19.303-hardened1.patch",
"sha256": "0bmf88vid8312rrdy4b1bnq4x2rhkiihp01b2j2jmpjbdsj2qbya",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.303-hardened1/linux-hardened-4.19.303-hardened1.patch"
"name": "linux-hardened-4.19.304-hardened1.patch",
"sha256": "0bv6abcx8sknhsnijs176yq7q2mgrlyrv5xysnxa0l6wqpl2gqif",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.304-hardened1/linux-hardened-4.19.304-hardened1.patch"
},
"sha256": "0dlbl47xs7z4yf9cxbxqzd7zs1f9070jr6ck231wgppa6lwwwb82",
"version": "4.19.303"
"sha256": "165mljr8v1cf4vf4a4b44hx089rprkssvi2azq5wbxxg3basbind",
"version": "4.19.304"
},
"5.10": {
"patch": {
"extra": "-hardened1",
"name": "linux-hardened-5.10.205-hardened1.patch",
"sha256": "0viz1pybmh8vld40s2gh73a63743c3v7g2dbrsbqqjkh8xvn28zk",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.205-hardened1/linux-hardened-5.10.205-hardened1.patch"
"name": "linux-hardened-5.10.206-hardened1.patch",
"sha256": "14xmp28grpwpgrsg88bnv164kk54k6akw5jydrs8447mqfyw7sqr",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.206-hardened1/linux-hardened-5.10.206-hardened1.patch"
},
"sha256": "0qw8g0h4k0b4dyvspbj51cwr68ihwjzsi2b2261ipy3l1nl1fln5",
"version": "5.10.205"
"sha256": "0ns8qxcrxj9i76b93xcghl002l8vbkg7ksd435sikig62qr62gf4",
"version": "5.10.206"
},
"5.15": {
"patch": {
"extra": "-hardened1",
"name": "linux-hardened-5.15.145-hardened1.patch",
"sha256": "0jip4c7r41a3nzgv6zzrkjg4flb0ri6ar60l246ixzyp9sv19x9r",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.15.145-hardened1/linux-hardened-5.15.145-hardened1.patch"
"name": "linux-hardened-5.15.146-hardened1.patch",
"sha256": "0cd8gzixkc89n647g108f9r9dn8a3vw9ajdh4g7w7bq6vq71gglj",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.15.146-hardened1/linux-hardened-5.15.146-hardened1.patch"
},
"sha256": "086nssif66s86wkixz4yb7xilz1k49g32l0ib28r8fjzc23rv95j",
"version": "5.15.145"
"sha256": "14nijbspmzd4r38l8cpl4vn9dhawzcfnhyc0gnaxl2m8l9gpm02s",
"version": "5.15.146"
},
"5.4": {
"patch": {
"extra": "-hardened1",
"name": "linux-hardened-5.4.265-hardened1.patch",
"sha256": "17bs86fxv5l1dm0knvcnj5940r06pq41gd3fp71rn1p1kwk622y3",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.265-hardened1/linux-hardened-5.4.265-hardened1.patch"
"name": "linux-hardened-5.4.266-hardened1.patch",
"sha256": "1gbyxz788j5lirjc62b56didnwq5s69cfindzndsj1r5wm0hknp4",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.266-hardened1/linux-hardened-5.4.266-hardened1.patch"
},
"sha256": "05cvvwjiznn7hfd02qklklalg0chahvh5v18w64lcva6kzj9kbjd",
"version": "5.4.265"
"sha256": "1dmcn9i3nvf1gldm1a32gnl5ybwbk2lizb3wa4gc06g7dxz2y1ys",
"version": "5.4.266"
},
"6.1": {
"patch": {
"extra": "-hardened1",
"name": "linux-hardened-6.1.69-hardened1.patch",
"sha256": "1dbwnf6bsxl9m03cngfpf3yb95j719r46dy9x8al59d9p8k0h9bn",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/6.1.69-hardened1/linux-hardened-6.1.69-hardened1.patch"
"name": "linux-hardened-6.1.72-hardened1.patch",
"sha256": "0zp6i44y3fi2xsk4jbwhk8w688ci34p5ymmk3kkb8s1cvhqzgddy",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/6.1.72-hardened1/linux-hardened-6.1.72-hardened1.patch"
},
"sha256": "0hdm28k49kmy9r96hckps0bvvaq9m06l72n8ih305rccs6a2cgby",
"version": "6.1.69"
"sha256": "09h9kzv2xfrn369ynl09dfnjl9025b9vpkcxg75gyp63fy8fdp4q",
"version": "6.1.72"
},
"6.5": {
"patch": {
@ -62,11 +62,11 @@
"6.6": {
"patch": {
"extra": "-hardened1",
"name": "linux-hardened-6.6.8-hardened1.patch",
"sha256": "0mjrp3bxvb1pprc5v2grxk1r3ifldch35lqsxyky1nvlzhphhgb9",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/6.6.8-hardened1/linux-hardened-6.6.8-hardened1.patch"
"name": "linux-hardened-6.6.10-hardened1.patch",
"sha256": "07nx6s7n932jhv1bsjykfrd2m41ich9mfi3dffa4z0cjcgr0ky4q",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/6.6.10-hardened1/linux-hardened-6.6.10-hardened1.patch"
},
"sha256": "05i4ayj9wyjkd1s8ixx7bxwcyagqyx8rhj1zvbc3cjqyw4sc8djh",
"version": "6.6.8"
"sha256": "0v2l0l90w7scv7bxkxxjgqnay0fjh678k9gdlgycgbh9q7j2grly",
"version": "6.6.10"
}
}

View File

@ -8,8 +8,8 @@
"hash": "sha256:1dfbbydmayfj9npx3z0g38p574pmcx3qgs49dv0npigl48wd9yvq"
},
"6.1": {
"version": "6.1.71",
"hash": "sha256:0hghnwsa282js9hy4krhdbgrb4khjzslr05zgvjx9zzragfp9xrd"
"version": "6.1.72",
"hash": "sha256:09h9kzv2xfrn369ynl09dfnjl9025b9vpkcxg75gyp63fy8fdp4q"
},
"5.15": {
"version": "5.15.146",
@ -28,8 +28,8 @@
"hash": "sha256:165mljr8v1cf4vf4a4b44hx089rprkssvi2azq5wbxxg3basbind"
},
"6.6": {
"version": "6.6.10",
"hash": "sha256:0v2l0l90w7scv7bxkxxjgqnay0fjh678k9gdlgycgbh9q7j2grly"
"version": "6.6.11",
"hash": "sha256:0lhyczcj1fhh52fjf06ikp5yh7kxc1qymsw44rv6v25vc6kfbqmg"
},
"6.7": {
"version": "6.7",

View File

@ -4,13 +4,13 @@ let
pythonEnv = python3.withPackages(ps: with ps; [ cheetah3 lxml ]);
in stdenv.mkDerivation rec {
pname = "sickgear";
version = "3.30.6";
version = "3.30.7";
src = fetchFromGitHub {
owner = "SickGear";
repo = "SickGear";
rev = "release_${version}";
hash = "sha256-WYaplV7tNyGXOokKqYAvjMRHX7MmANqUKX5J0fVF4Ms=";
hash = "sha256-J0nruwx2Tt2QmloDTQoUQiEjR7UD/B5kY8A5SrUob1I=";
};
patches = [

View File

@ -1,4 +1,4 @@
{ stdenv, lib, fetchFromGitHub, pkg-config, cmake, libinput, zlib }:
{ stdenv, lib, fetchFromGitHub, fetchpatch, pkg-config, cmake, libinput, zlib }:
stdenv.mkDerivation rec {
pname = "gebaar-libinput";
@ -12,6 +12,14 @@ stdenv.mkDerivation rec {
fetchSubmodules = true;
};
patches = [
# fix build with gcc 11+
(fetchpatch {
url = "https://github.com/9ary/gebaar-libinput-fork/commit/25cac08a5f1aed1951b03de12fa0010a0964967d.patch";
hash = "sha256-CtgfMTBCXotiPAXc7cA3h+7Kb0NHFi/q7w72IY32CyA=";
})
];
nativeBuildInputs = [ pkg-config cmake ];
buildInputs = [ libinput zlib ];

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "mongo-tools";
version = "100.9.3";
version = "100.9.4";
src = fetchFromGitHub {
owner = "mongodb";
repo = "mongo-tools";
rev = version;
sha256 = "sha256-l3A7ykkQCkT34EdgpcSJpFsZq1gE9GII9gzaXJaUwEk=";
sha256 = "sha256-FGgO8JNUU0+WqIh13I0i9cprN8qE/020wDXjFsZdFy0=";
};
vendorHash = null;

View File

@ -4,7 +4,9 @@
, setuptools-scm
, setuptools
, vdf
, bash
, pillow
, substituteAll
, writeShellScript
, steam-run
, winetricks
, yad
@ -14,18 +16,24 @@
buildPythonApplication rec {
pname = "protontricks";
version = "1.10.1";
version = "1.11.0";
src = fetchFromGitHub {
owner = "Matoking";
repo = pname;
rev = version;
sha256 = "sha256-gKrdUwX5TzeHHXuwhUyI4REPE6TNiZ6lhonyMCHcBCA=";
sha256 = "sha256-5FpcIaQodvNjdqUfD9hvXlrdhszr98j0zm3MCCpZFoc=";
};
patches = [
# Use steam-run to run Proton binaries
./steam-run.patch
(substituteAll {
src = ./steam-run.patch;
steamRun = lib.getExe steam-run;
bash = writeShellScript "steam-run-bash" ''
exec ${lib.getExe steam-run} bash "$@"
'';
})
];
nativeBuildInputs = [ setuptools-scm ];
@ -33,15 +41,16 @@ buildPythonApplication rec {
propagatedBuildInputs = [
setuptools # implicit dependency, used to find data/icon_placeholder.png
vdf
pillow
];
makeWrapperArgs = [
"--prefix PATH : ${lib.makeBinPath [
bash
steam-run
winetricks
yad
]}"
# Steam Runtime does not work outside of steam-run, so don't use it
"--set STEAM_RUNTIME 0"
];
nativeCheckInputs = [ pytestCheckHook ];

View File

@ -1,470 +1,65 @@
diff --git a/src/protontricks/cli/main.py b/src/protontricks/cli/main.py
index c77d287..236c2a9 100755
--- a/src/protontricks/cli/main.py
+++ b/src/protontricks/cli/main.py
@@ -17,8 +17,7 @@ from ..flatpak import (FLATPAK_BWRAP_COMPATIBLE_VERSION,
get_running_flatpak_version)
from ..gui import (prompt_filesystem_access, select_steam_app_with_gui,
select_steam_installation)
-from ..steam import (find_legacy_steam_runtime_path, find_proton_app,
- find_steam_installations, get_steam_apps,
+from ..steam import (find_proton_app, find_steam_installations, get_steam_apps,
get_steam_lib_paths)
from ..util import run_command
from ..winetricks import get_winetricks_path
@@ -67,8 +66,7 @@ def main(args=None, steam_path=None, steam_root=None):
"WINE: path to a custom 'wine' executable\n"
"WINESERVER: path to a custom 'wineserver' executable\n"
"STEAM_RUNTIME: 1 = enable Steam Runtime, 0 = disable Steam "
- "Runtime, valid path = custom Steam Runtime path, "
- "empty = enable automatically (default)\n"
+ "Runtime, empty = enable automatically (default)\n"
"PROTONTRICKS_GUI: GUI provider to use, accepts either 'yad' "
"or 'zenity'"
),
@@ -204,17 +202,9 @@ def main(args=None, steam_path=None, steam_root=None):
if not steam_path:
exit_("No Steam installation was selected.")
- # 2. Find the pre-installed legacy Steam Runtime if enabled
- legacy_steam_runtime_path = None
- use_steam_runtime = True
-
+ # 2. Use Steam Runtime if enabled
if os.environ.get("STEAM_RUNTIME", "") != "0" and not args.no_runtime:
- legacy_steam_runtime_path = find_legacy_steam_runtime_path(
- steam_root=steam_root
- )
-
- if not legacy_steam_runtime_path:
- exit_("Steam Runtime was enabled but couldn't be found!")
+ use_steam_runtime = True
else:
use_steam_runtime = False
logger.info("Steam Runtime disabled.")
@@ -281,7 +271,6 @@ def main(args=None, steam_path=None, steam_root=None):
proton_app=proton_app,
steam_app=steam_app,
use_steam_runtime=use_steam_runtime,
- legacy_steam_runtime_path=legacy_steam_runtime_path,
command=[str(winetricks_path), "--gui"],
use_bwrap=use_bwrap,
start_wineserver=start_background_wineserver
@@ -361,7 +350,6 @@ def main(args=None, steam_path=None, steam_root=None):
proton_app=proton_app,
steam_app=steam_app,
use_steam_runtime=use_steam_runtime,
- legacy_steam_runtime_path=legacy_steam_runtime_path,
use_bwrap=use_bwrap,
start_wineserver=start_background_wineserver,
command=[str(winetricks_path)] + args.winetricks_command
@@ -373,7 +361,6 @@ def main(args=None, steam_path=None, steam_root=None):
steam_app=steam_app,
command=args.command,
use_steam_runtime=use_steam_runtime,
- legacy_steam_runtime_path=legacy_steam_runtime_path,
use_bwrap=use_bwrap,
start_wineserver=start_background_wineserver,
# Pass the command directly into the shell *without*
diff --git a/src/protontricks/data/scripts/bwrap_launcher.sh b/src/protontricks/data/scripts/bwrap_launcher.sh
index b5552e1..b11bc99 100644
index 922c59d..54742a4 100644
--- a/src/protontricks/data/scripts/bwrap_launcher.sh
+++ b/src/protontricks/data/scripts/bwrap_launcher.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
+#!@bash@
# Helper script
set -o errexit
@@ -80,6 +80,8 @@ done
log_info "Following directories will be mounted inside container: ${mount_dirs[*]}"
log_info "Using temporary directory: $PROTONTRICKS_TEMP_PATH"
-exec "$STEAM_RUNTIME_PATH"/run --share-pid --launcher \
+exec steam-run "$STEAM_RUNTIME_PATH"/pressure-vessel/bin/pressure-vessel-wrap \
+--variable-dir="${PRESSURE_VESSEL_VARIABLE_DIR:-$STEAM_RUNTIME_PATH/var}" \
+--share-pid --launcher \
"${mount_params[@]}" -- \
--bus-name="com.github.Matoking.protontricks.App${STEAM_APPID}_${PROTONTRICKS_SESSION_ID}"
diff --git a/src/protontricks/data/scripts/wine_launch.sh b/src/protontricks/data/scripts/wine_launch.sh
index 1f8a432..2d82f2b 100644
index 1b0a0ce..127f13e 100644
--- a/src/protontricks/data/scripts/wine_launch.sh
+++ b/src/protontricks/data/scripts/wine_launch.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env -S steam-run bash
+#!@bash@
# Helper script created by Protontricks to run Wine binaries using Steam Runtime
set -o errexit
@@ -158,8 +158,8 @@ if [[ -n "$PROTONTRICKS_INSIDE_STEAM_RUNTIME"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PROTON_LD_LIBRARY_PATH"
log_info "Appending to LD_LIBRARY_PATH: $PROTON_LD_LIBRARY_PATH"
elif [[ "$PROTONTRICKS_STEAM_RUNTIME" = "legacy" ]]; then
- export LD_LIBRARY_PATH="$PROTON_LD_LIBRARY_PATH"
- log_info "LD_LIBRARY_PATH set to $LD_LIBRARY_PATH"
+ export LD_LIBRARY_PATH="$PROTON_LD_LIBRARY_PATH":"$LD_LIBRARY_PATH"
+ log_info "Inserting to head of LD_LIBRARY_PATH: $PROTON_LD_LIBRARY_PATH"
fi
exec "$PROTON_DIST_PATH"/bin/@@name@@ "$@" || :
elif [[ "$PROTONTRICKS_STEAM_RUNTIME" = "bwrap" ]]; then
diff --git a/src/protontricks/data/scripts/wineserver_keepalive.sh b/src/protontricks/data/scripts/wineserver_keepalive.sh
index 8168dae..559de33 100644
index 8168dae..cb3e7d9 100644
--- a/src/protontricks/data/scripts/wineserver_keepalive.sh
+++ b/src/protontricks/data/scripts/wineserver_keepalive.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
+#!@bash@
# A simple keepalive script that will ensure a wineserver process is kept alive
# for the duration of the Protontricks session.
# This is accomplished by launching a simple Windows batch script that will
diff --git a/src/protontricks/steam.py b/src/protontricks/steam.py
index c39b51d..79de098 100644
--- a/src/protontricks/steam.py
+++ b/src/protontricks/steam.py
@@ -14,9 +14,8 @@ from .util import lower_dict
__all__ = (
"COMMON_STEAM_DIRS", "SteamApp", "find_steam_installations",
- "find_steam_path", "find_legacy_steam_runtime_path",
- "iter_appinfo_sections", "get_appinfo_sections", "get_tool_appid",
- "find_steam_compat_tool_app", "find_appid_proton_prefix",
+ "find_steam_path", "iter_appinfo_sections", "get_appinfo_sections",
+ "get_tool_appid", "find_steam_compat_tool_app", "find_appid_proton_prefix",
"find_proton_app", "get_steam_lib_paths", "get_compat_tool_dirs",
"get_custom_compat_tool_installations_in_dir",
"get_custom_compat_tool_installations", "find_current_steamid3",
@@ -393,37 +392,6 @@ def find_steam_path():
return None, None
-def find_legacy_steam_runtime_path(steam_root):
- """
- Find the legacy Steam Runtime either using the STEAM_RUNTIME env or
- steam_root
- """
- env_steam_runtime = os.environ.get("STEAM_RUNTIME", "")
-
- if env_steam_runtime == "0":
- # User has disabled Steam Runtime
- logger.info("STEAM_RUNTIME is 0. Disabling Steam Runtime.")
- return None
- elif env_steam_runtime and Path(env_steam_runtime).is_dir():
- # User has a custom Steam Runtime
- logger.info(
- "Using custom Steam Runtime at %s", env_steam_runtime)
- return Path(env_steam_runtime)
- elif env_steam_runtime in ["1", ""]:
- # User has enabled Steam Runtime or doesn't have STEAM_RUNTIME set;
- # default to enabled Steam Runtime in either case
- steam_runtime_path = steam_root / "ubuntu12_32" / "steam-runtime"
-
- logger.info(
- "Using default Steam Runtime at %s", str(steam_runtime_path))
- return steam_runtime_path
-
- logger.error(
- "Path in STEAM_RUNTIME doesn't point to a valid Steam Runtime!")
-
- return None
-
-
APPINFO_STRUCT_HEADER = "<4sL"
APPINFO_V27_STRUCT_SECTION = "<LLLLQ20sL"
APPINFO_V28_STRUCT_SECTION = "<LLLLQ20sL20s"
diff --git a/src/protontricks/util.py b/src/protontricks/util.py
index 7e95af5..7dc9a29 100644
index 9262cd0..00b2b2f 100644
--- a/src/protontricks/util.py
+++ b/src/protontricks/util.py
@@ -8,14 +8,14 @@ import shutil
import tempfile
import re
from pathlib import Path
-from subprocess import PIPE, check_output, run, Popen, DEVNULL
+from subprocess import PIPE, run, Popen, DEVNULL
import pkg_resources
__all__ = (
"SUPPORTED_STEAM_RUNTIMES", "lower_dict",
- "get_legacy_runtime_library_paths", "get_host_library_paths",
- "RUNTIME_ROOT_GLOB_PATTERNS", "get_runtime_library_paths",
+ "get_host_library_paths", "RUNTIME_ROOT_GLOB_PATTERNS",
+ "get_runtime_library_paths",
"WINE_SCRIPT_TEMPLATE", "create_wine_bin_dir", "run_command"
)
@@ -43,24 +43,6 @@ def lower_dict(d):
return {k.lower(): _lower_value(v) for k, v in d.items()}
-def get_legacy_runtime_library_paths(legacy_steam_runtime_path, proton_app):
- """
- Get LD_LIBRARY_PATH value to use when running a command using Steam Runtime
- """
- steam_runtime_paths = check_output([
- str(legacy_steam_runtime_path / "run.sh"),
- "--print-steam-runtime-library-paths"
- ])
- steam_runtime_paths = str(steam_runtime_paths, "utf-8")
- # Add Proton installation directory first into LD_LIBRARY_PATH
- # so that libwine.so.1 is picked up correctly (see issue #3)
- return "".join([
- str(proton_app.proton_dist_path / "lib"), os.pathsep,
- str(proton_app.proton_dist_path / "lib64"), os.pathsep,
- steam_runtime_paths
- ])
-
-
def get_host_library_paths():
"""
Get host library paths to use when creating the LD_LIBRARY_PATH environment
@@ -72,7 +54,7 @@ def get_host_library_paths():
@@ -99,7 +99,7 @@ def get_host_library_paths():
# Since that command is unavailable with newer Steam Runtime releases,
# do it ourselves here.
result = run(
- ["/sbin/ldconfig", "-XNv"],
+ ["steam-run", "ldconfig", "-XNv"],
+ ["@steamRun@", "/sbin/ldconfig", "-XNv"],
check=True, stdout=PIPE, stderr=PIPE
)
lines = result.stdout.decode("utf-8").split("\n")
@@ -90,7 +72,7 @@ RUNTIME_ROOT_GLOB_PATTERNS = (
)
-def get_runtime_library_paths(proton_app, use_bwrap=True):
+def get_runtime_library_paths(proton_app, proton_app_only=True):
"""
Get LD_LIBRARY_PATH value to use when running a command using Steam Runtime
"""
@@ -111,7 +93,7 @@ def get_runtime_library_paths(proton_app, use_bwrap=True):
f"Could not find Steam Runtime runtime root for {runtime_app.name}"
)
- if use_bwrap:
+ if proton_app_only:
return "".join([
str(proton_app.proton_dist_path / "lib"), os.pathsep,
str(proton_app.proton_dist_path / "lib64"), os.pathsep
@@ -313,7 +295,7 @@ def run_command(
wine_environ["STEAM_RUNTIME_PATH"] = \
str(proton_app.required_tool_app.install_path)
wine_environ["PROTON_LD_LIBRARY_PATH"] = \
- get_runtime_library_paths(proton_app, use_bwrap=use_bwrap)
+ get_runtime_library_paths(proton_app, proton_app_only=use_bwrap)
runtime_name = proton_app.required_tool_app.name
logger.info(
@@ -337,13 +319,9 @@ def run_command(
"Current Steam Runtime not recognized by Protontricks."
)
else:
- # Legacy Steam Runtime requires a different LD_LIBRARY_PATH
- # that is produced by a script.
wine_environ["PROTONTRICKS_STEAM_RUNTIME"] = "legacy"
wine_environ["PROTON_LD_LIBRARY_PATH"] = \
- get_legacy_runtime_library_paths(
- legacy_steam_runtime_path, proton_app
- )
+ get_runtime_library_paths(proton_app, proton_app_only=True)
# bwrap is not available, so ensure it is not launched even if the
# user configured it so
@@ -353,7 +331,6 @@ def run_command(
# configuring the environment and Wine before launching the underlying
# Wine binaries.
wine_bin_dir = create_wine_bin_dir(proton_app)
- wine_environ["LEGACY_STEAM_RUNTIME_PATH"] = str(legacy_steam_runtime_path)
wine_environ["PATH"] = os.pathsep.join(
[str(wine_bin_dir), wine_environ["PATH"]]
)
diff --git a/tests/cli/test_main.py b/tests/cli/test_main.py
index 0a35f8d..9b96629 100644
--- a/tests/cli/test_main.py
+++ b/tests/cli/test_main.py
@@ -121,15 +121,10 @@ class TestCLIRun:
assert str(command.args[0]).endswith(".local/bin/winetricks")
assert command.args[1] == "winecfg"
assert command.env["PATH"].startswith(str(wine_bin_dir))
- assert (
- "fake_steam_runtime/lib64" in command.env["PROTON_LD_LIBRARY_PATH"]
- )
assert command.env["WINE"] == str(wine_bin_dir / "wine")
assert command.env["WINELOADER"] == str(wine_bin_dir / "wine")
assert command.env["WINESERVER"] == str(wine_bin_dir / "wineserver")
- assert command.env["LEGACY_STEAM_RUNTIME_PATH"] == \
- str(steam_runtime_dir / "steam-runtime")
assert command.env["PROTONTRICKS_STEAM_RUNTIME"] == "legacy"
assert "STEAM_RUNTIME_PATH" not in command.env
@@ -180,16 +175,14 @@ class TestCLIRun:
assert command.env["PATH"].startswith(str(wine_bin_dir))
# Compared to the traditional Steam Runtime, PROTON_LD_LIBRARY_PATH
- # will be different
+ # will be the same (it would be different without steam-run.patch)
proton_install_path = Path(proton_app.install_path)
assert command.env["PROTON_LD_LIBRARY_PATH"] == "".join([
str(proton_install_path / "dist" / "lib"), os.pathsep,
str(proton_install_path / "dist" / "lib64"), os.pathsep
])
- # Environment variables for both legacy and new Steam Runtime exist
- assert command.env["LEGACY_STEAM_RUNTIME_PATH"] == \
- str(steam_runtime_dir / "steam-runtime")
+ # Environment variable for new Steam Runtime exists
assert command.env["STEAM_RUNTIME_PATH"] == \
str(steam_runtime_soldier.install_path)
assert command.env["PROTONTRICKS_STEAM_RUNTIME"] == "bwrap"
@@ -254,9 +247,7 @@ class TestCLIRun:
str(runtime_root / "lib" / "x86_64-linux-gnu")
]))
- # Environment variables for both legacy and new Steam Runtime exist
- assert command.env["LEGACY_STEAM_RUNTIME_PATH"] == \
- str(steam_runtime_dir / "steam-runtime")
+ # Environment variable for new Steam Runtime exists
assert command.env["STEAM_RUNTIME_PATH"] == \
str(steam_runtime_soldier.install_path)
assert command.env["PROTONTRICKS_STEAM_RUNTIME"] == "legacy"
@@ -407,7 +398,6 @@ class TestCLIRun:
# Also ensure log messages are included in the error message
assert b"Found Steam directory at" in message
- assert b"Using default Steam Runtime" in message
def test_run_gui_provider_not_found(self, cli, home_dir, steam_app_factory):
"""
@@ -421,20 +411,6 @@ class TestCLIRun:
assert "YAD or Zenity is not installed" in result
- def test_run_steam_runtime_not_found(
- self, cli, steam_dir, steam_app_factory):
- """
- Try performing a command with Steam Runtime enabled but no
- available Steam Runtime installation
- """
- steam_app_factory(name="Fake game 1", appid=10)
- result = cli(
- ["10", "winecfg"], env={"STEAM_RUNTIME": "invalid/path"},
- expect_returncode=1
- )
-
- assert "Steam Runtime was enabled but couldn't be found" in result
-
def test_run_proton_not_found(self, cli, steam_dir, steam_app_factory):
steam_app_factory(name="Fake game 1", appid=10)
result = cli(["10", "winecfg"], expect_returncode=1)
diff --git a/tests/conftest.py b/tests/conftest.py
index 106e0d9..8236f3a 100644
index a516437..88bf804 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -169,7 +169,7 @@ def steam_runtime_dir(steam_dir):
@@ -170,7 +170,7 @@ def steam_runtime_dir(steam_dir):
"""
(steam_dir.parent / "root" / "ubuntu12_32" / "steam-runtime").mkdir(parents=True)
(steam_dir.parent / "root" / "ubuntu12_32" / "steam-runtime" / "run.sh").write_text(
- "#!/bin/bash\n"
+ "#!/usr/bin/env -S steam-run bash\n"
+ "#!/bin/sh\n"
"""if [ "$1" = "--print-steam-runtime-library-paths" ]; then\n"""
" echo 'fake_steam_runtime/lib:fake_steam_runtime/lib64'\n"
"fi"
@@ -735,7 +735,7 @@ def xdg_user_dir_bin(home_dir):
@@ -764,7 +764,7 @@ def xdg_user_dir_bin(home_dir):
# Only mock PICTURES and DOWNLOAD; mocking everything isn't necessary
# for the tests.
(home_dir / ".local" / "bin" / "xdg-user-dir").write_text(
- '#!/bin/bash\n'
+ '#!/usr/bin/env -S steam-run bash\n'
+ '#!/bin/sh\n'
'if [[ "$1" == "PICTURES" ]]; then\n'
' echo "$HOME/Pictures"\n'
'elif [[ "$1" == "DOWNLOAD" ]]; then\n'
diff --git a/tests/test_flatpak.py b/tests/test_flatpak.py
index cb2b9bb..440b704 100644
--- a/tests/test_flatpak.py
+++ b/tests/test_flatpak.py
@@ -159,36 +159,6 @@ class TestGetInaccessiblePaths:
assert len(inaccessible_paths) == 0
- @pytest.mark.usefixtures("xdg_user_dir_bin")
- def test_flatpak_xdg_user_dir(self, monkeypatch, tmp_path, home_dir):
- """
- Test that XDG filesystem permissions such as 'xdg-pictures' and
- 'xdg-download' are detected correctly
- """
- flatpak_info_path = tmp_path / "flatpak-info"
-
- flatpak_info_path.write_text(
- "[Application]\n"
- "name=fake.flatpak.Protontricks\n"
- "\n"
- "[Instance]\n"
- "flatpak-version=1.12.1\n"
- "\n"
- "[Context]\n"
- "filesystems=xdg-pictures;"
- )
- monkeypatch.setattr(
- "protontricks.flatpak.FLATPAK_INFO_PATH", str(flatpak_info_path)
- )
-
- inaccessible_paths = get_inaccessible_paths([
- str(home_dir / "Pictures"),
- str(home_dir / "Download")
- ])
-
- assert len(inaccessible_paths) == 1
- assert str(inaccessible_paths[0]) == str(home_dir / "Download")
-
def test_flatpak_unknown_permission(self, monkeypatch, tmp_path, caplog):
"""
Test that unknown filesystem permissions are ignored
diff --git a/tests/test_util.py b/tests/test_util.py
index ec5f4f3..0b0a66c 100644
--- a/tests/test_util.py
+++ b/tests/test_util.py
@@ -98,44 +98,6 @@ class TestRunCommand:
assert command.env["WINELOADER"] == "/fake/wine"
assert command.env["WINESERVER"] == "/fake/wineserver"
- def test_unknown_steam_runtime_detected(
- self, home_dir, proton_factory, runtime_app_factory,
- steam_app_factory, caplog):
- """
- Test that Protontricks will log a warning if it encounters a Steam
- Runtime it does not recognize
- """
- steam_runtime_medic = runtime_app_factory(
- name="Steam Linux Runtime - Medic",
- appid=14242420,
- runtime_dir_name="medic"
- )
- proton_app = proton_factory(
- name="Proton 5.20", appid=100, compat_tool_name="proton_520",
- is_default_proton=True, required_tool_app=steam_runtime_medic
- )
- steam_app = steam_app_factory(name="Fake game", appid=10)
-
- run_command(
- winetricks_path=Path("/usr/bin/winetricks"),
- proton_app=proton_app,
- steam_app=steam_app,
- command=["echo", "nothing"],
- shell=True,
- use_steam_runtime=True
- )
-
- # Warning will be logged since Protontricks does not recognize
- # Steam Runtime Medic and can't ensure it's being configured correctly
- warning = next(
- record for record in caplog.records
- if record.levelname == "WARNING"
- and "not recognized" in record.getMessage()
- )
- assert warning.getMessage() == \
- "Current Steam Runtime not recognized by Protontricks."
-
-
class TestLowerDict:
def test_lower_nested_dict(self):
"""

View File

@ -305,6 +305,7 @@ mapAliases ({
garage_0_7 = throw "garage 0.7.x has been removed as it is EOL. Please upgrade to 0.8 series."; # Added 2023-10-10
garage_0_7_3 = throw "garage 0.7.x has been removed as it is EOL. Please upgrade to 0.8 series."; # Added 2023-10-10
garmindev = throw "'garmindev' has been removed as the dependent software 'qlandkartegt' has been removed"; # Added 2023-04-17
gcl_2_6_13_pre = throw "'gcl_2_6_13_pre' has been removed in favor of 'gcl'"; # Added 2024-01-11
geekbench4 = throw "'geekbench4' has been renamed to 'geekbench_4'"; # Added 2023-03-10
geekbench5 = throw "'geekbench5' has been renamed to 'geekbench_5'"; # Added 2023-03-10
ghostwriter = libsForQt5.kdeGear.ghostwriter; # Added 2023-03-18

View File

@ -7007,7 +7007,7 @@ with pkgs;
inherit (darwin.apple_sdk_11_0.frameworks) Security CoreServices SystemConfiguration;
};
gebaar-libinput = callPackage ../tools/inputmethods/gebaar-libinput { stdenv = gcc10StdenvCompat; };
gebaar-libinput = callPackage ../tools/inputmethods/gebaar-libinput { };
kime = callPackage ../tools/inputmethods/kime { };
@ -16207,8 +16207,6 @@ with pkgs;
inherit (llvmPackages_15) llvm;
};
gcl_2_6_13_pre = callPackage ../development/compilers/gcl/2.6.13-pre.nix { };
gcc-arm-embedded-6 = callPackage ../development/compilers/gcc-arm-embedded/6 { };
gcc-arm-embedded-7 = callPackage ../development/compilers/gcc-arm-embedded/7 { };
gcc-arm-embedded-8 = callPackage ../development/compilers/gcc-arm-embedded/8 { };
@ -22265,7 +22263,10 @@ with pkgs;
libjson = callPackage ../development/libraries/libjson { };
libjodycode = callPackage ../development/libraries/libjodycode { };
libjodycode = callPackage ../development/libraries/libjodycode {
# missing aligned_alloc()
stdenv = if stdenv.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
};
libb64 = callPackage ../development/libraries/libb64 { };
@ -31545,8 +31546,6 @@ with pkgs;
freebayes = callPackage ../applications/science/biology/freebayes { };
freefilesync = callPackage ../applications/networking/freefilesync { };
freewheeling = callPackage ../applications/audio/freewheeling { };
fritzing = libsForQt5.callPackage ../applications/science/electronics/fritzing { };