{ nixpak, pkgs, ... }: let dokaponGameDir = "/home/admin/Downloads/dokapon/game"; mkNixPak = nixpak.lib.nixpak { inherit (pkgs) lib; inherit pkgs; }; dokapon = mkNixPak { config = { sloth, ... }: { app.package = pkgs.writeShellScriptBin "dokapon" '' cd ${dokaponGameDir} exec ${pkgs.wine64}/bin/wine64 DkkStm.exe "$@" ''; flatpak.appId = "com.dokapon.kingdom"; bubblewrap = { network = true; bind.rw = [ (sloth.concat' sloth.xdgDataHome "/dokapon") (sloth.concat' sloth.homeDir "/.wine") "/tmp" "/run/user/1000" ]; bind.ro = [ (sloth.concat' dokaponGameDir "") ]; sockets = { wayland = true; pipewire = true; pulse = true; }; env = { WINEDEBUG = "-all"; WINEESYNC = "1"; XDG_DATA_HOME = sloth.concat' sloth.xdgDataHome ""; XDG_CACHE_HOME = sloth.concat' sloth.xdgCacheHome ""; }; }; dbus.policies = { "org.freedesktop.Notifications" = "talk"; }; gpu.enable = true; locale.enable = true; fonts.enable = true; }; }; in { environment.systemPackages = [ dokapon.config.env ]; }