aboutsummaryrefslogtreecommitdiff
path: root/nix
diff options
context:
space:
mode:
authorSefa Eyeoglu <contact@scrumplex.net>2023-09-20 07:47:22 +0200
committerGitHub <noreply@github.com>2023-09-20 07:47:22 +0200
commit98bc102f5bec14b38c684c219989fc3953dc2f49 (patch)
tree832e6425caf7d7130d436cbc22f51a130ba59f3a /nix
parentd72c3aba80f1828bac3021d37d195c337ddc907f (diff)
parent97da8892b9fcb285f7023a671090b4a3becdf2d8 (diff)
downloadPrismLauncher-98bc102f5bec14b38c684c219989fc3953dc2f49.tar.gz
PrismLauncher-98bc102f5bec14b38c684c219989fc3953dc2f49.tar.bz2
PrismLauncher-98bc102f5bec14b38c684c219989fc3953dc2f49.zip
Merge pull request #1618 from getchoo/cool-nix-stuff
filter source in flake & add controller support
Diffstat (limited to 'nix')
-rw-r--r--nix/distribution.nix29
-rw-r--r--nix/pkg/default.nix1
-rw-r--r--nix/pkg/wrapper.nix3
3 files changed, 29 insertions, 4 deletions
diff --git a/nix/distribution.nix b/nix/distribution.nix
index 6b93d355..ca9999dc 100644
--- a/nix/distribution.nix
+++ b/nix/distribution.nix
@@ -9,7 +9,7 @@
...
}: {
packages = let
- ourPackages = lib.fix (final: self.overlays.default ({inherit (pkgs) darwin;} // final) pkgs);
+ ourPackages = lib.fix (final: self.overlays.default final pkgs);
in {
inherit
(ourPackages)
@@ -26,19 +26,40 @@
overlays.default = final: prev: let
version = builtins.substring 0 8 self.lastModifiedDate or "dirty";
+ filteredSelf = inputs.nix-filter.lib.filter {
+ root = ../.;
+ include = [
+ "buildconfig"
+ "cmake"
+ "launcher"
+ "libraries"
+ "program_info"
+ "tests"
+ ../COPYING.md
+ ../CMakeLists.txt
+ ];
+ };
+
# common args for prismlauncher evaluations
unwrappedArgs = {
+ self = filteredSelf;
+
inherit (inputs) libnbtplusplus;
- inherit (final.darwin.apple_sdk.frameworks) Cocoa;
- inherit self version;
+ inherit ((final.darwin or prev.darwin).apple_sdk.frameworks) Cocoa;
+ inherit version;
};
in {
prismlauncher-qt5-unwrapped = prev.libsForQt5.callPackage ./pkg unwrappedArgs;
+
prismlauncher-qt5 = prev.libsForQt5.callPackage ./pkg/wrapper.nix {
prismlauncher-unwrapped = final.prismlauncher-qt5-unwrapped;
};
+
prismlauncher-unwrapped = prev.qt6Packages.callPackage ./pkg unwrappedArgs;
- prismlauncher = prev.qt6Packages.callPackage ./pkg/wrapper.nix {inherit (final) prismlauncher-unwrapped;};
+
+ prismlauncher = prev.qt6Packages.callPackage ./pkg/wrapper.nix {
+ inherit (final) prismlauncher-unwrapped;
+ };
};
};
}
diff --git a/nix/pkg/default.nix b/nix/pkg/default.nix
index 074214c4..fd19a0b3 100644
--- a/nix/pkg/default.nix
+++ b/nix/pkg/default.nix
@@ -58,6 +58,7 @@ assert lib.assertMsg (stdenv.isLinux || !gamemodeSupport) "gamemodeSupport is on
dontWrapQtApps = true;
meta = with lib; {
+ mainProgram = "prismlauncher";
homepage = "https://prismlauncher.org/";
description = "A free, open source launcher for Minecraft";
longDescription = ''
diff --git a/nix/pkg/wrapper.nix b/nix/pkg/wrapper.nix
index 8d160143..8bc255e7 100644
--- a/nix/pkg/wrapper.nix
+++ b/nix/pkg/wrapper.nix
@@ -18,9 +18,11 @@
flite,
mesa-demos,
udev,
+ libusb1,
msaClientID ? null,
gamemodeSupport ? stdenv.isLinux,
textToSpeechSupport ? stdenv.isLinux,
+ controllerSupport ? stdenv.isLinux,
jdks ? [jdk17 jdk8],
additionalLibs ? [],
additionalPrograms ? [],
@@ -71,6 +73,7 @@ in
]
++ lib.optional gamemodeSupport gamemode.lib
++ lib.optional textToSpeechSupport flite
+ ++ lib.optional controllerSupport libusb1
++ additionalLibs;
runtimePrograms =