From 8d4f8795de81c221e8f58f35b4155b62301b295d Mon Sep 17 00:00:00 2001 From: Mustafa Çalışkan Date: Sat, 8 Jan 2022 21:55:19 +0300 Subject: nix: update package and remove meta section since we are not on nixpkgs --- packages/nix/overlay.nix | 8 +- .../nix/polymc/0001-pick-latest-java-first.patch | 48 ----------- packages/nix/polymc/default.nix | 92 ++++++++++++++-------- 3 files changed, 63 insertions(+), 85 deletions(-) delete mode 100644 packages/nix/polymc/0001-pick-latest-java-first.patch (limited to 'packages') diff --git a/packages/nix/overlay.nix b/packages/nix/overlay.nix index 5a494459..c9e0e195 100644 --- a/packages/nix/overlay.nix +++ b/packages/nix/overlay.nix @@ -1,3 +1,5 @@ -self: super: rec { - polymc = super.libsForQt5.callPackage ./polymc {}; -} \ No newline at end of file +{ self }: + +final: prev: rec { + polymc = prev.libsForQt5.callPackage ./polymc { inherit self; }; +} diff --git a/packages/nix/polymc/0001-pick-latest-java-first.patch b/packages/nix/polymc/0001-pick-latest-java-first.patch deleted file mode 100644 index a65dcbfd..00000000 --- a/packages/nix/polymc/0001-pick-latest-java-first.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 44e1b2a19a869b907b40e56c85c8a47aa6c22097 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Mustafa=20=C3=87al=C4=B1=C5=9Fkan?= -Date: Tue, 22 Jun 2021 21:50:11 +0300 -Subject: [PATCH] pick latest java first - ---- - launcher/java/JavaInstallList.cpp | 4 ++-- - launcher/java/JavaUtils.cpp | 2 +- - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/launcher/java/JavaInstallList.cpp b/launcher/java/JavaInstallList.cpp -index 0bded03c..40898e20 100644 ---- a/launcher/java/JavaInstallList.cpp -+++ b/launcher/java/JavaInstallList.cpp -@@ -120,8 +120,8 @@ void JavaInstallList::updateListData(QList versions) - - bool sortJavas(BaseVersionPtr left, BaseVersionPtr right) - { -- auto rleft = std::dynamic_pointer_cast(left); -- auto rright = std::dynamic_pointer_cast(right); -+ auto rleft = std::dynamic_pointer_cast(right); -+ auto rright = std::dynamic_pointer_cast(left); - return (*rleft) > (*rright); - } - -diff --git a/launcher/java/JavaUtils.cpp b/launcher/java/JavaUtils.cpp -index 5f004a10..6d633631 100644 ---- a/launcher/java/JavaUtils.cpp -+++ b/launcher/java/JavaUtils.cpp -@@ -350,7 +350,6 @@ QList JavaUtils::FindJavaPaths() - qDebug() << "Linux Java detection incomplete - defaulting to \"java\""; - - QList javas; -- javas.append(this->GetDefaultJava()->path); - auto scanJavaDir = [&](const QString & dirPath) - { - QDir dir(dirPath); -@@ -379,6 +378,7 @@ QList JavaUtils::FindJavaPaths() - // general locations used by distro packaging - scanJavaDir("/usr/lib/jvm"); - scanJavaDir("/usr/lib32/jvm"); -+ javas.append(this->GetDefaultJava()->path); - // javas stored in MultiMC's folder - scanJavaDir("java"); - return javas; --- -2.31.1 - diff --git a/packages/nix/polymc/default.nix b/packages/nix/polymc/default.nix index 5f1a0f27..8b5c4812 100644 --- a/packages/nix/polymc/default.nix +++ b/packages/nix/polymc/default.nix @@ -1,49 +1,73 @@ -{ lib, mkDerivation, fetchFromGitHub, cmake, jdk8, jdk, zlib, file, makeWrapper, xorg, libpulseaudio, qtbase, libGL, msaClientID ? "" }: +{ lib +, mkDerivation +, fetchFromGitHub +, makeDesktopItem +, substituteAll +, fetchpatch +, cmake +, jdk8 +, jdk +, zlib +, file +, makeWrapper +, xorg +, libpulseaudio +, qtbase +, libGL +, self +, msaClientID ? "" +}: let - libpath = with xorg; lib.makeLibraryPath [ libX11 libXext libXcursor libXrandr libXxf86vm libpulseaudio libGL ]; -in + gameLibraryPath = with xorg; lib.makeLibraryPath [ + libX11 + libXext + libXcursor + libXrandr + libXxf86vm + libpulseaudio + libGL + ]; +in + mkDerivation rec { pname = "polymc"; - version = "1.0.4"; - src = fetchFromGitHub { - owner = "PolyMC"; - repo = "PolyMC"; - rev = "${version}"; - sha256 = "sha256-8aya0KfV9F+i2qBpweWcR9hwyTSQkqn2wHdtkCEeNvk="; - fetchSubmodules = true; - }; + version = "nightly"; + + src = lib.cleanSource self; + nativeBuildInputs = [ cmake file makeWrapper ]; buildInputs = [ qtbase jdk8 zlib ]; - patches = [ ./0001-pick-latest-java-first.patch ]; - postPatch = '' - # hardcode jdk paths - substituteInPlace launcher/java/JavaUtils.cpp \ - --replace 'scanJavaDir("/usr/lib/jvm")' 'javas.append("${jdk}/lib/openjdk/bin/java")' \ - --replace 'scanJavaDir("/usr/lib32/jvm")' 'javas.append("${jdk8}/lib/openjdk/bin/java")' + # add client ID + substituteInPlace notsecrets/Secrets.cpp \ + --replace 'QString MSAClientID = "";' 'QString MSAClientID = "${msaClientID}";' ''; - cmakeFlags = [ "-DLauncher_LAYOUT=lin-system" ]; + cmakeFlags = [ + "-DLauncher_LAYOUT=lin-system" + ]; + + desktopItem = makeDesktopItem { + name = "polymc"; + exec = "polymc"; + icon = "polymc"; + desktopName = "PolyMC"; + genericName = "Minecraft Launcher"; + comment = "A custom launcher for Minecraft"; + categories = "Game;"; + extraEntries = '' + Keywords=game;Minecraft; + ''; + }; postInstall = '' + install -Dm644 ../launcher/resources/multimc/scalable/launcher.svg $out/share/pixmaps/multimc.svg + install -Dm755 ${desktopItem}/share/applications/polymc.desktop -t $out/share/applications # xorg.xrandr needed for LWJGL [2.9.2, 3) https://github.com/LWJGL/lwjgl/issues/128 wrapProgram $out/bin/polymc \ - --set GAME_LIBRARY_PATH /run/opengl-driver/lib:${libpath} \ - --prefix PATH : ${lib.makeBinPath [ xorg.xrandr ]} - - substituteInPlace $out/share/applications/org.polymc.PolyMC.desktop --replace 'Exec=' 'Exec=${placeholder "out"}/bin/polymc' + --set GAME_LIBRARY_PATH /run/opengl-driver/lib:${gameLibraryPath} \ + --prefix PATH : ${lib.makeBinPath [ xorg.xrandr jdk ]} ''; - - meta = with lib; { - homepage = "https://github.com/PolyMC/PolyMC"; - 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 = platforms.linux; - license = licenses.gpl3; - maintainers = with maintainers; [ cidkid ]; - }; -} \ No newline at end of file +} -- cgit From d29d020d6f485852805b7f92d2dabd614d4da2e5 Mon Sep 17 00:00:00 2001 From: Mustafa Çalışkan Date: Sat, 8 Jan 2022 22:15:19 +0300 Subject: {nix,flake}: add submodules --- flake.lock | 36 +++++++++++++++++++++++++++++++++++- flake.nix | 26 ++++++++++++++++++++------ packages/nix/overlay.nix | 8 ++++++-- packages/nix/polymc/default.nix | 9 +++++++++ 4 files changed, 70 insertions(+), 9 deletions(-) (limited to 'packages') diff --git a/flake.lock b/flake.lock index cb93f3e0..131a9112 100644 --- a/flake.lock +++ b/flake.lock @@ -15,6 +15,22 @@ "type": "github" } }, + "libnbtplusplus": { + "flake": false, + "locked": { + "lastModified": 1591558203, + "narHash": "sha256-QgvNvaoFflCXEPCCFBCeZvYTpuiwScBG7EosUgFwFNQ=", + "owner": "multimc", + "repo": "libnbtplusplus", + "rev": "dc72a20b7efd304d12af2025223fad07b4b78464", + "type": "github" + }, + "original": { + "owner": "multimc", + "repo": "libnbtplusplus", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1641528457, @@ -31,10 +47,28 @@ "type": "github" } }, + "quazip": { + "flake": false, + "locked": { + "lastModified": 1633895098, + "narHash": "sha256-+Of0M2IAoTf1CyC0teCpsyurv6xfqiBo84V49dSeNTA=", + "owner": "multimc", + "repo": "quazip", + "rev": "b1a72ac0bb5a732bf887a535ab75c6f9bedb6b6b", + "type": "github" + }, + "original": { + "owner": "multimc", + "repo": "quazip", + "type": "github" + } + }, "root": { "inputs": { "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs" + "libnbtplusplus": "libnbtplusplus", + "nixpkgs": "nixpkgs", + "quazip": "quazip" } } }, diff --git a/flake.nix b/flake.nix index faa6600e..aa2c2cb5 100644 --- a/flake.nix +++ b/flake.nix @@ -2,8 +2,16 @@ description = "PolyMC flake"; inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; inputs.flake-utils.url = "github:numtide/flake-utils"; + inputs.libnbtplusplus = { + url = "github:multimc/libnbtplusplus"; + flake = false; + }; + inputs.quazip = { + url = "github:multimc/quazip"; + flake = false; + }; - outputs = inputs@{ self, nixpkgs, flake-utils,... }: + outputs = inputs@{ self, nixpkgs, flake-utils, libnbtplusplus, quazip, ... }: flake-utils.lib.eachSystem [ "x86_64-linux" "aarch64-linux" ] (system: let pkgs = import nixpkgs { @@ -11,9 +19,17 @@ }; packages = { - polymc = pkgs.libsForQt5.callPackage ./packages/nix/polymc { inherit self; }; + polymc = pkgs.libsForQt5.callPackage ./packages/nix/polymc { + inherit self; + submoduleQuazip = quazip; + submoduleNbt = libnbtplusplus; + }; + }; + + overlay = import ./packages/nix/overlay.nix { + inherit self quazip libnbtplusplus; }; - + apps = { polymc = flake-utils.lib.mkApp { name = "PolyMC"; @@ -22,11 +38,9 @@ }; in { - inherit packages apps; - + inherit packages overlay apps; defaultPackage = packages.polymc; defaultApp = apps.polymc; - overlay = import ./packages/nix/overlay.nix { inherit self; }; } ); } diff --git a/packages/nix/overlay.nix b/packages/nix/overlay.nix index c9e0e195..a65c23e0 100644 --- a/packages/nix/overlay.nix +++ b/packages/nix/overlay.nix @@ -1,5 +1,9 @@ -{ self }: +{ self, quazip, libnbtplusplus }: final: prev: rec { - polymc = prev.libsForQt5.callPackage ./polymc { inherit self; }; + polymc = prev.libsForQt5.callPackage ./polymc { + inherit self; + submoduleQuazip = quazip; + submoduleNbt = libnbtplusplus; + }; } diff --git a/packages/nix/polymc/default.nix b/packages/nix/polymc/default.nix index 8b5c4812..414835f5 100644 --- a/packages/nix/polymc/default.nix +++ b/packages/nix/polymc/default.nix @@ -14,7 +14,10 @@ , libpulseaudio , qtbase , libGL +# submodules , self +, submoduleNbt +, submoduleQuazip , msaClientID ? "" }: @@ -39,6 +42,12 @@ mkDerivation rec { nativeBuildInputs = [ cmake file makeWrapper ]; buildInputs = [ qtbase jdk8 zlib ]; + postUnpack = '' + mkdir libraries/{libnbtplusplus,quazip} + cp -a ${submoduleNbt}/* libraries/libnbtplusplus + cp -a ${submoduleQuazip}/* libraries/quazip + ''; + postPatch = '' # add client ID substituteInPlace notsecrets/Secrets.cpp \ -- cgit From 9611b92b07a6dfea6e3e249539336d330145739c Mon Sep 17 00:00:00 2001 From: Mustafa Çalışkan Date: Sat, 8 Jan 2022 22:31:13 +0300 Subject: nix: fix build --- packages/nix/polymc/default.nix | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) (limited to 'packages') diff --git a/packages/nix/polymc/default.nix b/packages/nix/polymc/default.nix index 414835f5..340c1ae5 100644 --- a/packages/nix/polymc/default.nix +++ b/packages/nix/polymc/default.nix @@ -18,7 +18,6 @@ , self , submoduleNbt , submoduleQuazip -, msaClientID ? "" }: let @@ -43,15 +42,10 @@ mkDerivation rec { buildInputs = [ qtbase jdk8 zlib ]; postUnpack = '' - mkdir libraries/{libnbtplusplus,quazip} - cp -a ${submoduleNbt}/* libraries/libnbtplusplus - cp -a ${submoduleQuazip}/* libraries/quazip - ''; - - postPatch = '' - # add client ID - substituteInPlace notsecrets/Secrets.cpp \ - --replace 'QString MSAClientID = "";' 'QString MSAClientID = "${msaClientID}";' + mkdir source/libraries/{libnbtplusplus,quazip} + cp -a ${submoduleNbt}/* source/libraries/libnbtplusplus + cp -a ${submoduleQuazip}/* source/libraries/quazip + chmod a+r+w source/libraries/{libnbtplusplus,quazip}/* ''; cmakeFlags = [ -- cgit From 6065b4dcf9c084dcea6b317ca3e186d14ad9f26e Mon Sep 17 00:00:00 2001 From: Mustafa Çalışkan Date: Sat, 8 Jan 2022 23:06:56 +0300 Subject: nix: revert overlay changes and add conditionals to derivation for flake build --- flake.nix | 5 ++--- packages/nix/overlay.nix | 8 +------- packages/nix/polymc/default.nix | 22 +++++++++++++++------- 3 files changed, 18 insertions(+), 17 deletions(-) (limited to 'packages') diff --git a/flake.nix b/flake.nix index aa2c2cb5..2ef65c64 100644 --- a/flake.nix +++ b/flake.nix @@ -21,14 +21,13 @@ packages = { polymc = pkgs.libsForQt5.callPackage ./packages/nix/polymc { inherit self; + isFlakeBuild = true; submoduleQuazip = quazip; submoduleNbt = libnbtplusplus; }; }; - overlay = import ./packages/nix/overlay.nix { - inherit self quazip libnbtplusplus; - }; + overlay = import ./packages/nix/overlay.nix {}; apps = { polymc = flake-utils.lib.mkApp { diff --git a/packages/nix/overlay.nix b/packages/nix/overlay.nix index a65c23e0..6fa701b3 100644 --- a/packages/nix/overlay.nix +++ b/packages/nix/overlay.nix @@ -1,9 +1,3 @@ -{ self, quazip, libnbtplusplus }: - final: prev: rec { - polymc = prev.libsForQt5.callPackage ./polymc { - inherit self; - submoduleQuazip = quazip; - submoduleNbt = libnbtplusplus; - }; + polymc = prev.libsForQt5.callPackage ./polymc {}; } diff --git a/packages/nix/polymc/default.nix b/packages/nix/polymc/default.nix index 340c1ae5..c55c8a3c 100644 --- a/packages/nix/polymc/default.nix +++ b/packages/nix/polymc/default.nix @@ -15,9 +15,10 @@ , qtbase , libGL # submodules -, self -, submoduleNbt -, submoduleQuazip +, isFlakeBuild ? false +, self ? "" +, submoduleNbt ? "" +, submoduleQuazip ? "" }: let @@ -34,19 +35,26 @@ in mkDerivation rec { pname = "polymc"; - version = "nightly"; + version = if isFlakeBuild then "nightly" else "1.0.4"; - src = lib.cleanSource self; + src = if isFlakeBuild then lib.cleanSource self + else fetchFromGitHub { + owner = "PolyMC"; + repo = "PolyMC"; + rev = "${version}"; + sha256 = "sha256-8aya0KfV9F+i2qBpweWcR9hwyTSQkqn2wHdtkCEeNvk="; + fetchSubmodules = true; + }; nativeBuildInputs = [ cmake file makeWrapper ]; buildInputs = [ qtbase jdk8 zlib ]; - postUnpack = '' + postUnpack = if isFlakeBuild then '' mkdir source/libraries/{libnbtplusplus,quazip} cp -a ${submoduleNbt}/* source/libraries/libnbtplusplus cp -a ${submoduleQuazip}/* source/libraries/quazip chmod a+r+w source/libraries/{libnbtplusplus,quazip}/* - ''; + '' else ""; cmakeFlags = [ "-DLauncher_LAYOUT=lin-system" -- cgit From 2a760a8e32627617dc80c96c9598ad3ed34ffbc8 Mon Sep 17 00:00:00 2001 From: Mustafa Çalışkan Date: Sat, 8 Jan 2022 23:09:53 +0300 Subject: Revert "nix: revert overlay changes and add conditionals to derivation for flake build" --- flake.nix | 5 +++-- packages/nix/overlay.nix | 8 +++++++- packages/nix/polymc/default.nix | 22 +++++++--------------- 3 files changed, 17 insertions(+), 18 deletions(-) (limited to 'packages') diff --git a/flake.nix b/flake.nix index 2ef65c64..aa2c2cb5 100644 --- a/flake.nix +++ b/flake.nix @@ -21,13 +21,14 @@ packages = { polymc = pkgs.libsForQt5.callPackage ./packages/nix/polymc { inherit self; - isFlakeBuild = true; submoduleQuazip = quazip; submoduleNbt = libnbtplusplus; }; }; - overlay = import ./packages/nix/overlay.nix {}; + overlay = import ./packages/nix/overlay.nix { + inherit self quazip libnbtplusplus; + }; apps = { polymc = flake-utils.lib.mkApp { diff --git a/packages/nix/overlay.nix b/packages/nix/overlay.nix index 6fa701b3..a65c23e0 100644 --- a/packages/nix/overlay.nix +++ b/packages/nix/overlay.nix @@ -1,3 +1,9 @@ +{ self, quazip, libnbtplusplus }: + final: prev: rec { - polymc = prev.libsForQt5.callPackage ./polymc {}; + polymc = prev.libsForQt5.callPackage ./polymc { + inherit self; + submoduleQuazip = quazip; + submoduleNbt = libnbtplusplus; + }; } diff --git a/packages/nix/polymc/default.nix b/packages/nix/polymc/default.nix index c55c8a3c..340c1ae5 100644 --- a/packages/nix/polymc/default.nix +++ b/packages/nix/polymc/default.nix @@ -15,10 +15,9 @@ , qtbase , libGL # submodules -, isFlakeBuild ? false -, self ? "" -, submoduleNbt ? "" -, submoduleQuazip ? "" +, self +, submoduleNbt +, submoduleQuazip }: let @@ -35,26 +34,19 @@ in mkDerivation rec { pname = "polymc"; - version = if isFlakeBuild then "nightly" else "1.0.4"; + version = "nightly"; - src = if isFlakeBuild then lib.cleanSource self - else fetchFromGitHub { - owner = "PolyMC"; - repo = "PolyMC"; - rev = "${version}"; - sha256 = "sha256-8aya0KfV9F+i2qBpweWcR9hwyTSQkqn2wHdtkCEeNvk="; - fetchSubmodules = true; - }; + src = lib.cleanSource self; nativeBuildInputs = [ cmake file makeWrapper ]; buildInputs = [ qtbase jdk8 zlib ]; - postUnpack = if isFlakeBuild then '' + postUnpack = '' mkdir source/libraries/{libnbtplusplus,quazip} cp -a ${submoduleNbt}/* source/libraries/libnbtplusplus cp -a ${submoduleQuazip}/* source/libraries/quazip chmod a+r+w source/libraries/{libnbtplusplus,quazip}/* - '' else ""; + ''; cmakeFlags = [ "-DLauncher_LAYOUT=lin-system" -- cgit From 9499acedabb77e9783fd78bd0c9a24112ce1c319 Mon Sep 17 00:00:00 2001 From: Mustafa Çalışkan Date: Sat, 8 Jan 2022 23:23:55 +0300 Subject: nix: fix overlay --- flake.nix | 6 +++--- packages/nix/overlay.nix | 9 --------- packages/nix/polymc/default.nix | 1 + 3 files changed, 4 insertions(+), 12 deletions(-) delete mode 100644 packages/nix/overlay.nix (limited to 'packages') diff --git a/flake.nix b/flake.nix index aa2c2cb5..b30008a4 100644 --- a/flake.nix +++ b/flake.nix @@ -26,9 +26,9 @@ }; }; - overlay = import ./packages/nix/overlay.nix { - inherit self quazip libnbtplusplus; - }; + overlay = (final: prev: rec { + polymc = packages.polymc; + }); apps = { polymc = flake-utils.lib.mkApp { diff --git a/packages/nix/overlay.nix b/packages/nix/overlay.nix deleted file mode 100644 index a65c23e0..00000000 --- a/packages/nix/overlay.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ self, quazip, libnbtplusplus }: - -final: prev: rec { - polymc = prev.libsForQt5.callPackage ./polymc { - inherit self; - submoduleQuazip = quazip; - submoduleNbt = libnbtplusplus; - }; -} diff --git a/packages/nix/polymc/default.nix b/packages/nix/polymc/default.nix index 340c1ae5..92097442 100644 --- a/packages/nix/polymc/default.nix +++ b/packages/nix/polymc/default.nix @@ -42,6 +42,7 @@ mkDerivation rec { buildInputs = [ qtbase jdk8 zlib ]; postUnpack = '' + rm -rf source/libraries/{libnbtplusplus,quazip} mkdir source/libraries/{libnbtplusplus,quazip} cp -a ${submoduleNbt}/* source/libraries/libnbtplusplus cp -a ${submoduleQuazip}/* source/libraries/quazip -- cgit From ae3c613f6cc2070fc4e191fd923fb7f9ed30c768 Mon Sep 17 00:00:00 2001 From: Mustafa Çalışkan Date: Sun, 9 Jan 2022 01:23:53 +0300 Subject: nix: use user package set on overlay and switch to ninja --- flake.nix | 6 +++++- packages/nix/polymc/default.nix | 4 +++- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/flake.nix b/flake.nix index b30008a4..d6885c3b 100644 --- a/flake.nix +++ b/flake.nix @@ -27,7 +27,11 @@ }; overlay = (final: prev: rec { - polymc = packages.polymc; + polymc = prev.libsForQt5.callPackage ./packages/nix/polymc { + inherit self; + submoduleQuazip = quazip; + submoduleNbt = libnbtplusplus; + }; }); apps = { diff --git a/packages/nix/polymc/default.nix b/packages/nix/polymc/default.nix index 92097442..4f80ff34 100644 --- a/packages/nix/polymc/default.nix +++ b/packages/nix/polymc/default.nix @@ -5,6 +5,7 @@ , substituteAll , fetchpatch , cmake +, ninja , jdk8 , jdk , zlib @@ -38,7 +39,7 @@ mkDerivation rec { src = lib.cleanSource self; - nativeBuildInputs = [ cmake file makeWrapper ]; + nativeBuildInputs = [ cmake ninja file makeWrapper ]; buildInputs = [ qtbase jdk8 zlib ]; postUnpack = '' @@ -50,6 +51,7 @@ mkDerivation rec { ''; cmakeFlags = [ + "-GNinja" "-DLauncher_LAYOUT=lin-system" ]; -- cgit From 2ca094bd5798fc3e7c039730b556068e2192a240 Mon Sep 17 00:00:00 2001 From: seth Date: Sat, 8 Jan 2022 22:44:18 -0500 Subject: add rpm build script and spec file --- packages/rpm/makerpm.sh | 9 ++++++++ packages/rpm/polymc.spec | 55 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) create mode 100755 packages/rpm/makerpm.sh create mode 100644 packages/rpm/polymc.spec (limited to 'packages') diff --git a/packages/rpm/makerpm.sh b/packages/rpm/makerpm.sh new file mode 100755 index 00000000..02ecf206 --- /dev/null +++ b/packages/rpm/makerpm.sh @@ -0,0 +1,9 @@ +#!/usr/bin/env bash + +git submodule init +git submodule update +VERSION=$(git describe --tags | sed 's/-.*//') +DIR=$(pwd) +sed -i "s/Version:.*/Version: ${VERSION}/" polymc.spec +sudo dnf builddep polymc.spec +rpmbuild -ba polymc.spec diff --git a/packages/rpm/polymc.spec b/packages/rpm/polymc.spec new file mode 100644 index 00000000..3c5ba435 --- /dev/null +++ b/packages/rpm/polymc.spec @@ -0,0 +1,55 @@ +%global _origdir %(pwd) + +Name: polymc +Version: +Release: 1%{?dist} +Summary: A custom launcher for Minecraft +License: GPLv3 +URL: https://polymc.org/ + +BuildArch: x86_64 +BuildRequires: java-devel +BuildRequires: pkgconfig(gl) +BuildRequires: pkgconfig(Qt5) +BuildRequires: pkgconfig(zlib) + +Requires: java-headless +Requires: pkgconfig(gl) +Requires: pkgconfig(Qt5) +Requires: pkgconfig(zlib) + +%description +A custom launcher for Minecraft that allows you to easily manage multiple installations of Minecraft at once + +%prep +mkdir -p %{_builddir}/%{name} +cp -r %{_origdir}/../../* %{_builddir}/%{name} + +%build +cd %{_builddir}/%{name} +cmake \ + -DLauncher_LAYOUT=lin-system \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DLauncher_LIBRARY_DEST_DIR=%{_lib} \ + . + +%cmake_build + +%install +cd %{_builddir}/%{name} +%cmake_install + +%files +%{_bindir}/polymc +%{_datadir}/applications/org.polymc.PolyMC.desktop +%{_datadir}/metainfo/org.polymc.PolyMC.metainfo.xml +%{_datadir}/polymc/jars/* +%{_datadir}/icons/hicolor/scalable/apps/org.polymc.PolyMC.svg +%{_libdir}/libLauncher_nbt++.so +%{_libdir}/libLauncher_quazip.so +%{_libdir}/libLauncher_rainbow.so +%{_libdir}/libLauncher_iconfix.so + +%changelog +* Fri Jan 7 2022 getchoo - 1.0.4 +- Initial polymc spec -- cgit