60 lines
1.5 KiB
Nix
Executable file
60 lines
1.5 KiB
Nix
Executable file
{
|
|
description = "TazUO FHS Environment";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
};
|
|
|
|
outputs = { self, nixpkgs }:
|
|
let
|
|
system = "x86_64-linux";
|
|
pkgs = import nixpkgs { inherit system; };
|
|
|
|
tazuo-fhs = pkgs.buildFHSEnv {
|
|
name = "tazuo-fhs";
|
|
targetPkgs = pkgs: (with pkgs; [
|
|
libpulseaudio
|
|
alsa-lib
|
|
icu
|
|
openssl
|
|
zlib
|
|
fontconfig
|
|
freetype
|
|
libGL
|
|
sdl3
|
|
vulkan-loader
|
|
libX11
|
|
libXext
|
|
libXcursor
|
|
libXi
|
|
libXrandr
|
|
libICE
|
|
libSM
|
|
]);
|
|
runScript = "bash -c '/mnt/fileStorage/TazUOLauncher/TazUOLauncher'";
|
|
};
|
|
|
|
tazuo-desktop = pkgs.makeDesktopItem {
|
|
name = "TazUO";
|
|
exec = "${tazuo-fhs}/bin/tazuo-fhs";
|
|
icon = "tazuo-icon";
|
|
desktopName = "TazUO";
|
|
genericName = "Ultima Online Client";
|
|
categories = [ "Game" ];
|
|
};
|
|
tazuo-icon = pkgs.stdenv.mkDerivation {
|
|
name = "tazuo-icon";
|
|
src = ./.;
|
|
installPhase = ''
|
|
mkdir -p $out/share/icons/hicolor/256x256/apps
|
|
cp tazuo-icon.png $out/share/icons/hicolor/256x256/apps/tazuo-icon.png
|
|
'';
|
|
};
|
|
in
|
|
{
|
|
packages.${system}.default = pkgs.symlinkJoin {
|
|
name = "tazuo-package";
|
|
paths = [ tazuo-fhs tazuo-desktop tazuo-icon ];
|
|
};
|
|
};
|
|
}
|