My Nix Configuration
1{ pkgs }: 2let 3 olympus = pkgs.stdenv.mkDerivation rec { 4 pname = "olympus"; 5 version = "4238"; 6 7 # https://everestapi.github.io/ 8 src = pkgs.fetchzip { 9 url = "https://dev.azure.com/EverestAPI/Olympus/_apis/build/builds/${version}/artifacts?artifactName=linux.main&$format=zip#linux.main.zip"; 10 hash = "sha256-KWDr4KsF23iDWA9h/r+cnpDIKKwCVVOfuh6sjvXSnII="; 11 }; 12 13 buildInputs = [ pkgs.unzip ]; 14 installPhase = '' 15 mkdir -p "$out/opt/olympus/" 16 mv dist.zip "$out/opt/olympus/" && cd "$out/opt/olympus/" 17 18 unzip dist.zip && rm dist.zip 19 mkdir $out && echo XDG_DATA_HOME=$out 20 21 echo y | XDG_DATA_HOME="$out/share/" bash install.sh 22 sed -i "/ldconfig/d" ./love 23 sed -i "s/Exec=.*/Exec=olympus %u/g" ../../share/applications/Olympus.desktop 24 ''; 25 }; 26in 27pkgs.buildFHSEnv { 28 name = "olympus"; 29 runScript = "${olympus}/opt/olympus/olympus"; 30 targetPkgs = pkgs: [ 31 pkgs.freetype 32 pkgs.zlib 33 pkgs.SDL2 34 pkgs.curl 35 pkgs.libpulseaudio 36 pkgs.gtk3 37 pkgs.glib 38 pkgs.libGL 39 pkgs.libdrm 40 ]; 41 42 # https://github.com/EverestAPI/Olympus/blob/main/lib-linux/olympus.desktop 43 # https://stackoverflow.com/questions/8822097/how-to-replace-a-whole-line-with-sed 44 extraInstallCommands = ''cp -r "${olympus}/share/" $out''; 45}