Compare commits

..

No commits in common. "main" and "kde-stuff" have entirely different histories.

158 changed files with 2310 additions and 8887 deletions

1
.envrc
View file

@ -1 +0,0 @@
use flake

5
.gitignore vendored
View file

@ -2,12 +2,7 @@
# Ignore build outputs from performing a nix-build or `nix build` command
result
result-*
repl-result*
# ---> Kate
# Ignore kate's swap files
*.kate-swp
# ---> Direnv
.direnv

View file

@ -1,3 +0,0 @@
[[language]]
name = "nix"
formatter = { command = "alejandra" }

View file

@ -1,33 +0,0 @@
# Hide the default option from the recipes list
_default: print-recipes
# Escape codes for text formatting
bold := `tput bold`
normal := `tput sgr0`
find-results:
find . -name '*result*'
print-recipes:
@just --list
update:
nix flake update
@edit-secrets:
git clone ssh://forgejo@git.toast003.xyz:4222/Toast/nix-secrets.git /tmp/secrets
sed -i 's\git+ssh://forgejo@git.toast003.xyz:4222/Toast/nix-secrets\/tmp/secrets\g' flake.nix
nix flake update secrets
echo "{{bold}}All done!"
echo "{{normal}}Remember to restore flake.nix"
echo ""
echo ""
alias build := build-nixos
# Build a NixOS configuration
build-nixos host=`hostname`:
nom build .#nixosConfigurations.{{host}}.config.system.build.toplevel
# nix-diff with some parameters piped to less
nix-diff left right:
nix-diff --color=always --skip-already-compared {{left}} {{right}} | less -F

18
.vscode/settings.json vendored
View file

@ -1,15 +1,7 @@
{
"editor.detectIndentation": true,
"editor.insertSpaces": true,
"editor.defaultFormatter": "jnoortheen.nix-ide",
"nix.formatterPath": "alejandra",
"nix.serverSettings": {
"nil": {
"formatting": {
"command": [
"alejandra"
]
}
}
}
"editor.detectIndentation": true,
"editor.insertSpaces": false,
"editor.tabSize": 2,
"editor.renderWhitespace": "all",
"editor.defaultFormatter": "jnoortheen.nix-ide"
}

535
flake.lock generated
View file

