best practices: got rid of rec
This commit is contained in:
parent
0bebf3e366
commit
be0e4d7109
64
base.nix
64
base.nix
@ -124,42 +124,46 @@
|
|||||||
wget
|
wget
|
||||||
sops
|
sops
|
||||||
];
|
];
|
||||||
variables = rec {
|
variables =
|
||||||
# PATH
|
let
|
||||||
XDG_CACHE_HOME = "\${HOME}/.cache";
|
XDG_DATA_HOME = "\${HOME}/.local/share";
|
||||||
XDG_CONFIG_HOME = "\${HOME}/.config";
|
XDG_CONFIG_HOME = "\${HOME}/.config";
|
||||||
XDG_BIN_HOME = "\${HOME}/.local/bin";
|
XDG_CACHE_HOME = "\${HOME}/.cache";
|
||||||
XDG_DATA_HOME = "\${HOME}/.local/share";
|
in
|
||||||
XDG_STATE_HOME = "\${HOME}/.local/state";
|
{
|
||||||
|
# PATH
|
||||||
|
inherit XDG_DATA_HOME XDG_CONFIG_HOME XDG_CACHE_HOME;
|
||||||
|
XDG_BIN_HOME = "\${HOME}/.local/bin";
|
||||||
|
XDG_STATE_HOME = "\${HOME}/.local/state";
|
||||||
|
|
||||||
# DEV PATH
|
# DEV PATH
|
||||||
CARGO_HOME = "${XDG_DATA_HOME}/cargo";
|
CARGO_HOME = "${XDG_DATA_HOME}/cargo";
|
||||||
GEM_HOME = "${XDG_DATA_HOME}/ruby/gems";
|
GEM_HOME = "${XDG_DATA_HOME}/ruby/gems";
|
||||||
GEM_PATH = "${XDG_DATA_HOME}/ruby/gems";
|
GEM_PATH = "${XDG_DATA_HOME}/ruby/gems";
|
||||||
GEM_SPEC_CACHE = "${XDG_DATA_HOME}/ruby/specs";
|
GEM_SPEC_CACHE = "${XDG_DATA_HOME}/ruby/specs";
|
||||||
GOPATH = "${XDG_DATA_HOME}/go";
|
GOPATH = "${XDG_DATA_HOME}/go";
|
||||||
PSQL_HISTORY = "${XDG_DATA_HOME}/psql_history";
|
PSQL_HISTORY = "${XDG_DATA_HOME}/psql_history";
|
||||||
REDISCLI_HISTFILE = "${XDG_DATA_HOME}/redis/rediscli_history";
|
REDISCLI_HISTFILE = "${XDG_DATA_HOME}/redis/rediscli_history";
|
||||||
WINEPREFIX = "${XDG_DATA_HOME}/wine";
|
WINEPREFIX = "${XDG_DATA_HOME}/wine";
|
||||||
|
|
||||||
# OPTIONS
|
# OPTIONS
|
||||||
ELECTRUMDIR = "${XDG_DATA_HOME}/electrum";
|
ELECTRUMDIR = "${XDG_DATA_HOME}/electrum";
|
||||||
WGETRC = "${XDG_CONFIG_HOME}/wgetrc";
|
WGETRC = "${XDG_CONFIG_HOME}/wgetrc";
|
||||||
XCOMPOSECACHE = "${XDG_CACHE_HOME}/X11/xcompose";
|
XCOMPOSECACHE = "${XDG_CACHE_HOME}/X11/xcompose";
|
||||||
"_JAVA_OPTIONS" = "-Djava.util.prefs.userRoot=${XDG_CONFIG_HOME}/java";
|
"_JAVA_OPTIONS" = "-Djava.util.prefs.userRoot=${XDG_CONFIG_HOME}/java";
|
||||||
|
|
||||||
# NVIDIA
|
# NVIDIA
|
||||||
CUDA_CACHE_PATH = "${XDG_CACHE_HOME}/nv";
|
CUDA_CACHE_PATH = "${XDG_CACHE_HOME}/nv";
|
||||||
|
|
||||||
# WAYLAND
|
# WAYLAND
|
||||||
WLR_NO_HARDWARE_CURSORS = 1;
|
WLR_NO_HARDWARE_CURSORS = 1;
|
||||||
NIXOS_OZONE_WL = 1;
|
NIXOS_OZONE_WL = 1;
|
||||||
|
|
||||||
# Themes
|
# Themes
|
||||||
# WEBKIT_DISABLE_COMPOSITING_MODE = "1";
|
# WEBKIT_DISABLE_COMPOSITING_MODE = "1";
|
||||||
|
|
||||||
PATH = [ "\${HOME}/.local/bin" ];
|
PATH = [ "\${HOME}/.local/bin" ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
programs = {
|
programs = {
|
||||||
nh = {
|
nh = {
|
||||||
|
|||||||
@ -44,14 +44,19 @@ in
|
|||||||
nodejs
|
nodejs
|
||||||
perl
|
perl
|
||||||
(python311.withPackages (ps: with ps; [ tensorflow ]))
|
(python311.withPackages (ps: with ps; [ tensorflow ]))
|
||||||
(perlPackages.buildPerlPackage rec {
|
(perlPackages.buildPerlPackage (
|
||||||
pname = "Image-ExifTool";
|
let
|
||||||
version = "12.70";
|
version = "12.70";
|
||||||
src = fetchurl {
|
in
|
||||||
url = "https://exiftool.org/Image-ExifTool-${version}.tar.gz";
|
{
|
||||||
hash = "sha256-TLJSJEXMPj870TkExq6uraX8Wl4kmNerrSlX3LQsr/4=";
|
pname = "Image-ExifTool";
|
||||||
};
|
inherit version;
|
||||||
})
|
src = fetchurl {
|
||||||
|
url = "https://exiftool.org/Image-ExifTool-${version}.tar.gz";
|
||||||
|
hash = "sha256-TLJSJEXMPj870TkExq6uraX8Wl4kmNerrSlX3LQsr/4=";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
))
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
programs.msmtp = {
|
programs.msmtp = {
|
||||||
|
|||||||
@ -15,17 +15,21 @@
|
|||||||
imagemagick # photoshop what??
|
imagemagick # photoshop what??
|
||||||
])
|
])
|
||||||
++ [
|
++ [
|
||||||
(pkgs.python3Packages.buildPythonApplication rec {
|
(pkgs.python3Packages.buildPythonApplication (
|
||||||
pname = "ffpb";
|
let
|
||||||
version = "0.4.1";
|
pname = "ffpb";
|
||||||
src = pkgs.python3Packages.fetchPypi {
|
version = "0.4.1";
|
||||||
inherit pname version;
|
in
|
||||||
sha256 = "sha256-7eVqbLpMHS1sBw2vYS4cTtyVdnnknGtEI8190VlXflk=";
|
{
|
||||||
};
|
src = pkgs.python3Packages.fetchPypi {
|
||||||
doCheck = false;
|
inherit pname version;
|
||||||
buildInputs = [ pkgs.python3Packages.setuptools ];
|
sha256 = "sha256-7eVqbLpMHS1sBw2vYS4cTtyVdnnknGtEI8190VlXflk=";
|
||||||
propagatedBuildInputs = [ pkgs.python3Packages.tqdm ];
|
};
|
||||||
})
|
doCheck = false;
|
||||||
|
buildInputs = [ pkgs.python3Packages.setuptools ];
|
||||||
|
propagatedBuildInputs = [ pkgs.python3Packages.tqdm ];
|
||||||
|
}
|
||||||
|
))
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -15,19 +15,27 @@ let
|
|||||||
};
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
nightly = qt6Packages.callPackage ./generic.nix rec {
|
nightly = qt6Packages.callPackage ./generic.nix (
|
||||||
pname = "citra-nightly";
|
let
|
||||||
version = "2104";
|
version = "2104";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
pname = "citra-nightly";
|
||||||
|
inherit
|
||||||
|
version
|
||||||
|
branch
|
||||||
|
compat-list
|
||||||
|
;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "CaptainJawZ";
|
owner = "CaptainJawZ";
|
||||||
repo = "Citra-Nightly";
|
repo = "Citra-Nightly";
|
||||||
rev = "nightly-${version}";
|
rev = "nightly-${version}";
|
||||||
sha256 = "0ggi1l8327s43xaxs616g0s9vmal6q7vsv69bn07gp71gchhcmyi";
|
sha256 = "0ggi1l8327s43xaxs616g0s9vmal6q7vsv69bn07gp71gchhcmyi";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
inherit branch compat-list;
|
}
|
||||||
};
|
);
|
||||||
}
|
}
|
||||||
.${branch}
|
.${branch}
|
||||||
|
|||||||
@ -37,7 +37,7 @@ assert lib.assertMsg (
|
|||||||
!enableFfmpegAudioDecoder || !enableFdk
|
!enableFfmpegAudioDecoder || !enableFdk
|
||||||
) "Can't enable both enableFfmpegAudioDecoder and enableFdk";
|
) "Can't enable both enableFfmpegAudioDecoder and enableFdk";
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation {
|
||||||
inherit pname version src;
|
inherit pname version src;
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|||||||
@ -58,120 +58,130 @@ let
|
|||||||
gameLibraryPath = libpath + ":${addOpenGLRunpath.driverLink}/lib";
|
gameLibraryPath = libpath + ":${addOpenGLRunpath.driverLink}/lib";
|
||||||
|
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation (
|
||||||
pname = "polymc" + (lib.optionalString ((lib.versions.major qt6.qtbase.version) == "5") "-qt5");
|
let
|
||||||
version = "6.1";
|
version = "6.1";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
pname = "polymc" + (lib.optionalString ((lib.versions.major qt6.qtbase.version) == "5") "-qt5");
|
||||||
|
inherit version;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "PolyMC";
|
owner = "PolyMC";
|
||||||
repo = "PolyMC";
|
repo = "PolyMC";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-AOy13zAWQ0CtsX9z1M+fxH7Sh/QSFy7EdQ/fD9yUYc8=";
|
sha256 = "sha256-AOy13zAWQ0CtsX9z1M+fxH7Sh/QSFy7EdQ/fD9yUYc8=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
dontWrapQtApps = true;
|
dontWrapQtApps = true;
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
cmake
|
cmake
|
||||||
extra-cmake-modules
|
extra-cmake-modules
|
||||||
ninja
|
ninja
|
||||||
jdk17
|
jdk17
|
||||||
qt6.wrapQtAppsHook
|
qt6.wrapQtAppsHook
|
||||||
file
|
file
|
||||||
ghc_filesystem
|
ghc_filesystem
|
||||||
];
|
];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
qt6.qtbase
|
qt6.qtbase
|
||||||
qt6.qtsvg
|
qt6.qtsvg
|
||||||
qt6.qtcharts
|
qt6.qtcharts
|
||||||
qt6.qtwayland
|
qt6.qtwayland
|
||||||
qt6Packages.quazip
|
qt6Packages.quazip
|
||||||
zlib
|
zlib
|
||||||
];
|
];
|
||||||
|
|
||||||
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
|
||||||
substituteInPlace launcher/java/JavaUtils.cpp \
|
substituteInPlace launcher/java/JavaUtils.cpp \
|
||||||
--replace 'scanJavaDir("/usr/lib/jvm")' 'javas.append("${jdk17}/lib/openjdk/bin/java")'
|
--replace 'scanJavaDir("/usr/lib/jvm")' 'javas.append("${jdk17}/lib/openjdk/bin/java")'
|
||||||
'';
|
|
||||||
|
|
||||||
postFixup = ''
|
|
||||||
# xorg.xrandr needed for LWJGL [2.9.2, 3) https://github.com/LWJGL/lwjgl/issues/128
|
|
||||||
wrapQtApp $out/bin/polymc \
|
|
||||||
--suffix LD_LIBRARY_PATH : "${gameLibraryPath}" \
|
|
||||||
--suffix PATH : "${binpath}" \
|
|
||||||
--set-default ALSOFT_DRIVERS "pulse"
|
|
||||||
'';
|
|
||||||
passthru = {
|
|
||||||
|
|
||||||
wrap =
|
|
||||||
{
|
|
||||||
extraJDKs ? [ ],
|
|
||||||
extraPaths ? [ ],
|
|
||||||
extraLibs ? [ ],
|
|
||||||
withWaylandGLFW ? false,
|
|
||||||
withMangohud ? true,
|
|
||||||
withGamemode ? true,
|
|
||||||
}:
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
pname = "${polymc.pname}-wrapped";
|
|
||||||
inherit (polymc) version;
|
|
||||||
libsPath =
|
|
||||||
(lib.makeLibraryPath (extraLibs ++ lib.optional withGamemode gamemode.lib))
|
|
||||||
+ lib.optionalString withMangohud "${mangohud + "/lib/mangohud"}";
|
|
||||||
binsPath = lib.makeBinPath (extraPaths ++ lib.optional withMangohud mangohud);
|
|
||||||
|
|
||||||
waylandPreExec = writeShellScript "waylandGLFW" ''
|
|
||||||
if [ -n "$WAYLAND_DISPLAY" ]; then
|
|
||||||
export LD_LIBRARY_PATH=${lib.getLib glfw-wayland-minecraft}/lib:"$LD_LIBRARY_PATH"
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
src = polymc;
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
|
||||||
phases = [
|
|
||||||
"installPhase"
|
|
||||||
"fixupPhase"
|
|
||||||
];
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/bin
|
|
||||||
ln -s $src/bin/polymc $out/bin/polymc
|
|
||||||
ln -s $src/share $out/share
|
|
||||||
'';
|
|
||||||
|
|
||||||
postFixup =
|
|
||||||
let
|
|
||||||
javaPaths = lib.makeSearchPath "bin/java" extraJDKs;
|
|
||||||
in
|
|
||||||
''
|
|
||||||
wrapProgram $out/bin/polymc \
|
|
||||||
--suffix LD_LIBRARY_PATH : "${libsPath}" \
|
|
||||||
--suffix POLYMC_JAVA_PATHS : "${javaPaths}" \
|
|
||||||
--suffix PATH : "${binsPath}" ${lib.optionalString withWaylandGLFW "--run ${waylandPreExec}"}
|
|
||||||
|
|
||||||
'';
|
|
||||||
|
|
||||||
preferLocalBuild = true;
|
|
||||||
inherit (polymc) meta;
|
|
||||||
|
|
||||||
};
|
|
||||||
};
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://polymc.org/";
|
|
||||||
downloadPage = "https://polymc.org/download/";
|
|
||||||
changelog = "https://github.com/PolyMC/PolyMC/releases";
|
|
||||||
description = "A free, open source launcher for Minecraft";
|
|
||||||
longDescription = ''
|
|
||||||
Allows you to have multiple, separate instances of Minecraft (each with
|
|
||||||
their own mods, texture packs, saves, etc) and helps you manage them and
|
|
||||||
their associated options with a simple interface.
|
|
||||||
'';
|
'';
|
||||||
platforms = [ "x86_64-linux" ];
|
|
||||||
license = licenses.gpl3Only;
|
postFixup = ''
|
||||||
};
|
# xorg.xrandr needed for LWJGL [2.9.2, 3) https://github.com/LWJGL/lwjgl/issues/128
|
||||||
};
|
wrapQtApp $out/bin/polymc \
|
||||||
|
--suffix LD_LIBRARY_PATH : "${gameLibraryPath}" \
|
||||||
|
--suffix PATH : "${binpath}" \
|
||||||
|
--set-default ALSOFT_DRIVERS "pulse"
|
||||||
|
'';
|
||||||
|
passthru = {
|
||||||
|
|
||||||
|
wrap =
|
||||||
|
{
|
||||||
|
extraJDKs ? [ ],
|
||||||
|
extraPaths ? [ ],
|
||||||
|
extraLibs ? [ ],
|
||||||
|
withWaylandGLFW ? false,
|
||||||
|
withMangohud ? true,
|
||||||
|
withGamemode ? true,
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation (
|
||||||
|
let
|
||||||
|
libsPath =
|
||||||
|
(lib.makeLibraryPath (extraLibs ++ lib.optional withGamemode gamemode.lib))
|
||||||
|
+ lib.optionalString withMangohud "${mangohud + "/lib/mangohud"}";
|
||||||
|
binsPath = lib.makeBinPath (extraPaths ++ lib.optional withMangohud mangohud);
|
||||||
|
waylandPreExec = writeShellScript "waylandGLFW" ''
|
||||||
|
if [ -n "$WAYLAND_DISPLAY" ]; then
|
||||||
|
export LD_LIBRARY_PATH=${lib.getLib glfw-wayland-minecraft}/lib:"$LD_LIBRARY_PATH"
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
in
|
||||||
|
{
|
||||||
|
pname = "${polymc.pname}-wrapped";
|
||||||
|
inherit (polymc) version;
|
||||||
|
inherit libsPath binsPath waylandPreExec;
|
||||||
|
|
||||||
|
src = polymc;
|
||||||
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
phases = [
|
||||||
|
"installPhase"
|
||||||
|
"fixupPhase"
|
||||||
|
];
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
ln -s $src/bin/polymc $out/bin/polymc
|
||||||
|
ln -s $src/share $out/share
|
||||||
|
'';
|
||||||
|
|
||||||
|
postFixup =
|
||||||
|
let
|
||||||
|
javaPaths = lib.makeSearchPath "bin/java" extraJDKs;
|
||||||
|
in
|
||||||
|
''
|
||||||
|
wrapProgram $out/bin/polymc \
|
||||||
|
--suffix LD_LIBRARY_PATH : "${libsPath}" \
|
||||||
|
--suffix POLYMC_JAVA_PATHS : "${javaPaths}" \
|
||||||
|
--suffix PATH : "${binsPath}" ${lib.optionalString withWaylandGLFW "--run ${waylandPreExec}"}
|
||||||
|
|
||||||
|
'';
|
||||||
|
|
||||||
|
preferLocalBuild = true;
|
||||||
|
inherit (polymc) meta;
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://polymc.org/";
|
||||||
|
downloadPage = "https://polymc.org/download/";
|
||||||
|
changelog = "https://github.com/PolyMC/PolyMC/releases";
|
||||||
|
description = "A free, open source launcher for Minecraft";
|
||||||
|
longDescription = ''
|
||||||
|
Allows you to have multiple, separate instances of Minecraft (each with
|
||||||
|
their own mods, texture packs, saves, etc) and helps you manage them and
|
||||||
|
their associated options with a simple interface.
|
||||||
|
'';
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
license = licenses.gpl3Only;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
);
|
||||||
in
|
in
|
||||||
polymc
|
polymc
|
||||||
|
|||||||
@ -16,58 +16,62 @@ let
|
|||||||
filepicker = callPackage ./filepicker.nix { };
|
filepicker = callPackage ./filepicker.nix { };
|
||||||
|
|
||||||
in
|
in
|
||||||
buildNpmPackage rec {
|
buildNpmPackage (
|
||||||
pname = "vdhcoapp";
|
let
|
||||||
version = "2.0.19";
|
version = "2.0.19";
|
||||||
|
pname = "vdhcoapp";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "aclap-dev";
|
||||||
|
repo = "${pname}";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-8xeZvqpRq71aShVogiwlVD3gQoPGseNOmz5E3KbsZxU=";
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
inherit pname version src;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
sourceRoot = "${src.name}/app";
|
||||||
owner = "aclap-dev";
|
npmDepsHash = "sha256-E032U2XZdyTER6ROkBosOTn7bweDXHl8voC3BQEz8Wg=";
|
||||||
repo = "vdhcoapp";
|
dontNpmBuild = true;
|
||||||
rev = "v${version}";
|
|
||||||
hash = "sha256-8xeZvqpRq71aShVogiwlVD3gQoPGseNOmz5E3KbsZxU=";
|
|
||||||
};
|
|
||||||
|
|
||||||
sourceRoot = "${src.name}/app";
|
nativeBuildInputs = [
|
||||||
npmDepsHash = "sha256-E032U2XZdyTER6ROkBosOTn7bweDXHl8voC3BQEz8Wg=";
|
toml2json
|
||||||
dontNpmBuild = true;
|
makeWrapper
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
patches = [
|
||||||
toml2json
|
(substituteAll {
|
||||||
makeWrapper
|
src = ./code.patch;
|
||||||
];
|
inherit ffmpeg;
|
||||||
|
filepicker = lib.getExe filepicker;
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
patches = [
|
postPatch = ''
|
||||||
(substituteAll {
|
# Cannot use patch, setting placeholder here
|
||||||
src = ./code.patch;
|
substituteInPlace src/native-autoinstall.js \
|
||||||
inherit ffmpeg;
|
--replace process.execPath "\"${placeholder "out"}/bin/vdhcoapp\""
|
||||||
filepicker = lib.getExe filepicker;
|
'';
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = ''
|
preBuild = ''
|
||||||
# Cannot use patch, setting placeholder here
|
toml2json --pretty ../config.toml > src/config.json
|
||||||
substituteInPlace src/native-autoinstall.js \
|
'';
|
||||||
--replace process.execPath "\"${placeholder "out"}/bin/vdhcoapp\""
|
|
||||||
'';
|
|
||||||
|
|
||||||
preBuild = ''
|
installPhase = ''
|
||||||
toml2json --pretty ../config.toml > src/config.json
|
mkdir -p $out/opt/vdhcoapp
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
cp -r . "$out/opt/vdhcoapp"
|
||||||
mkdir -p $out/opt/vdhcoapp
|
|
||||||
|
|
||||||
cp -r . "$out/opt/vdhcoapp"
|
makeWrapper ${nodejs}/bin/node $out/bin/vdhcoapp \
|
||||||
|
--add-flags $out/opt/vdhcoapp/src/main.js
|
||||||
|
'';
|
||||||
|
|
||||||
makeWrapper ${nodejs}/bin/node $out/bin/vdhcoapp \
|
meta = with lib; {
|
||||||
--add-flags $out/opt/vdhcoapp/src/main.js
|
description = "Companion application for the Video DownloadHelper browser add-on";
|
||||||
'';
|
homepage = "https://www.downloadhelper.net/";
|
||||||
|
license = licenses.gpl2;
|
||||||
meta = with lib; {
|
maintainers = with maintainers; [ wolfangaukang ];
|
||||||
description = "Companion application for the Video DownloadHelper browser add-on";
|
mainProgram = "vdhcoapp";
|
||||||
homepage = "https://www.downloadhelper.net/";
|
};
|
||||||
license = licenses.gpl2;
|
}
|
||||||
maintainers = with maintainers; [ wolfangaukang ];
|
)
|
||||||
mainProgram = "vdhcoapp";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|||||||
@ -8,32 +8,37 @@
|
|||||||
glib,
|
glib,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage (
|
||||||
pname = "filepicker";
|
let
|
||||||
version = "1.0.1";
|
version = "1.0.1";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
pname = "filepicker";
|
||||||
|
inherit version;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "paulrouget";
|
owner = "paulrouget";
|
||||||
repo = "static-filepicker";
|
repo = "static-filepicker";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-7sRzf3SA9RSBf4O36olXgka8c6Bufdb0qsuTofVe55s=";
|
hash = "sha256-7sRzf3SA9RSBf4O36olXgka8c6Bufdb0qsuTofVe55s=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-aal7ppFkCpNc+QTS4Qklsb9WfJ65QqG6p1eOskiX+/Q=";
|
cargoHash = "sha256-aal7ppFkCpNc+QTS4Qklsb9WfJ65QqG6p1eOskiX+/Q=";
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
atk
|
atk
|
||||||
gtk3
|
gtk3
|
||||||
glib
|
glib
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "File picker used by VDHCoApp";
|
description = "File picker used by VDHCoApp";
|
||||||
homepage = "https://github.com/paulrouget/static-filepicker";
|
homepage = "https://github.com/paulrouget/static-filepicker";
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2;
|
||||||
mainProgram = "filepicker";
|
mainProgram = "filepicker";
|
||||||
maintainers = with maintainers; [ hannesgith ];
|
maintainers = with maintainers; [ hannesgith ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user