NixOS/hosts/flakes/tazuo/flake.nix

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 ];
};
};
}