@ -5,173 +5,20 @@
"darwin": [],
"home-manager": "home-manager",
"nixpkgs": [
"nixpkgs-raw"
],
"systems": "systems"
},
"locked": {
"lastModified": 1762618334,
"narHash": "sha256-wyT7Pl6tMFbFrs8Lk/TlEs81N6L+VSybPfiIgzU8lbQ=",
"owner": "ryantm",
"repo": "agenix",
"rev": "fcdea223397448d35d9b31f798479227e80183f6",
"type": "github"
},
"original": {
"owner": "ryantm",
"repo": "agenix",
"type": "github"
}
},
"catppuccin": {
"inputs": {
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1765990358,
"narHash": "sha256-l8x0gU8mnYaGMl+gWrsSHKBJlZWD8KXJfHTkRlFiPI0=",
"owner": "catppuccin",
"repo": "nix",
"rev": "de1b60ca45a578f59f7d84c8d338b346017b2161",
"type": "github"
},
"original": {
"owner": "catppuccin",
"repo": "nix",
"type": "github"
}
},
"catppuccin-konsole": {
"flake": false,
"locked": {
"lastModified": 1720277724,
"narHash": "sha256-d5+ygDrNl2qBxZ5Cn4U7d836+ZHz77m6/yxTIANd9BU=",
"owner": "catppuccin",
"repo": "konsole",
"rev": "3b64040e3f4ae5afb2347e7be8a38bc3cd8c73a8",
"type": "github"
},
"original": {
"owner": "catppuccin",
"repo": "konsole",
"type": "github"
}
},
"copyparty": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [
"nixpkgs-raw"
"nixpkgs"
]
},
"locked": {
"lastModified": 1766045858,
"narHash": "sha256-lsbdHVSc5EB2+XgKDbeG1DjLLY5DnzlKQIPV0uQu/bQ=",
"owner": "9001",
"repo": "copyparty",
"rev": "0e6b167167eaf04036df8576f1ea96bc116ea951",
"lastModified": 1684153753,
"narHash": "sha256-PVbWt3qrjYAK+T5KplFcO+h7aZWfEj1UtyoKlvcDxh0=",
"owner": "ryantm",
"repo": "agenix",
"rev": "db5637d10f797bb251b94ef9040b237f4702cde3",
"type": "github"
},
"original": {
"owner": "9001",
"repo": "copyparty",
"type": "github"
}
},
"eza-themes": {
"flake": false,
"locked": {
"lastModified": 1765813820,
"narHash": "sha256-WcwzKm2mi/tyA+zZCpyvTdrOrZ1R1ENA3t622SGzFas=",
"owner": "eza-community",
"repo": "eza-themes",
"rev": "1239cb1dd23fa8b70865550db77701b164a53cde",
"type": "github"
},
"original": {
"owner": "eza-community",
"repo": "eza-themes",
"type": "github"
}
},
"flake-utils": {
"locked": {
"lastModified": 1678901627,
"narHash": "sha256-U02riOqrKKzwjsxc/400XnElV+UtPUQWpANPlyazjH0=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "93a2b84fc4b70d9e089d029deacc3583435c2ed6",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_3": {
"inputs": {
"systems": "systems_3"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flakey-profile": {
"locked": {
"lastModified": 1712898590,
"narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=",
"owner": "lf-",
"repo": "flakey-profile",
"rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d",
"type": "github"
},
"original": {
"owner": "lf-",
"repo": "flakey-profile",
"type": "github"
}
},
"flakey-profile_2": {
"locked": {
"lastModified": 1712898590,
"narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=",
"owner": "lf-",
"repo": "flakey-profile",
"rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d",
"type": "github"
},
"original": {
"owner": "lf-",
"repo": "flakey-profile",
"owner": "ryantm",
"repo": "agenix",
"type": "github"
}
},
@ -183,11 +30,11 @@
]
},
"locked": {
"lastModified": 1745494811,
"narHash": "sha256-YZCh2o9Ua1n9uCvrvi5pRxtuVNml8X2a03qIFfRKpFs=",
"lastModified": 1682203081,
"narHash": "sha256-kRL4ejWDhi0zph/FpebFYhzqlOBrk0Pl3dzGEKSAlEw=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "abfad3d2958c9e6300a883bd443512c55dfeb1be",
"rev": "32d3e39c491e2f91152c84f8ad8b003420eab0a1",
"type": "github"
},
"original": {
@ -199,15 +46,15 @@
"home-manager-unstable": {
"inputs": {
"nixpkgs": [
"nixpkgs-unstable-raw"
"nixpkgs-unstable"
]
},
"locked": {
"lastModified": 1765980955,
"narHash": "sha256-rB45jv4uwC90vM9UZ70plfvY/2Kdygs+zlQ07dGQFk4=",
"lastModified": 1689134369,
"narHash": "sha256-0G9dutIvhS/WUr3Awcnqw71g8EVVvvkOhVDnDDbY4Fw=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "89c9508bbe9b40d36b3dc206c2483ef176f15173",
"rev": "e42fb59768f0305085abde0dd27ab5e0cc15420c",
"type": "github"
},
"original": {
@ -219,150 +66,31 @@
"home-manager_2": {
"inputs": {
"nixpkgs": [
"nixpkgs-raw"
]
},
"locked": {
"lastModified": 1765979862,
"narHash": "sha256-/r9/1KamvbHJx6I40H4HsSXnEcBAkj46ZwibhBx9kg0=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "d3135ab747fd9dac250ffb90b4a7e80634eacbe9",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-25.11",
"repo": "home-manager",
"type": "github"
}
},
"jovian": {
"inputs": {
"nix-github-actions": "nix-github-actions",
"nixpkgs": [
"nixpkgs-unstable-raw"
]
},
"locked": {
"lastModified": 1766067735,
"narHash": "sha256-cRC/rOYRtZNzc5y9nTccozyo/mkI4/1eFE33Aqgs+SQ=",
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"rev": "34a16089be30f77ac9444907ec97c02b4b711896",
"type": "github"
},
"original": {
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"type": "github"
}
},
"lix": {
"flake": false,
"locked": {
"lastModified": 1765883751,
"narHash": "sha256-clrWX/t2swPGBVs50Yegq2HK3q5bbwOt3kWMsL7JIZM=",
"rev": "fc0073f54095f15ee272621d4746eb9f40946385",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/fc0073f54095f15ee272621d4746eb9f40946385.tar.gz?rev=fc0073f54095f15ee272621d4746eb9f40946385"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/lix/archive/main.tar.gz"
}
},
"lix-module": {
"inputs": {
"flake-utils": "flake-utils_2",
"flakey-profile": "flakey-profile",
"lix": [
"lix"
],
"nixpkgs": [
"nixpkgs-raw"
]
},
"locked": {
"lastModified": 1764519849,
"narHash": "sha256-XnNABKfIYKSimQVvKc9FnlC2H0LurOhd9MS6l0Z67lE=",
"rev": "6c95c0b6f73f831226453fc6905c216ab634c30f",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/6c95c0b6f73f831226453fc6905c216ab634c30f.tar.gz?rev=6c95c0b6f73f831226453fc6905c216ab634c30f"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz"
}
},
"lix-module-unstable": {
"inputs": {
"flake-utils": "flake-utils_3",
"flakey-profile": "flakey-profile_2",
"lix": [
"lix"
],
"nixpkgs": [
"nixpkgs-unstable-raw"
]
},
"locked": {
"lastModified": 1764519849,
"narHash": "sha256-XnNABKfIYKSimQVvKc9FnlC2H0LurOhd9MS6l0Z67lE=",
"rev": "6c95c0b6f73f831226453fc6905c216ab634c30f",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/6c95c0b6f73f831226453fc6905c216ab634c30f.tar.gz?rev=6c95c0b6f73f831226453fc6905c216ab634c30f"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz"
}
},
"nix-flatpak": {
"locked": {
"lastModified": 1754777568,
"narHash": "sha256-0bBqT+3XncgF8F03RFAamw9vdf0VmaDoIJLTGkjfQZs=",
"owner": "gmodena",
"repo": "nix-flatpak",
"rev": "62f636b87ef6050760a8cb325cadb90674d1e23e",
"type": "github"
},
"original": {
"owner": "gmodena",
"ref": "main",
"repo": "nix-flatpak",
"type": "github"
}
},
"nix-github-actions": {
"inputs": {
"nixpkgs": [
"jovian",
"nixpkgs"
]
},
"locked": {
"lastModified": 1729697500,
"narHash": "sha256-VFTWrbzDlZyFHHb1AlKRiD/qqCJIripXKiCSFS8fAOY=",
"owner": "zhaofengli",
"repo": "nix-github-actions",
"rev": "e418aeb728b6aa5ca8c5c71974e7159c2df1d8cf",
"lastModified": 1687871164,
"narHash": "sha256-bBFlPthuYX322xOlpJvkjUBz0C+MOBjZdDOOJJ+G2jU=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "07c347bb50994691d7b0095f45ebd8838cf6bc38",
"type": "github"
},
"original": {
"owner": "zhaofengli",
"ref": "matrix-name",
"repo": "nix-github-actions",
"owner": "nix-community",
"ref": "release-23.05",
"repo": "home-manager",
"type": "github"
}
},
"nix-impermanence": {
"locked": {
"lastModified": 1737831083,
"narHash": "sha256-LJggUHbpyeDvNagTUrdhe/pRVp4pnS6wVKALS782gRI=",
"lastModified": 1684264534,
"narHash": "sha256-K0zr+ry3FwIo3rN2U/VWAkCJSgBslBisvfRIPwMbuCQ=",
"owner": "nix-community",
"repo": "impermanence",
"rev": "4b3e914cdf97a5b536a889e939fb2fd2b043a170",
"rev": "89253fb1518063556edd5e54509c30ac3089d5e6",
"type": "github"
},
"original": {
@ -371,100 +99,28 @@
"type": "github"
}
},
"nix-index-db": {
"inputs": {
"nixpkgs": [
"nixpkgs-raw"
]
},
"locked": {
"lastModified": 1765267181,
"narHash": "sha256-d3NBA9zEtBu2JFMnTBqWj7Tmi7R5OikoU2ycrdhQEws=",
"owner": "Mic92",
"repo": "nix-index-database",
"rev": "82befcf7dc77c909b0f2a09f5da910ec95c5b78f",
"type": "github"
},
"original": {
"owner": "Mic92",
"repo": "nix-index-database",
"type": "github"
}
},
"nix-index-db-unstable": {
"inputs": {
"nixpkgs": [
"nixpkgs-unstable-raw"
]
},
"locked": {
"lastModified": 1765267181,
"narHash": "sha256-d3NBA9zEtBu2JFMnTBqWj7Tmi7R5OikoU2ycrdhQEws=",
"owner": "Mic92",
"repo": "nix-index-database",
"rev": "82befcf7dc77c909b0f2a09f5da910ec95c5b78f",
"type": "github"
},
"original": {
"owner": "Mic92",
"repo": "nix-index-database",
"type": "github"
}
},
"nixos-hardware": {
"locked": {
"lastModified": 1764440730,
"narHash": "sha256-ZlJTNLUKQRANlLDomuRWLBCH5792x+6XUJ4YdFRjtO4=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "9154f4569b6cdfd3c595851a6ba51bfaa472d9f3",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "master",
"repo": "nixos-hardware",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1763966396,
"narHash": "sha256-6eeL1YPcY1MV3DDStIDIdy/zZCDKgHdkCmsrLJFiZf0=",
"lastModified": 1689137672,
"narHash": "sha256-QZoHxr0a73x6rQcAo5CiwYpysHbSnk7lAR8/16um7mM=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "5ae3b07d8d6527c42f17c876e404993199144b6a",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-raw": {
"locked": {
"lastModified": 1765838191,
"narHash": "sha256-m5KWt1nOm76ILk/JSCxBM4MfK3rYY7Wq9/TZIIeGnT8=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "c6f52ebd45e5925c188d1a20119978aa4ffd5ef6",
"rev": "98da3dd0de6660d4abed7bb74e748694bd803413",
"type": "github"
},
"original": {
"id": "nixpkgs",
"ref": "nixos-25.11",
"ref": "nixos-23.05",
"type": "indirect"
}
},
"nixpkgs-unstable-raw": {
"nixpkgs-unstable": {
"locked": {
"lastModified": 1765779637,
"narHash": "sha256-KJ2wa/BLSrTqDjbfyNx70ov/HdgNBCBBSQP3BIzKnv4=",
"lastModified": 1689098530,
"narHash": "sha256-fxc/9f20wRyo/5ydkmZkX/Sh/ULa7RcT8h+cUv8p/44=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "1306659b587dc277866c7b69eb97e5f07864d8c4",
"rev": "f2406198ea0e4e37d4380d0e20336c575b8f8ef9",
"type": "github"
},
"original": {
@ -473,133 +129,14 @@
"type": "indirect"
}
},
"plasma-manager": {
"inputs": {
"home-manager": [
"home-manager-unstable"
],
"nixpkgs": [
"nixpkgs-unstable-raw"
]
},
"locked": {
"lastModified": 1763909441,
"narHash": "sha256-56LwV51TX/FhgX+5LCG6akQ5KrOWuKgcJa+eUsRMxsc=",
"owner": "nix-community",
"repo": "plasma-manager",
"rev": "b24ed4b272256dfc1cc2291f89a9821d5f9e14b4",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "plasma-manager",
"type": "github"
}
},
"root": {
"inputs": {
"agenix": "agenix",
"catppuccin": "catppuccin",
"catppuccin-konsole": "catppuccin-konsole",
"copyparty": "copyparty",
"eza-themes": "eza-themes",
"home-manager": "home-manager_2",
"home-manager-unstable": "home-manager-unstable",
"jovian": "jovian",
"lix": "lix",
"lix-module": "lix-module",
"lix-module-unstable": "lix-module-unstable",
"nix-flatpak": "nix-flatpak",
"nix-impermanence": "nix-impermanence",
"nix-index-db": "nix-index-db",
"nix-index-db-unstable": "nix-index-db-unstable",
"nixos-hardware": "nixos-hardware",
"nixpkgs-raw": "nixpkgs-raw",
"nixpkgs-unstable-raw": "nixpkgs-unstable-raw",
"plasma-manager": "plasma-manager",
"secrets": "secrets",
"sops-nix": "sops-nix"
}
},
"secrets": {
"flake": false,
"locked": {
"lastModified": 1766143747,
"narHash": "sha256-bG4QoCZLUDrubYFuRvxiXhycBD3R+UjrzXrNZ+qRnio=",
"ref": "refs/heads/main",
"rev": "8921f23861a82f0f8d706c276bc738ca72c053b1",
"revCount": 41,
"type": "git",
"url": "ssh://forgejo@git.toast003.xyz:4222/Toast/nix-secrets"
},
"original": {
"type": "git",
"url": "ssh://forgejo@git.toast003.xyz:4222/Toast/nix-secrets"
}
},
"sops-nix": {
"inputs": {
"nixpkgs": [
"nixpkgs-unstable-raw"
]
},
"locked": {
"lastModified": 1765836173,
"narHash": "sha256-hWRYfdH2ONI7HXbqZqW8Q1y9IRbnXWvtvt/ONZovSNY=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "443a7f2e7e118c4fc63b7fae05ab3080dd0e5c63",
"type": "github"
},
"original": {
"owner": "Mic92",
"repo": "sops-nix",
"type": "github"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
"nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable"
}
}
},

300
flake.nix Normal file → Executable file
View file

@ -1,239 +1,81 @@
{
description = "Configuration for Everest";
description = "Configuration for Everest";
inputs = {
secrets = {
url = "git+ssh://forgejo@git.toast003.xyz:4222/Toast/nix-secrets";
flake = false;
};
nixpkgs-raw.url = "nixpkgs/nixos-25.11";
nixpkgs-unstable-raw.url = "nixpkgs/nixos-unstable";
inputs = {
nixpkgs.url = "nixpkgs/nixos-23.05";
nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
agenix = {
url = "github:ryantm/agenix";
inputs = {
nixpkgs.follows = "nixpkgs-raw";
darwin.follows = ""; # Not using this on MacOS, so this doesn't pull it's dependencies
};
};
sops-nix = {
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs-unstable-raw";
};
agenix = {
url = "github:ryantm/agenix";
inputs = {
nixpkgs.follows = "nixpkgs";
darwin.follows = ""; # Not using this on MacOS, so this doesn't pull it's dependencies
};
};
home-manager = {
url = "github:nix-community/home-manager/release-25.11";
inputs.nixpkgs.follows = "nixpkgs-raw";
};
home-manager = {
url = "github:nix-community/home-manager/release-23.05";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager-unstable = {
url = "github:nix-community/home-manager/";
inputs.nixpkgs.follows = "nixpkgs-unstable-raw";
};
home-manager-unstable = {
url = "github:nix-community/home-manager/";
inputs.nixpkgs.follows = "nixpkgs-unstable";
};
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
nix-impermanence.url = "github:nix-community/impermanence";
};
jovian = {
url = "github:Jovian-Experiments/Jovian-NixOS";
inputs.nixpkgs.follows = "nixpkgs-unstable-raw";
};
outputs = {nixpkgs, nixpkgs-unstable, agenix, home-manager, home-manager-unstable, nix-impermanence, ... }: {
devShells.x86_64-linux.default = nixpkgs.legacyPackages.x86_64-linux.mkShell {
name = "Environment for toast's nixos configurations";
# The agenix cli is not needed to activate a configuration, so instead of installing it
# I'll just add it to de devShell, since that's the only real time I'm going to use it.
packages = with nixpkgs.legacyPackages.x86_64-linux; [
agenix.packages.x86_64-linux.default
git
plasma5Packages.plasma-sdk
];
shellHook =''
export PS1="$PS1(toast-configs)> "
'';
};
nix-impermanence.url = "github:nix-community/impermanence";
nixosConfigurations = {
Archie = nixpkgs-unstable.lib.nixosSystem {
system = "x86_64-linux";
/*
I used to set up nixpkgs in the flake, but doing that made
defining overlays in modules impossible (or at least I could
not figure out how)
Also has nice side effect of making it easier to add new systems :3
*/
modules = [
# Needed for nix-index
{ nix.nixPath = [ "nixpkgs=${nixpkgs}" ]; }
agenix.nixosModules.default
home-manager-unstable.nixosModule
./roles/common
./roles/desktop
./roles/kde
./roles/gaming
./machines/Archie
];
};
copyparty.url = "github:9001/copyparty";
copyparty.inputs.nixpkgs.follows = "nixpkgs-raw";
/*
These are the same input, just following different nixpkgs versions
This avoids some wierdness when using one that follows unstable on a stable nixpkgs
*/
nix-index-db = {
url = "github:Mic92/nix-index-database";
inputs.nixpkgs.follows = "nixpkgs-raw";
};
nix-index-db-unstable = {
url = "github:Mic92/nix-index-database";
inputs.nixpkgs.follows = "nixpkgs-unstable-raw";
};
plasma-manager = {
url = "github:nix-community/plasma-manager/";
inputs.nixpkgs.follows = "nixpkgs-unstable-raw";
inputs.home-manager.follows = "home-manager-unstable";
};
nix-flatpak.url = "github:gmodena/nix-flatpak/main";
catppuccin.url = "github:catppuccin/nix";
lix-module = {
url = "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz";
inputs.nixpkgs.follows = "nixpkgs-raw";
inputs.lix.follows = "lix";
};
lix-module-unstable = {
url = "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz";
inputs.nixpkgs.follows = "nixpkgs-unstable-raw";
inputs.lix.follows = "lix";
};
# Non flake inputs / random things
lix = {
url = "https://git.lix.systems/lix-project/lix/archive/main.tar.gz";
flake = false;
};
eza-themes = {
url = "github:eza-community/eza-themes";
flake = false;
};
catppuccin-konsole = {
url = "github:catppuccin/konsole";
flake = false;
};
};
outputs = {...} @ inputs:
with inputs;
# Patch nixpkgs
# https://ertt.ca/nix/patch-nixpkgs/
let
nixpkgs-unstable-patched = nixpkgs-raw.legacyPackages.x86_64-linux.applyPatches {
name = "patched-nixpkgs-unstable";
src = nixpkgs-unstable-raw;
patches = [
./nixpkgs-patches/pr471291.patch
./nixpkgs-patches/revert-mangohud-update.patch
];
};
nixpkgs-patched = nixpkgs-raw.legacyPackages.x86_64-linux.applyPatches {
name = "patched-nixpkgs";
src = nixpkgs-raw;
patches = [
];
};
# https://discourse.nixos.org/t/proper-way-of-applying-patch-to-system-managed-via-flake/21073/26
nixpkgs-unstable = (import "${nixpkgs-unstable-patched}/flake.nix").outputs {self = inputs.nixpkgs-unstable-raw;};
nixpkgs = (import "${nixpkgs-patched}/flake.nix").outputs {self = inputs.nixpkgs-raw;};
in {
formatter.x86_64-linux = nixpkgs-unstable.legacyPackages.x86_64-linux.alejandra;
devShells.x86_64-linux.default = nixpkgs.legacyPackages.x86_64-linux.mkShellNoCC {
name = "toast-devshell";
# The agenix cli is not needed to activate a configuration, so instead of installing it
# I'll just add it to de devShell, since that's the only real time I'm going to use it.
packages = with nixpkgs.legacyPackages.x86_64-linux; [
agenix.packages.x86_64-linux.default
git
nvd
nix-output-monitor
nix-diff
just
alejandra
];
shellHook = ''
export PS1="$PS1(toast-configs)> "
'';
};
overlays.default = final: prev: {
kasane-teto-cursor = final.callPackage ./pkgs/kasane-teto-cursor {};
kame-editor = final.callPackage ./pkgs/kame-editor {};
kame-tools = final.callPackage ./pkgs/kame-tools {};
rstmcpp = final.callPackage ./pkgs/rstmcpp {};
};
packages = {
x86_64-linux = with import nixpkgs-unstable-raw {
system = "x86_64-linux";
overlays = [self.overlays.default];
}; {
inherit kasane-teto-cursor kame-editor kame-tools rstmcpp;
};
};
nixosConfigurations = let
mkSystems = hosts:
builtins.mapAttrs (
host: settings: let
pkgs =
if isStable
then nixpkgs
else nixpkgs-unstable;
isStable = (settings ? stable) && (settings.stable == true);
in
mkSystem host settings.modules pkgs isStable
)
hosts;
mkSystem = host: modules: pkgs: stable:
pkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {
flakeSelf = self;
};
lib = import ./lib {nixpkgs = pkgs;};
modules =
[
agenix.nixosModules.default
sops-nix.nixosModules.sops
(
if stable
then home-manager
else home-manager-unstable
)
.nixosModules
.home-manager
(
if stable
then nix-index-db
else nix-index-db-unstable
)
.nixosModules
.nix-index
catppuccin.nixosModules.catppuccin
(
if stable
then lix-module
else lix-module-unstable
)
.nixosModules
.default
./roles/common
(./machines + "/${host}")
]
++ modules;
};
in
mkSystems {
Archie.modules = [
nixos-hardware.nixosModules.common-cpu-amd-zenpower
./roles/desktop
./roles/kde
./roles/gaming
];
SurfaceGo.modules = [
nixos-hardware.nixosModules.microsoft-surface-go
./roles/desktop
./roles/kde
./machines/SurfaceGo
];
SteamDeck.modules = [
jovian.nixosModules.default
./roles/desktop
./roles/kde
./roles/gaming
];
WinMax2.modules = [
nixos-hardware.nixosModules.gpd-win-max-2-2023
./roles/desktop
./roles/kde
./roles/gaming
];
Everest = {
stable = true;
modules = [
copyparty.nixosModules.default
./roles/server
];
};
};
};
Everest = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
# Needed for nix-index
{ nix.nixPath = [ "nixpkgs=${nixpkgs}" ]; }
agenix.nixosModules.default
home-manager.nixosModule
./roles/common
./roles/server
./machines/Everest
./openbox.nix
];
};
};
};
}

View file

@ -1,10 +0,0 @@
{nixpkgs}:
nixpkgs.lib.extend (final: prev: {
toast = let
importLib = file: import file {lib = final;};
in {
patches = importLib ./patches.nix;
networkManager = importLib ./networkManager.nix;
syncthing = importLib ./syncthing.nix;
};
})

View file

@ -1,23 +0,0 @@
{lib}: {
/**
Make a NetworkManager wifi profile, to be used with ensureProfiles
*/
mkWifiProfile = {
id,
ssid,
priority ? 0,
wifi-security,
}: {
connection = {
inherit id;
type = "wifi";
autoconnect-priority = priority;
};
ipv4.method = "auto";
wifi = {
mode = "infrastructure";
inherit ssid;
};
inherit wifi-security;
};
}

View file

@ -1,13 +0,0 @@
{lib}: {
/**
Get a list of patches from a path.
*/
patchesInPath = path: let
pathContents = builtins.readDir path;
filter = name: value:
(value == "regular" || value == "symlink") && lib.strings.hasSuffix ".patch" name;
filteredContents = lib.attrsets.filterAttrs filter pathContents;
patchFilenames = builtins.attrNames filteredContents;
in
builtins.map (value: lib.path.append path value) patchFilenames;
}

View file

@ -1,5 +0,0 @@
{lib}: let
data = import ./../syncthing.nix;
in {
devices = builtins.getAttr "devices" data;
}

View file

@ -1,79 +1,106 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running `nixos-help`).
{ config, pkgs, ... }:
{
config,
pkgs,
...
}: {
# Use grub boot loader
boot.loader = {
systemd-boot.enable = false;
grub = {
enable = true;
device = "nodev";
efiSupport = true;
useOSProber = true;
};
efi.efiSysMountPoint = "/boot/efi";
};
boot.loader.efi.canTouchEfiVariables = true;
# Use grub boot loader
boot.loader = {
systemd-boot.enable = false;
grub = {
enable = true;
device = "nodev";
efiSupport = true;
useOSProber = true;
};
efi.efiSysMountPoint = "/boot/efi";
};
boot.loader.efi.canTouchEfiVariables = true;
boot.kernelPackages = pkgs.linuxKernel.packages.linux_xanmod_latest;
boot.kernelPackages = pkgs.linuxKernel.packages.linux_xanmod_latest;
networking.hostName = "Archie"; # Define your hostname.
networking.hostName = "Archie"; # Define your hostname.
networking.networkmanager.enable = true; # Enable networking
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
# Set your time zone.
time.timeZone = "Europe/Madrid";
# Configure keymap in X11
# services.xserver.layout = "us";
# services.xserver.xkbOptions = "eurosign:e,caps:escape";
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
# Enable CUPS to print documents.
# services.printing.enable = true;
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
console = {
keyMap = "es";
};
# Enable sound.
# sound.enable = true;
# hardware.pulseaudio.enable = true;
# Enable the X11 windowing system.
services.xserver.enable = true;
# Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true;
# Enable the pipewire sound server
services.pipewire = {
enable = true;
pulse.enable = true;
};
hardware.bluetooth.enable = true;
# Configure keymap in X11
# services.xserver.layout = "us";
# services.xserver.xkbOptions = "eurosign:e,caps:escape";
# List packages installed in system profile. To search, run:
# $ nix search wget
# environment.systemPackages = with pkgs; [
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
# wget
# ];
# Enable CUPS to print documents.
# services.printing.enable = true;
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.
# programs.mtr.enable = true;
# programs.gnupg.agent = {
# enable = true;
# enableSSHSupport = true;
# };
# Enable sound.
# sound.enable = true;
# hardware.pulseaudio.enable = true;
# List services that you want to enable:
# Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true;
# Enable the OpenSSH daemon.
# services.openssh.enable = true;
# Define a user account. Don't forget to set a password with passwd.
users.users.toast = {
isNormalUser = true;
extraGroups = [ "wheel" ]; # Enable sudo for the user.
packages = with pkgs; [
tree
];
};
# Open ports in the firewall.
# networking.firewall.allowedTCPPorts = [ ... ];
# networking.firewall.allowedUDPPorts = [ ... ];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
# List packages installed in system profile. To search, run:
# $ nix search wget
# environment.systemPackages = with pkgs; [
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
# wget
# ];
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.
# programs.mtr.enable = true;
# programs.gnupg.agent = {
# enable = true;
# enableSSHSupport = true;
# };
# List services that you want to enable:
# Enable the OpenSSH daemon.
# services.openssh.enable = true;
# Open ports in the firewall.
# networking.firewall.allowedTCPPorts = [ ... ];
# networking.firewall.allowedUDPPorts = [ ... ];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
# Copy the NixOS configuration file and link it from the resulting system
# (/run/current-system/configuration.nix). This is useful in case you
# accidentally delete configuration.nix.
# system.copySystemConfiguration = true;
# Copy the NixOS configuration file and link it from the resulting system
# (/run/current-system/configuration.nix). This is useful in case you
# accidentally delete configuration.nix.
# system.copySystemConfiguration = true;
}

View file

@ -1,6 +1,8 @@
{...}: {
imports = [
./configuration.nix
./hardware-configuration.nix
];
{ ... }:
{
imports = [
./configuration.nix
./hardware-configuration.nix
];
}

View file

@ -1,86 +1,60 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
config,
lib,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
# Enable support for the Xbox One wireless dongle
hardware.xone.enable = true;
# Enabke support for the Xbox One wireless dongle
# Enable support for the Xbox One wireless dongle
hardware.xone.enable = true;
boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "usbhid" "nvme" "sd_mod"];
boot.initrd.kernelModules = ["amdgpu"];
boot.kernelModules = ["kvm-amd"];
boot.extraModulePackages = [];
boot.extraModprobeConfig = "options snd_hda_intel power_save=0";
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" = {
device = "/dev/disk/by-uuid/5322c217-b87b-4150-8b4c-a8fa17a899bf";
fsType = "btrfs";
options = ["subvol=@root"];
};
fileSystems."/" =
{ device = "/dev/disk/by-uuid/5322c217-b87b-4150-8b4c-a8fa17a899bf";
fsType = "btrfs";
options = [ "subvol=@root" "compress=zstd" ];
};
fileSystems."/nix" = {
device = "/dev/disk/by-uuid/5322c217-b87b-4150-8b4c-a8fa17a899bf";
fsType = "btrfs";
options = ["subvol=@nix"];
};
fileSystems."/nix" =
{ device = "/dev/disk/by-uuid/5322c217-b87b-4150-8b4c-a8fa17a899bf";
fsType = "btrfs";
options = [ "subvol=@nix" "compress=zstd" ];
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/5322c217-b87b-4150-8b4c-a8fa17a899bf";
fsType = "btrfs";
options = ["subvol=@boot"];
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/5322c217-b87b-4150-8b4c-a8fa17a899bf";
fsType = "btrfs";
options = [ "subvol=@boot" "compress=zstd" ];
};
fileSystems."/boot/efi" = {
device = "/dev/disk/by-uuid/FB87-4CBC";
fsType = "vfat";
};
fileSystems."/boot/efi" =
{ device = "/dev/disk/by-uuid/FB87-4CBC";
fsType = "vfat";
};
fileSystems = {
/*
Mount the root subvolume of the SSD
This is helpful for getting things from
my old Arch install, as well as for running btdu
*/
"/mnt/ssd" = {
device = config.fileSystems."/".device;
fsType = config.fileSystems."/".fsType;
options = ["subvolid=5" "ro"];
};
"/mnt/hdd" = {
# device = "/dev/disk/by-id/ata-SAMSUNG_HD103SI_S1Y5J9CZA19763-part1";
label = "Archie\\x20HDD";
fsType = "bcachefs";
options = ["x-systemd.automount"];
};
"/mnt/windows" = {
device = "/dev/disk/by-uuid/B61AFDAC1AFD6A2F";
fsType = "ntfs3";
neededForBoot = false;
options = ["noauto" "windows_names"];
};
"/home" = {
device = "/dev/disk/by-uuid/5322c217-b87b-4150-8b4c-a8fa17a899bf";
fsType = "btrfs";
options = ["subvol=@home"];
};
"/persist" = {
device = "/dev/disk/by-uuid/5322c217-b87b-4150-8b4c-a8fa17a899bf";
fsType = "btrfs";
options = ["subvol=@persist"];
neededForBoot = true;
};
};
/*
Mount the root subvolume of the SSD
This is helpful for getting things from
my old Arch install, as well as for running btdu
*/
fileSystems = {
"/mnt/ssd" = {
device = config.fileSystems."/".device;
fsType = config.fileSystems."/".fsType;
options = [ "subvolid=5" "ro" ];
};
};
swapDevices = [];
swapDevices = [ ];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -1,60 +1,103 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help).
{lib, ...}: {
# Bootloader.
boot.loader.systemd-boot.enable = true;
boot.loader.timeout = 5;
boot.loader.efi.canTouchEfiVariables = true;
boot.loader.efi.efiSysMountPoint = "/boot/efi";
# I'm using Nix OS, it's logo is a snowflake and the computer is
# a lot taller than the pi it's replacing, so Everest! :3 :3
networking.hostName = "Everest"; # Define your hostname.
{ config, pkgs, lib, ... }:
# Set up networking
networking = {
wireless.enable = false; # Computer doesn't have wifi
enableIPv6 = false;
useNetworkd = true;
dhcpcd.enable = false;
interfaces.eno1 = {
wakeOnLan.enable = true;
ipv4.addresses = [
{
address = "192.168.1.160";
prefixLength = 24;
}
];
};
# I use networkd, so I need to declare the interface for the default gateway
defaultGateway = {
address = "192.168.1.1";
interface = "eno1";
};
nameservers = ["9.9.9.9"];
};
systemd.network.wait-online.extraArgs = ["--dns"];
{
# Bootloader.
boot.loader.systemd-boot.enable = true;
boot.loader.timeout = 5;
boot.loader.efi.canTouchEfiVariables = true;
boot.loader.efi.efiSysMountPoint = "/boot/efi";
time.timeZone = "Europe/Madrid";
services.automatic-timezoned.enable = lib.mkForce false;
# I'm using Nix OS, it's logo is a snowflake and the computer is
# a lot taller than the pi it's replacing, so Everest! :3 :3
networking.hostName = "Everest"; # Define your hostname.
# Define a user account. Don't forget to set a password with passwd.
users.users.toast = {
extraGroups = ["networkmanager" "transmission"];
};
# Set up networking
networking = {
wireless.enable = false; # Computer doesn't have wifi
enableIPv6 = false;
useNetworkd = true;
dhcpcd.enable = false;
interfaces.eno1 = {
wakeOnLan.enable = true;
ipv4.addresses = [ {
address = "192.168.0.160";
prefixLength = 24;
} ];
};
defaultGateway = "192.168.0.1";
nameservers = [ "8.8.8.8" ];
};
# Large builds (the linux kernel) fail to build because /tmp is too small when using tmpfs
boot.tmp.useTmpfs = false;
# Set your time zone.
time.timeZone = "Europe/Madrid";
home-manager = {
users.toast = {config, ...}: {
home = {
file = {
# This symlinks the Transmission downloads folder into my user's downloads folder for easy access
"Downloads/Transmission".source = config.lib.file.mkOutOfStoreSymlink "/var/lib/transmission/Downloads";
};
};
};
};
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "es_ES.UTF-8";
LC_IDENTIFICATION = "es_ES.UTF-8";
LC_MEASUREMENT = "es_ES.UTF-8";
LC_MONETARY = "es_ES.UTF-8";
LC_NAME = "es_ES.UTF-8";
LC_NUMERIC = "es_ES.UTF-8";
LC_PAPER = "es_ES.UTF-8";
LC_TELEPHONE = "es_ES.UTF-8";
LC_TIME = "es_ES.UTF-8";
};
# Configure keymap in X11
services.xserver = {
layout = "es";
xkbVariant = "";
};
# Configure console keymap
console.keyMap = "es";
# Define a user account. Don't forget to set a password with passwd.
users.users.toast = {
isNormalUser = true;
description = "Toast";
extraGroups = [ "networkmanager" "wheel" "transmission"];
packages = with pkgs; [];
openssh.authorizedKeys.keys = [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC2bOVmxUNvg9qFv9DlzMmTRlzcNsyNq1F1wBuAXySwsWAzHGaO+WGdSCINxW3k2ccXn7M/o1r89LeTzRzi8sWQYCpBaIqYVszM/r7SvTS4gASyKhM6lNlyUEPOnvCXH7rdtF+fjoA1TJPv7GBk78QRhGh+eVO3qhY1m++5C1CPFlyrc6sSfgIBQJ5GQZFl/7YEgsrPo+M+0Sd7LkaCOyNmJA0Wi0BA3bbf5sJhrZVMMg/p7w+eMphz2kd1VTVjW3yeMq9zLCiu4SOTBNGCMEvKIdUZbQ83lNrqO2z1/3T1bDwJgpz3xusfkNCeNJSmhfFw5ydHEUp/9jshq38WmulKAMw2Kl/Zed62AVU7Ux7YjUkZkWvo8i3eXuLUxoG891S7cWV1/ijs9QMajOLLT14FG7RbzUYYaYlx+/iNGji9d4sp9/oMYyO45TMe+vEezFSBygP7TY0QFOr4xTi49ZRQFsszbFnGRv+k3wVKoGoeNt0xWB8pBEPFtaeHJpQyJX8= id_rsa_moon"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOeu3crGqtxwaqgoQPt5mWlC8+PL/Icvcvo0MBAaK80L Key for work laptop"
];
};
home-manager = {
backupFileExtension = "backup";
useGlobalPkgs = true;
users.toast = { config, ... }: {
home = {
stateVersion = "23.05";
file = {
# This symlinks the Transmission downloads folder into my user's downloads folder for easy access
"Downloads/Transmission".source = config.lib.file.mkOutOfStoreSymlink "/var/lib/transmission/Downloads";
};
};
xdg = {
#enable = true;
userDirs = {
enable = true;
createDirectories = true;
publicShare = null; # Disable the public folder
};
};
};
};
# Open ports in the firewall.
# 8384 is syncthing's webui, and 22000 is syncthing related too
# No idea what 5201 and 21027 do tho
networking.firewall.allowedTCPPorts = [ 5201 8384 22000 ];
networking.firewall.allowedUDPPorts = [ 5201 22000 21027];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
}

View file

@ -1,6 +1,8 @@
{...}: {
imports = [
./configuration.nix
./hardware-configuration.nix
];
{ ... }:
{
imports = [
./configuration.nix
./hardware-configuration.nix
];
}

View file

@ -1,69 +1,37 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
config,
lib,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = ["xhci_pci" "ehci_pci" "ahci" "usbhid" "usb_storage" "sd_mod"];
boot.initrd.kernelModules = [];
boot.kernelModules = ["kvm-intel"];
boot.extraModulePackages = [];
boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems = {
"/" = {
device = "/dev/disk/by-label/Everest";
fsType = "btrfs";
options = ["compress=zstd" "subvol=@"];
};
"/nix" = {
device = "/dev/disk/by-uuid/5322c217-b87b-4150-8b4c-a8fa17a899bf";
fsType = "btrfs";
options = ["subvol=@nix-server"];
};
"/home" = {
device = "/dev/disk/by-label/Everest";
fsType = "btrfs";
options = ["compress=zstd" "subvol=@home"];
};
"/mnt/hdd" = {
device = "/dev/disk/by-label/Everest";
fsType = "btrfs";
options = ["compress=zstd" "subvol=/" "ro"];
};
"/mnt/ssd" = {
device = "/dev/disk/by-uuid/5322c217-b87b-4150-8b4c-a8fa17a899bf";
fsType = "btrfs";
options = ["subvol=/" "ro"];
};
"/persist" = {
device = "/dev/disk/by-label/Everest";
fsType = "btrfs";
options = ["compress=zstd" "subvol=@persist"];
neededForBoot = true;
};
};
fileSystems."/" =
{ device = "/dev/disk/by-label/Everest";
fsType = "btrfs";
};
fileSystems."/boot/efi" = {
device = "/dev/disk/by-uuid/FB87-4CBC";
fsType = "vfat";
};
fileSystems."/boot/efi" =
{ device = "/dev/disk/by-label/Boot";
fsType = "vfat";
};
swapDevices = [];
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.eno1.useDHCP = lib.mkDefault true;
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.eno1.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -1,103 +0,0 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running `nixos-help`).
{
config,
pkgs,
lib,
...
}: {
# Use grub boot loader
boot.loader = {
systemd-boot.enable = false;
grub = {
enable = true;
device = "nodev";
efiSupport = true;
# No other OS on here :P
useOSProber = false;
};
efi.efiSysMountPoint = config.fileSystems."efi_boot_partition".mountPoint;
};
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "SteamDeck"; # Define your hostname.
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
jovian = {
devices.steamdeck = {
enable = true;
};
# Steam Deck UI settings
steam = {
enable = true;
autoStart = true;
user = "toast";
desktopSession = "plasma";
};
decky-loader = {
enable = true;
};
};
services.displayManager.sddm.enable = lib.mkForce false;
# Enable bluetooth
hardware.bluetooth = {
enable = true;
};
# Configure keymap in X11
# services.xserver.layout = "us";
# services.xserver.xkbOptions = "eurosign:e,caps:escape";
# Enable CUPS to print documents.
# services.printing.enable = true;
# Enable sound.
# sound.enable = true;
# hardware.pulseaudio.enable = true;
# Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true;
# Large builds (the linux kernel) fail to build because /tmp is too small when using tmpfs
boot.tmp.useTmpfs = false;
environment.systemPackages = [pkgs.steamdeck-firmware pkgs.steamdeck-hw-theme];
# List packages installed in system profile. To search, run:
# $ nix search wget
# environment.systemPackages = with pkgs; [
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
# wget
# ];
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.
# programs.mtr.enable = true;
# programs.gnupg.agent = {
# enable = true;
# enableSSHSupport = true;
# };
# List services that you want to enable:
# Enable the OpenSSH daemon.
# services.openssh.enable = true;
# Open ports in the firewall.
# networking.firewall.allowedTCPPorts = [ ... ];
# networking.firewall.allowedUDPPorts = [ ... ];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
# Copy the NixOS configuration file and link it from the resulting system
# (/run/current-system/configuration.nix). This is useful in case you
# accidentally delete configuration.nix.
# system.copySystemConfiguration = true;
}

View file

@ -1,6 +0,0 @@
{...}: {
imports = [
./configuration.nix
./hardware-configuration.nix
];
}

View file

@ -1,79 +0,0 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{
config,
lib,
modulesPath,
...
}: let
# \x20 is the escape code for a space
ssdLabel = ''Deck\\x20SSD'';
in {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
# Enable support for the Xbox One wireless dongle
hardware.xone.enable = true;
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "usb_storage" "usbhid" "sd_mod" "sdhci_pci"];
boot.initrd.kernelModules = [];
boot.kernelModules = ["kvm-amd"];
boot.extraModulePackages = [];
fileSystems = {
"efi_boot_partition" = {
mountPoint = "/boot/efi";
label = "deckboot";
fsType = "vfat";
};
/*
Mount the root subvolume of the SSD
This is helpful for getting things from
my old Arch install, as well as for running btdu
*/
"btrfs_root_subvolume" = {
mountPoint = "/mnt/ssd";
label = ssdLabel;
fsType = "btrfs";
options = ["subvolid=5" "ro"];
};
"btrfs_root" = {
mountPoint = "/";
label = ssdLabel;
fsType = "btrfs";
options = ["subvol=@" "compress=zstd"];
};
"btrfs_persist" = {
mountPoint = "/persist";
label = ssdLabel;
fsType = "btrfs";
options = ["subvol=@persist"];
neededForBoot = true;
};
"btrfs_boot" = {
mountPoint = "/boot";
label = ssdLabel;
fsType = "btrfs";
options = ["subvol=@boot" "compress=zstd"];
};
"btrfs_home" = {
mountPoint = "/home";
label = ssdLabel;
fsType = "btrfs";
options = ["subvol=@home" "compress=zstd"];
};
"btrfs_nix" = {
mountPoint = "/nix";
label = ssdLabel;
fsType = "btrfs";
options = ["subvol=@nix" "compress=zstd"];
};
};
swapDevices = [];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -1,92 +0,0 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running `nixos-help`).
{
config,
pkgs,
lib,
...
}: {
boot = {
loader = {
# Use grub boot loader
systemd-boot.enable = false;
grub = {
enable = true;
device = "nodev";
efiSupport = true;
enableCryptodisk = true;
};
efi = {
efiSysMountPoint = "/boot/efi";
canTouchEfiVariables = true;
};
};
# I need systemd for tpm luks unlocking
initrd.systemd.enable = true;
};
security.tpm2.enable = true;
networking.hostName = "SurfaceGo"; # Define your hostname.
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
# Configure keymap in X11
# services.xserver.layout = "us";
# services.xserver.xkbOptions = "eurosign:e,caps:escape";
console = {
# The kernel doesn't detect the scree as being HiDPI, so I need to use a bigger font
font = "ter-i32n";
};
# Enable CUPS to print documents.
# services.printing.enable = true;
# Enable sound.
# sound.enable = true;
# hardware.pulseaudio.enable = true;
# Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true;
# List packages installed in system profile. To search, run:
# $ nix search wget
# environment.systemPackages = with pkgs; [
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
# wget
# ];
# The surface kernel sometimes fails to suspend/shutdown and I got tired of fighting it
boot.kernelPackages = lib.mkForce pkgs.linuxPackages;
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.
# programs.mtr.enable = true;
# programs.gnupg.agent = {
# enable = true;
# enableSSHSupport = true;
# };
# List services that you want to enable:
# Enable the OpenSSH daemon.
# services.openssh.enable = true;
# Open ports in the firewall.
# networking.firewall.allowedTCPPorts = [ ... ];
# networking.firewall.allowedUDPPorts = [ ... ];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
# Copy the NixOS configuration file and link it from the resulting system
# (/run/current-system/configuration.nix). This is useful in case you
# accidentally delete configuration.nix.
# system.copySystemConfiguration = true;
}

