stuff
This commit is contained in:
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
|
||||
src = fetchFromGitHub {
|
||||
owner = "ARM-software";
|
||||
repo = "arm-trusted-firmware";
|
||||
tag = "v${version}";
|
||||
rev = "${version}";
|
||||
hash = versions.fw.hash;
|
||||
};
|
||||
|
||||
|
||||
@@ -1,183 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchzip,
|
||||
autoPatchelfHook,
|
||||
makeWrapper,
|
||||
# Core dependencies
|
||||
alsa-lib,
|
||||
at-spi2-core,
|
||||
cairo,
|
||||
cups,
|
||||
dbus,
|
||||
expat,
|
||||
fontconfig,
|
||||
freetype,
|
||||
gdk-pixbuf,
|
||||
glib,
|
||||
gtk3,
|
||||
libarchive,
|
||||
libdrm,
|
||||
libGL,
|
||||
libx11,
|
||||
libxcb,
|
||||
libxext,
|
||||
libxkbcommon,
|
||||
mesa,
|
||||
nspr,
|
||||
nss,
|
||||
pango,
|
||||
systemd,
|
||||
xorg,
|
||||
zlib,
|
||||
# Additional CEF/Chromium dependencies
|
||||
libnotify,
|
||||
libpulseaudio,
|
||||
libuuid,
|
||||
libva,
|
||||
pipewire,
|
||||
udev,
|
||||
wayland,
|
||||
jdk17 # for RuneLite/HDOS
|
||||
, # for RS3
|
||||
}:
|
||||
let
|
||||
inherit (lib.trivial) importJSON;
|
||||
versions = importJSON ./versions.json;
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "bolt-launcher";
|
||||
version = versions.bolt.version;
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://codeberg.org/Adamcake/Bolt/releases/download/${version}/Bolt-Linux.zip";
|
||||
sha256 = versions.bolt.hash;
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoPatchelfHook
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
alsa-lib
|
||||
at-spi2-core
|
||||
cairo
|
||||
cups
|
||||
dbus
|
||||
expat
|
||||
fontconfig
|
||||
freetype
|
||||
gdk-pixbuf
|
||||
glib
|
||||
gtk3
|
||||
libarchive
|
||||
libdrm
|
||||
libGL
|
||||
libx11
|
||||
libxcb
|
||||
libxext
|
||||
libxkbcommon
|
||||
mesa
|
||||
nspr
|
||||
nss
|
||||
pango
|
||||
stdenv.cc.cc.lib # for libstdc++.so.6
|
||||
systemd
|
||||
zlib
|
||||
# Additional CEF/Chromium deps
|
||||
libnotify
|
||||
libpulseaudio
|
||||
libuuid
|
||||
libva
|
||||
pipewire
|
||||
udev
|
||||
wayland
|
||||
]
|
||||
++ (with xorg; [
|
||||
libXcomposite
|
||||
libXcursor
|
||||
libXdamage
|
||||
libXfixes
|
||||
libXi
|
||||
libXinerama
|
||||
libXrandr
|
||||
libXrender
|
||||
libXScrnSaver
|
||||
libxshmfence
|
||||
libXtst
|
||||
libXxf86vm
|
||||
]);
|
||||
|
||||
dontConfigure = true;
|
||||
dontBuild = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
# Create directory structure
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/lib/bolt-launcher
|
||||
mkdir -p $out/share/applications
|
||||
mkdir -p $out/share/icons
|
||||
|
||||
# Copy all files to lib directory
|
||||
cp -r ./bolt-launcher/* $out/lib/bolt-launcher/
|
||||
|
||||
# The main executable is 'bolt' (lowercase)
|
||||
chmod +x $out/lib/bolt-launcher/bolt
|
||||
|
||||
# Also make chrome-sandbox executable (needed for CEF)
|
||||
if [ -f $out/lib/bolt-launcher/chrome-sandbox ]; then
|
||||
chmod +x $out/lib/bolt-launcher/chrome-sandbox
|
||||
fi
|
||||
|
||||
# Create wrapper script with proper library paths
|
||||
makeWrapper $out/lib/bolt-launcher/bolt $out/bin/bolt-launcher \
|
||||
--prefix LD_LIBRARY_PATH : "$out/lib/bolt-launcher:${lib.makeLibraryPath buildInputs}" \
|
||||
--set BOLT_SKIP_UPDATE "1" \
|
||||
--chdir "$out/lib/bolt-launcher" \
|
||||
${lib.optionalString (jdk17 != null) "--prefix PATH : ${jdk17}/bin"}
|
||||
|
||||
# Create a simple desktop file if none exists
|
||||
cat > $out/share/applications/bolt-launcher.desktop << EOF
|
||||
[Desktop Entry]
|
||||
Name=Bolt Launcher
|
||||
Comment=Free open-source third-party implementation of the Jagex Launcher
|
||||
Exec=$out/bin/bolt-launcher
|
||||
Icon=bolt-launcher
|
||||
Type=Application
|
||||
Categories=Game;
|
||||
EOF
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
# Additional runtime fixes
|
||||
postFixup = ''
|
||||
# The CEF libraries are in the same directory as the main executable
|
||||
# Make sure they can find each other
|
||||
patchelf --set-rpath "$out/lib/bolt-launcher:${lib.makeLibraryPath buildInputs}" \
|
||||
$out/lib/bolt-launcher/bolt || true
|
||||
|
||||
# Patch the CEF libraries
|
||||
for lib in $out/lib/bolt-launcher/*.so*; do
|
||||
if [ -f "$lib" ]; then
|
||||
patchelf --set-rpath "$out/lib/bolt-launcher:${lib.makeLibraryPath buildInputs}" "$lib" || true
|
||||
fi
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Free open-source third-party implementation of the Jagex Launcher";
|
||||
homepage = "https://bolt.adamcake.com/";
|
||||
license = licenses.agpl3Only;
|
||||
platforms = [
|
||||
"x86_64-linux"
|
||||
"aarch64-linux"
|
||||
];
|
||||
maintainers = with maintainers; [ ];
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
};
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
{
|
||||
"bolt": {
|
||||
"hash": "sha256-s0hC822fXuYiHPRE3xcLNOsZs43xhLJ+vM1cuMc9zZQ=",
|
||||
"location": "codeberg",
|
||||
"owner": "Adamcake",
|
||||
"repo": "Bolt",
|
||||
"tag": "0.20.6"
|
||||
}
|
||||
}
|
||||
@@ -29,8 +29,10 @@ let
|
||||
owner = versions."edk2${repoOwner}".owner;
|
||||
repo = "edk2";
|
||||
name = repo;
|
||||
rev = versions."edk2${repoOwner}".rev;
|
||||
rev = (if MODEL == "5" then versions."edk2${repoOwner}".rev else null);
|
||||
tag = (if MODEL == "5" then null else versions."edk2${repoOwner}".tag);
|
||||
hash = versions."edk2${repoOwner}".hash;
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
edk2NonOsiSrc = fetchFromGitHub rec {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"edk2": {
|
||||
"hash": "sha256-CS/jWY6B+/PIKDh6cL6n9pwAPhPcjZBZc75SnOJbHf8=",
|
||||
"hash": "sha256-R/rgz8dWcDYVoiM67K2UGuq0xXbjjJYBPtJ1FmfGIaU=",
|
||||
"location": "github",
|
||||
"owner": "tianocore",
|
||||
"repo": "edk2",
|
||||
|
||||
Reference in New Issue
Block a user