Compare commits
15 Commits
install_fi
...
045fed0748
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
045fed0748 | ||
|
|
7fe153bfd3 | ||
|
|
52490457f0 | ||
|
|
e5e9bba2a5 | ||
|
|
7ef079afc0 | ||
|
|
a06fece8f1 | ||
|
|
51c7888347 | ||
|
|
7656c30a29 | ||
|
|
929401b359 | ||
|
|
16746d58d2 | ||
|
|
82a016ec68 | ||
|
|
eed2bd4f13 | ||
|
|
99f1b1a51b | ||
|
|
99bc8c6d79 | ||
|
|
0f2c595538 |
@@ -8,6 +8,7 @@
|
|||||||
lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
|
lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
|
||||||
bh = log --oneline --branches=* --remotes=* --graph --decorate
|
bh = log --oneline --branches=* --remotes=* --graph --decorate
|
||||||
amend = commit --amend --no-edit
|
amend = commit --amend --no-edit
|
||||||
|
authorcount = shortlog --summary --numbered --all --no-merges
|
||||||
[core]
|
[core]
|
||||||
excludesfile = ~/.gitignore_global
|
excludesfile = ~/.gitignore_global
|
||||||
[commit]
|
[commit]
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
|
lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
|
||||||
bh = log --oneline --branches=* --remotes=* --graph --decorate
|
bh = log --oneline --branches=* --remotes=* --graph --decorate
|
||||||
amend = commit --amend --no-edit
|
amend = commit --amend --no-edit
|
||||||
|
authorcount = shortlog --summary --numbered --all --no-merges
|
||||||
[core]
|
[core]
|
||||||
excludesfile = ~/.gitignore_global
|
excludesfile = ~/.gitignore_global
|
||||||
[commit]
|
[commit]
|
||||||
|
|||||||
@@ -52,6 +52,7 @@
|
|||||||
./roles/reset
|
./roles/reset
|
||||||
./roles/rpcs3
|
./roles/rpcs3
|
||||||
./roles/rust
|
./roles/rust
|
||||||
|
./roles/shadps4
|
||||||
./roles/shikane
|
./roles/shikane
|
||||||
./roles/shipwright
|
./roles/shipwright
|
||||||
./roles/sm64ex
|
./roles/sm64ex
|
||||||
@@ -140,7 +141,9 @@
|
|||||||
nix.gc = lib.mkIf (!config.me.buildingIso) {
|
nix.gc = lib.mkIf (!config.me.buildingIso) {
|
||||||
# Runs nix-collect-garbage --delete-older-than 5d
|
# Runs nix-collect-garbage --delete-older-than 5d
|
||||||
automatic = true;
|
automatic = true;
|
||||||
randomizedDelaySec = "14m";
|
persistent = true;
|
||||||
|
dates = "weekly";
|
||||||
|
# randomizedDelaySec = "14m";
|
||||||
options = "--delete-older-than 30d";
|
options = "--delete-older-than 30d";
|
||||||
};
|
};
|
||||||
nix.settings.auto-optimise-store = !config.me.buildingIso;
|
nix.settings.auto-optimise-store = !config.me.buildingIso;
|
||||||
@@ -169,7 +172,7 @@
|
|||||||
pciutils # for lspci
|
pciutils # for lspci
|
||||||
ripgrep
|
ripgrep
|
||||||
strace
|
strace
|
||||||
ltrace
|
# ltrace # Disabled because it uses more than 48GB of /tmp space during test phase.
|
||||||
trace-cmd # ftrace
|
trace-cmd # ftrace
|
||||||
tcpdump
|
tcpdump
|
||||||
git-crypt
|
git-crypt
|
||||||
|
|||||||
36
nix/configuration/flake.lock
generated
36
nix/configuration/flake.lock
generated
@@ -39,11 +39,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1746729224,
|
"lastModified": 1750903843,
|
||||||
"narHash": "sha256-9R4sOLAK1w3Bq54H3XOJogdc7a6C2bLLmatOQ+5pf5w=",
|
"narHash": "sha256-Ng9+f0H5/dW+mq/XOKvB9uwvGbsuiiO6HrPdAcVglCs=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "85555d27ded84604ad6657ecca255a03fd878607",
|
"rev": "83c4da299c1d7d300f8c6fd3a72ac46cb0d59aae",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -154,11 +154,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1746981801,
|
"lastModified": 1751549056,
|
||||||
"narHash": "sha256-+Bfr0KqZV6gZdA7e2kupeoawozaLIHLuiPtC54uxbFc=",
|
"narHash": "sha256-miKaJ4SFNxhZ/WVDADae2jNd9zka5bV9hKmXspAzvxo=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "ff915842e4a2e63c4c8c5c08c6870b9d5b3c3ee9",
|
"rev": "1fa73bb2cc39e250eb01e511ae6ac83bfbf9f38c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -210,11 +210,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1746663147,
|
"lastModified": 1751271578,
|
||||||
"narHash": "sha256-Ua0drDHawlzNqJnclTJGf87dBmaO/tn7iZ+TCkTRpRc=",
|
"narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "dda3dcd3fe03e991015e9a74b22d35950f264a54",
|
"rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -224,19 +224,19 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-b93b4e9b5": {
|
"nixpkgs-dda3dcd3f": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1713721570,
|
"lastModified": 1746663147,
|
||||||
"narHash": "sha256-R0s+O5UjTePQRb72XPgtkTmEiOOW8n+1q9Gxt/OJnKU=",
|
"narHash": "sha256-Ua0drDHawlzNqJnclTJGf87dBmaO/tn7iZ+TCkTRpRc=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b93b4e9b527904aadf52dba6ca35efde2067cbd4",
|
"rev": "dda3dcd3fe03e991015e9a74b22d35950f264a54",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b93b4e9b527904aadf52dba6ca35efde2067cbd4",
|
"rev": "dda3dcd3fe03e991015e9a74b22d35950f264a54",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -258,11 +258,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-unoptimized": {
|
"nixpkgs-unoptimized": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1746663147,
|
"lastModified": 1751271578,
|
||||||
"narHash": "sha256-Ua0drDHawlzNqJnclTJGf87dBmaO/tn7iZ+TCkTRpRc=",
|
"narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "dda3dcd3fe03e991015e9a74b22d35950f264a54",
|
"rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -307,7 +307,7 @@
|
|||||||
"impermanence": "impermanence",
|
"impermanence": "impermanence",
|
||||||
"lanzaboote": "lanzaboote",
|
"lanzaboote": "lanzaboote",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"nixpkgs-b93b4e9b5": "nixpkgs-b93b4e9b5",
|
"nixpkgs-dda3dcd3f": "nixpkgs-dda3dcd3f",
|
||||||
"nixpkgs-unoptimized": "nixpkgs-unoptimized",
|
"nixpkgs-unoptimized": "nixpkgs-unoptimized",
|
||||||
"zsh-histdb": "zsh-histdb"
|
"zsh-histdb": "zsh-histdb"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,7 +43,7 @@
|
|||||||
inputs = {
|
inputs = {
|
||||||
impermanence.url = "github:nix-community/impermanence";
|
impermanence.url = "github:nix-community/impermanence";
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
nixpkgs-b93b4e9b5.url = "github:NixOS/nixpkgs/b93b4e9b527904aadf52dba6ca35efde2067cbd4";
|
nixpkgs-dda3dcd3f.url = "github:NixOS/nixpkgs/dda3dcd3fe03e991015e9a74b22d35950f264a54";
|
||||||
nixpkgs-unoptimized.url = "github:NixOS/nixpkgs/nixos-unstable";
|
nixpkgs-unoptimized.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
home-manager.url = "github:nix-community/home-manager";
|
home-manager.url = "github:nix-community/home-manager";
|
||||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
@@ -76,7 +76,7 @@
|
|||||||
self,
|
self,
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
nixpkgs-unoptimized,
|
nixpkgs-unoptimized,
|
||||||
nixpkgs-b93b4e9b5,
|
nixpkgs-dda3dcd3f,
|
||||||
impermanence,
|
impermanence,
|
||||||
home-manager,
|
home-manager,
|
||||||
lanzaboote,
|
lanzaboote,
|
||||||
@@ -88,7 +88,7 @@
|
|||||||
base_x86_64_linux = rec {
|
base_x86_64_linux = rec {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
pkgs-b93b4e9b5 = import nixpkgs-b93b4e9b5 {
|
pkgs-dda3dcd3f = import nixpkgs-dda3dcd3f {
|
||||||
inherit system;
|
inherit system;
|
||||||
};
|
};
|
||||||
pkgs-unoptimized = import nixpkgs-unoptimized {
|
pkgs-unoptimized = import nixpkgs-unoptimized {
|
||||||
|
|||||||
@@ -88,6 +88,7 @@
|
|||||||
me.qemu.enable = true;
|
me.qemu.enable = true;
|
||||||
me.rpcs3.enable = true;
|
me.rpcs3.enable = true;
|
||||||
me.rust.enable = true;
|
me.rust.enable = true;
|
||||||
|
me.shadps4.enable = true;
|
||||||
me.shikane.enable = true;
|
me.shikane.enable = true;
|
||||||
me.sops.enable = true;
|
me.sops.enable = true;
|
||||||
me.sound.enable = true;
|
me.sound.enable = true;
|
||||||
|
|||||||
@@ -84,6 +84,7 @@
|
|||||||
me.qemu.enable = true;
|
me.qemu.enable = true;
|
||||||
me.rpcs3.enable = true;
|
me.rpcs3.enable = true;
|
||||||
me.rust.enable = true;
|
me.rust.enable = true;
|
||||||
|
me.shadps4.enable = true;
|
||||||
me.shikane.enable = true;
|
me.shikane.enable = true;
|
||||||
me.sops.enable = true;
|
me.sops.enable = true;
|
||||||
me.sound.enable = true;
|
me.sound.enable = true;
|
||||||
|
|||||||
@@ -8,10 +8,14 @@
|
|||||||
{
|
{
|
||||||
imports = [ ];
|
imports = [ ];
|
||||||
config = lib.mkMerge [
|
config = lib.mkMerge [
|
||||||
{ }
|
{
|
||||||
(lib.mkIf (config.me.buildingIso) {
|
environment.systemPackages = with pkgs; [
|
||||||
# boot.loader.systemd-boot.memtest86.enable = true;
|
memtest86plus
|
||||||
boot.loader.grub.memtest86.enable = true;
|
];
|
||||||
})
|
}
|
||||||
|
# (lib.mkIf (config.me.buildingIso) {
|
||||||
|
# boot.loader.systemd-boot.memtest86.enable = true;
|
||||||
|
# boot.loader.grub.memtest86.enable = true;
|
||||||
|
# })
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
pkgs-dda3dcd3f,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
|
|
||||||
@@ -64,6 +65,7 @@
|
|||||||
ldns # for drill
|
ldns # for drill
|
||||||
arp-scan # To find devices on the network
|
arp-scan # To find devices on the network
|
||||||
wavemon
|
wavemon
|
||||||
|
dhcpcd # For Android USB tethering.
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.extraModprobeConfig = ''
|
boot.extraModprobeConfig = ''
|
||||||
@@ -91,4 +93,13 @@
|
|||||||
# This is enabled by default in nixos.
|
# This is enabled by default in nixos.
|
||||||
# "net.ipv6.conf.default.use_tempaddr" = 2;
|
# "net.ipv6.conf.default.use_tempaddr" = 2;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
(final: prev: {
|
||||||
|
inherit (pkgs-dda3dcd3f)
|
||||||
|
linux-firmware
|
||||||
|
;
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,7 +47,7 @@
|
|||||||
(lib.mkIf (!config.me.optimizations.enable) (
|
(lib.mkIf (!config.me.optimizations.enable) (
|
||||||
lib.mkMerge [
|
lib.mkMerge [
|
||||||
{
|
{
|
||||||
boot.kernelPackages = pkgs.linuxPackagesFor pkgs.linux_6_14;
|
boot.kernelPackages = pkgs.linuxPackagesFor pkgs.linux_6_15;
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
))
|
))
|
||||||
@@ -94,7 +94,7 @@
|
|||||||
HZ = lib.kernel.freeform "300";
|
HZ = lib.kernel.freeform "300";
|
||||||
HZ_300 = lib.kernel.yes;
|
HZ_300 = lib.kernel.yes;
|
||||||
HZ_1000 = lib.kernel.no;
|
HZ_1000 = lib.kernel.no;
|
||||||
} prev.linux_6_14;
|
} prev.linux_6_15;
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
(final: prev: {
|
(final: prev: {
|
||||||
@@ -132,6 +132,7 @@
|
|||||||
redis
|
redis
|
||||||
valkey
|
valkey
|
||||||
nix-serve-ng
|
nix-serve-ng
|
||||||
|
rapidjson
|
||||||
;
|
;
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -79,6 +79,18 @@ in
|
|||||||
home.file.".config/rpcs3/GuiConfigs/CurrentSettings.ini" = {
|
home.file.".config/rpcs3/GuiConfigs/CurrentSettings.ini" = {
|
||||||
source = ./files/CurrentSettings.ini;
|
source = ./files/CurrentSettings.ini;
|
||||||
};
|
};
|
||||||
|
home.file.".config/rpcs3/custom_configs/config_BLUS30443.yml" = {
|
||||||
|
# Demon's Souls per-game config.
|
||||||
|
source = ./files/config_BLUS30443.yml;
|
||||||
|
};
|
||||||
|
home.file.".config/rpcs3/patches/patch.yml" = {
|
||||||
|
# All of the available patches.
|
||||||
|
source = ./files/patch.yml;
|
||||||
|
};
|
||||||
|
home.file.".config/rpcs3/patch_config.yml" = {
|
||||||
|
# Patches that I have enabled.
|
||||||
|
source = ./files/patch_config.yml;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.persistence."/persist" = lib.mkIf (!config.me.buildingIso) {
|
environment.persistence."/persist" = lib.mkIf (!config.me.buildingIso) {
|
||||||
@@ -146,6 +158,13 @@ in
|
|||||||
mode = "0755";
|
mode = "0755";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
# Netplay (RPCN) config and credentials
|
||||||
|
file = ".config/rpcs3/rpcn.yml";
|
||||||
|
parentDirectory = {
|
||||||
|
mode = "0755";
|
||||||
|
};
|
||||||
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -155,7 +174,6 @@ in
|
|||||||
users.talexander = {
|
users.talexander = {
|
||||||
directories = [
|
directories = [
|
||||||
{
|
{
|
||||||
# Game saves
|
|
||||||
directory = ".cache/rpcs3";
|
directory = ".cache/rpcs3";
|
||||||
user = "talexander";
|
user = "talexander";
|
||||||
group = "talexander";
|
group = "talexander";
|
||||||
|
|||||||
14
nix/configuration/roles/rpcs3/files/config_BLUS30443.yml
Normal file
14
nix/configuration/roles/rpcs3/files/config_BLUS30443.yml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
Core:
|
||||||
|
SPU Block Size: Safe
|
||||||
|
Video:
|
||||||
|
Write Color Buffers: true
|
||||||
|
Minimum Scalable Dimension: 640
|
||||||
|
Net:
|
||||||
|
Internet enabled: Connected
|
||||||
|
IP address: 0.0.0.0
|
||||||
|
Bind address: 0.0.0.0
|
||||||
|
DNS address: 8.8.8.8
|
||||||
|
IP swap list: "ds-eu-c.scej-online.jp=206.189.232.242&&ds-eu-g.scej-online.jp=206.189.232.242&&c.demons-souls.com=206.189.232.242&&g.demons-souls.com=206.189.232.242&&cmnap.scej-online.jp=206.189.232.242&&demons-souls.scej-online.jp=206.189.232.242"
|
||||||
|
UPNP Enabled: false
|
||||||
|
PSN status: RPCN
|
||||||
|
PSN Country: us
|
||||||
24771
nix/configuration/roles/rpcs3/files/patch.yml
Normal file
24771
nix/configuration/roles/rpcs3/files/patch.yml
Normal file
File diff suppressed because it is too large
Load Diff
6
nix/configuration/roles/rpcs3/files/patch_config.yml
Normal file
6
nix/configuration/roles/rpcs3/files/patch_config.yml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
PPU-83681f6110d33442329073b72b8dc88a2f677172:
|
||||||
|
Unlock FPS:
|
||||||
|
Demon's Souls:
|
||||||
|
BLUS30443:
|
||||||
|
01.00:
|
||||||
|
Enabled: true
|
||||||
112
nix/configuration/roles/shadps4/default.nix
Normal file
112
nix/configuration/roles/shadps4/default.nix
Normal file
@@ -0,0 +1,112 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [ ];
|
||||||
|
|
||||||
|
options.me = {
|
||||||
|
shadps4.enable = lib.mkOption {
|
||||||
|
type = lib.types.bool;
|
||||||
|
default = false;
|
||||||
|
example = true;
|
||||||
|
description = "Whether we want to install shadps4.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.me.shadps4.enable (
|
||||||
|
lib.mkMerge [
|
||||||
|
(lib.mkIf config.me.graphical {
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
shadps4
|
||||||
|
];
|
||||||
|
|
||||||
|
home-manager.users.talexander =
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
home.file.".local/share/shadPS4/config.toml" = {
|
||||||
|
source = ./files/config.toml;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.persistence."/persist" = lib.mkIf (!config.me.buildingIso) {
|
||||||
|
hideMounts = true;
|
||||||
|
users.talexander = {
|
||||||
|
directories = [
|
||||||
|
{
|
||||||
|
# Location of ROMs.
|
||||||
|
directory = ".local/share/shadPS4/games";
|
||||||
|
user = "talexander";
|
||||||
|
group = "talexander";
|
||||||
|
mode = "0755";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
# Firmware.
|
||||||
|
directory = ".local/share/shadPS4/sys_modules";
|
||||||
|
user = "talexander";
|
||||||
|
group = "talexander";
|
||||||
|
mode = "0755";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
# Game saves.
|
||||||
|
directory = ".local/share/shadPS4/savedata";
|
||||||
|
user = "talexander";
|
||||||
|
group = "talexander";
|
||||||
|
mode = "0755";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
# DLC.
|
||||||
|
directory = ".local/share/shadPS4/addcont";
|
||||||
|
user = "talexander";
|
||||||
|
group = "talexander";
|
||||||
|
mode = "0755";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
files = [
|
||||||
|
{
|
||||||
|
# play times and recently played
|
||||||
|
file = ".local/share/shadPS4/play_time.txt";
|
||||||
|
parentDirectory = {
|
||||||
|
mode = "0755";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.persistence."/state" = lib.mkIf (!config.me.buildingIso) {
|
||||||
|
hideMounts = true;
|
||||||
|
users.talexander = {
|
||||||
|
directories = [
|
||||||
|
{
|
||||||
|
# Cache.
|
||||||
|
directory = ".local/share/shadPS4/data";
|
||||||
|
user = "talexander";
|
||||||
|
group = "talexander";
|
||||||
|
mode = "0755";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
(final: prev: {
|
||||||
|
shadps4 = prev.shadps4.overrideAttrs (old: {
|
||||||
|
version = "0.9.0";
|
||||||
|
src = final.fetchFromGitHub {
|
||||||
|
owner = "AzaharPlus";
|
||||||
|
repo = "shadPS4Plus";
|
||||||
|
tag = "SHADPS4PLUS_0_9_0_A";
|
||||||
|
hash = "sha256-ZwP+bOE4roWt51Ii53blDZzdq/SxK4Q69I4rLCNARLA=";
|
||||||
|
fetchSubmodules = true;
|
||||||
|
};
|
||||||
|
});
|
||||||
|
})
|
||||||
|
];
|
||||||
|
})
|
||||||
|
]
|
||||||
|
);
|
||||||
|
}
|
||||||
15
nix/configuration/roles/shadps4/files/config.toml
Normal file
15
nix/configuration/roles/shadps4/files/config.toml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
[General]
|
||||||
|
# Without this, we get:
|
||||||
|
# /run/current-system/sw/bin/xdg-mime: line 1002: /nix/store/wd9bigydk9x8bsvnslrvb5klbgmh98v5-hm_mimeapps.list.new: Read-only file system
|
||||||
|
enableDiscordRPC = false
|
||||||
|
|
||||||
|
|
||||||
|
[GUI]
|
||||||
|
addonInstallDir = "/home/talexander/.local/share/shadPS4/addcont"
|
||||||
|
installDirs = ["/home/talexander/.local/share/shadPS4/games"]
|
||||||
|
installDirsEnabled = [true]
|
||||||
|
# Without the geometry settings shadps4 crashes instantly with a floating point error.
|
||||||
|
geometry_h = 981
|
||||||
|
geometry_w = 748
|
||||||
|
geometry_x = 0
|
||||||
|
geometry_y = 0
|
||||||
Reference in New Issue
Block a user