Refactor Nix package definitions for improved clarity and consistency, including updates to overlays, dependencies, and build inputs across multiple packages.
This commit is contained in:
parent
38959dc37b
commit
e9fc085de1
@ -28,8 +28,8 @@
|
|||||||
|> builtins.listToAttrs;
|
|> builtins.listToAttrs;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
overlays.default = final: prev: {
|
overlays.default = _final: prev: {
|
||||||
scrapy = prev.scrapy.overrideAttrs (old: rec {
|
scrapy = prev.scrapy.overrideAttrs (_old: rec {
|
||||||
version = "2.11.2";
|
version = "2.11.2";
|
||||||
src = prev.fetchFromGitHub {
|
src = prev.fetchFromGitHub {
|
||||||
owner = "scrapy";
|
owner = "scrapy";
|
||||||
@ -42,7 +42,7 @@
|
|||||||
packages.x86_64-linux =
|
packages.x86_64-linux =
|
||||||
let
|
let
|
||||||
scriptBin = path: name: pkgs.writeScriptBin name (builtins.readFile path);
|
scriptBin = path: name: pkgs.writeScriptBin name (builtins.readFile path);
|
||||||
pkgsBin = path: name: pkgs.callPackage path { };
|
pkgsBin = path: _name: pkgs.callPackage path { };
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
citra = pkgs.callPackage ./pkgs/citra/default.nix { branch = "nightly"; };
|
citra = pkgs.callPackage ./pkgs/citra/default.nix { branch = "nightly"; };
|
||||||
|
|||||||
@ -45,47 +45,46 @@ stdenv.mkDerivation {
|
|||||||
glslang
|
glslang
|
||||||
pkg-config
|
pkg-config
|
||||||
python3
|
python3
|
||||||
] ++ lib.optionals enableQt [ wrapQtAppsHook ];
|
]
|
||||||
|
++ lib.optionals enableQt [ wrapQtAppsHook ];
|
||||||
|
|
||||||
buildInputs =
|
buildInputs = [
|
||||||
[
|
boost
|
||||||
boost
|
libusb1
|
||||||
libusb1
|
]
|
||||||
]
|
++ lib.optionals enableQt [
|
||||||
++ lib.optionals enableQt [
|
qtbase
|
||||||
qtbase
|
qtmultimedia
|
||||||
qtmultimedia
|
]
|
||||||
]
|
++ lib.optional enableSdl2 SDL2
|
||||||
++ lib.optional enableSdl2 SDL2
|
++ lib.optional enableQtTranslation qttools
|
||||||
++ lib.optional enableQtTranslation qttools
|
++ lib.optionals enableCubeb cubeb.passthru.backendLibs
|
||||||
++ lib.optionals enableCubeb cubeb.passthru.backendLibs
|
++ lib.optional (enableFfmpegAudioDecoder || enableFfmpegVideoDumper) ffmpeg_4
|
||||||
++ lib.optional (enableFfmpegAudioDecoder || enableFfmpegVideoDumper) ffmpeg_4
|
++ lib.optional useDiscordRichPresence rapidjson
|
||||||
++ lib.optional useDiscordRichPresence rapidjson
|
++ lib.optional enableFdk fdk_aac;
|
||||||
++ lib.optional enableFdk fdk_aac;
|
|
||||||
|
|
||||||
cmakeFlags =
|
cmakeFlags = [
|
||||||
[
|
"-DUSE_SYSTEM_BOOST=ON"
|
||||||
"-DUSE_SYSTEM_BOOST=ON"
|
"-DCITRA_WARNINGS_AS_ERRORS=OFF"
|
||||||
"-DCITRA_WARNINGS_AS_ERRORS=OFF"
|
"-DCITRA_USE_BUNDLED_FFMPEG=OFF"
|
||||||
"-DCITRA_USE_BUNDLED_FFMPEG=OFF"
|
"-DCITRA_USE_BUNDLED_QT=OFF"
|
||||||
"-DCITRA_USE_BUNDLED_QT=OFF"
|
"-DUSE_SYSTEM_SDL2=ON"
|
||||||
"-DUSE_SYSTEM_SDL2=ON"
|
"-DCMAKE_INSTALL_INCLUDEDIR=include"
|
||||||
"-DCMAKE_INSTALL_INCLUDEDIR=include"
|
"-DCMAKE_INSTALL_LIBDIR=lib"
|
||||||
"-DCMAKE_INSTALL_LIBDIR=lib"
|
|
||||||
|
|
||||||
# We dont want to bother upstream with potentially outdated compat reports
|
# We dont want to bother upstream with potentially outdated compat reports
|
||||||
"-DCITRA_ENABLE_COMPATIBILITY_REPORTING=ON"
|
"-DCITRA_ENABLE_COMPATIBILITY_REPORTING=ON"
|
||||||
"-DENABLE_COMPATIBILITY_LIST_DOWNLOAD=OFF" # We provide this deterministically
|
"-DENABLE_COMPATIBILITY_LIST_DOWNLOAD=OFF" # We provide this deterministically
|
||||||
]
|
]
|
||||||
++ lib.optional (!enableSdl2) "-DENABLE_SDL2=OFF"
|
++ lib.optional (!enableSdl2) "-DENABLE_SDL2=OFF"
|
||||||
++ lib.optional (!enableQt) "-DENABLE_QT=OFF"
|
++ lib.optional (!enableQt) "-DENABLE_QT=OFF"
|
||||||
++ lib.optional enableQtTranslation "-DENABLE_QT_TRANSLATION=ON"
|
++ lib.optional enableQtTranslation "-DENABLE_QT_TRANSLATION=ON"
|
||||||
++ lib.optional (!enableWebService) "-DENABLE_WEB_SERVICE=OFF"
|
++ lib.optional (!enableWebService) "-DENABLE_WEB_SERVICE=OFF"
|
||||||
++ lib.optional (!enableCubeb) "-DENABLE_CUBEB=OFF"
|
++ lib.optional (!enableCubeb) "-DENABLE_CUBEB=OFF"
|
||||||
++ lib.optional enableFfmpegAudioDecoder "-DENABLE_FFMPEG_AUDIO_DECODER=ON"
|
++ lib.optional enableFfmpegAudioDecoder "-DENABLE_FFMPEG_AUDIO_DECODER=ON"
|
||||||
++ lib.optional enableFfmpegVideoDumper "-DENABLE_FFMPEG_VIDEO_DUMPER=ON"
|
++ lib.optional enableFfmpegVideoDumper "-DENABLE_FFMPEG_VIDEO_DUMPER=ON"
|
||||||
++ lib.optional useDiscordRichPresence "-DUSE_DISCORD_PRESENCE=ON"
|
++ lib.optional useDiscordRichPresence "-DUSE_DISCORD_PRESENCE=ON"
|
||||||
++ lib.optional enableFdk "-DENABLE_FDK=ON";
|
++ lib.optional enableFdk "-DENABLE_FDK=ON";
|
||||||
|
|
||||||
postPatch =
|
postPatch =
|
||||||
let
|
let
|
||||||
|
|||||||
@ -2,7 +2,6 @@
|
|||||||
python3Packages,
|
python3Packages,
|
||||||
gallery-dl,
|
gallery-dl,
|
||||||
ffmpeg,
|
ffmpeg,
|
||||||
callPackage,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
@ -21,17 +20,16 @@ python3Packages.buildPythonApplication {
|
|||||||
|
|
||||||
build-system = [ python3Packages.setuptools ];
|
build-system = [ python3Packages.setuptools ];
|
||||||
|
|
||||||
dependencies =
|
dependencies = [
|
||||||
[
|
ffmpeg
|
||||||
ffmpeg
|
gallery-dl
|
||||||
gallery-dl
|
# (callPackage ../pkgs_pr/webcomix.nix { })
|
||||||
# (callPackage ../pkgs_pr/webcomix.nix { })
|
]
|
||||||
]
|
++ builtins.attrValues {
|
||||||
++ builtins.attrValues {
|
inherit (python3Packages)
|
||||||
inherit (python3Packages)
|
pyyaml
|
||||||
pyyaml
|
types-pyyaml
|
||||||
types-pyyaml
|
yt-dlp
|
||||||
yt-dlp
|
;
|
||||||
;
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -95,7 +95,8 @@ let
|
|||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-GNinja"
|
"-GNinja"
|
||||||
"-DLauncher_QT_VERSION_MAJOR=${lib.versions.major qt6.qtbase.version}"
|
"-DLauncher_QT_VERSION_MAJOR=${lib.versions.major qt6.qtbase.version}"
|
||||||
] ++ lib.optionals (msaClientID != null) [ "-DLauncher_MSA_CLIENT_ID=${msaClientID}" ];
|
]
|
||||||
|
++ lib.optionals (msaClientID != null) [ "-DLauncher_MSA_CLIENT_ID=${msaClientID}" ];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
# hardcode jdk paths
|
# hardcode jdk paths
|
||||||
|
|||||||
@ -22,7 +22,6 @@
|
|||||||
lz4,
|
lz4,
|
||||||
python3,
|
python3,
|
||||||
unzip,
|
unzip,
|
||||||
nix-update-script,
|
|
||||||
nlohmann_json,
|
nlohmann_json,
|
||||||
nv-codec-headers-12,
|
nv-codec-headers-12,
|
||||||
pkg-config,
|
pkg-config,
|
||||||
@ -30,7 +29,6 @@
|
|||||||
vulkan-headers,
|
vulkan-headers,
|
||||||
vulkan-loader,
|
vulkan-loader,
|
||||||
yasm,
|
yasm,
|
||||||
simpleini,
|
|
||||||
zlib,
|
zlib,
|
||||||
vulkan-memory-allocator,
|
vulkan-memory-allocator,
|
||||||
zstd,
|
zstd,
|
||||||
|
|||||||
@ -10,15 +10,14 @@ python3Packages.buildPythonApplication {
|
|||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
};
|
};
|
||||||
build-system = [ python3Packages.setuptools ];
|
build-system = [ python3Packages.setuptools ];
|
||||||
dependencies =
|
dependencies = [
|
||||||
[
|
sqlite
|
||||||
sqlite
|
]
|
||||||
]
|
++ builtins.attrValues {
|
||||||
++ builtins.attrValues {
|
inherit (python3Packages)
|
||||||
inherit (python3Packages)
|
beautifulsoup4
|
||||||
beautifulsoup4
|
requests
|
||||||
requests
|
matplotlib
|
||||||
matplotlib
|
;
|
||||||
;
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -44,35 +44,33 @@ stdenv.mkDerivation rec {
|
|||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs =
|
nativeBuildInputs = [
|
||||||
[
|
pkg-config
|
||||||
pkg-config
|
sphinx
|
||||||
sphinx
|
scons
|
||||||
scons
|
]
|
||||||
]
|
++ lib.optionals withGui [
|
||||||
++ lib.optionals withGui [
|
makeWrapper
|
||||||
makeWrapper
|
wrapGAppsHook3
|
||||||
wrapGAppsHook3
|
gobject-introspection
|
||||||
gobject-introspection
|
];
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs =
|
buildInputs = [
|
||||||
[
|
glib
|
||||||
glib
|
json-glib
|
||||||
json-glib
|
util-linux
|
||||||
util-linux
|
]
|
||||||
]
|
++ lib.optionals withGui [
|
||||||
++ lib.optionals withGui [
|
cairo
|
||||||
cairo
|
gtksourceview3
|
||||||
gtksourceview3
|
pango
|
||||||
pango
|
polkit
|
||||||
polkit
|
python3
|
||||||
python3
|
python3.pkgs.pygobject3
|
||||||
python3.pkgs.pygobject3
|
]
|
||||||
]
|
++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform elfutils) [
|
||||||
++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform elfutils) [
|
elfutils
|
||||||
elfutils
|
];
|
||||||
];
|
|
||||||
|
|
||||||
prePatch = ''
|
prePatch = ''
|
||||||
# remove sources of nondeterminism
|
# remove sources of nondeterminism
|
||||||
|
|||||||
@ -44,29 +44,28 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
copyDesktopItems
|
copyDesktopItems
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs =
|
buildInputs = [
|
||||||
[
|
nss
|
||||||
nss
|
cairo
|
||||||
cairo
|
alsa-lib
|
||||||
alsa-lib
|
at-spi2-core
|
||||||
at-spi2-core
|
pango
|
||||||
pango
|
libdrm
|
||||||
libdrm
|
libxkbcommon
|
||||||
libxkbcommon
|
gtk3
|
||||||
gtk3
|
vivaldi-ffmpeg-codecs
|
||||||
vivaldi-ffmpeg-codecs
|
mesa
|
||||||
mesa
|
libGL
|
||||||
libGL
|
libglvnd
|
||||||
libglvnd
|
]
|
||||||
]
|
++ (with xorg; [
|
||||||
++ (with xorg; [
|
libX11
|
||||||
libX11
|
libXcomposite
|
||||||
libXcomposite
|
libXdamage
|
||||||
libXdamage
|
libXrandr
|
||||||
libXrandr
|
libXfixes
|
||||||
libXfixes
|
libXcursor
|
||||||
libXcursor
|
]);
|
||||||
]);
|
|
||||||
|
|
||||||
# Required to launch the application and proceed past the zygote_linux fork() process
|
# Required to launch the application and proceed past the zygote_linux fork() process
|
||||||
# Fixes `Zygote could not fork`
|
# Fixes `Zygote could not fork`
|
||||||
|
|||||||
@ -16,7 +16,7 @@
|
|||||||
gtk4,
|
gtk4,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation (finaAttrs: rec {
|
stdenv.mkDerivation (_finaAttrs: rec {
|
||||||
pname = "aviator";
|
pname = "aviator";
|
||||||
version = "0.6.0";
|
version = "0.6.0";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|||||||
@ -49,23 +49,22 @@ stdenv.mkDerivation rec {
|
|||||||
desktop-file-utils
|
desktop-file-utils
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs =
|
buildInputs = [
|
||||||
[
|
cairo
|
||||||
cairo
|
gdk-pixbuf
|
||||||
gdk-pixbuf
|
glib
|
||||||
glib
|
gtk4
|
||||||
gtk4
|
libadwaita
|
||||||
libadwaita
|
pango
|
||||||
pango
|
]
|
||||||
]
|
++ lib.optionals stdenv.isDarwin [
|
||||||
++ lib.optionals stdenv.isDarwin [
|
darwin.apple_sdk.frameworks.CoreAudio
|
||||||
darwin.apple_sdk.frameworks.CoreAudio
|
]
|
||||||
]
|
++ lib.optionals stdenv.isLinux [
|
||||||
++ lib.optionals stdenv.isLinux [
|
alsa-lib
|
||||||
alsa-lib
|
pulseaudio
|
||||||
pulseaudio
|
pipewire
|
||||||
pipewire
|
];
|
||||||
];
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Timer app for high intensity interval training";
|
description = "Timer app for high intensity interval training";
|
||||||
|
|||||||
@ -2,57 +2,48 @@
|
|||||||
lib,
|
lib,
|
||||||
python3,
|
python3,
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
callPackage,
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
python3.pkgs.buildPythonApplication rec {
|
python3.pkgs.buildPythonApplication rec {
|
||||||
pname = "qbit-manage";
|
pname = "qbit-manage";
|
||||||
version = "4.3.0";
|
version = "4.6.3";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "StuffAnThings";
|
owner = "StuffAnThings";
|
||||||
repo = "qbit_manage";
|
repo = "qbit_manage";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-Wj1s11PwHfH4hDGEn0jW/REO2gI7+AGyb2B/QKUhlyk=";
|
hash = "sha256-cTxM3nHQQto7lpoNjShYcCbJCSYiwS9bKqw0DWAjw6A=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
rm LICENSE
|
rm LICENSE
|
||||||
'';
|
'';
|
||||||
|
|
||||||
build-system = [
|
build-system = builtins.attrValues {
|
||||||
python3.pkgs.setuptools
|
inherit (python3.pkgs)
|
||||||
python3.pkgs.wheel
|
setuptools
|
||||||
];
|
wheel
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
dependencies = with python3.pkgs; [
|
propagatedBuildInputs = builtins.attrValues {
|
||||||
croniter
|
inherit (python3.pkgs)
|
||||||
gitpython
|
argon2-cffi
|
||||||
humanize
|
bencode-py
|
||||||
pytimeparse2
|
croniter
|
||||||
bencode-py
|
fastapi
|
||||||
requests
|
gitpython
|
||||||
retrying
|
humanize
|
||||||
ruamel-yaml
|
pytimeparse2
|
||||||
schedule
|
qbittorrent-api
|
||||||
(callPackage ./qbittorrent-api.nix {
|
requests
|
||||||
inherit lib;
|
retrying
|
||||||
inherit (python3.pkgs)
|
ruamel-yaml
|
||||||
buildPythonPackage
|
slowapi
|
||||||
fetchPypi
|
uvicorn
|
||||||
|
;
|
||||||
# build-system
|
};
|
||||||
setuptools
|
|
||||||
setuptools-scm
|
|
||||||
|
|
||||||
# dependencies
|
|
||||||
packaging
|
|
||||||
requests
|
|
||||||
urllib3
|
|
||||||
;
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "This tool will help manage tedious tasks in qBittorrent and automate them. Tag, categorize, remove Orphaned data, remove unregistered torrents and much much more";
|
description = "This tool will help manage tedious tasks in qBittorrent and automate them. Tag, categorize, remove Orphaned data, remove unregistered torrents and much much more";
|
||||||
|
|||||||
@ -3,17 +3,16 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
pkgs.mkShell {
|
pkgs.mkShell {
|
||||||
packages =
|
packages = [
|
||||||
[
|
(pkgs.python3.withPackages (
|
||||||
(pkgs.python3.withPackages (
|
ps:
|
||||||
ps:
|
builtins.attrValues {
|
||||||
builtins.attrValues {
|
inherit (ps) setuptools pyyaml types-pyyaml;
|
||||||
inherit (ps) setuptools pyyaml types-pyyaml;
|
}
|
||||||
}
|
))
|
||||||
))
|
]
|
||||||
]
|
++ builtins.attrValues {
|
||||||
++ builtins.attrValues {
|
inherit (pkgs) yt-dlp gallery-dl ffmpeg;
|
||||||
inherit (pkgs) yt-dlp gallery-dl ffmpeg;
|
};
|
||||||
};
|
|
||||||
buildInputs = [ ];
|
buildInputs = [ ];
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,12 +1,18 @@
|
|||||||
let pkgs = import <nixpkgs> { };
|
let
|
||||||
in pkgs.haskellPackages.developPackage {
|
pkgs = import <nixpkgs> { };
|
||||||
|
in
|
||||||
|
pkgs.haskellPackages.developPackage {
|
||||||
root = ./.;
|
root = ./.;
|
||||||
modifier = drv:
|
modifier =
|
||||||
pkgs.haskell.lib.addBuildTools drv (with pkgs.haskellPackages; [
|
drv:
|
||||||
cabal-install
|
pkgs.haskell.lib.addBuildTools drv (
|
||||||
ghcid
|
with pkgs.haskellPackages;
|
||||||
haskell-language-server
|
[
|
||||||
fourmolu
|
cabal-install
|
||||||
regex
|
ghcid
|
||||||
]);
|
haskell-language-server
|
||||||
|
fourmolu
|
||||||
|
regex
|
||||||
|
]
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,18 +1,21 @@
|
|||||||
{ pkgs ? import <nixpkgs> { } }:
|
{
|
||||||
|
pkgs ? import <nixpkgs> { },
|
||||||
|
}:
|
||||||
|
|
||||||
with pkgs;
|
with pkgs;
|
||||||
|
|
||||||
mkShell {
|
mkShell {
|
||||||
packages = [
|
packages = [
|
||||||
geckodriver
|
geckodriver
|
||||||
(python3.withPackages (ps:
|
(python3.withPackages (
|
||||||
with ps; [
|
ps: with ps; [
|
||||||
tweepy
|
tweepy
|
||||||
requests
|
requests
|
||||||
beautifulsoup4
|
beautifulsoup4
|
||||||
selenium
|
selenium
|
||||||
webdriver-manager
|
webdriver-manager
|
||||||
]))
|
]
|
||||||
|
))
|
||||||
];
|
];
|
||||||
buildInputs = [ ];
|
buildInputs = [ ];
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user