mirror of
https://github.com/LCE-Hub/LCE-Emerald-Launcher.git
synced 2026-09-23 08:32:51 +00:00
Feat: Adding Gentoo Ebuild (#148)
Co-authored-by: /home/neo <[email protected]>
This commit is contained in:
+5
-1
@@ -32,4 +32,8 @@ codesign --force --deep --sign - "/path/to/Emerald\ Legacy\ Launcher.app"
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
pnpm flatpak # or npm
|
pnpm flatpak # or npm
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Gentoo
|
||||||
|
|
||||||
|
A Portage overlay lives in [`gentoo/`](gentoo/). See the GNU/Linux installation section in [README.md](README.md).
|
||||||
|
|||||||
@@ -135,6 +135,18 @@ nix profile install github:LCE-Hub/LCE-Emerald-Launcher
|
|||||||
|
|
||||||
On NixOS, add the flake as an input and install `packages.<system>.default` (or `emerald-legacy-launcher`) from it.
|
On NixOS, add the flake as an input and install `packages.<system>.default` (or `emerald-legacy-launcher`) from it.
|
||||||
|
|
||||||
|
**Gentoo:**
|
||||||
|
This repository includes a local Portage overlay under [`gentoo/`](gentoo/). Point `repos.conf` at that directory, then emerge the package (build fetches Cargo/npm deps over the network; Wine/Proton is needed at runtime to launch games):
|
||||||
|
```bash
|
||||||
|
# /etc/portage/repos.conf/emerald-legacy-launcher.conf
|
||||||
|
[emerald-legacy-launcher]
|
||||||
|
location = /path/to/LCE-Emerald-Launcher/gentoo
|
||||||
|
auto-sync = no
|
||||||
|
|
||||||
|
sudo emerge games-util/emerald-legacy-launcher # 1.5.1
|
||||||
|
# sudo emerge =games-util/emerald-legacy-launcher-9999 # live git
|
||||||
|
```
|
||||||
|
|
||||||
**Flatpak Installation:**
|
**Flatpak Installation:**
|
||||||
```bash
|
```bash
|
||||||
flatpak install emerald.flatpak
|
flatpak install emerald.flatpak
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
DIST emerald-legacy-launcher-1.5.1.tar.gz 18500442 BLAKE2B 365d9dd36ee6fddb90625719b599c8fc492eba4ce0fb8926c953f2a7d7f4987bf77d91de6a140a489534ba61e8a71bf9e65d8e015a35af31bccb84ca3a023178 SHA512 c713ef81e56d55d7135fa4228f875822a3eee38ace86d8d28a59a8b4afeff28844bf698e9902eb66075b425a0fb71ae72969ae1fe99ce185a005b5f42a4dccc8
|
||||||
@@ -0,0 +1,79 @@
|
|||||||
|
# Copyright 2026 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
inherit desktop xdg
|
||||||
|
|
||||||
|
DESCRIPTION="FOSS cross-platform launcher for Minecraft Legacy Console Edition"
|
||||||
|
HOMEPAGE="https://github.com/LCE-Hub/LCE-Emerald-Launcher"
|
||||||
|
SRC_URI="https://github.com/LCE-Hub/LCE-Emerald-Launcher/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
S="${WORKDIR}/LCE-Emerald-Launcher-${PV}"
|
||||||
|
|
||||||
|
LICENSE="GPL-3"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64"
|
||||||
|
|
||||||
|
# Cargo crates and npm packages are fetched at build time.
|
||||||
|
RESTRICT="network-sandbox"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
dev-libs/glib:2
|
||||||
|
dev-libs/libayatana-appindicator
|
||||||
|
dev-libs/openssl:=
|
||||||
|
net-libs/libsoup:3.0
|
||||||
|
net-libs/webkit-gtk:4.1
|
||||||
|
x11-libs/cairo
|
||||||
|
x11-libs/gdk-pixbuf:2
|
||||||
|
x11-libs/gtk+:3
|
||||||
|
x11-libs/pango
|
||||||
|
"
|
||||||
|
DEPEND="${RDEPEND}"
|
||||||
|
BDEPEND="
|
||||||
|
|| (
|
||||||
|
>=dev-lang/rust-1.77.0:*
|
||||||
|
>=dev-lang/rust-bin-1.77.0:*
|
||||||
|
)
|
||||||
|
net-libs/nodejs[npm]
|
||||||
|
virtual/pkgconfig
|
||||||
|
"
|
||||||
|
|
||||||
|
# Rust binaries ignore *FLAGS from make.conf.
|
||||||
|
QA_FLAGS_IGNORED="usr/bin/emerald-legacy-launcher"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# Disable updater artifact signing (no Tauri signing key in distro builds).
|
||||||
|
sed -i \
|
||||||
|
-e 's/"createUpdaterArtifacts": true/"createUpdaterArtifacts": false/' \
|
||||||
|
src-tauri/tauri.conf.json || die
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
local -x CI=true
|
||||||
|
local -x npm_config_audit=false
|
||||||
|
local -x npm_config_fund=false
|
||||||
|
local -x npm_config_update_notifier=false
|
||||||
|
|
||||||
|
npm install || die "npm install failed"
|
||||||
|
npm run tauri -- build --no-bundle || die "tauri build failed"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
dobin src-tauri/target/release/emerald-legacy-launcher
|
||||||
|
|
||||||
|
newicon -s 32 src-tauri/icons/32x32.png emerald-legacy-launcher.png
|
||||||
|
newicon -s 64 src-tauri/icons/64x64.png emerald-legacy-launcher.png
|
||||||
|
newicon -s 128 src-tauri/icons/128x128.png emerald-legacy-launcher.png
|
||||||
|
newicon -s 256 src-tauri/icons/[email protected] emerald-legacy-launcher.png
|
||||||
|
newicon -s 512 src-tauri/icons/icon.png emerald-legacy-launcher.png
|
||||||
|
|
||||||
|
domenu "${FILESDIR}"/emerald-legacy-launcher.desktop
|
||||||
|
|
||||||
|
insinto /usr/share/metainfo
|
||||||
|
newins flatpak/io.github.Emerald_Legacy_Launcher.Emerald_Legacy_Launcher.metainfo.xml \
|
||||||
|
io.github.Emerald_Legacy_Launcher.Emerald_Legacy_Launcher.metainfo.xml
|
||||||
|
|
||||||
|
dodoc README.md LICENSE
|
||||||
|
}
|
||||||
@@ -0,0 +1,79 @@
|
|||||||
|
# Copyright 2026 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
inherit desktop git-r3 xdg
|
||||||
|
|
||||||
|
DESCRIPTION="FOSS cross-platform launcher for Minecraft Legacy Console Edition"
|
||||||
|
HOMEPAGE="https://github.com/LCE-Hub/LCE-Emerald-Launcher"
|
||||||
|
EGIT_REPO_URI="https://github.com/LCE-Hub/LCE-Emerald-Launcher.git"
|
||||||
|
|
||||||
|
LICENSE="GPL-3"
|
||||||
|
SLOT="0"
|
||||||
|
PROPERTIES="live"
|
||||||
|
|
||||||
|
# Cargo crates and npm packages are fetched at build time.
|
||||||
|
RESTRICT="network-sandbox"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
dev-libs/glib:2
|
||||||
|
dev-libs/libayatana-appindicator
|
||||||
|
dev-libs/openssl:=
|
||||||
|
net-libs/libsoup:3.0
|
||||||
|
net-libs/webkit-gtk:4.1
|
||||||
|
x11-libs/cairo
|
||||||
|
x11-libs/gdk-pixbuf:2
|
||||||
|
x11-libs/gtk+:3
|
||||||
|
x11-libs/pango
|
||||||
|
"
|
||||||
|
DEPEND="${RDEPEND}"
|
||||||
|
BDEPEND="
|
||||||
|
|| (
|
||||||
|
>=dev-lang/rust-1.77.0:*
|
||||||
|
>=dev-lang/rust-bin-1.77.0:*
|
||||||
|
)
|
||||||
|
net-libs/nodejs[npm]
|
||||||
|
virtual/pkgconfig
|
||||||
|
"
|
||||||
|
|
||||||
|
# Rust binaries ignore *FLAGS from make.conf.
|
||||||
|
QA_FLAGS_IGNORED="usr/bin/emerald-legacy-launcher"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
# Prefer npm for the frontend build; disable updater artifact signing
|
||||||
|
# (no Tauri signing key in distro builds).
|
||||||
|
sed -i \
|
||||||
|
-e 's/"createUpdaterArtifacts": true/"createUpdaterArtifacts": false/' \
|
||||||
|
src-tauri/tauri.conf.json || die
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
local -x CI=true
|
||||||
|
local -x npm_config_audit=false
|
||||||
|
local -x npm_config_fund=false
|
||||||
|
local -x npm_config_update_notifier=false
|
||||||
|
|
||||||
|
npm install || die "npm install failed"
|
||||||
|
npm run tauri -- build --no-bundle || die "tauri build failed"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
dobin src-tauri/target/release/emerald-legacy-launcher
|
||||||
|
|
||||||
|
newicon -s 32 src-tauri/icons/32x32.png emerald-legacy-launcher.png
|
||||||
|
newicon -s 64 src-tauri/icons/64x64.png emerald-legacy-launcher.png
|
||||||
|
newicon -s 128 src-tauri/icons/128x128.png emerald-legacy-launcher.png
|
||||||
|
newicon -s 256 src-tauri/icons/[email protected] emerald-legacy-launcher.png
|
||||||
|
newicon -s 512 src-tauri/icons/icon.png emerald-legacy-launcher.png
|
||||||
|
|
||||||
|
domenu "${FILESDIR}"/emerald-legacy-launcher.desktop
|
||||||
|
|
||||||
|
insinto /usr/share/metainfo
|
||||||
|
newins flatpak/io.github.Emerald_Legacy_Launcher.Emerald_Legacy_Launcher.metainfo.xml \
|
||||||
|
io.github.Emerald_Legacy_Launcher.Emerald_Legacy_Launcher.metainfo.xml
|
||||||
|
|
||||||
|
dodoc README.md LICENSE
|
||||||
|
}
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=LCE Emerald Launcher
|
||||||
|
Comment=FOSS cross-platform launcher for Minecraft Legacy Console Edition
|
||||||
|
Exec=emerald-legacy-launcher %u
|
||||||
|
Icon=emerald-legacy-launcher
|
||||||
|
Type=Application
|
||||||
|
Categories=Game;
|
||||||
|
MimeType=x-scheme-handler/emerald;x-scheme-handler/emeraldlauncher;x-scheme-handler/discord-1482504445152460871;
|
||||||
|
StartupNotify=true
|
||||||
|
StartupWMClass=emerald-legacy-launcher
|
||||||
|
Terminal=false
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
<pkgmetadata>
|
||||||
|
<upstream>
|
||||||
|
<remote-id type="github">LCE-Hub/LCE-Emerald-Launcher</remote-id>
|
||||||
|
<bugs-to>https://github.com/LCE-Hub/LCE-Emerald-Launcher/issues</bugs-to>
|
||||||
|
</upstream>
|
||||||
|
<longdescription lang="en">
|
||||||
|
LCE Emerald Launcher is a FOSS cross-platform Tauri launcher for
|
||||||
|
Minecraft Legacy Console Edition. It installs community builds,
|
||||||
|
manages versions, skins, and workshop content, and launches the game
|
||||||
|
via Wine/Proton on Linux.
|
||||||
|
</longdescription>
|
||||||
|
</pkgmetadata>
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
masters = gentoo
|
||||||
|
thin-manifests = true
|
||||||
|
sign-manifests = false
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
emerald-legacy-launcher
|
||||||
Reference in New Issue
Block a user