View file

@ -1,6 +0,0 @@
{...}: {
imports = [
./configuration.nix
./hardware-configuration.nix
];
}

View file

@ -1,50 +0,0 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{
config,
lib,
...
}: {
boot.initrd.availableKernelModules = ["xhci_pci" "nvme" "usbhid" "rtsx_pci_sdmmc"];
boot.initrd.kernelModules = [];
boot.kernelModules = ["kvm-intel"];
boot.extraModulePackages = [];
boot.initrd.luks.devices."SSD".device = "/dev/disk/by-uuid/1d8d7578-d3a1-4ea0-90ad-4257266a6caf";
fileSystems."/" = {
device = "/dev/disk/by-uuid/19a52b40-3ff6-47ff-9402-18d8b289643e";
fsType = "btrfs";
options = ["subvol=@" "compress=zstd"];
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/19a52b40-3ff6-47ff-9402-18d8b289643e";
fsType = "btrfs";
options = ["subvol=@boot" "compress=zstd"];
};
fileSystems."/nix" = {
device = "/dev/disk/by-uuid/19a52b40-3ff6-47ff-9402-18d8b289643e";
fsType = "btrfs";
options = ["subvol=@nix" "compress=zstd"];
};
fileSystems."/home" = {
device = "/dev/disk/by-uuid/19a52b40-3ff6-47ff-9402-18d8b289643e";
fsType = "btrfs";
options = ["subvol=@home" "compress=zstd"];
};
fileSystems."/boot/efi" = {
device = "/dev/disk/by-uuid/EC76-201F";
fsType = "vfat";
};
swapDevices = [];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -1,141 +0,0 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running `nixos-help`).
{
config,
pkgs,
lib,
...
}: {
boot = {
loader = {
systemd-boot.enable = false;
limine = {
enable = true;
enableEditor = true;
secureBoot.enable = true;
extraConfig = ''
timeout: 3
'';
style = {
graphicalTerminal.font.scale = "2x2";
};
};
efi = {
efiSysMountPoint = config.fileSystems."efi_boot_partition".mountPoint;
canTouchEfiVariables = true;
};
};
/*
I use luks, and the systemd initrd works better for this
Both for tpm unlocking (soon) and for plymouth
*/
initrd.systemd.enable = true;
# Plymouth doesn't support fractional scaling :(
plymouth.extraConfig = "DeviceScale=2";
kernelPackages = pkgs.linuxPackages_latest;
};
catppuccin.limine.enable = true;
networking.hostName = "WinMax2"; # Define your hostname.
# Sleep fixes
boot.kernelParams = ["rtc_cmos.use_acpi_alarm=1" "panic=5"];
services.udev.extraRules = ''
ACTION=="add", SUBSYSTEM=="i2c", ATTR{name}=="GXTP7385:00", ATTR{power/wakeup}="disabled"
ACTION=="add", SUBSYSTEM=="i2c", ATTR{name}=="PNP0C50:00", ATTR{power/wakeup}="disabled"
SUBSYSTEM=="usb", ATTR{idVendor}=="2541", ATTR{idProduct}=="9711", ATTR{remove}="1"
'';
services = {
hardware.bolt.enable = true;
handheld-daemon = {
enable = true;
ui = {
enable = true;
};
user = "toast";
};
# Input plumber conflicts with hhd, and it doesn't let me use mouse mode
inputplumber.enable = lib.mkForce false;
};
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
services = {
xserver.xkb.layout = lib.mkForce "us";
};
# Enable bluetooth
hardware.bluetooth = {
enable = true;
};
# Configure keymap in X11
# services.xserver.layout = "us";
# services.xserver.xkbOptions = "eurosign:e,caps:escape";
# Enable CUPS to print documents.
# services.printing.enable = true;
home-manager.sharedModules = [
{
programs.plasma.input.keyboard.layouts = lib.mkForce [{layout = "us";} {layout = "es";}];
}
];
# Enable sound.
# sound.enable = true;
# hardware.pulseaudio.enable = true;
# Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true;
# Large builds (the linux kernel) fail to build because /tmp is too small when using tmpfs
boot.tmp.useTmpfs = false;
# List packages installed in system profile. To search, run:
# $ nix search wget
# environment.systemPackages = with pkgs; [
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
# wget
# ];
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.
# programs.mtr.enable = true;
# programs.gnupg.agent = {
# enable = true;
# enableSSHSupport = true;
# };
# List services that you want to enable:
# Enable the OpenSSH daemon.
# services.openssh.enable = true;
# Open ports in the firewall.
# networking.firewall.allowedTCPPorts = [ ... ];
# networking.firewall.allowedUDPPorts = [ ... ];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
# Copy the NixOS configuration file and link it from the resulting system
# (/run/current-system/configuration.nix). This is useful in case you
# accidentally delete configuration.nix.
# system.copySystemConfiguration = true;
specialisation.bootDebug.configuration = {
boot.kernelParams = [
"systemd.debug-shell=1"
"systemd.log_level=debug"
"systemd.log_target=kmsg"
"log_buf_len=1M"
"printk.devkmsg=on"
];
};
}

View file

@ -1,7 +0,0 @@
{...}: {
imports = [
./configuration.nix
./hardware-configuration.nix
./remote-builder.nix
];
}

View file

@ -1,87 +0,0 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{
config,
lib,
modulesPath,
...
}: let
# \x20 is the escape code for a space
ssdLabel = ''Win\\x20Max\\x202\\x20SSD'';
in {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "thunderbolt" "usbhid" "sdhci_pci"];
boot.initrd.kernelModules = [];
boot.kernelModules = ["kvm-amd"];
boot.extraModulePackages = [];
boot.initrd.luks.devices = {
"SSD".device = "/dev/disk/by-label/wm2-enc";
"swap".device = "/dev/disk/by-label/wm2-swap";
};
fileSystems = {
"efi_boot_partition" = {
mountPoint = "/boot";
label = "winmax2boot";
fsType = "vfat";
};
/*
Mount the root subvolume of the SSD
This is helpful for getting things from
my old Arch install, as well as for running btdu
*/
"btrfs_root_subvolume" = {
mountPoint = "/mnt/ssd";
label = ssdLabel;
fsType = "btrfs";
options = ["subvolid=5" "ro"];
};
"btrfs_root" = {
mountPoint = "/";
label = ssdLabel;
fsType = "btrfs";
options = ["subvol=@"];
};
"btrfs_persist" = {
mountPoint = "/persist";
label = ssdLabel;
fsType = "btrfs";
options = ["subvol=@persist"];
neededForBoot = true;
};
"btrfs_home" = {
mountPoint = "/home";
label = ssdLabel;
fsType = "btrfs";
options = ["subvol=@home"];
};
"btrfs_nix" = {
mountPoint = "/nix";
label = ssdLabel;
fsType = "btrfs";
options = ["subvol=@nix"];
};
};
swapDevices = [
{
device = "/dev/mapper/swap";
# only want to use the swap partition for hibernating
priority = 0;
}
];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware = {
cpu.amd = {
updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
ryzen-smu.enable = true;
};
sensor.iio.bmi260.enable = true;
};
}

View file

@ -1,56 +0,0 @@
{
config,
flakeSelf,
...
}: let
hostSecrets = "${flakeSelf.inputs.secrets}/" + config.networking.hostName + "/";
hostKeyPath = "/etc/ssh/winmax2_host_key";
in {
age.secrets = {
winmax2-host-key = {
file = hostSecrets + "host-private-key.age";
path = hostKeyPath;
mode = "0400";
};
"winmax2-host-key.pub" = {
file = hostSecrets + "host-public-key.age";
path = hostKeyPath + ".pub";
};
};
users = {
groups.nixrbld = {};
users.nixrbld = {
isSystemUser = true;
useDefaultShell = true;
group = "nixrbld";
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIF8v+04ZwqHZRG8P8nxdQt+fGJfzlxHXF0F6jzENb+U6 Remote builder access key"
];
};
};
nix.settings.trusted-users = ["nixrbld"];
services.openssh = {
enable = true;
startWhenNeeded = true;
# I only want it to be accesible though tailscale
openFirewall = false;
allowSFTP = false;
settings = {
UseDns = true;
PermitRootLogin = "no";
PasswordAuthentication = false;
AllowUsers = ["nixrbld"];
};
hostKeys = [
{
path = hostKeyPath;
type = "ed25519";
comment = "Everest host key";
}
];
};
networking.firewall.interfaces.tailscale0.allowedTCPPorts = [22];
}

View file

@ -1,61 +0,0 @@
From ef52b16862caa43dd4abc0aedf1814796342b664 Mon Sep 17 00:00:00 2001
From: K900 <me@0upti.me>
Date: Tue, 16 Dec 2025 11:48:37 +0300
Subject: [PATCH] kdePackages.plasma-vault: refresh patch
No idea how this happened.
---
.../plasma/plasma-vault/hardcode-paths.patch | 26 +++++++++----------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/pkgs/kde/plasma/plasma-vault/hardcode-paths.patch b/pkgs/kde/plasma/plasma-vault/hardcode-paths.patch
index d8a5f4a025de3..090df77eb15b0 100644
--- a/pkgs/kde/plasma/plasma-vault/hardcode-paths.patch
+++ b/pkgs/kde/plasma/plasma-vault/hardcode-paths.patch
@@ -1,5 +1,5 @@
diff --git a/kded/engine/backends/cryfs/cryfsbackend.cpp b/kded/engine/backends/cryfs/cryfsbackend.cpp
-index f425eb3..5b8cd43 100644
+index 64138b6..5d249aa 100644
--- a/kded/engine/backends/cryfs/cryfsbackend.cpp
+++ b/kded/engine/backends/cryfs/cryfsbackend.cpp
@@ -207,7 +207,7 @@ QProcess *CryFsBackend::cryfs(const QStringList &arguments) const
@@ -44,7 +44,7 @@ index b992f6f..eb828dd 100644
QString GocryptfsBackend::getConfigFilePath(const Device &device) const
diff --git a/kded/engine/fusebackend_p.cpp b/kded/engine/fusebackend_p.cpp
-index 8763304..e6860d2 100644
+index 714b660..61d8bf5 100644
--- a/kded/engine/fusebackend_p.cpp
+++ b/kded/engine/fusebackend_p.cpp
@@ -90,7 +90,7 @@ QProcess *FuseBackend::process(const QString &executable, const QStringList &arg
@@ -57,19 +57,19 @@ index 8763304..e6860d2 100644
FutureResult<> FuseBackend::initialize(const QString &name, const Device &device, const MountPoint &mountPoint, const Vault::Payload &payload)
diff --git a/kded/engine/vault.cpp b/kded/engine/vault.cpp
-index c101079..67c8a83 100644
+index a7a4741..773b671 100644
--- a/kded/engine/vault.cpp
+++ b/kded/engine/vault.cpp
-@@ -485,7 +485,7 @@ FutureResult<> Vault::close()
- } else {
- // We want to check whether there is an application
- // that is accessing the vault
-- AsynQt::Process::getOutput(QStringLiteral("lsof"), {QStringLiteral("-t"), mountPoint().data()}) | cast<QString>() | onError([this] {
-+ AsynQt::Process::getOutput(QStringLiteral("@lsof@"), {QStringLiteral("-t"), mountPoint().data()}) | cast<QString>() | onError([this] {
- d->updateMessage(i18n("Unable to lock the vault because an application is using it"));
- }) | onSuccess([this](const QString &result) {
- // based on ksolidnotify.cpp
-@@ -538,7 +538,7 @@ FutureResult<> Vault::forceClose()
+@@ -490,7 +490,7 @@ FutureResult<> Vault::close()
+ } else {
+ // We want to check whether there is an application
+ // that is accessing the vault
+- AsynQt::Process::getOutput(QStringLiteral("lsof"), { QStringLiteral("-t"), mountPoint().data() })
++ AsynQt::Process::getOutput(QStringLiteral("@lsof@"), { QStringLiteral("-t"), mountPoint().data() })
+ | cast<QString>()
+ | onError([this] {
+ d->updateMessage(i18n("Unable to close the vault because an application is using it"));
+@@ -546,7 +546,7 @@ FutureResult<> Vault::forceClose()
using namespace AsynQt::operators;
AsynQt::await(

View file

@ -1,49 +0,0 @@
diff --git a/pkgs/tools/graphics/mangohud/default.nix b/pkgs/tools/graphics/mangohud/default.nix
index cf83d4254baa..992afd60d3cb 100644
--- a/pkgs/tools/graphics/mangohud/default.nix
+++ b/pkgs/tools/graphics/mangohud/default.nix
@@ -24,8 +24,10 @@
unzip,
wayland,
libXNVCtrl,
+ nlohmann_json,
spdlog,
libxkbcommon,
+ glew,
glfw,
libXrandr,
x11Support ? true,
@@ -93,14 +95,14 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "mangohud";
- version = "0.8.2";
+ version = "0.8.1";
src = fetchFromGitHub {
owner = "flightlessmango";
repo = "MangoHud";
tag = "v${finalAttrs.version}";
fetchSubmodules = true;
- hash = "sha256-BZ3R7D2zOlg69rx4y2FzzjpXuPOv913TOz9kSvRN+Wg=";
+ hash = "sha256-FvPhnOvcYE8vVB5R+ZRmuZxrC9U4GA338V7VAuUlHCE=";
};
outputs = [
@@ -188,6 +190,7 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
dbus
+ nlohmann_json
spdlog
]
++ lib.optional waylandSupport wayland
@@ -195,6 +198,7 @@ stdenv.mkDerivation (finalAttrs: {
++ lib.optional nvidiaSupport libXNVCtrl
++ lib.optional (x11Support || waylandSupport) libxkbcommon
++ lib.optionals mangoappSupport [
+ glew
glfw
libXrandr
];

24
openbox.nix Executable file
View file

@ -0,0 +1,24 @@
{ config, pkgs, ... }:
{
services = {
xserver = {
enable = true;
autorun = false;
windowManager.openbox.enable = true;
};
xrdp = {
enable = true;
openFirewall = true;
defaultWindowManager = "${pkgs.openbox}/bin/openbox-session";
#confDir = "/etc/xrdp";
};
};
environment.systemPackages = with pkgs; [
pcmanfm
obconf
firefox
gnome.gnome-calculator
alacritty
];
}

View file

@ -1,59 +0,0 @@
{
lib,
stdenv,
fetchFromGitLab,
qt6,
portaudio,
kame-tools,
vgmstream,
rstmcpp,
}:
stdenv.mkDerivation rec {
name = "kame-editor";
version = "1.4.1";
src = fetchFromGitLab {
owner = "beelzy";
repo = name;
# tag = version;
rev = "82c9c445644b133b6d0ce3529e65b1a3df83c804";
hash = "sha256-V2nMvVIjFRM8++XQ9tkE2OiZzCvdrg0jK69HM+ZIVyA=";
};
postPatch = ''
substituteInPlace kame-editor.pro \
--replace-fail "/usr/local/bin/" "$out/bin"
'';
buildInputs = [
qt6.qtbase
portaudio
];
qtWrapperArgs = [
"--prefix PATH : ${
lib.makeBinPath [
kame-tools
vgmstream
rstmcpp
]
}"
];
nativeBuildInputs = [
qt6.qmake
qt6.wrapQtAppsHook
];
postBuild = ''
bash ./buildicons.sh
'';
postInstall = ''
mkdir -p $out/share/icons/hicolor
mkdir -p $out/share/applications
cp kame-editor.desktop $out/share/applications
cp -r icons/. $out/share/icons/hicolor
'';
}

View file

@ -1,29 +0,0 @@
{
stdenv,
fetchFromGitLab,
zip,
}:
stdenv.mkDerivation rec {
name = "kame-tools";
version = "a1fe47cc";
src = fetchFromGitLab {
owner = "beelzy";
repo = name;
rev = version;
fetchSubmodules = true;
hash = "sha256-ETl5f8M4OJPFB7NEq2mVuMm4RhBtAbMzlrvGHD14zXw=";
};
postPatch = ''
substituteInPlace buildtools/make_base \
--replace-fail "/usr/local/bin" "$out/bin"
'';
installPhase = ''
mkdir -p $out/bin
cp output/linux-x86_64/* $out/bin/
'';
nativeBuildInputs = [zip];
}

View file

@ -1,18 +0,0 @@
{
stdenvNoCC,
fetchzip,
}:
stdenvNoCC.mkDerivation {
name = "kasane-teto-cursors";
src = fetchzip {
url = "http://dl.everest.tailscale/Kasane%20Teto%20Cursor%20-%20by%20wobb.zip";
hash = "sha256-4neZqApkK6hwufLTilUtPmgzyBih7onSdSZ9lezQbIU=";
};
dontBuild = true;
installPhase = ''
mkdir -p $out/share/icons
cp -dr --no-preserve='ownership' $src/Linux/Kasane\ Teto $out/share/icons
'';
}

View file

@ -1,21 +0,0 @@
{
stdenv,
fetchFromGitLab,
}:
stdenv.mkDerivation rec {
name = "rstmcpp";
version = "fe8bee01";
src = fetchFromGitLab {
owner = "beelzy";
repo = name;
rev = version;
fetchSubmodules = true;
hash = "sha256-T9mxTBj/eykvbBkbmEKTUFldtBp3cJgWAbeu44SwxiM=";
};
installPhase = ''
mkdir -p $out/bin
cp rstmcpp $out/bin
'';
}

View file

@ -1,192 +1,58 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
flakeSelf,
...
}: {
environment = {
# As of the 1st of May 2023, the default packages are nano, perl, rsync and strace
# I don't need any of them, so I just empty the list
defaultPackages = [];
};
environment = {
# As of the 1st of May 2023, the default packages are nano, perl, rsync and strace
# I don't need any of them, so I just empty the list
defaultPackages = [];
variables = {
# Environment variables go here
EDITOR = "micro";
};
};
# Set up /tmp
boot.tmp = {
useTmpfs = false;
# Cleaning out /tmp at boot if it's a tmpfs is quite stupid
cleanOnBoot = !config.boot.tmp.useTmpfs;
};
# Set up /tmp
boot.tmp = {
useTmpfs = lib.mkDefault true;
# Cleaning out /tmp at boot if it's a tmpfs is quite stupid
cleanOnBoot = !config.boot.tmp.useTmpfs;
};
# Set up secrets
age = {
identityPaths = [
"/etc/ssh/ssh_host_rsa_key"
"/etc/ssh/ssh_host_ed25519_key"
# This key has a passcode, so if you need to use it you'll have to
# enter the password A LOT of times. Only on the first setup tho
"/tmp/id_ed25519_bootstrap"
];
# Copy (NOT SYMLINK) host ssh keys into place
secrets = {
"ed25519" = {
symlink = false;
file = ../../secrets/${config.networking.hostName}/host-key-ed25519;
path = "/etc/ssh/ssh_host_ed25519_key";
};
"rsa" = {
symlink = false;
file = ../../secrets/${config.networking.hostName}/host-key-rsa;
path= "/etc/ssh/ssh_host_rsa_key";
};
"ed25519-public" = {
symlink = false;
file = ../../secrets/${config.networking.hostName}/host-key-ed25519-public;
path = "/etc/ssh/ssh_host_ed25519_key.pub";
mode = "0644";
};
"rsa-public" = {
symlink = false;
file = ../../secrets/${config.networking.hostName}/host-key-rsa-public;
path = "/etc/ssh/ssh_host_rsa_key.pub";
mode = "0644";
};
};
};
environment.localBinInPath = lib.mkDefault true;
# Set up zram
zramSwap = {
enable = true;
priority = 100;
memoryPercent = 60;
# zstd my beloved <3
algorithm = "zstd";
};
# zswap with zram is not a good idea
boot.kernelParams = ["zswap.enabled=0"];
# Set up keyboard layout
services.xserver.xkb.layout = "es";
# Set up console
console = {
packages = [pkgs.terminus_font];
earlySetup = true;
# mkDefault has 1000 priority, so that way I don't conflict with nixos-hardware
font = lib.mkOverride 999 "ter-i16n";
# Make the console use X's keyboard configuration
useXkbConfig = true;
};
boot.supportedFilesystems = ["nfs"];
security.pki.certificates = [
# Caddy
''
-----BEGIN CERTIFICATE-----
MIIBqTCCAU+gAwIBAgIQceh0ZUBNrOmqLVsDr+2HBjAKBggqhkjOPQQDAjAzMTEw
LwYDVQQDEyhDYWRkeSAoRXZlcmVzdCkgbG9jYWwgQ0EgLSAyMDI0IEVDQyBSb290
MB4XDTI0MDcxODAwMDEwM1oXDTM0MDUyNzAwMDEwM1owMzExMC8GA1UEAxMoQ2Fk
ZHkgKEV2ZXJlc3QpIGxvY2FsIENBIC0gMjAyNCBFQ0MgUm9vdDBZMBMGByqGSM49
AgEGCCqGSM49AwEHA0IABJjrY8x6iDXncxG8exwLyaEq8N0XnCIbga8PVYiz3VLS
07++i0Dey9k68ag6KUZICfc8dX1uZ6/ozUZb4YO3xCSjRTBDMA4GA1UdDwEB/wQE
AwIBBjASBgNVHRMBAf8ECDAGAQH/AgEBMB0GA1UdDgQWBBTQAqZS9KeiAr9mSPV9
RIJbSvRsTzAKBggqhkjOPQQDAgNIADBFAiBIgHrD2cUfNEctVx0WzHb0cLAsrK4Q
3QbyxPLyenR+dAIhAMOIAyxlKKKvAJMOzAg0r+csSVRdP1YHsHiE7U1GeHWx
-----END CERTIFICATE-----
''
];
# Set up localisation
i18n = {
defaultLocale = "en_US.UTF-8";
supportedLocales = [
"es_US.UTF-8/UTF-8"
"es_ES.UTF-8/UTF-8"
"en_US.UTF-8/UTF-8"
];
extraLocaleSettings = {
LC_NUMERIC = "es_ES.UTF-8";
# am/pm is nice but mm/dd/yy is yucky
LC_TIME = "es_US.UTF-8";
LC_MONETARY = "es_ES.UTF-8";
LC_MEASUREMENT = "es_ES.UTF-8";
LC_PAPER = "es_ES.UTF-8";
LC_ADDRESS = "es_US.UTF-8";
LC_NAME = "es_ES.UTF-8";
LC_TELEPHONE = "es_ES.UTF-8";
};
};
services = {
fstrim.enable = true;
fwupd.enable = true;
};
# Set up my user
users.mutableUsers = false;
users.users.toast = {
isNormalUser = true;
description = "Toast";
extraGroups = ["wheel"];
hashedPasswordFile = config.sops.secrets.toast.path;
};
# Set up time zone.
time.timeZone = lib.mkDefault "Europe/Madrid";
services.automatic-timezoned.enable = true;
nixpkgs.overlays = [
flakeSelf.outputs.overlays.default
(
final: prev: {
catppuccin = prev.catppuccin.override {
accent = "mauve";
variant = "mocha";
themeList = [
"bat"
"btop"
"starship"
"grub"
];
};
}
)
];
catppuccin = {
flavor = "mocha";
accent = "mauve";
};
programs.iotop.enable = true;
home-manager = {
backupFileExtension = "hm-backup";
useGlobalPkgs = true;
verbose = true;
sharedModules = with flakeSelf; [
inputs.catppuccin.homeModules.catppuccin
inputs.sops-nix.homeManagerModules.sops
];
users.toast = {osConfig, ...}: {
catppuccin.flavor = osConfig.catppuccin.flavor;
catppuccin.accent = osConfig.catppuccin.accent;
home.stateVersion = "25.05";
manual = {
manpages.enable = true;
html.enable = true;
};
xdg = {
enable = true;
userDirs = {
enable = true;
createDirectories = true;
publicShare = null; # Disable the public folder
};
};
systemd.user.startServices = true;
};
};
# Set up secrets
age = {
identityPaths = [
"/persist/id_host"
];
};
sops = {
age.sshKeyPaths = ["/persist/id_host"];
defaultSopsFile = "${flakeSelf.inputs.secrets}/${config.networking.hostName}.yaml";
secrets.toast = {
sopsFile = "${flakeSelf.inputs.secrets}/passwd.yaml";
neededForUsers = true;
};
};
catppuccin.grub.enable = true;
/*
I used to keep the host keys in the repo as a secret, but since I use the
host keys for decrypting too I'm not sure encrypting a key with itself
is a good idea. Now the host keys will need to be placed manually where they are needed
For first time installs they are generated by services.openssh.hostKeys on servers, and
manually on everything else
*/
system = {
stateVersion = "25.05";
# Nix on nixos 23.05 does not have dirtyRev
configurationRevision = flakeSelf.sourceInfo.rev or flakeSelf.sourceInfo.dirtyRev or "dirty";
nixos.variant_id = lib.mkDefault (lib.strings.toLower config.networking.hostName);
};
image.modules.iso = {
system.nixos.variant_id = "${lib.strings.toLower config.networking.hostName}-iso";
};
system.stateVersion = "23.05";
}

View file

@ -1,7 +1,9 @@
{...}: {
imports = [
./programs
./services
./configuration.nix
];
{ ... }:
{
imports = [
./programs
./services/avahi.nix
./configuration.nix
];
}

View file

@ -1,21 +0,0 @@
{...}: {
home-manager.users.toast = {
catppuccin.atuin.enable = true;
programs.atuin = {
enable = true;
settings = {
enter_accept = true;
workspaces = true;
filter_mode = "workspace";
style = "auto";
inline_height = 0;
stats = {
common_prefix = [
"sudo"
","
];
};
};
};
};
}

View file

@ -1,8 +0,0 @@
{...}: {
home-manager.users.toast = {...}: {
programs.bash = {
enable = true;
enableVteIntegration = true;
};
};
}

View file

@ -1,8 +0,0 @@
{...}: {
home-manager = {
users.toast = {
programs.bat.enable = true;
catppuccin.bat.enable = true;
};
};
}

View file

@ -1,8 +0,0 @@
{...}: {
home-manager = {
users.toast = {
catppuccin.btop.enable = true;
programs.btop.enable = true;
};
};
}

View file

@ -1,6 +0,0 @@
{...}: {
# Use nix-index-database's comma wrapper
programs.nix-index-database.comma.enable = true;
# Run programs from the system's nixpkgs
environment.variables = {COMMA_NIXPKGS_FLAKE = "system";};
}

View file

@ -1,4 +1,6 @@
{...}: {
# The nixpkgs command-not-found script does not work with flakes, so I disable it
programs.command-not-found.enable = false;
{ config, ... }:
{
# The nixpkgs command-not-found script does not work with flakes, so I disable it
programs.command-not-found.enable = false;
}

View file

@ -1,32 +1,24 @@
{pkgs, ...}: {
imports = [
./htop.nix
./nix.nix
./nix-index.nix
./command-not-found.nix
./comma.nix
./bash.nix
./git.nix
./starship.nix
./bat.nix
./btop.nix
./helix.nix
./direnv.nix
./atuin.nix
./fish.nix
./eza.nix
];
# Some programs dont have a programs.*.enable option, so I install their package here
environment.systemPackages = with pkgs; [
speedtest-cli
# Bat has a home manager module, but I want it to be available system wide
bat
file
nvd
ncdu
tree
btdu
iperf3
restic
];
{ config, pkgs, ... }:
{
imports = [
./htop.nix
./nix.nix
./micro.nix
./nix-index.nix
./command-not-found.nix
];
# Some programs dont have a programs.*.enable option, so I install their package here
environment.systemPackages = with pkgs; [
speedtest-cli
bat
file
nvd
ncdu
tree
btdu
btop
iperf3
restic
];
}

View file

@ -1,10 +0,0 @@
{...}: {
home-manager.users.toast = {
programs.direnv = {
enable = true;
nix-direnv = {
enable = true;
};
};
};
}

View file

@ -1,20 +0,0 @@
{
flakeSelf,
config,
...
}: {
home-manager = {
users.toast = {
programs.eza = {
enable = true;
enableBashIntegration = true;
git = true;
icons = "auto";
extraOptions = [
"--group"
];
};
xdg.configFile."eza/theme.yml".source = "${flakeSelf.inputs.eza-themes}/themes/catppuccin.yml";
};
};
}

View file

@ -1,10 +0,0 @@
{...}: {
programs.fish = {
enable = true;
};
home-manager.users.toast = {
catppuccin.fish.enable = true;
programs.fish.enable = true;
};
}

View file

@ -1,25 +0,0 @@
{...}: {
programs.ssh.knownHosts = {
"[git.toast003.xyz]:4222".publicKey = ''
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKoUcWx56NZ3kqydN3d0gLNz6SlBm1ArkHhqR9Fwd8qs
'';
};
home-manager.users.toast = {
programs.git = {
enable = true;
settings = {
user.name = "toast";
user.email = "toast003@tutamail.com";
init.defaultBranch = "main";
diff.colorMoved = "default";
commit.verbose = "true";
};
};
programs.delta = {
enable = true;
enableGitIntegration = true;
};
catppuccin.delta.enable = true;
};
}

View file

@ -1,54 +0,0 @@
{
pkgs,
config,
...
}: {
programs.nano.enable = false;
home-manager.users.toast = {
catppuccin.helix = {
enable = true;
useItalics = true;
};
programs.helix = {
enable = true;
defaultEditor = true;
extraPackages = with pkgs; [
nixpkgs-fmt
nil
taplo
];
settings = {
editor = {
mouse = true;
cursorline = true;
color-modes = true;
bufferline = "multiple";
statusline.mode = {
normal = "Normal";
insert = "Insert";
select = "Select";
};
indent-guides.render = true;
end-of-line-diagnostics = "hint";
inline-diagnostics.cursor-line = "warning";
};
};
languages = {
language = [
{
name = "nix";
formatter.command = "nixpkgs-fmt";
}
];
language-server.nil = {
config = {
flake = {
autoArchive = false;
autoEvalInputs = true;
};
};
};
};
};
};
}

View file

@ -1,13 +1,15 @@
{...}: {
programs.htop = {
enable = true;
settings = {
tree_view = 1;
highlight_base_name = 1;
show_program_path = 0;
show_cpu_frequency = 1;
show_cpu_temperature = 1;
hide_userland_threads = 1;
};
};
{ config, ... }:
{
programs.htop = {
enable = true;
settings = {
tree_view = 1;
highlight_base_name = 1;
show_program_path = 0;
show_cpu_frequency = 1;
show_cpu_temperature = 1;
hide_userland_threads = 1;
};
};
}

View file

@ -0,0 +1,17 @@
{ config, pkgs, ... }:
{
home-manager = {
users.toast = { config, pkgs, ... }:
{
programs.micro = {
enable = true;
settings = {
clipboard = "terminal";
indentchar = "|";
softwrap = true;
};
};
};
};
}

View file

@ -1,15 +1,8 @@
{...}: {
/*
environment.systemPackages = [ pkgs.nix-index ];
programs.bash.interactiveShellInit = ''
source ${pkgs.nix-index}/etc/profile.d/command-not-found.sh
'';
*/
programs.nix-index = {
enable = true;
enableBashIntegration = true;
# I don't use zsh or fish (yet)
enableZshIntegration = false;
enableFishIntegration = false;
};
{ config, pkgs, ... }:
{
environment.systemPackages = [ pkgs.nix-index ];
programs.bash.interactiveShellInit = ''
source ${pkgs.nix-index}/etc/profile.d/command-not-found.sh
'';
}

View file

@ -1,62 +1,15 @@
{ config, ... }:
{
config,
lib,
flakeSelf,
...
}: {
age.secrets = {
remoteBuilderKey.file = "${flakeSelf.inputs.secrets}/WinMax2/nixrbld-private-key.age";
};
programs.ssh = {
knownHosts.winmax2.publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPE+ksvEq/I2LMLOztVXpLE9yuI6EkRh4EtXdlYkhl6C WinMax2 host key";
extraConfig = ''
Host nixrbld
HostName winmax2
IdentitiesOnly yes
IdentityFile ${config.age.secrets.remoteBuilderKey.path}
User nixrbld
'';
};
system.tools.nixos-option.enable = false;
nix = {
settings = {
auto-optimise-store = true;
experimental-features = "nix-command flakes";
};
distributedBuilds = true;
# Don't use remote builder on the remote builder
buildMachines = lib.mkIf (config.networking.hostName != "WinMax2") [
{
hostName = "nixrbld";
system = "x86_64-linux";
protocol = "ssh-ng";
maxJobs = 4;
supportedFeatures = [
"big-parallel"
"kvm"
"nixos-test"
];
}
];
optimise = {
automatic = true;
dates = ["weekly"];
};
registry = {
agenix = {
from = {
id = "agenix";
type = "indirect";
};
to = {
owner = "ryantm";
repo = "agenix";
type = "github";
};
};
};
};
nix = {
extraOptions = ''
experimental-features = nix-command flakes
'';
registry = {
agenix = {
from = { id = "agenix"; type = "indirect"; };
to = { owner = "ryantm"; repo = "agenix"; type = "github"; };
};
};
};
}

View file

@ -1,31 +0,0 @@
{...}: {
programs.starship = {
enable = true;
presets = [
"nerd-font-symbols"
];
settings = {
nix_shell = {
disabled = false;
heuristic = true;
};
os = {
disabled = false;
};
directory = {
disabled = false;
truncation_length = 6;
truncation_symbol = ".../";
};
};
};
# The catppuccin module only works for home-manager, so this
# sets up starship with home-manager using the system config
# home-manager.users.toast = {osConfig, ...}: {
# programs.starship = {
# enable = false;
# catppuccin.enable = true;
# settings = osConfig.programs.starship.settings;
# };
# };
}

View file

@ -1,6 +1,8 @@
{config, ...}: {
services.avahi = {
enable = true;
nssmdns4 = true;
};
{ config, ... }:
{
services.avahi = {
enable = true;
nssmdns = true;
};
}

View file

@ -1,8 +0,0 @@
{...}: {
imports = [
./avahi.nix
./tailscale.nix
./syncthing.nix
./kmscon.nix
];
}

View file

@ -1,29 +0,0 @@
{pkgs, ...}: {
services.kmscon = {
enable = true;
useXkbConfig = true;
fonts = [
{
name = "JetBrains Mono Nerd Font";
package = pkgs.nerd-fonts.jetbrains-mono;
}
];
extraConfig = ''
term=xterm-256color
font-size=10
'';
package = pkgs.kmscon.overrideAttrs (old: {
patches =
old.patches
++ [
# https://github.com/kmscon/kmscon/issues/133
(
pkgs.fetchpatch {
url = "https://github.com/Aetf/kmscon/pull/135.patch";
hash = "sha256-hJrKkONdQmz9gGMXbk11+4MF8Vn4guE3Bl1Ni6SGDw4=";
}
)
];
});
};
}

View file

@ -1,40 +0,0 @@
{
config,
lib,
flakeSelf,
...
}: let
hostSecrets = "${flakeSelf.inputs.secrets}/" + config.networking.hostName;
in {
# Get secrets
age.secrets = {
syncthingKey.file = hostSecrets + "/syncthingKey.age";
syncthingCert.file = hostSecrets + "/syncthingCert.age";
};
services.syncthing = {
key = config.age.secrets.syncthingKey.path;
cert = config.age.secrets.syncthingCert.path;
overrideDevices = true;
overrideFolders = true;
openDefaultPorts = true;
settings = {
options = {
urAccepted = 3;
};
# Set up devices and folders common to every device
devices = lib.toast.syncthing.devices;
folders = {
"passwords" = {
label = "KeePassXC Passwords";
id = "rdyaq-ex659";
devices = ["phone" "pc" "steamdeck" "server" "surface" "winmax2"];
};
};
};
};
networking.firewall = {
allowedTCPPorts = [22000];
allowedUDPPorts = [22000 21027];
};
}

View file

@ -1,10 +0,0 @@
{lib, ...}: {
services.tailscale = {
enable = true;
useRoutingFeatures = lib.mkDefault "client";
};
systemd.services.tailscaled.environment = {
TS_NO_LOGS_NO_SUPPORT = "true";
};
}

View file

@ -1,35 +0,0 @@
{pkgs, ...}: {
# Enable scanning
hardware.sane = {
enable = true;
extraBackends = [pkgs.sane-airscan];
};
users.users.toast.extraGroups = ["scanner"];
services.xserver.enable = true;
nix = {
daemonIOSchedClass = "idle";
daemonCPUSchedPolicy = "idle";
};
# Set up fonts
fonts.packages = with pkgs.nerd-fonts; [
hack
jetbrains-mono
# Japanese fonts
pkgs.noto-fonts-cjk-sans
pkgs.noto-fonts-cjk-serif
];
# Already use electron apps (discord) so this only adds 20 mb more
environment.systemPackages = [pkgs.tetrio-desktop];
hardware.keyboard.qmk.enable = true;
home-manager.users.toast.home.packages = [pkgs.qmk];
home-manager.users.toast.xdg.autostart.enable = true;
boot.plymouth.enable = true;
}

View file

@ -1,7 +1,8 @@
{...}: {
imports = [
./services
./programs
./configuration.nix
];
{ ... }:
{
imports = [
./services
./programs
];
}

View file

@ -1,6 +0,0 @@
{...}: {
programs.appimage = {
enable = true;
binfmt = true;
};
}

View file

@ -1,15 +1,10 @@
{...}: {
imports = [
./discord.nix
./firefox.nix
./keepassxc.nix
./jamesdsp.nix
./git.nix
./ssh.nix
./appimage.nix
./mpv.nix
./sysdvr-qt.nix
./spotify.nix
./distrobox.nix
];
{ ... }:
{
imports = [
./discord.nix
./firefox.nix
./micro.nix
./keepassxc.nix
];
}

View file

@ -1,59 +1,16 @@
{pkgs, ...}: let
discordOverlay = _self: super: {
discord = super.discord.override {
withOpenASAR = true;
withVencord = true;
};
};
in {
nixpkgs.overlays = [discordOverlay];
home-manager.users.toast = {
catppuccin.vesktop.enable = true;
programs.vesktop = {
enable = true;
settings = {
arRPC = true;
minimizeToTray = true;
discordBranch = "stable";
customTitleBar = true;
spellCheckLanguages = ["en-US" "en" "es"];
enableMenu = false;
};
vencord = {
settings = {
plugins = {
BetterGifPicker.enabled = true;
BetterSettings.enabled = true;
CallTimer.enabled = true;
ClearURLs.enabled = true;
FakeNitro.enabled = true;
FixSpotifyEmbeds.enabled = true;
FixYoutubeEmbeds.enabled = true;
FriendsSince.enabled = true;
iLoveSpam.enabled = true;
LoadingQuotes = {
enabled = true;
enableDiscordPresetQuotes = true;
};
MessageClickActions.enabled = true;
MessageLinkEmbeds.enabled = true;
MessageLogger.enabled = true;
Moyai = {
enabled = true;
volume = 1;
quality = "HD";
};
OpenInApp.enabled = true;
petpet.enabled = true;
PlatformIndicators.enabled = true;
ShowHiddenChannels.enabled = true;
ShowHiddenThings.enabled = true;
SpotifyControls.enabled = true;
Translate.enabled = true;
YoutubeAdblock.enabled = true;
};
};
};
};
};
{ config, pkgs, ... }:
let
discordOverlay = self: super: {
discord = super.discord.override {
withOpenASAR = true;
withVencord = true;
};
};
in
{
nixpkgs.overlays = [ discordOverlay ];
users.users.toast.packages = with pkgs; [
discord
];
}

View file

@ -1,28 +0,0 @@
{...}: {
virtualisation.podman = {
# Due to limitations with home-manager, podman has to be available system wide
enable = true;
};
home-manager.users.toast = {
programs.distrobox = {
enable = true;
containers = {
uav = {
image = "quay.io/toolbx/ubuntu-toolbox:24.04";
# additional_packages = "lsb-release dmidecode git";
additional_packages = "git";
init_hooks = [
"git clone https://github.com/PX4/PX4-Autopilot.git --recursive /tmp/px4"
"cd /tmp/px4/Tools/setup/"
# The install scripts wants to add things to .bashrc, so it errors out
# This removes the line that does that
"sed -i '181d' ubuntu.sh"
"bash ubuntu.sh"
"rm -rf /tmp/px4 --one-file-system"
];
entry = true;
};
};
};
};
}

View file

@ -1,147 +1,65 @@
{lib, ...}: {
home-manager.sharedModules = [
{
# System wide firefox settings
programs.firefox = {
enable = true;
policies = {
DisableTelemetry = true;
GenerativeAI = {
Chatbot = false;
LinkPreviews = false;
TabGroups = false;
Locked = true;
};
# You need these for Spotify
EncryptedMediaExtensions.Enabled = true;
ExtensionSettings = {
# TODO: Install extensions the NUR instead of from AMO
"uBlock0@raymondhill.net" = {
installation_mode = "force_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
};
# Decentraleyes
"jid1-BoFifL9Vbdl2zQ@jetpack" = {
installation_mode = "normal_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/decentraleyes/latest.xpi";
};
"jid1-MnnxcxisBPnSXQ@jetpack" = {
installation_mode = "normal_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/privacy-badger17/latest.xpi";
};
# Uninstall undeclared extensions
"*" = {
installation_mode = "blocked";
blocked_install_message = "Extensions are managed by home-manager";
};
};
Preferences = {
# Enable video hardware acceleration
"media.ffmpeg.vaapi.enabled" = {
Value = true;
Status = "default";
};
"dom.security.https_only_mode" = {
Value = true;
Status = "locked";
};
"browser.ml.chat.page" = {
Value = false;
Status = "Locked";
};
};
PromptForDownloadLocation = true;
# I use an external password manager, so the built in one just bothers me
PasswordManagerEnabled = false;
Permissions = {
Autoplay = {
Allow = [
"https://www.youtube.com"
"https://sync-tube.de"
];
Default = "block-audio-video";
};
};
FirefoxHome.SponsoredTopSites = false;
};
};
}
];
# Per-user settings
home-manager.users.toast = {
programs.firefox.policies = {
DisablePocket = true;
ExtensionSettings = {
"sponsorBlocker@ajay.app" = {
installation_mode = "normal_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/sponsorblock/latest.xpi";
};
"@testpilot-containers" = {
installation_mode = "normal_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/multi-account-containers/latest.xpi";
};
"{5cce4ab5-3d47-41b9-af5e-8203eea05245}" = {
installation_mode = "normal_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/control-panel-for-twitter/latest.xpi";
};
};
Preferences = {
"general.smoothScroll.msdPhysics.enabled" = {
Value = true;
Status = "default";
};
"browser.ctrlTab.sortByRecentlyUsed" = {
Value = true;
Status = "default";
};
# This should be set automatically, but it isn't for some reason
"extensions.webextensions.ExtensionStorageIDB.enabled" = {
Value = false;
Status = "locked";
};
};
};
programs.firefox.profiles = {
personal = {
name = "Personal";
id = 0;
isDefault = true;
containersForce = true;
containers = {
work = {
name = "Work";
id = 1;
icon = "briefcase";
color = "green";
};
};
extensions.force = true;
extensions.settings = {
"@testpilot-containers".settings = {
onboarding-stage = 8;
"siteContainerMap@@_teams.microsoft.com" = {
userContextId = "1";
neverAsk = false;
identityMacAddonUUID = "b50e5b1e-6f3b-4245-8eac-5654d889156e";
};
"siteContainerMap@@_outlook.office.com" = {
userContextId = "1";
neverAsk = false;
identityMacAddonUUID = "b50e5b1e-6f3b-4245-8eac-5654d889156e";
};
};
# Control panel for twitter
"{5cce4ab5-3d47-41b9-af5e-8203eea05245}".settings = {
hideForYouTimeline = false;
alwaysUseLatestTweets = false;
retweets = "ignore";
restoreOtherInteractionLinks = true;
navBaseFontSize = false;
followButtonStyle = "themed";
hideSidebarContent = true;
};
};
};
};
};
{ config, pkgs, ... }:
{
# System wide firefox settings
programs.firefox = {
enable = true;
policies = {
"DisablePocket" = true;
"DisableTelemetry" = true;
# You need these for Spotify
"EncryptedMediaExtensions" = { "Enabled" = true; };
"ExtensionSettings" = {
# TODO: Install extensions the NUR instead of from AMO
"uBlock0@raymondhill.net" = {
"installation_mode" = "force_installed";
"install_url" = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
};
# Decentraleyes
"jid1-BoFifL9Vbdl2zQ@jetpack" = {
"installation_mode" = "normal_installed";
"install_url" = "https://addons.mozilla.org/firefox/downloads/latest/decentraleyes/latest.xpi";
};
"jid1-MnnxcxisBPnSXQ@jetpack" = {
"installation_mode" = "normal_installed";
"install_url" = "https://addons.mozilla.org/firefox/downloads/latest/privacy-badger17/latest.xpi";
};
};
"Preferences" = {
# Enable video hardware acceleration
"media.ffmpeg.vaapi.enabled" = {
"Value" = true;
"Status" = "default";
};
"dom.security.https_only_mode" = {
"Value" = true;
"Status" = "locked";
};
# Make firefox use the kde file picker
"widget.use-xdg-desktop-portal.file-picker" = {
"Value" = 1;
"Status" = "default";
};
/*
https://wiki.archlinux.org/title/Firefox#KDE_integration tells me to enable this,
but strangely enough doing so makes firefox ask to be set as the default browser
every time you start it up, so I'll disable it
*/
"widget.use-xdg-desktop-portal.mime-handler" = {
"Value" = 0;
"Status" = "default";
};
};
"PromptForDownloadLocation" = true;
# I use an external password manager, so the built in one just bothers me
"PasswordManagerEnabled" = false;
"Permissions" = {
"Autoplay" = {
"Allow" = [ "https://www.youtube.com" ];
"Default" = "block-audio-video";
};
};
"FirefoxHome" = { "SponsoredTopSites" = false; };
};
};
}

View file

@ -1,7 +0,0 @@
{pkgs, ...}: {
home-manager.users.toast = {
programs.git = {
package = pkgs.gitFull;
};
};
}

View file

@ -1,7 +0,0 @@
{pkgs, ...}: {
home-manager.users.toast = {
home.packages = with pkgs; [
jamesdsp
];
};
}

View file

@ -1,34 +1,69 @@
{pkgs, ...}: {
home-manager = {
users.toast = {
programs.keepassxc = {
enable = true;
autostart = true;
settings = {
General = {
# Not sure what changing this does, I'll leave it alone
ConfigVersion = 2;
MinimizeAfterUnlock = true;
AutoSaveAfterEveryChange = false;
};
GUI = {
ApplicationTheme = "classic";
MinimizeOnStartup = false;
MinimizeOnClose = true;
MinimizeToTray = true;
ShowTrayIcon = true;
# 0 is icons, 1 is text, 2 is text next to icons, 3 is text under icons, and 4 is follow style
ToolButtonStyle = 0; # Would choose 4 but it's too big for a small window
# monochrome-light, monochrome-dark or colorful
TrayIconAppearance = "monochrome-light";
};
Security = {
HideNotes = true;
IconDownloadFallback = true;
};
SSHAgent.Enabled = true;
};
};
};
};
{ config, pkgs, lib, ... }:
let
kpxcSettings = lib.generators.toINI {} {
# Not sure what changing this does, I'll leave it alone
General = {
ConfigVersion = 2;
MinimizeAfterUnlock = true;
};
GUI = {
ApplicationTheme = "classic";
MinimizeOnStartup = false;
MinimizeOnClose = true;
MinimizeToTray = true;
ShowTrayIcon = true;
# 0 is icons, 1 is text, 2 is text next to icons, 3 is text under icons, and 4 is follow style
ToolButtonStyle = 0; # Would choose 4 but it's too big for a small window
# monochrome-light, monochrome-dark or colorful
TrayIconAppearance = "monochrome-light";
};
SSHAgent.Enabled = true;
};
in
{
# I'm only using keepass on my user, so I'm installing it with home-manager
home-manager = {
/*
TODO: move home-manager settings into the common role
They are not keepass specific, so they really should
not be here. I'm too lazy to do it now tho :P
*/
backupFileExtension = "backup";
useGlobalPkgs = true;
extraSpecialArgs = { kpxcSettings = kpxcSettings; };
users.toast = { config, pkgs, kpxcSettings, ... }: {
home = {
stateVersion = "23.05";
packages = [ pkgs.keepassxc ];
# No module for KeePassXC config :(
file = {
".config/keepassxc/keepassxc.ini".text = kpxcSettings;
# For some reason the autostart .desktop is not the same as the regular one
".config/autostart/org.keepassxc.KeePassXC.desktop".text = ''
[Desktop Entry]
Name=KeePassXC
GenericName=Password Manager
Exec=keepassxc
TryExec=keepassxc
Icon=keepassxc
StartupWMClass=keepassxc
StartupNotify=true
Terminal=false
Type=Application
Version=1.0
Categories=Utility;Security;Qt;
MimeType=application/x-keepass2;
X-GNOME-Autostart-enabled=true
X-GNOME-Autostart-Delay=2
X-KDE-autostart-after=panel
X-LXQt-Need-Tray=true
'';
};
};
};
};
}

View file

@ -0,0 +1,21 @@
{ config, pkgs, lib, ... }:
{
home-manager = {
users.toast = { config, pkgs, ... }:
{
programs.micro = {
enable = true;
settings = {
# Use xclip/wl-clipboard for copying and pasting
clipboard = lib.mkForce "external";
};
};
/*
On a kde wayland session micro uses xsel or xclip instead of wl-clipboard
which doesn't work, so I only install wl-clipboard here to make micro use it
*/
home.packages = with pkgs; [ wl-clipboard ];
};
};
}

View file

@ -1,24 +0,0 @@
{pkgs, ...}: {
nixpkgs.overlays = [
(
final: prev: {
mpv-unwrapped = prev.mpv-unwrapped.override {
cddaSupport = true;
};
}
)
];
home-manager.users.toast = {
programs.mpv = {
enable = true;
scripts = with pkgs.mpvScripts; [
mpris
];
config = {
hwdec = "auto";
cache = true;
cdda-speed = "8";
};
};
};
}

View file

@ -1,5 +0,0 @@
{pkgs, ...}: {
home-manager.users.toast = {
home.packages = [pkgs.spotify];
};
}

View file

@ -1,33 +0,0 @@
{...}: {
programs.ssh.knownHosts = {
everest = {
hostNames = [
"everest.tailscale"
"toast003.xyz"
];
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAqfABZKnF5YYGZTOKuT7m+sOnUqBQSvLke9c3JDsF5s";
};
};
home-manager.users.toast = {
programs.ssh = {
enable = true;
enableDefaultConfig = false;
matchBlocks = {
"everest" = {
host = "toast003.xyz";
hostname = "toast003.xyz";
forwardAgent = true;
sendEnv = ["COLORTERM"];
port = 69;
};
"everest-tailscale" = {
host = "everest";
hostname = "everest.tailscale";
forwardAgent = true;
sendEnv = ["COLORTERM"];
};
};
};
};
}

View file

@ -1,8 +0,0 @@
{...}: {
services.udev.extraRules = ''
SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", ATTRS{idProduct}=="4ee0", MODE="0666"
'';
home-manager.users.toast.services.flatpak = {
packages = ["io.github.parnassius.SysDVR-Qt"];
};
}

View file

@ -1,11 +1,7 @@
{...}: {
imports = [
./ssh-agent.nix
./flatpak.nix
./syncthing.nix
./pipewire.nix
./printing.nix
./networkmanager.nix
./tailscale.nix
];
{ ... }:
{
imports = [
./ssh-agent.nix
];
}

View file

@ -1,17 +0,0 @@
{flakeSelf, ...}: {
services.flatpak.enable = true;
home-manager = {
sharedModules = [{imports = [flakeSelf.inputs.nix-flatpak.homeManagerModules.nix-flatpak];}];
users.toast = {
services.flatpak = {
packages = ["tv.plex.PlexDesktop"];
uninstallUnmanaged = true;
update.auto = {
enable = true;
onCalendar = "weekly";
};
};
};
};
}

View file

@ -1,52 +0,0 @@
{
config,
lib,
flakeSelf,
...
}: let
tailscaleName = config.services.tailscale.interfaceName;
in {
sops.secrets.wifiPasswords = {
sopsFile = "${flakeSelf.inputs.secrets}/wifi-passwords.env";
format = "dotenv";
};
networking.networkmanager = {
enable = true;
unmanaged = [
"interface-name:${tailscaleName}"
];
ensureProfiles = {
environmentFiles = [config.sops.secrets.wifiPasswords.path];
profiles = with lib.toast.networkManager; {
"4g-modem" = mkWifiProfile {
id = "4G Modem";
priority = 5;
ssid = "TP-Link_CCB4";
wifi-security = {
auth-alg = "open";
key-mgmt = "wpa-psk";
psk = "$MODEM";
};
};
phone = mkWifiProfile {
id = "Phone";
priority = 5;
ssid = "Redmi Note 10 Pro_5197";
wifi-security = {
auth-alg = "open";
key-mgmt = "sae";
psk = "$PHONE";
};
};
home = mkWifiProfile {
id = "Home";
ssid = "MOVISTAR-WIFI6-DC98";
wifi-security = {
key-mgmt = "sae";
psk = "$HOME";
};
};
};
};
};
}

View file

@ -1,9 +0,0 @@
{...}: {
services.pipewire = {
enable = true;
pulse.enable = true;
};
# This allows pipewire to get realtime priority, which (hopefully) gets rid of stutters
security.rtkit.enable = true;
}

View file

@ -1,7 +0,0 @@
{...}: {
services.printing = {
enable = true;
startWhenNeeded = true;
stateless = true;
};
}

View file

@ -1,19 +1,21 @@
{...}: {
programs.ssh.startAgent = true;
/*
Home assistant added an option that does this
https://github.com/nix-community/home-manager/commit/2d9210f25ed18d5d4e11e6b886de4027c0c51a94
but since I still need to fix home-manager's envvars not applying I'll stick to the NixOS one
*/
/*
TODO: fix SSH_AUTH_SOCK not being set in Plasma
Turns out the NixOS module also has issues :3
The env is set but only in bash, not in the DE, so
keepass can't pick it up. For now I'll just set it manually
*/
home-manager.users.toast.xdg.configFile."plasma-workspace/env/ssh-agent.sh".text = ''
if [[ -z "$SSH_AUTH_SOCK" ]]; then
export SSH_AUTH_SOCK=$XDG_RUNTIME_DIR/ssh-agent
fi
'';
{ config, pkgs, ... }:
{
programs.ssh.startAgent = true;
/*
Home assistant added an option that does this
https://github.com/nix-community/home-manager/commit/2d9210f25ed18d5d4e11e6b886de4027c0c51a94
but since I still need to fix home-manager's envvars not applying I'll stick to the NixOS one
*/
/*
TODO: fix SSH_AUTH_SOCK not being set in Plasma
Turns out the NixOS module also has issues :3
The env is set but only in bash, not in the DE, so
keepass can't pick it up. For now I'll just set it manually
*/
home-manager.users.toast.xdg.configFile."plasma-workspace/env/ssh-agent.sh".text = ''
if [[ -z "$SSH_AUTH_SOCK" ]]; then
export SSH_AUTH_SOCK=$XDG_RUNTIME_DIR/ssh-agent
fi
'';
}

View file

@ -1,57 +0,0 @@
{config, ...}: {
services.syncthing = {
# enable = true;
# user = "toast";
# group = "users";
# dataDir = config.users.users.toast.home;
settings.folders."passwords".path = "~/Documents/Passwords";
};
age.secrets = {
syncthingCert = {
owner = "toast";
group = "users";
};
syncthingKey = {
owner = "toast";
group = "users";
};
};
home-manager.users.toast = {
osConfig,
lib,
...
}: let
systemConfig = osConfig.services.syncthing;
missingOptions = [
"all_proxy"
"configDir"
"dataDir"
"databaseDir"
"declarative"
"devices"
"folders"
"extraFlags"
"user"
"group"
"systemService"
"openDefaultPorts"
"options"
"relay"
"useInotify"
"guiPasswordFile"
];
removeMissingOptions = rawOptions: (
# lib.attrsets.filterAttrs (n: v: n == "all_proxy") rawOptions
builtins.removeAttrs rawOptions missingOptions
);
in {
services.syncthing =
removeMissingOptions systemConfig
// {
enable = true;
# Renamed options
allProxy = systemConfig.all_proxy;
extraOptions = systemConfig.extraFlags;
};
};
}

View file

@ -1,16 +0,0 @@
{pkgs, ...}: {
home-manager.users.toast = {
services.tailscale-systray = {
enable = true;
package = pkgs.tailscale.overrideAttrs {
postPatch = ''
substituteInPlace client/systray/logo.go --replace-fail \
"color.NRGBA{0, 0, 0, 255}" "color.NRGBA{0, 0, 0, 0}"
'';
# Only use this for the tray, so no testing is needed
# Makes the build last a lot less too
doCheck = false;
};
};
};
}

22
roles/gaming/default.nix Normal file → Executable file
View file

@ -1,16 +1,8 @@
{pkgs, ...}: {
imports = [
./programs
./services
];
system.replaceDependencies.replacements = [
{
oldDependency = pkgs.sdl3;
newDependency = pkgs.sdl3.overrideAttrs {
patches = [
./sdl-keychron-blacklist.patch
];
};
}
];
{ ... }:
{
imports = [
./steam.nix
./mangohud.nix
];
}

20
roles/gaming/mangohud.nix Normal file
View file

@ -0,0 +1,20 @@
{ config, ... }:
{
# This does the same as enableSessionWide does on the mangohud config
environment.sessionVariables = { MANGOHUD = "1"; MANGOHUD_DLSYM = "1"; };
home-manager.users.toast = { config, ... }:
{
programs.mangohud = {
enable = true;
# TODO: fix envvars set by home manager not applying for some reason
# This only works for Vulkan, openGL programs still need the mangohud wrapper
enableSessionWide = true;
settings = {
preset = 4;
no_display = true;
};
};
};
}

View file

@ -1,18 +0,0 @@
{pkgs, ...}: {
# nixpkgs.overlays = [
# (
# final: prev: {
# azahar = prev.azahar.overrideAttrs (old: {
# version = "2120.3";
# src = final.fetchzip {
# url = "https://github.com/azahar-emu/azahar/releases/download/2120.3/azahar-unified-source-20250414-00e3bbb.tar.xz";
# hash = "sha256-3QKicmpmWDM7x9GDJ8sxm2Xu+0Yfho4LkSWMp+ixzRk=";
# };
# });
# }
# )
# ];
home-manager.users.toast = {
home.packages = [pkgs.azahar];
};
}

View file

@ -1,7 +0,0 @@
{pkgs, ...}: {
home-manager.users.toast = {
home = {
packages = [pkgs.cemu];
};
};
}

View file

@ -1,15 +0,0 @@
{pkgs, ...}: {
imports = [
./steam.nix
./mangohud.nix
./rpcs3.nix
./retroarch.nix
./pcsx2.nix
./cemu.nix
./azahar.nix
];
environment.systemPackages = with pkgs; [
heroic
prismlauncher
];
}

View file

@ -1,13 +0,0 @@
{...}: {
home-manager.users.toast = {...}: {
programs.mangohud = {
enable = true;
# This only works for Vulkan, openGL programs still need the mangohud wrapper
enableSessionWide = true;
settings = {
preset = 4;
no_display = true;
};
};
};
}

View file

@ -1,141 +0,0 @@
{
pkgs,
lib,
...
}: let
pcsx2-bios = pkgs.fetchzip {
url = "https://myrient.erista.me/files/Redump/Sony%20-%20PlayStation%202%20-%20BIOS%20Images%20%28DoM%20Version%29/ps2-0200a-20040614.zip";
hash = "sha256-wMvswgmsKl+cJl49VlVW84tvU5Jzd+2dl07SOiUDtwA=";
};
toPcsx2INI = lib.generators.toINI {listsAsDuplicateKeys = true;};
in {
home-manager.users.toast = {
home.packages = with pkgs; [
pcsx2
];
xdg.configFile = {
#PCSX2 silently overwrites the symlink so I need to force it's creation
"PCSX2/inis/PCSX2.ini".force = true;
"PCSX2/inis/PCSX2.ini".text = toPcsx2INI {
UI = {
SettingsVersion = 1;
# Use the system theme
Theme = "";
HideMouseCursor = true;
};
Folders = {
Bios = "/home/toast/.local/share/PCSX2/bios";
};
GameList.RecursivePaths = [
"/home/toast/Games/PS2/"
];
"EmuCore/GS" = {
dithering_ps2 = 1;
upscale_multiplier = 2;
};
EmuCore = {
EnableDiscordPresence = true;
EnableFastBoot = true;
McdFolderAutoManage = false;
};
MemoryCards.Slot1_Filename = "MemoryCard1.ps2";
# Controller settings
Pad1 = {
Up = "SDL-0/DPadUp";
Right = "SDL-0/DPadRight";
Down = "SDL-0/DPadDown";
Left = "SDL-0/DPadLeft";
Triangle = "SDL-0/Y";
Circle = "SDL-0/B";
Cross = "SDL-0/A";
Square = "SDL-0/X";
Select = "SDL-0/Back";
Start = "SDL-0/Start";
L1 = "SDL-0/LeftShoulder";
L2 = "SDL-0/+LeftTrigger";
R1 = "SDL-0/RightShoulder";
R2 = "SDL-0/+RightTrigger";
L3 = "SDL-0/LeftStick";
R3 = "SDL-0/RightStick";
Analog = "SDL-0/Guide";
LUp = "SDL-0/-LeftY";
LRight = "SDL-0/+LeftX";
LDown = "SDL-0/+LeftY";
LLeft = "SDL-0/-LeftX";
RUp = "SDL-0/-RightY";
RRight = "SDL-0/+RightX";
RDown = "SDL-0/+RightY";
RLeft = "SDL-0/-RightX";
LargeMotor = "SDL-0/LargeMotor";
SmallMotor = "SDL-0/SmallMotor";
};
# Default hotkeys
Hotkeys = {
ToggleFullscreen = "Keyboard/Alt & Keyboard/Return";
CycleAspectRatio = "Keyboard/F6";
CycleInterlaceMode = "Keyboard/F5";
CycleMipmapMode = "Keyboard/Insert";
GSDumpMultiFrame = "Keyboard/Control & Keyboard/Shift & Keyboard/F8";
Screenshot = "Keyboard/F8";
GSDumpSingleFrame = "Keyboard/Shift & Keyboard/F8";
ToggleSoftwareRendering = "Keyboard/F9";
ZoomIn = "Keyboard/Control & Keyboard/Plus";
ZoomOut = "Keyboard/Control & Keyboard/Minus";
InputRecToggleMode = "Keyboard/Shift & Keyboard/R";
LoadStateFromSlot = "Keyboard/F3";
SaveStateToSlot = "Keyboard/F1";
NextSaveStateSlot = "Keyboard/F2";
PreviousSaveStateSlot = "Keyboard/Shift & Keyboard/F2";
OpenPauseMenu = "Keyboard/Escape";
ToggleFrameLimit = "Keyboard/F4";
TogglePause = "Keyboard/Space";
ToggleSlowMotion = "Keyboard/Shift & Keyboard/Backtab";
ToggleTurbo = "Keyboard/Tab";
HoldTurbo = "Keyboard/Period";
};
};
# 007 nightfire
"PCSX2/gamesettings/SLUS-20579_5B86BB62.ini".text = toPcsx2INI {
"EmuCore/GS".AspectRatio = "16:9";
};
"PCSX2/gamesettings/SLUS-21050_BEBF8793.ini".text = toPcsx2INI {
"EmuCore/GS".AspectRatio = "16:9";
Patches.Enable = [
"60 FPS for Crashes"
"60 FPS for Menus"
"Progressive Scan"
"MPH to KPH"
"Extra Particles While Driving"
];
};
};
xdg.dataFile = {
# I would prefer to use symlinkJoin like I do for the ISOs, but
# the bios folder needs to be writable to store the bios settings
"PCSX2/bios/ntsc.bin".source = pkgs.runCommandLocal "pcsx2-bios" {} ''
cp -v ${pcsx2-bios}/*.bin $out
'';
};
};
# Syncthing
services.syncthing.settings.folders."pcsx2" = {
label = "PCSX2";
id = "qcdsp-qaaej";
devices = ["steamdeck" "server" "pc" "winmax2"];
path = "~/.config/PCSX2";
};
home-manager.users.toast.xdg.configFile = {
"PCSX2/.stignore".text = ''
cache
bios
gamesettings
inis/PCSX2.ini*
inis/debuggersettings
inputprofiles
logs
'';
};
}

View file

@ -1,87 +0,0 @@
{pkgs, ...}: {
home-manager.users.toast = {
home = {
packages = [
(
pkgs.wrapRetroArch {
cores = with pkgs.libretro; [
snes9x
];
settings = {
video_driver = "vulkan";
video_fullscreen = "true";
menu_swap_ok_cancel_buttons = "true";
input_joypad_driver = "sdl2";
# Enable touchscreen support
menu_pointer_enable = "true";
# Folder stuffs
# System/BIOS files
system_directory = "~/.local/share/retroarch/system";
# Downloads
core_assets_directory = "~/.local/share/retroarch/downloads";
thumbnails_directory = "~/.local/share/retroarch/thumbnails";
content_database_path = "~/.local/share/retroarch/database/rdb";
cheat_database_path = "~/.local/share/retroarch/cheats";
video_filter_dir = "~/.local/share/retroarch/filters/video";
audio_filter_dir = "~/.local/share/retroarch/filters/audio";
video_shader_dir = "~/.local/share/retroarch/shaders";
recording_output_directory = "~/.local/share/retroarch/records";
overlay_directory = "~/.local/share/retroarch/overlays";
osk_overlay_directory = "~/.local/share/retroarch/overlays/keyboards";
screenshot_directory = "~/.local/share/retroarch/screenshots";
playlist_directory = "~/.local/share/retroarch/playlists";
savefile_directory = "~/.local/share/retroarch/saves";
savestate_directory = "~/.local/share/retroarch/states";
log_dir = "~/.local/share/retroarch/logs";
# By default settings has some things that this overrides, so I need to set them myself
libretro_info_path = "${pkgs.libretro-core-info}/share/retroarch/cores";
joypad_autoconfig_dir = "${pkgs.retroarch-joypad-autoconfig}/share/libretro/autoconfig";
assets_directory = "${pkgs.retroarch-assets}/share/retroarch/assets";
};
}
)
];
};
# Retroarch is dumb since it doesn't generate some folders (but it does for others)
systemd.user.tmpfiles.rules = [
"d /%h/.local/share/retroarch/playlists"
"d /%h/.local/share/retroarch/saves"
"d /%h/.local/share/retroarch/states"
];
systemd.user.paths = {
snes-roms = {
Unit.Description = "Monitor SNES rom path for changes";
Path = {
PathChanged = "/%h/Games/SNES";
Unit = "update-retroarch-library.service";
};
Install.WantedBy = ["default.target"];
};
};
systemd.user.services.update-retroarch-library = {
Service = {
Type = "oneshot";
ExecStart = pkgs.writeShellScript "scan-snes-games" ''
${pkgs.libnotify}/bin/notify-send -a RetroArch \
-i retroarch \
"SNES games changed!" \
"Scanning $TRIGGER_PATH..."
${pkgs.retroarch}/bin/retroarch --scan "/home/toast/Games/SNES"
'';
};
};
};
# Sync saves and some other stuff
services.syncthing.settings.folders = {
"retroarch" = {
label = "RetroArch";
id = "jxuou-2yjnu";
devices = ["steamdeck" "server" "pc" "winmax2"];
path = "~/.local/share/retroarch";
};
};
}

View file

@ -1,15 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
rpcs3
];
# Increase the memory lock limit
security.pam.loginLimits = [
{
domain = "*";
item = "memlock";
type = "-"; # Applies to both hard and soft limits
value = "unlimited";
}
];
}

View file

@ -1,34 +0,0 @@
{
config,
pkgs,
...
}: {
programs.steam = {
enable = true;
localNetworkGameTransfers.openFirewall = true;
# Doubt that I'll use it, but I'll enable it anyways
remotePlay.openFirewall = true;
extraCompatPackages = with pkgs; [
proton-ge-bin
];
};
# Some linux native games (rise of the tomb raider) use alsa for sound
services.pipewire.alsa.enable =
if config.services.pipewire.pulse.enable == true
then true
else false;
home-manager.users.toast = {
systemd.user.tmpfiles.rules = [
"r '/%h/.local/share/applications/Steam Linux Runtime *.desktop'"
"r '/%h/.local/share/applications/Proton *.desktop'"
];
services.flatpak.packages = [
# Celeste mod manager
"io.github.everestapi.Olympus"
];
home.packages = [pkgs.sgdboop];
};
}

View file

@ -1,13 +0,0 @@
diff --git a/src/joystick/SDL_joystick.c b/src/joystick/SDL_joystick.c
index 5ce36de86..37bf5ca85 100644
--- a/src/joystick/SDL_joystick.c
+++ b/src/joystick/SDL_joystick.c
@@ -281,6 +281,8 @@ static Uint32 initial_blacklist_devices[] = {
MAKE_VIDPID(0x3297, 0x1969), // Moonlander MK1 Keyboard
MAKE_VIDPID(0x3434, 0x0211), // Keychron K1 Pro System Control
MAKE_VIDPID(0x04f2, 0xa13c), // HP Deluxe Webcam KQ246AA
+ MAKE_VIDPID(0x3434, 0x0353), // Keychron V5 System Control
+ MAKE_VIDPID(0x3434, 0xd030), // Keychron Link
};
static SDL_vidpid_list blacklist_devices = {
SDL_HINT_JOYSTICK_BLACKLIST_DEVICES, 0, 0, NULL,

View file

@ -1,5 +0,0 @@
{...}: {
imports = [
./syncthing.nix
];
}

View file

@ -1,37 +0,0 @@
{...}: {
/*
This file will sync saves for games that don't have cloud saves
TODO: turn this into a module eventually
*/
services.syncthing.settings.folders = {
"steam-201810" = {
label = "Wolfenstein The New Order Saves";
id = "laxxf-t2wmy";
devices = ["steamdeck" "server" "pc" "winmax2"];
path = "~/.local/share/Steam/steamapps/compatdata/201810/pfx/drive_c/users/steamuser/Saved Games/MachineGames/Wolfenstein The New Order/";
};
"project-diva-mods" = {
label = "Project Diva Mods";
id = "7pscj-6egww";
devices = ["steamdeck" "server" "pc" "winmax2"];
path = "~/.local/share/Steam/steamapps/common/Hatsune Miku Project DIVA Mega Mix Plus/mods/";
};
"project-eden-saves" = {
label = "Project Eden saves";
id = "xa3qx-3ax5k";
devices = ["server" "pc" "winmax2" "steamdeck"];
path = "~/.local/share/Steam/steamapps/compatdata/1761390/pfx/drive_c/users/steamuser/AppData/Roaming/EDEN/";
};
"games" = {
label = "Games";
id = "mwzph-gf2df";
devices = ["server" "pc" "winmax2" "steamdeck"];
path = "~/Games";
};
};
home-manager.users.toast.home.file."steam-201810-ignore" = {
target = ".local/share/Steam/steamapps/compatdata/201810/pfx/drive_c/users/steamuser/Saved Games/MachineGames/Wolfenstein The New Order/.stignore";
text = "base/qconsole.log\nbase/wolfConfig.cfg";
};
}

11
roles/gaming/steam.nix Normal file
View file

@ -0,0 +1,11 @@
{ config, pkgs, ... }:
{
programs.steam = {
enable = true;
# Doubt that I'll use it, but I'll enable it anyways
remotePlay.openFirewall = true;
};
# Some linux native games (rise of the tomb raider) use alsa for sound
services.pipewire.alsa.enable = true;
}

View file

@ -1,8 +1,9 @@
{...}: {
imports = [
./plasma.nix
./sddm.nix
./programs
./patches
];
{ ... }:
{
imports = [
./plasma.nix
./sddm.nix
./programs
];
}

View file

@ -0,0 +1,191 @@
diff --git a/share/color-schemes/BreezeClassic.colors b/share/color-schemes/BreezeClassicTint.colors
similarity index 70%
rename from share/color-schemes/BreezeClassic.colors
rename to share/color-schemes/BreezeClassicTint.colors
index 8dbc299..d64e300 100644
--- a/share/color-schemes/BreezeClassic.colors
+++ b/share/color-schemes/BreezeClassicTint.colors
@@ -103,48 +103,12 @@ ForegroundPositive=46,204,113
ForegroundVisited=61,174,230
[General]
-ColorScheme=BreezeClassic
-Name=Breeze Classic
-Name[ar]=نسيم التقليدي
-Name[az]=Breeze klassik
-Name[bg]=Breeze Класически
-Name[ca]=Brisa clàssica
-Name[ca@valencia]=Brisa clàssica
-Name[cs]=Breeze Classic
-Name[da]=Breeze Classic
-Name[de]=Breeze Klassisch
-Name[el]=Breeze κλασικό
-Name[en_GB]=Breeze Classic
-Name[es]=Brisa clásico
-Name[eu]=Breeze klasikoa
-Name[fi]=Perinteinen Breeze
-Name[fr]=Breeze classique
-Name[gl]=Brisa clásica
-Name[hi]=ब्रीज़ क्लासिक
-Name[hu]=Breeze Classic
-Name[ia]=Brisa Classic
-Name[id]=Breeze Klasik
-Name[it]=Brezza classico
-Name[ja]=Breeze クラシック
-Name[ka]=Breeze კლასიკური
-Name[ko]=Breeze 고전
-Name[nl]=Breeze Classic
-Name[nn]=Breeze klassisk
-Name[pl]=Klasyczna Bryza
-Name[pt]=Brisa Clássica
-Name[pt_BR]=Breeze Classic
-Name[ro]=Briză, clasic
-Name[ru]=Breeze, классический вариант
-Name[sk]=Klasický vánok
-Name[sl]=Sapica, klasična
-Name[sv]=Breeze klassisk
-Name[tr]=Esinti Klasik
-Name[uk]=Класична Breeze
-Name[x-test]=xxBreeze Classicxx
-Name[zh_CN]=Breeze 微风经典
-Name[zh_TW]=Breeze Classic
+ColorScheme=BreezeClassicTint
+Name=Breeze Classic (Tint)
accentActiveTitlebar=true
accentInactiveTitlebar=false
+TintFactor=0.2
+TitlebarIsAccentColored=true
shadeSortColumn=true
[KDE]
diff --git a/share/color-schemes/BreezeDark.colors b/share/color-schemes/BreezeDarkTint.colors
similarity index 71%
rename from share/color-schemes/BreezeDark.colors
rename to share/color-schemes/BreezeDarkTint.colors
index fc1fcb0..a97a552 100644
--- a/share/color-schemes/BreezeDark.colors
+++ b/share/color-schemes/BreezeDarkTint.colors
@@ -131,57 +131,10 @@ ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[General]
-ColorScheme=BreezeDark
-Name=Breeze Dark
-Name[ar]=نسيم داكن
-Name[az]=Breeze - Tünd
-Name[bg]=Breeze Тъмен
-Name[bs]=Breeze tamna
-Name[ca]=Brisa fosca
-Name[ca@valencia]=Brisa fosca
-Name[cs]=Breeze Tmavé
-Name[da]=Breeze Dark
-Name[de]=Breeze Dunkel
-Name[el]=Breeze σκούρο
-Name[en_GB]=Breeze Dark
-Name[es]=Brisa oscuro
-Name[et]=Breeze tume
-Name[eu]=Breeze iluna
-Name[fi]=Tumma Breeze
-Name[fr]=Brise sombre
-Name[gl]=Brisa escura
-Name[he]=Breeze Dark
-Name[hi]=ब्रीज़ गहरा
-Name[hu]=Breeze Dark
-Name[ia]=Brisa obscure
-Name[id]=Breeze Gelap
-Name[it]=Brezza scuro
-Name[ja]=Breeze ダーク
-Name[ka]=Breeze მუქი
-Name[ko]=어두운 Breeze
-Name[lt]=Breeze tamsus
-Name[nb]=Breeze mørk
-Name[nl]=Breeze Dark
-Name[nn]=Breeze mørk
-Name[pa]=ਬਰੀਜ਼ ਗੂੜ੍ਹਾ
-Name[pl]=Ciemna Bryza
-Name[pt]=Brisa Escura
-Name[pt_BR]=Breeze Dark
-Name[ro]=Briză, întunecat
-Name[ru]=Breeze, тёмный вариант
-Name[sk]=Tmavý vánok
-Name[sl]=Sapica, temna
-Name[sr]=Поветарац тамни
-Name[sr@ijekavian]=Поветарац тамни
-Name[sr@ijekavianlatin]=Povetarac tamni
-Name[sr@latin]=Povetarac tamni
-Name[sv]=Breeze mörk
-Name[tg]=Насими торик
-Name[tr]=Esinti Koyu
-Name[uk]=Темна Breeze
-Name[x-test]=xxBreeze Darkxx
-Name[zh_CN]=Breeze 微风深色
-Name[zh_TW]=Breeze Dark
+ColorScheme=BreezeDarkTint
+Name=Breeze Dark (Tint)
+TintFactor=0.2
+TitlebarIsAccentColored=true
shadeSortColumn=true
[KDE]
diff --git a/share/color-schemes/BreezeLight.colors b/share/color-schemes/BreezeLightTint.colors
similarity index 75%
rename from share/color-schemes/BreezeLight.colors
rename to share/color-schemes/BreezeLightTint.colors
index 5bfdc22..223509c 100644
--- a/share/color-schemes/BreezeLight.colors
+++ b/share/color-schemes/BreezeLightTint.colors
@@ -131,50 +131,10 @@ ForegroundPositive=39,174,96
ForegroundVisited=155,89,182
[General]
-ColorScheme=BreezeLight
-Name=Breeze Light
-Name[ar]=نسيم فاتح
-Name[az]=Breeze - İşıqlı
-Name[bg]=Breeze Светъл
-Name[ca]=Brisa clara
-Name[ca@valencia]=Brisa clara
-Name[cs]=Breeze Světlé
-Name[da]=Breeze Light
-Name[de]=Breeze Hell
-Name[el]=Breeze φωτεινό
-Name[en_GB]=Breeze Light
-Name[es]=Brisa claro
-Name[et]=Breeze hele
-Name[eu]=Breeze argia
-Name[fi]=Vaalea Breeze
-Name[fr]=Brise clair
-Name[gl]=Brisa clara
-Name[hi]=ब्रीज़ हलका
-Name[hu]=Breeze Light
-Name[ia]=Brisa Ligier
-Name[id]=Breeze Terang
-Name[it]=Brezza chiaro
-Name[ja]=Breeze ライト
-Name[ka]=Breeze ღია
-Name[ko]=밝은 Breeze
-Name[lt]=Breeze šviesus
-Name[nl]=Breeze Light
-Name[nn]=Breeze lys
-Name[pa]=ਬਰੀਜ਼ ਹਲਕਾ
-Name[pl]=Jasna Bryza
-Name[pt]=Brisa Clara
-Name[pt_BR]=Breeze Light
-Name[ro]=Briză, luminos
-Name[ru]=Breeze, светлый вариант
-Name[sk]=Svetlý vánok
-Name[sl]=Sapica, svetla
-Name[sv]=Breeze ljus
-Name[tg]=Насими сабук
-Name[tr]=Esinti Açık
-Name[uk]=Світла Breeze
-Name[x-test]=xxBreeze Lightxx
-Name[zh_CN]=Breeze 微风浅色
-Name[zh_TW]=Breeze Light
+ColorScheme=BreezeLightTint
+Name=Breeze Light (Tint)
+TintFactor=0.2
+TitlebarIsAccentColored=true
shadeSortColumn=true
[KDE]

View file

@ -0,0 +1,838 @@
diff --git a/share/plasma/look-and-feel/org.kde.breezedark.desktop/metadata.json b/share/plasma/look-and-feel/org.kde.breezedark.desktop/metadata.json
deleted file mode 100644
index eb49faf..0000000
--- a/share/plasma/look-and-feel/org.kde.breezedark.desktop/metadata.json
+++ /dev/null
@@ -1,147 +0,0 @@
-{
- "KPlugin": {
- "Authors": [
- {
- "Email": "plasma-devel@kde.org",
- "Name": "KDE Visual Design Group",
- "Name[ar]": "مجموعة التصميم المرئي لكِيدِي",
- "Name[az]": "KDE Vizual Dizayn Qrupu",
- "Name[be]": "Суполка візуальнага дызайну KDE",
- "Name[bg]": "KDE Visual Design Group",
- "Name[ca@valencia]": "Grup de disseny visual de KDE",
- "Name[ca]": "Grup de disseny visual de KDE",
- "Name[cs]": "Skupina vizuálního návrhu KDE",
- "Name[da]": "KDE Visual Design Group",
- "Name[de]": "KDE Visual Design Group",
- "Name[en_GB]": "KDE Visual Design Group",
- "Name[es]": "El grupo de diseño visual de KDE",
- "Name[eu]": "KDE Diseinu bisualeko taldea",
- "Name[fi]": "KDE:n visuaalinen suunnitteluryhmä",
- "Name[fr]": "Groupe de conception visuelle de KDE",
- "Name[hi]": "केडीई विज़ुअल डिज़ाइन दल",
- "Name[hu]": "KDE Visual Design Group",
- "Name[ia]": "KDE Visual Design Group (Gruppo de Designo Visual de KDE)",
- "Name[id]": "Grup Desain Visual KDE",
- "Name[is]": "Myndrænn hönnunarhópur KDE",
- "Name[it]": "KDE Visual Design Group",
- "Name[ja]": "KDE Visual Design Group",
- "Name[ka]": "KDE-ის ვიზუალური დიზაინის ჯგუფი",
- "Name[ko]": "KDE 시각 디자인 그룹",
- "Name[lt]": "KDE vaizdinio dizaino grupė",
- "Name[nl]": "KDE Visuele ontwerpgroep",
- "Name[nn]": "KDE Visual Design Group",
- "Name[pl]": "Grupa oprawy graficznej KDE",
- "Name[pt]": "Grupo de Desenho Visual do KDE",
- "Name[pt_BR]": "Grupo de Design Visual do KDE",
- "Name[ro]": "KDE Visual Design Group",
- "Name[ru]": "Группа KDE Visual Design",
- "Name[sk]": "KDE Visual Design Group",
- "Name[sl]": "Skupina vizualnega designa KDE",
- "Name[sv]": "KDE:s visuella designgrupp",
- "Name[ta]": "கே.டீ.யீ. வரைகலை வடிவமைப்புக் குழு",
- "Name[tr]": "KDE Görsel Tasarım Grubu",
- "Name[uk]": "Група з візуального дизайну KDE",
- "Name[vi]": "Đội Thiết kế Trực quan KDE",
- "Name[x-test]": "xxKDE Visual Design Groupxx",
- "Name[zh_CN]": "KDE 视觉设计团队"
- }
- ],
- "Category": "",
- "Description": "Breeze Dark by the KDE VDG",
- "Description[ar]": "نسيم داكن من من مجموعة تصميم كِيدِي",
- "Description[az]": "KDE VDG tərəfindən Breeze Qara",
- "Description[be]": "Breeze Dark ад KDE VDG",
- "Description[bg]": "Breeze Тъмен от KDE VDG",
- "Description[ca@valencia]": "Brisa fosca, creat pel VDG de KDE",
- "Description[ca]": "Brisa fosca, creat pel VDG del KDE",
- "Description[cs]": "Breeze Dark od KDE VDG",
- "Description[da]": "Breeze Dark af KDE's visuelle designgruppe",
- "Description[de]": "Breeze Dunkel von der KDE VDG",
- "Description[en_GB]": "Breeze Dark by the KDE VDG",
- "Description[es]": "Brisa oscuro por KDE VDG",
- "Description[et]": "Breeze tume KDE VDG-lt",
- "Description[eu]": "Breeze iluna KDEren VDGk egina",
- "Description[fi]": "Tumma Breeze KDE VDG:ltä",
- "Description[fr]": "Breeze sombre par le groupe de conception visuelle de KDE « VDG »",
- "Description[hi]": "केडीई वीडीजी द्वारा ब्रीज़ गहरा",
- "Description[hu]": "Breeze Dark a KDE VDG-től",
- "Description[ia]": "Breeze Dark (Brisa Obscure) per le KDE VDG",
- "Description[id]": "Breeze oleh KDE VDG",
- "Description[is]": "Breeze Dark frá KDE VDG",
- "Description[it]": "Brezza scuro del KDE VDG",
- "Description[ja]": "Breeze Dark by the KDE VDG",
- "Description[ka]": "Breeze Dark \"KDE VDG\"-სგან",
- "Description[ko]": "KDE 시각 디자인 그룹에서 제작한 어두운 Breeze",
- "Description[lt]": "Breeze tamsus pagal KDE VDG",
- "Description[nl]": "Breeze Dark door de KDE VDG",
- "Description[nn]": "Breeze mørk frå KDE VDG",
- "Description[pa]": "ਕੇਡੀਈ ਵੀਡੀਜੀ ਵਲੋਂ ਬਰੀਜ਼ ਗੂੜ੍ਹਾ",
- "Description[pl]": "Ciemna Bryza autorstwa KDE VDG",
- "Description[pt]": "Brisa Escuro da VDG do KDE",
- "Description[pt_BR]": "Breeze Dark pelo KDE VDG",
- "Description[ro]": "Briză, întunecat, de KDE VDG",
- "Description[ru]": "Тёмный вариант Breeze от KDE VDG",
- "Description[sk]": "Vánok Tmavý od KDE VDG",
- "Description[sl]": "Sapica temna avtorjev KDE VDG",
- "Description[sv]": "Breeze mörk av KDE:s visuella designgrupp",
- "Description[tr]": "KDE VDG'den Esinti Koyu",
- "Description[uk]": "Темна Breeze, автори — KDE VDG",
- "Description[vi]": "Breeze Tối, do KDE VDG",
- "Description[x-test]": "xxBreeze Dark by the KDE VDGxx",
- "Description[zh_CN]": "Breeze 微风深色主题,由 KDE VDG (视觉设计团队) 设计制作",
- "Description[zh_TW]": "由 KDE VDG 設計的 Breeze Dark",
- "Id": "org.kde.breezedark.desktop",
- "License": "GPLv2+",
- "Name": "Breeze Dark",
- "Name[ar]": "نسيم داكن",
- "Name[az]": "Breeze Qara",
- "Name[be]": "Breeze Dark",
- "Name[bg]": "Breeze Тъмен",
- "Name[ca@valencia]": "Brisa fosca",
- "Name[ca]": "Brisa fosca",
- "Name[cs]": "Breeze Tmavé",
- "Name[da]": "Breeze Dark",
- "Name[de]": "Breeze Dunkel",
- "Name[en_GB]": "Breeze Dark",
- "Name[es]": "Brisa oscuro",
- "Name[et]": "Breeze tume",
- "Name[eu]": "Breeze iluna",
- "Name[fi]": "Tumma Breeze",
- "Name[fr]": "Breeze sombre",
- "Name[hi]": "ब्रीज़ गहरा",
- "Name[hu]": "Breeze Dark",
- "Name[ia]": "Brisa obscure",
- "Name[id]": "Breeze Gelap",
- "Name[is]": "Breeze Dark",
- "Name[it]": "Brezza scuro",
- "Name[ja]": "Breeze Dark",
- "Name[ka]": "ნავი მუქი",
- "Name[ko]": "어두운 Breeze",
- "Name[lt]": "Breeze tamsus",
- "Name[nl]": "Breeze Dark",
- "Name[nn]": "Breeze mørk",
- "Name[pa]": "ਬਰੀਜ਼ ਗੂੜ੍ਹਾ",
- "Name[pl]": "Ciemna Bryza",
- "Name[pt]": "Brisa Escura",
- "Name[pt_BR]": "Breeze Dark",
- "Name[ro]": "Briză, întunecat",
- "Name[ru]": "Breeze, тёмный вариант",
- "Name[sk]": "Vánok Tmavý",
- "Name[sl]": "Sapica temna",
- "Name[sv]": "Breeze mörk",
- "Name[ta]": "கருப்பு பிரீஸ்",
- "Name[tg]": "Насими торик",
- "Name[tr]": "Esinti Koyu",
- "Name[uk]": "Темна Breeze",
- "Name[vi]": "Breeze Tối",
- "Name[x-test]": "xxBreeze Darkxx",
- "Name[zh_CN]": "Breeze 微风深色",
- "Name[zh_TW]": "Breeze Dark",
- "ServiceTypes": [
- "Plasma/LookAndFeel"
- ],
- "Version": "2.0",
- "Website": "https://www.kde.org"
- },
- "X-Plasma-MainScript": "defaults"
-}
diff --git a/share/plasma/look-and-feel/org.kde.breezedark.desktop/contents/defaults b/share/plasma/look-and-feel/org.kde.breezedarktint.desktop/contents/defaults
similarity index 90%
rename from share/plasma/look-and-feel/org.kde.breezedark.desktop/contents/defaults
rename to share/plasma/look-and-feel/org.kde.breezedarktint.desktop/contents/defaults
index 3db126f..764fa66 100644
--- a/share/plasma/look-and-feel/org.kde.breezedark.desktop/contents/defaults
+++ b/share/plasma/look-and-feel/org.kde.breezedarktint.desktop/contents/defaults
@@ -2,7 +2,7 @@
widgetStyle=Breeze
[kdeglobals][General]
-ColorScheme=BreezeDark
+ColorScheme=BreezeDarkTint
[kdeglobals][Icons]
Theme=breeze-dark
@@ -11,7 +11,7 @@ Theme=breeze-dark
name=default
[Wallpaper]
-Image=Next
+Image=MilkyWay
[kcminputrc][Mouse]
cursorTheme=breeze_cursors
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/layouts/org.kde.plasma.desktop-layout.js b/share/plasma/look-and-feel/org.kde.breezedarktint.desktop/contents/layouts/org.kde.plasma.desktop-layout.js
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/layouts/org.kde.plasma.desktop-layout.js
rename to share/plasma/look-and-feel/org.kde.breezedarktint.desktop/contents/layouts/org.kde.plasma.desktop-layout.js
diff --git a/share/plasma/look-and-feel/org.kde.breezedark.desktop/contents/previews/fullscreenpreview.jpg b/share/plasma/look-and-feel/org.kde.breezedarktint.desktop/contents/previews/fullscreenpreview.jpg
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breezedark.desktop/contents/previews/fullscreenpreview.jpg
rename to share/plasma/look-and-feel/org.kde.breezedarktint.desktop/contents/previews/fullscreenpreview.jpg
diff --git a/share/plasma/look-and-feel/org.kde.breezedark.desktop/contents/previews/preview.png b/share/plasma/look-and-feel/org.kde.breezedarktint.desktop/contents/previews/preview.png
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breezedark.desktop/contents/previews/preview.png
rename to share/plasma/look-and-feel/org.kde.breezedarktint.desktop/contents/previews/preview.png
diff --git a/share/plasma/look-and-feel/org.kde.breezedarktint.desktop/metadata.json b/share/plasma/look-and-feel/org.kde.breezedarktint.desktop/metadata.json
new file mode 100644
index 0000000..4103034
--- /dev/null
+++ b/share/plasma/look-and-feel/org.kde.breezedarktint.desktop/metadata.json
@@ -0,0 +1,61 @@
+{
+ "KPlugin": {
+ "Authors": [
+ {
+ "Email": "plasma-devel@kde.org",
+ "Name": "KDE Visual Design Group",
+ "Name[ar]": "مجموعة التصميم المرئي لكِيدِي",
+ "Name[az]": "KDE Vizual Dizayn Qrupu",
+ "Name[be]": "Суполка візуальнага дызайну KDE",
+ "Name[bg]": "KDE Visual Design Group",
+ "Name[ca@valencia]": "Grup de disseny visual de KDE",
+ "Name[ca]": "Grup de disseny visual de KDE",
+ "Name[cs]": "Skupina vizuálního návrhu KDE",
+ "Name[da]": "KDE Visual Design Group",
+ "Name[de]": "KDE Visual Design Group",
+ "Name[en_GB]": "KDE Visual Design Group",
+ "Name[es]": "El grupo de diseño visual de KDE",
+ "Name[eu]": "KDE Diseinu bisualeko taldea",
+ "Name[fi]": "KDE:n visuaalinen suunnitteluryhmä",
+ "Name[fr]": "Groupe de conception visuelle de KDE",
+ "Name[hi]": "केडीई विज़ुअल डिज़ाइन दल",
+ "Name[hu]": "KDE Visual Design Group",
+ "Name[ia]": "KDE Visual Design Group (Gruppo de Designo Visual de KDE)",
+ "Name[id]": "Grup Desain Visual KDE",
+ "Name[is]": "Myndrænn hönnunarhópur KDE",
+ "Name[it]": "KDE Visual Design Group",
+ "Name[ja]": "KDE Visual Design Group",
+ "Name[ka]": "KDE-ის ვიზუალური დიზაინის ჯგუფი",
+ "Name[ko]": "KDE 시각 디자인 그룹",
+ "Name[lt]": "KDE vaizdinio dizaino grupė",
+ "Name[nl]": "KDE Visuele ontwerpgroep",
+ "Name[nn]": "KDE Visual Design Group",
+ "Name[pl]": "Grupa oprawy graficznej KDE",
+ "Name[pt]": "Grupo de Desenho Visual do KDE",
+ "Name[pt_BR]": "Grupo de Design Visual do KDE",
+ "Name[ro]": "KDE Visual Design Group",
+ "Name[ru]": "Группа KDE Visual Design",
+ "Name[sk]": "KDE Visual Design Group",
+ "Name[sl]": "Skupina vizualnega designa KDE",
+ "Name[sv]": "KDE:s visuella designgrupp",
+ "Name[ta]": "கே.டீ.யீ. வரைகலை வடிவமைப்புக் குழு",
+ "Name[tr]": "KDE Görsel Tasarım Grubu",
+ "Name[uk]": "Група з візуального дизайну KDE",
+ "Name[vi]": "Đội Thiết kế Trực quan KDE",
+ "Name[x-test]": "xxKDE Visual Design Groupxx",
+ "Name[zh_CN]": "KDE 视觉设计团队"
+ }
+ ],
+ "Category": "",
+ "Description": "Breeze Dark (Tint) by the KDE VDG",
+ "Id": "org.kde.breezedarktint.desktop",
+ "License": "GPLv2+",
+ "Name": "Breeze Dark (Tint)",
+ "ServiceTypes": [
+ "Plasma/LookAndFeel"
+ ],
+ "Version": "2.0",
+ "Website": "https://www.kde.org"
+ },
+ "X-Plasma-MainScript": "defaults"
+}
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/ActionButton.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/ActionButton.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/ActionButton.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/ActionButton.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/Battery.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/Battery.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/Battery.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/Battery.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/Clock.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/Clock.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/Clock.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/Clock.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/SessionManagementScreen.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/SessionManagementScreen.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/SessionManagementScreen.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/SessionManagementScreen.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/UserDelegate.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/UserDelegate.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/UserDelegate.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/UserDelegate.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/UserList.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/UserList.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/UserList.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/UserList.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/VirtualKeyboard.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/VirtualKeyboard.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/VirtualKeyboard.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/VirtualKeyboard.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/VirtualKeyboard_wayland.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/VirtualKeyboard_wayland.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/VirtualKeyboard_wayland.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/VirtualKeyboard_wayland.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/WallpaperFader.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/WallpaperFader.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/WallpaperFader.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/WallpaperFader.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/animation/RejectPasswordAnimation.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/animation/RejectPasswordAnimation.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/animation/RejectPasswordAnimation.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/animation/RejectPasswordAnimation.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/animation/RejectPasswordPathAnimation.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/animation/RejectPasswordPathAnimation.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/animation/RejectPasswordPathAnimation.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/animation/RejectPasswordPathAnimation.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/artwork/README.txt b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/artwork/README.txt
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/artwork/README.txt
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/artwork/README.txt
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/artwork/logout_primary.svgz b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/artwork/logout_primary.svgz
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/artwork/logout_primary.svgz
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/artwork/logout_primary.svgz
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/artwork/restart_primary.svgz b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/artwork/restart_primary.svgz
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/artwork/restart_primary.svgz
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/artwork/restart_primary.svgz
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/artwork/shutdown_primary.svgz b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/artwork/shutdown_primary.svgz
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/artwork/shutdown_primary.svgz
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/components/artwork/shutdown_primary.svgz
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/defaults b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/defaults
similarity index 90%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/defaults
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/defaults
index d8df939..852c691 100644
--- a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/defaults
+++ b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/defaults
@@ -2,7 +2,7 @@
widgetStyle=Breeze
[kdeglobals][General]
-ColorScheme=BreezeLight
+ColorScheme=BreezeLightTint
[kdeglobals][Icons]
Theme=breeze
@@ -11,7 +11,7 @@ Theme=breeze
name=default
[Wallpaper]
-Image=Next
+Image=MilkyWay
[kcminputrc][Mouse]
cursorTheme=breeze_cursors
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/desktopswitcher/DesktopSwitcher.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/desktopswitcher/DesktopSwitcher.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/desktopswitcher/DesktopSwitcher.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/desktopswitcher/DesktopSwitcher.qml
diff --git a/share/plasma/look-and-feel/org.kde.breezedark.desktop/contents/layouts/org.kde.plasma.desktop-layout.js b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/layouts/org.kde.plasma.desktop-layout.js
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breezedark.desktop/contents/layouts/org.kde.plasma.desktop-layout.js
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/layouts/org.kde.plasma.desktop-layout.js
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/LockOsd.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/LockOsd.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/LockOsd.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/LockOsd.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/LockScreen.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/LockScreen.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/LockScreen.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/LockScreen.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/LockScreenUi.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/LockScreenUi.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/LockScreenUi.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/LockScreenUi.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/MainBlock.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/MainBlock.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/MainBlock.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/MainBlock.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/MediaControls.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/MediaControls.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/MediaControls.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/MediaControls.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/NoPasswordUnlock.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/NoPasswordUnlock.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/NoPasswordUnlock.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/NoPasswordUnlock.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/config.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/config.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/config.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/config.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/config.xml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/config.xml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/config.xml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/lockscreen/config.xml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/logout/Logout.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/logout/Logout.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/logout/Logout.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/logout/Logout.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/logout/LogoutButton.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/logout/LogoutButton.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/logout/LogoutButton.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/logout/LogoutButton.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/logout/timer.js b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/logout/timer.js
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/logout/timer.js
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/logout/timer.js
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/osd/Osd.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/osd/Osd.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/osd/Osd.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/osd/Osd.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/osd/OsdItem.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/osd/OsdItem.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/osd/OsdItem.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/osd/OsdItem.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/desktopswitcher.png b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/desktopswitcher.png
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/desktopswitcher.png
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/desktopswitcher.png
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/fullscreenpreview.jpg b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/fullscreenpreview.jpg
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/fullscreenpreview.jpg
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/fullscreenpreview.jpg
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/lockscreen.png b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/lockscreen.png
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/lockscreen.png
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/lockscreen.png
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/loginmanager.png b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/loginmanager.png
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/loginmanager.png
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/loginmanager.png
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/preview.png b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/preview.png
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/preview.png
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/preview.png
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/runcommand.png b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/runcommand.png
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/runcommand.png
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/runcommand.png
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/splash.png b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/splash.png
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/splash.png
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/splash.png
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/userswitcher.png b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/userswitcher.png
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/userswitcher.png
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/userswitcher.png
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/windowdecoration.png b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/windowdecoration.png
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/windowdecoration.png
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/windowdecoration.png
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/windowswitcher.png b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/windowswitcher.png
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/previews/windowswitcher.png
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/previews/windowswitcher.png
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/splash/Splash.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/splash/Splash.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/splash/Splash.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/splash/Splash.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/splash/images/busywidget.svgz b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/splash/images/busywidget.svgz
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/splash/images/busywidget.svgz
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/splash/images/busywidget.svgz
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/splash/images/kde.svgz b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/splash/images/kde.svgz
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/splash/images/kde.svgz
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/splash/images/kde.svgz
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/splash/images/plasma.svgz b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/splash/images/plasma.svgz
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/splash/images/plasma.svgz
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/splash/images/plasma.svgz
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/systemdialog/SystemDialog.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/systemdialog/SystemDialog.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/systemdialog/SystemDialog.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/systemdialog/SystemDialog.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/windowswitcher/WindowSwitcher.qml b/share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/windowswitcher/WindowSwitcher.qml
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/contents/windowswitcher/WindowSwitcher.qml
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/contents/windowswitcher/WindowSwitcher.qml
diff --git a/share/plasma/look-and-feel/org.kde.breeze.desktop/metadata.json b/share/plasma/look-and-feel/org.kde.breezetint.desktop/metadata.json
similarity index 72%
rename from share/plasma/look-and-feel/org.kde.breeze.desktop/metadata.json
rename to share/plasma/look-and-feel/org.kde.breezetint.desktop/metadata.json
index a6899c0..108c44e 100644
--- a/share/plasma/look-and-feel/org.kde.breeze.desktop/metadata.json
+++ b/share/plasma/look-and-feel/org.kde.breezetint.desktop/metadata.json
@@ -47,106 +47,10 @@
}
],
"Category": "",
- "Description": "Breeze by the KDE VDG",
- "Description[ar]": "نسيم من مجموعة تصميم كِيدِي",
- "Description[az]": "KDE VDG tərəfindən Breeze İş mühiti görünüşü",
- "Description[be]": "Breeze ад KDE VDG",
- "Description[bg]": "Breeze от KDE VDG",
- "Description[ca@valencia]": "Brisa, creat pel VDG de KDE",
- "Description[ca]": "Brisa, creat pel VDG del KDE",
- "Description[cs]": "Breeze od KDE VDG",
- "Description[da]": "Breeze af KDE's visuelle designgruppe",
- "Description[de]": "Breeze von der KDE VDG",
- "Description[en_GB]": "Breeze by the KDE VDG",
- "Description[es]": "Brisa por KDE VDG",
- "Description[et]": "Breeze KDE VDG-lt",
- "Description[eu]": "Breeze KDEren VDGk egina",
- "Description[fi]": "Breeze KDE VDG:ltä",
- "Description[fr]": "Breeze, par KDE VDG",
- "Description[hi]": "केडीई वीडीजी द्वारा ब्रीज़",
- "Description[hu]": "Breeze a KDE VDG-től",
- "Description[ia]": "Breeze (Brisa) per le KDE VDG",
- "Description[id]": "Breeze oleh KDE VDG",
- "Description[is]": "Breeze frá KDE VDG",
- "Description[it]": "Brezza del KDE VDG",
- "Description[ja]": "Breeze by the KDE VDG",
- "Description[ka]": "Breeze KDE VDG-სგან",
- "Description[ko]": "KDE 시각 디자인 그룹에서 제작한 Breeze",
- "Description[lt]": "Breeze pagal KDE VDG",
- "Description[nl]": "Breeze door de KDE VDG",
- "Description[nn]": "Breeze frå KDE VDG",
- "Description[pa]": "KDE VDG ਵਲੋਂ ਬਰੀਜ਼",
- "Description[pl]": "Bryza autorstwa KDE VDG",
- "Description[pt]": "Brisa da VDG do KDE",
- "Description[pt_BR]": "Breeze pelo KDE VDG",
- "Description[ro]": "Briză, de KDE VDG",
- "Description[ru]": "Оформление рабочей среды Breeze от KDE VDG",
- "Description[sk]": "Vánok od KDE VDG",
- "Description[sl]": "Sapica avtorjev KDE VDG",
- "Description[sv]": "Breeze av KDE:s visuella designgrupp",
- "Description[tr]": "KDE VDG'den Esinti",
- "Description[uk]": "Breeze, автори — KDE VDG",
- "Description[vi]": "Breeze, do KDE VDG",
- "Description[x-test]": "xxBreeze by the KDE VDGxx",
- "Description[zh_CN]": "Breeze 微风主题,由 KDE VDG (视觉设计团队) 设计制作",
- "Description[zh_TW]": "由 KDE VDG 設計的 Breeze",
- "Id": "org.kde.breeze.desktop",
+ "Description": "Breeze (Tint) by the KDE VDG",
+ "Id": "org.kde.breezetint.desktop",
"License": "GPLv2+",
- "Name": "Breeze",
- "Name[ar]": "نسيم",
- "Name[az]": "Breeze",
- "Name[be]": "Breeze",
- "Name[bg]": "Breeze",
- "Name[bs]": "Breeze",
- "Name[ca@valencia]": "Brisa",
- "Name[ca]": "Brisa",
- "Name[cs]": "Breeze",
- "Name[da]": "Breeze",
- "Name[de]": "Breeze",
- "Name[el]": "Breeze",
- "Name[en_GB]": "Breeze",
- "Name[es]": "Brisa",
- "Name[et]": "Breeze",
- "Name[eu]": "Breeze",
- "Name[fi]": "Breeze",
- "Name[fr]": "Breeze",
- "Name[gl]": "Breeze",
- "Name[hi]": "ब्रीज़",
- "Name[hu]": "Breeze",
- "Name[ia]": "Brisa",
- "Name[id]": "Breeze",
- "Name[is]": "Breeze",
- "Name[it]": "Brezza",
- "Name[ja]": "Breeze",
- "Name[ka]": "ნიავი",
- "Name[ko]": "Breeze",
- "Name[lt]": "Breeze",
- "Name[ml]": "ബ്രീസ്",
- "Name[nb]": "Breeze",
- "Name[nds]": "Breeze",
- "Name[nl]": "Breeze",
- "Name[nn]": "Breeze",
- "Name[pa]": "ਬਰੀਜ਼",
- "Name[pl]": "Bryza",
- "Name[pt]": "Brisa",
- "Name[pt_BR]": "Breeze",
- "Name[ro]": "Briză",
- "Name[ru]": "Breeze",
- "Name[sk]": "Vánok",
- "Name[sl]": "Sapica",
- "Name[sr@ijekavian]": "Поветарац",
- "Name[sr@ijekavianlatin]": "Povetarac",
- "Name[sr@latin]": "Povetarac",
- "Name[sr]": "Поветарац",
- "Name[sv]": "Breeze",
- "Name[ta]": "பிரீஸ்",
- "Name[tg]": "Насим",
- "Name[tr]": "Esinti",
- "Name[uk]": "Breeze",
- "Name[vi]": "Breeze",
- "Name[x-test]": "xxBreezexx",
- "Name[zh_CN]": "Breeze 微风",
- "Name[zh_TW]": "微風",
+ "Name": "Breeze (Tint)",
"ServiceTypes": [
"Plasma/LookAndFeel"
],
diff --git a/share/plasma/look-and-feel/org.kde.breezetwilight.desktop/metadata.json b/share/plasma/look-and-feel/org.kde.breezetwilight.desktop/metadata.json
deleted file mode 100644
index 16dec51..0000000
--- a/share/plasma/look-and-feel/org.kde.breezetwilight.desktop/metadata.json
+++ /dev/null
@@ -1,145 +0,0 @@
-{
- "KPlugin": {
- "Authors": [
- {
- "Email": "plasma-devel@kde.org",
- "Name": "KDE Visual Design Group",
- "Name[ar]": "مجموعة التصميم المرئي لكِيدِي",
- "Name[az]": "KDE Vizual Dizayn Qrupu",
- "Name[be]": "Суполка візуальнага дызайну KDE",
- "Name[bg]": "KDE Visual Design Group",
- "Name[ca@valencia]": "Grup de disseny visual de KDE",
- "Name[ca]": "Grup de disseny visual de KDE",
- "Name[cs]": "Skupina vizuálního návrhu KDE",
- "Name[da]": "KDE Visual Design Group",
- "Name[de]": "KDE Visual Design Group",
- "Name[en_GB]": "KDE Visual Design Group",
- "Name[es]": "El grupo de diseño visual de KDE",
- "Name[eu]": "KDE Diseinu bisualeko taldea",
- "Name[fi]": "KDE:n visuaalinen suunnitteluryhmä",
- "Name[fr]": "Groupe de conception visuelle de KDE",
- "Name[hi]": "केडीई विज़ुअल डिज़ाइन दल",
- "Name[hu]": "KDE Visual Design Group",
- "Name[ia]": "KDE Visual Design Group (Gruppo de Designo Visual de KDE)",
- "Name[id]": "Grup Desain Visual KDE",
- "Name[is]": "Myndrænn hönnunarhópur KDE",
- "Name[it]": "KDE Visual Design Group",
- "Name[ja]": "KDE Visual Design Group",
- "Name[ka]": "KDE-ის ვიზუალური დიზაინის ჯგუფი",
- "Name[ko]": "KDE 시각 디자인 그룹",
- "Name[lt]": "KDE vaizdinio dizaino grupė",
- "Name[nl]": "KDE Visuele ontwerpgroep",
- "Name[nn]": "KDE Visual Design Group",
- "Name[pl]": "Grupa oprawy graficznej KDE",
- "Name[pt]": "Grupo de Desenho Visual do KDE",
- "Name[pt_BR]": "Grupo de Design Visual do KDE",
- "Name[ro]": "KDE Visual Design Group",
- "Name[ru]": "Группа KDE Visual Design",
- "Name[sk]": "KDE Visual Design Group",
- "Name[sl]": "Skupina vizualnega designa KDE",
- "Name[sv]": "KDE:s visuella designgrupp",
- "Name[ta]": "கே.டீ.யீ. வரைகலை வடிவமைப்புக் குழு",
- "Name[tr]": "KDE Görsel Tasarım Grubu",
- "Name[uk]": "Група з візуального дизайну KDE",
- "Name[vi]": "Đội Thiết kế Trực quan KDE",
- "Name[x-test]": "xxKDE Visual Design Groupxx",
- "Name[zh_CN]": "KDE 视觉设计团队"
- }
- ],
- "Category": "",
- "Description": "Breeze Twilight by the KDE VDG",
- "Description[ar]": "نسيم الفجر من مجموعة تصميم كِيدِي",
- "Description[az]": "KDE VDG tərəfindən Breeze Toranlıq",
- "Description[be]": "Breeze Twilight ад KDE VDG",
- "Description[bg]": "Breeze Здрач от KDE VDG",
- "Description[ca@valencia]": "Brisa crepuscular, creat pel VDG de KDE",
- "Description[ca]": "Brisa crepuscular, creat pel VDG del KDE",
- "Description[cs]": "Breeze Twilight od KDE VDG",
- "Description[da]": "Breeze Twilight af KDE VDG",
- "Description[de]": "Breeze Dämmerung von der KDE VG",
- "Description[en_GB]": "Breeze Twilight by the KDE VDG",
- "Description[es]": "Brisa crepúsculo por KDE VDG",
- "Description[et]": "Breeze videvik KDE VDG-lt",
- "Description[eu]": "Breeze ilunabarra KDEren VDGk egina",
- "Description[fi]": "Hämärä Breeze KDE VDG:ltä",
- "Description[fr]": "Breeze clair-obscur par l'équipe de conception visuelle de KDE « VDG »",
- "Description[hi]": "केडीई वीडीजी द्वारा ब्रीज़ गोधूली",
- "Description[hu]": "Breeze Twilight a KDE VDG-től",
- "Description[ia]": "Brisa Crepusculo (Breeze Twilight) per KDE VDG",
- "Description[id]": "Breeze Twilight oleh KDE VDG",
- "Description[is]": "Breeze Twilight frá KDE VDG",
- "Description[it]": "Brezza crepuscolo del VDG di KDE",
- "Description[ja]": "Breeze Twilight by the KDE VDG",
- "Description[ka]": "Breeze Twilight-ი KDE VDG-ის მიერ",
- "Description[ko]": "KDE 시각 디자인 그룹에서 제작한 새벽의 Breeze",
- "Description[lt]": "Breeze prieblanda pagal KDE VDG",
- "Description[nl]": "Breeze Twilight door de KDE VDG",
- "Description[nn]": "Breeze skumring frå KDE VDG",
- "Description[pl]": "Półmroczna bryza autorstwa KDE VDG",
- "Description[pt]": "Brisa ao Anoitecer da VDG do KDE",
- "Description[pt_BR]": "Breeze Twilight pelo KDE VDG",
- "Description[ro]": "Briză, amurg, de KDE VDG",
- "Description[ru]": "Оформление рабочей среды Breeze Twilight от KDE VDG",
- "Description[sk]": "Vánok Súmrak od KDE VDG",
- "Description[sl]": "Sapica ob mraku avtorjev KDE VDG",
- "Description[sv]": "Breeze skymning av KDE:s visuella designgrupp",
- "Description[tr]": "KDE VDG'den Esinti Gündoğumu",
- "Description[uk]": "Сутінкова Breeze, автори — KDE VDG",
- "Description[vi]": "Breeze Chạng vạng, do KDE VDG",
- "Description[x-test]": "xxBreeze Twilight by the KDE VDGxx",
- "Description[zh_CN]": "Breeze 微风阴阳主题,由 KDE VDG (视觉设计团队) 设计制作",
- "Description[zh_TW]": "由 KDE VDG 設計的 Breeze Twilight",
- "Id": "org.kde.breezetwilight.desktop",
- "License": "GPLv2+",
- "Name": "Breeze Twilight",
- "Name[ar]": "نسيم الفجر",
- "Name[az]": "Breeze Toranlıq",
- "Name[be]": "Breeze Twilight",
- "Name[bg]": "Breeze Здрач",
- "Name[ca@valencia]": "Brisa crepuscular",
- "Name[ca]": "Brisa crepuscular",
- "Name[cs]": "Breeze Twilight",
- "Name[da]": "Breeze Twilight",
- "Name[de]": "Breeze Dämmerung",
- "Name[en_GB]": "Breeze Twilight",
- "Name[es]": "Brisa crepúsculo",
- "Name[et]": "Breeze videvik",
- "Name[eu]": "Breeze ilunabarra",
- "Name[fi]": "Hämärä Breeze",
- "Name[fr]": "Breeze clair-obscur ",
- "Name[hi]": "ब्रीज़ गोधूली",
- "Name[hu]": "Breeze Twilight",
- "Name[ia]": "Brisa Crepusculo (Breeze Twilight)",
- "Name[id]": "Breeze Twilight",
- "Name[is]": "Breeze Twilight",
- "Name[it]": "Brezza crepuscolo",
- "Name[ja]": "Breeze Twilight",
- "Name[ka]": "ნიავი ღია",
- "Name[ko]": "새벽의 Breeze",
- "Name[lt]": "Breeze prieblanda",
- "Name[nl]": "Breeze Twilight",
- "Name[nn]": "Breeze skumring",
- "Name[pa]": "ਬਰੀਜ਼ ਆਥਣ",
- "Name[pl]": "Półmroczna bryza",
- "Name[pt]": "Brisa ao Anoitecer",
- "Name[pt_BR]": "Breeze Twilight",
- "Name[ro]": "Briză, amurg",
- "Name[ru]": "Breeze Twilight",
- "Name[sk]": "Vánok Súmrak",
- "Name[sl]": "Sapica ob mraku",
- "Name[sv]": "Breeze skymning",
- "Name[ta]": "கலந்த பிரீஸ்",
- "Name[tg]": "Насими нимторикӣ",
- "Name[tr]": "Esinti Gündoğumu",
- "Name[uk]": "Сутінкова Breeze",
- "Name[vi]": "Breeze Chạng vạng",
- "Name[x-test]": "xxBreeze Twilightxx",
- "Name[zh_CN]": "Breeze 微风阴阳",
- "ServiceTypes": [
- "Plasma/LookAndFeel"
- ],
- "Version": "2.0",
- "Website": "https://www.kde.org"
- },
- "X-Plasma-MainScript": "defaults"
-}
diff --git a/share/plasma/look-and-feel/org.kde.breezetwilight.desktop/contents/defaults b/share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/contents/defaults
similarity index 90%
rename from share/plasma/look-and-feel/org.kde.breezetwilight.desktop/contents/defaults
rename to share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/contents/defaults
index 02bc445..8537d4b 100644
--- a/share/plasma/look-and-feel/org.kde.breezetwilight.desktop/contents/defaults
+++ b/share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/contents/defaults
@@ -2,7 +2,7 @@
widgetStyle=Breeze
[kdeglobals][General]
-ColorScheme=BreezeLight
+ColorScheme=BreezeLightTint
[kdeglobals][Icons]
Theme=breeze
@@ -11,7 +11,7 @@ Theme=breeze
name=breeze-dark
[Wallpaper]
-Image=Next
+Image=MilkyWay
[kcminputrc][Mouse]
cursorTheme=breeze_cursors
diff --git a/share/plasma/look-and-feel/org.kde.breezetwilight.desktop/contents/layouts/org.kde.plasma.desktop-layout.js b/share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/contents/layouts/org.kde.plasma.desktop-layout.js
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breezetwilight.desktop/contents/layouts/org.kde.plasma.desktop-layout.js
rename to share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/contents/layouts/org.kde.plasma.desktop-layout.js
diff --git a/share/plasma/look-and-feel/org.kde.breezetwilight.desktop/contents/previews/fullscreenpreview.jpg b/share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/contents/previews/fullscreenpreview.jpg
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breezetwilight.desktop/contents/previews/fullscreenpreview.jpg
rename to share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/contents/previews/fullscreenpreview.jpg
diff --git a/share/plasma/look-and-feel/org.kde.breezetwilight.desktop/contents/previews/preview.png b/share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/contents/previews/preview.png
similarity index 100%
rename from share/plasma/look-and-feel/org.kde.breezetwilight.desktop/contents/previews/preview.png
rename to share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/contents/previews/preview.png
diff --git a/share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/metadata.json b/share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/metadata.json
new file mode 100644
index 0000000..405d0fd
--- /dev/null
+++ b/share/plasma/look-and-feel/org.kde.breezetwilighttint.desktop/metadata.json
@@ -0,0 +1,61 @@
+{
+ "KPlugin": {
+ "Authors": [
+ {
+ "Email": "plasma-devel@kde.org",
+ "Name": "KDE Visual Design Group",
+ "Name[ar]": "مجموعة التصميم المرئي لكِيدِي",
+ "Name[az]": "KDE Vizual Dizayn Qrupu",
+ "Name[be]": "Суполка візуальнага дызайну KDE",
+ "Name[bg]": "KDE Visual Design Group",
+ "Name[ca@valencia]": "Grup de disseny visual de KDE",
+ "Name[ca]": "Grup de disseny visual de KDE",
+ "Name[cs]": "Skupina vizuálního návrhu KDE",
+ "Name[da]": "KDE Visual Design Group",
+ "Name[de]": "KDE Visual Design Group",
+ "Name[en_GB]": "KDE Visual Design Group",
+ "Name[es]": "El grupo de diseño visual de KDE",
+ "Name[eu]": "KDE Diseinu bisualeko taldea",
+ "Name[fi]": "KDE:n visuaalinen suunnitteluryhmä",
+ "Name[fr]": "Groupe de conception visuelle de KDE",
+ "Name[hi]": "केडीई विज़ुअल डिज़ाइन दल",
+ "Name[hu]": "KDE Visual Design Group",
+ "Name[ia]": "KDE Visual Design Group (Gruppo de Designo Visual de KDE)",
+ "Name[id]": "Grup Desain Visual KDE",
+ "Name[is]": "Myndrænn hönnunarhópur KDE",
+ "Name[it]": "KDE Visual Design Group",
+ "Name[ja]": "KDE Visual Design Group",
+ "Name[ka]": "KDE-ის ვიზუალური დიზაინის ჯგუფი",
+ "Name[ko]": "KDE 시각 디자인 그룹",
+ "Name[lt]": "KDE vaizdinio dizaino grupė",
+ "Name[nl]": "KDE Visuele ontwerpgroep",
+ "Name[nn]": "KDE Visual Design Group",
+ "Name[pl]": "Grupa oprawy graficznej KDE",
+ "Name[pt]": "Grupo de Desenho Visual do KDE",
+ "Name[pt_BR]": "Grupo de Design Visual do KDE",
+ "Name[ro]": "KDE Visual Design Group",
+ "Name[ru]": "Группа KDE Visual Design",
+ "Name[sk]": "KDE Visual Design Group",
+ "Name[sl]": "Skupina vizualnega designa KDE",
+ "Name[sv]": "KDE:s visuella designgrupp",
+ "Name[ta]": "கே.டீ.யீ. வரைகலை வடிவமைப்புக் குழு",
+ "Name[tr]": "KDE Görsel Tasarım Grubu",
+ "Name[uk]": "Група з візуального дизайну KDE",
+ "Name[vi]": "Đội Thiết kế Trực quan KDE",
+ "Name[x-test]": "xxKDE Visual Design Groupxx",
+ "Name[zh_CN]": "KDE 视觉设计团队"
+ }
+ ],
+ "Category": "",
+ "Description": "Breeze Twilight (Tint) by the KDE VDG",
+ "Id": "org.kde.breezetwilighttint.desktop",
+ "License": "GPLv2+",
+ "Name": "Breeze Twilight (Tint)",
+ "ServiceTypes": [
+ "Plasma/LookAndFeel"
+ ],
+ "Version": "2.0",
+ "Website": "https://www.kde.org"
+ },
+ "X-Plasma-MainScript": "defaults"
+}

View file

@ -1,29 +0,0 @@
{lib, ...}: let
rootDirs = builtins.readDir ./.;
removeFiles = lib.attrsets.filterAttrs (n: v: v == "directory") rootDirs;
programsToPatch = builtins.attrNames removeFiles;
bigOverlay = final: prev:
lib.attrsets.mergeAttrsList (
lib.lists.forEach programsToPatch (
program: let
unpatchedProgram = prev."${program}";
newPatches = lib.toast.patches.patchesInPath (lib.path.append ./. program);
in {
"${program}" = unpatchedProgram.overrideAttrs {
version = "${unpatchedProgram.version}-patched";
__intentionallyOverridingVersion = true;
patches = unpatchedProgram.patches ++ newPatches;
};
}
)
);
in {
nixpkgs.overlays = [
(
final: prev: {
kdePackages = prev.kdePackages.overrideScope bigOverlay;
}
)
];
}

Some files were not shown because too many files have changed in this diff Show more