dotfiles

My PC Dotfiles & Website
commit 5e820995d6071119e809bcbb6ba15fcf2dd2251b
parent be1401463c2312e6925a36c977f14d86e0ba0b1c
Author: maydayv7 <maydayv7@gmail.com>
Date:   Tue, 23 Dec 2025 00:18:42 +0530

fix: Fix warnings

And update wallpaper

Diffstat:

M.github/workflows/shell.yml | 2+-
MREADME.md | 4+---
Mchecks/gitlab/pipelines/shell.yml | 3++-
Mdevices/valkyrie/default.nix | 2+-
Mflake.lock | 762++-----------------------------------------------------------------------------
Mflake.nix | 8+-------
Mmodules/apps/flatpak.nix | 2+-
Mmodules/apps/media.nix | 8+++++---
Mmodules/apps/notes.nix | 2+-
Mmodules/apps/spotify.nix | 7+++----
Mmodules/apps/vscode/default.nix | 2+-
Mmodules/apps/wine.nix | 3+--
Mmodules/configuration.nix | 9++++++---
Mmodules/gui/desktop/gnome/settings/default.nix | 1+
Mmodules/gui/desktop/pantheon/default.nix | 2+-
Mpackages/flake.nix | 22++++++++++++++++++----
Apackages/patches/stremio.patch | 137+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mscripts/nixos.nix | 4++--
18 files changed, 193 insertions(+), 787 deletions(-)

diff --git a/.github/workflows/shell.yml b/.github/workflows/shell.yml @@ -10,7 +10,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - shell: [cc, format, java, lua, python, rust, sql, video, website] + shell: [android, cc, java, js, lua, python, rust, sql, video, website] steps: - name: Clone Repo uses: actions/checkout@v6 diff --git a/README.md b/README.md @@ -335,7 +335,7 @@ Example `flake.nix`: > [!IMPORTANT] > These instructions are mainly intended for personal use -To download the Install Media, click on the latest successsful run listed [here](../../actions/workflows/installer.yml) and download the image artifact. Burn it to a USB using a flashing utility such as [Etcher](https://www.balena.io/etcher/) +To download the Install Media, click on the latest successsful run listed [here](../../actions/workflows/install.yml) and download the image artifact. Burn it to a USB using a flashing utility such as [Etcher](https://www.balena.io/etcher/) > [!TIP] > In order to directly use the configuration, you must first create a clone of this repository and follow steps 2 to 6 from the first section, and preferably create your own install media @@ -497,12 +497,10 @@ _Thanks a lot! ;)_ ### To Do -- Investigate `system` -> `stdenv.hostPlatform.system` - Remove `pkgs.custom.copyous` after [merge](https://github.com/NixOS/nixpkgs/pull/469919) - Inputs: - Update `minecraft` after [merge](https://github.com/Infinidoge/nix-minecraft/pull/161) - Update `catppuccin` after release branch-off - - Remove `stremio` once [issue](https://github.com/nixos/nixpkgs/issues/437992) is fixed </details> diff --git a/checks/gitlab/pipelines/shell.yml b/checks/gitlab/pipelines/shell.yml @@ -13,5 +13,6 @@ shell: CACHIX_CACHE_NAME: maydayv7-dotfiles parallel: matrix: - - DEVSHELL: [cc, format, java, lua, python, rust, sql, video, website] + - DEVSHELL: + [android, cc, java, js, lua, python, rust, sql, video, website] script: cachix watch-exec $CACHIX_CACHE_NAME nix develop .#$DEVSHELL diff --git a/devices/valkyrie/default.nix b/devices/valkyrie/default.nix @@ -77,7 +77,7 @@ gui = { desktop = "gnome"; display = "eDP-1"; - wallpaper = "Sunrise"; + wallpaper = "Bluewatch"; fancy = true; }; diff --git a/flake.lock b/flake.lock @@ -1,42 +1,5 @@ { "nodes": { - "aquamarine": { - "inputs": { - "hyprutils": [ - "stremio", - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "stremio", - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "stremio", - "hyprland", - "nixpkgs" - ], - "systems": [ - "stremio", - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1764370710, - "narHash": "sha256-7iZklFmziy6Vn5ZFy9mvTSuFopp3kJNuPxL5QAvtmFQ=", - "owner": "hyprwm", - "repo": "aquamarine", - "rev": "561ae7fbe1ca15dfd908262ec815bf21a13eef63", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "aquamarine", - "type": "github" - } - }, "base16": { "inputs": { "fromYaml": "fromYaml" @@ -168,21 +131,6 @@ "type": "github" } }, - "crane_2": { - "locked": { - "lastModified": 1754269165, - "narHash": "sha256-0tcS8FHd4QjbCVoxN9jI+PjHgA4vc/IjkUSp+N3zy0U=", - "owner": "ipetkov", - "repo": "crane", - "rev": "444e81206df3f7d92780680e45858e31d2f07a08", - "type": "github" - }, - "original": { - "owner": "ipetkov", - "repo": "crane", - "type": "github" - } - }, "filters": { "locked": { "lastModified": 1757882181, @@ -263,38 +211,6 @@ "flake-compat_4": { "flake": false, "locked": { - "lastModified": 1761588595, - "narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_5": { - "flake": false, - "locked": { - "lastModified": 1751685974, - "narHash": "sha256-NKw96t+BgHIYzHUjkTK95FqYRVKB8DHpVhefWSz/kTw=", - "ref": "refs/heads/main", - "rev": "549f2762aebeff29a2e5ece7a7dc0f955281a1d1", - "revCount": 92, - "type": "git", - "url": "https://git.lix.systems/lix-project/flake-compat.git" - }, - "original": { - "type": "git", - "url": "https://git.lix.systems/lix-project/flake-compat.git" - } - }, - "flake-compat_6": { - "flake": false, - "locked": { "lastModified": 1673956053, "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", "owner": "edolstra", @@ -308,27 +224,6 @@ "type": "github" } }, - "flake-parts": { - "inputs": { - "nixpkgs-lib": [ - "stremio", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1763759067, - "narHash": "sha256-LlLt2Jo/gMNYAwOgdRQBrsRoOz7BPRkzvNaI/fzXi2Q=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "2cccadc7357c0ba201788ae99c4dfa90728ef5e0", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, "flatpak": { "locked": { "lastModified": 1739444422, @@ -444,29 +339,6 @@ "type": "github" } }, - "gitignore_2": { - "inputs": { - "nixpkgs": [ - "stremio", - "hyprland", - "pre-commit-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, "gnome-shell": { "flake": false, "locked": { @@ -501,28 +373,6 @@ "type": "github" } }, - "hjem": { - "inputs": { - "nixpkgs": [ - "stremio", - "nixpkgs" - ], - "smfh": "smfh" - }, - "locked": { - "lastModified": 1763948417, - "narHash": "sha256-m8qpVI1l6nO9n+Djl2PY33esza0tBZDQ/yyAAlfHD0o=", - "owner": "feel-co", - "repo": "hjem", - "rev": "4e9e23500bff48b750793e98afdbceda199a354a", - "type": "github" - }, - "original": { - "owner": "feel-co", - "repo": "hjem", - "type": "github" - } - }, "home": { "inputs": { "nixpkgs": [ @@ -544,331 +394,6 @@ "type": "github" } }, - "hyprcursor": { - "inputs": { - "hyprlang": [ - "stremio", - "hyprland", - "hyprlang" - ], - "nixpkgs": [ - "stremio", - "hyprland", - "nixpkgs" - ], - "systems": [ - "stremio", - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1753964049, - "narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=", - "owner": "hyprwm", - "repo": "hyprcursor", - "rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprcursor", - "type": "github" - } - }, - "hyprgraphics": { - "inputs": { - "hyprutils": [ - "stremio", - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "stremio", - "hyprland", - "nixpkgs" - ], - "systems": [ - "stremio", - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1763733840, - "narHash": "sha256-JnET78yl5RvpGuDQy3rCycOCkiKoLr5DN1fPhRNNMco=", - "owner": "hyprwm", - "repo": "hyprgraphics", - "rev": "8f1bec691b2d198c60cccabca7a94add2df4ed1a", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprgraphics", - "type": "github" - } - }, - "hyprland": { - "inputs": { - "aquamarine": "aquamarine", - "hyprcursor": "hyprcursor", - "hyprgraphics": "hyprgraphics", - "hyprland-guiutils": "hyprland-guiutils", - "hyprland-protocols": "hyprland-protocols", - "hyprlang": "hyprlang", - "hyprutils": "hyprutils", - "hyprwayland-scanner": "hyprwayland-scanner", - "nixpkgs": [ - "stremio", - "nixpkgs" - ], - "pre-commit-hooks": "pre-commit-hooks", - "systems": [ - "stremio", - "systems" - ], - "xdph": "xdph" - }, - "locked": { - "lastModified": 1764801806, - "narHash": "sha256-AlEo8j1V9S20PJd23DXqR/tjwtUjxMcn87Euei9zFeA=", - "owner": "hyprwm", - "repo": "Hyprland", - "rev": "9b1891e4765e2c5b84c8c61725e3973ca9940e05", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "Hyprland", - "rev": "9b1891e4765e2c5b84c8c61725e3973ca9940e05", - "type": "github" - } - }, - "hyprland-guiutils": { - "inputs": { - "aquamarine": [ - "stremio", - "hyprland", - "aquamarine" - ], - "hyprgraphics": [ - "stremio", - "hyprland", - "hyprgraphics" - ], - "hyprlang": [ - "stremio", - "hyprland", - "hyprlang" - ], - "hyprtoolkit": "hyprtoolkit", - "hyprutils": [ - "stremio", - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "stremio", - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "stremio", - "hyprland", - "nixpkgs" - ], - "systems": [ - "stremio", - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1764616927, - "narHash": "sha256-wRT0MKkpPo11ijSX3KeMN+EQWnpSeUlRtyF3pFLtlRU=", - "owner": "hyprwm", - "repo": "hyprland-guiutils", - "rev": "25cedbfdc5b3ea391d8307c9a5bea315e5df3c52", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-guiutils", - "type": "github" - } - }, - "hyprland-protocols": { - "inputs": { - "nixpkgs": [ - "stremio", - "hyprland", - "nixpkgs" - ], - "systems": [ - "stremio", - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1759610243, - "narHash": "sha256-+KEVnKBe8wz+a6dTLq8YDcF3UrhQElwsYJaVaHXJtoI=", - "owner": "hyprwm", - "repo": "hyprland-protocols", - "rev": "bd153e76f751f150a09328dbdeb5e4fab9d23622", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-protocols", - "type": "github" - } - }, - "hyprlang": { - "inputs": { - "hyprutils": [ - "stremio", - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "stremio", - "hyprland", - "nixpkgs" - ], - "systems": [ - "stremio", - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1764612430, - "narHash": "sha256-54ltTSbI6W+qYGMchAgCR6QnC1kOdKXN6X6pJhOWxFg=", - "owner": "hyprwm", - "repo": "hyprlang", - "rev": "0d00dc118981531aa731150b6ea551ef037acddd", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprlang", - "type": "github" - } - }, - "hyprtoolkit": { - "inputs": { - "aquamarine": [ - "stremio", - "hyprland", - "hyprland-guiutils", - "aquamarine" - ], - "hyprgraphics": [ - "stremio", - "hyprland", - "hyprland-guiutils", - "hyprgraphics" - ], - "hyprlang": [ - "stremio", - "hyprland", - "hyprland-guiutils", - "hyprlang" - ], - "hyprutils": [ - "stremio", - "hyprland", - "hyprland-guiutils", - "hyprutils" - ], - "hyprwayland-scanner": [ - "stremio", - "hyprland", - "hyprland-guiutils", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "stremio", - "hyprland", - "hyprland-guiutils", - "nixpkgs" - ], - "systems": [ - "stremio", - "hyprland", - "hyprland-guiutils", - "systems" - ] - }, - "locked": { - "lastModified": 1764592794, - "narHash": "sha256-7CcO+wbTJ1L1NBQHierHzheQGPWwkIQug/w+fhTAVuU=", - "owner": "hyprwm", - "repo": "hyprtoolkit", - "rev": "5cfe0743f0e608e1462972303778d8a0859ee63e", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprtoolkit", - "type": "github" - } - }, - "hyprutils": { - "inputs": { - "nixpkgs": [ - "stremio", - "hyprland", - "nixpkgs" - ], - "systems": [ - "stremio", - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1764637132, - "narHash": "sha256-vSyiKCzSY48kA3v39GFu6qgRfigjKCU/9k1KTK475gg=", - "owner": "hyprwm", - "repo": "hyprutils", - "rev": "2f2413801beee37303913fc3c964bbe92252a963", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprutils", - "type": "github" - } - }, - "hyprwayland-scanner": { - "inputs": { - "nixpkgs": [ - "stremio", - "hyprland", - "nixpkgs" - ], - "systems": [ - "stremio", - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1763640274, - "narHash": "sha256-Uan1Nl9i4TF/kyFoHnTq1bd/rsWh4GAK/9/jDqLbY5A=", - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "rev": "f6cf414ca0e16a4d30198fd670ec86df3c89f671", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "type": "github" - } - }, "impermanence": { "locked": { "lastModified": 1737831083, @@ -928,21 +453,6 @@ "type": "github" } }, - "mnw": { - "locked": { - "lastModified": 1758834834, - "narHash": "sha256-Y7IvY4F8vajZyp3WGf+KaiIVwondEkMFkt92Cr9NZmg=", - "owner": "Gerg-L", - "repo": "mnw", - "rev": "cfbc7d1cc832e318d0863a5fc91d940a96034001", - "type": "github" - }, - "original": { - "owner": "Gerg-L", - "repo": "mnw", - "type": "github" - } - }, "niri": { "inputs": { "niri-stable": "niri-stable", @@ -1096,62 +606,6 @@ "type": "github" } }, - "nvf": { - "inputs": { - "flake-compat": "flake-compat_5", - "flake-parts": [ - "stremio", - "flake-parts" - ], - "mnw": "mnw", - "nixpkgs": [ - "stremio", - "nixpkgs" - ], - "systems": [ - "stremio", - "systems" - ] - }, - "locked": { - "lastModified": 1764871278, - "narHash": "sha256-ezKJwZeAtZSO9EA3aLl5bmjjAVUoLE69IC+yX/KSqDM=", - "owner": "NotAShelf", - "repo": "nvf", - "rev": "43b48909a3d0c96f5c3d9a9e50d6faabbeccc9dd", - "type": "github" - }, - "original": { - "owner": "NotAShelf", - "ref": "v0.8", - "repo": "nvf", - "type": "github" - } - }, - "pre-commit-hooks": { - "inputs": { - "flake-compat": "flake-compat_4", - "gitignore": "gitignore_2", - "nixpkgs": [ - "stremio", - "hyprland", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1763988335, - "narHash": "sha256-QlcnByMc8KBjpU37rbq5iP7Cp97HvjRP0ucfdh+M4Qc=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "50b9238891e388c9fdc6a5c49e49c42533a1b5ce", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, "pre-commit-hooks-nix": { "inputs": { "flake-compat": [ @@ -1186,11 +640,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1753270975, - "narHash": "sha256-bI3F+PqAHVK0g+H2B+wFK7r7z+BmHsqyRY5I477Zcuo=", + "lastModified": 1766166768, + "narHash": "sha256-hUyn/oT50XUW6v/l4heLAUm5C4nc+YQCROad+4J1pik=", "owner": "maydayv7", "repo": "proprietary", - "rev": "182c2803995962c7e3ea5e491ae4294325766e59", + "rev": "79906e2fdeb88354f1565ce9d44b76e415052022", "type": "github" }, "original": { @@ -1220,11 +674,10 @@ ], "proprietary": "proprietary", "sops": "sops", - "spotify": "spotify", + "spicetify": "spicetify", "stable": "stable", - "stremio": "stremio", "stylix": "stylix", - "systems": "systems_4", + "systems": "systems_2", "unstable": "unstable", "utils": "utils_2", "vscode": "vscode", @@ -1252,53 +705,6 @@ "type": "github" } }, - "rust-overlay_2": { - "inputs": { - "nixpkgs": [ - "stremio", - "hjem", - "smfh", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1759113356, - "narHash": "sha256-xm4kEUcV2jk6u15aHazFP4YsMwhq+PczA+Ul/4FDKWI=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "be3b8843a2be2411500f6c052876119485e957a2", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "smfh": { - "inputs": { - "nixpkgs": [ - "stremio", - "hjem", - "nixpkgs" - ], - "rust-overlay": "rust-overlay_2", - "systems": "systems_2" - }, - "locked": { - "lastModified": 1760525934, - "narHash": "sha256-1HtxuA45R/jExzE9iuimuECHWbV2c+CBdJmr/RtluaI=", - "owner": "feel-co", - "repo": "smfh", - "rev": "7123a00cc3c3e90ba703a37ca8d997be95c62d99", - "type": "github" - }, - "original": { - "owner": "feel-co", - "repo": "smfh", - "type": "github" - } - }, "sops": { "inputs": { "nixpkgs": [ @@ -1319,7 +725,7 @@ "type": "github" } }, - "spotify": { + "spicetify": { "inputs": { "nixpkgs": [ "nixpkgs" @@ -1329,11 +735,11 @@ ] }, "locked": { - "lastModified": 1764698597, - "narHash": "sha256-4f0y9Fo3AChngd/qRQ7wbcy6FH33NFZbyFXn7IeUI14=", + "lastModified": 1766292025, + "narHash": "sha256-dZ9SSqRXfb+WU9MLl5c/ktdRWYZ42uxBPB7rQYuDaJs=", "owner": "Gerg-L", "repo": "spicetify-nix", - "rev": "1da6ebbbcf0301ff773e9c43bdd4c051af9523f7", + "rev": "73031a3c9359c6c0ab82098793573d0c0951e372", "type": "github" }, "original": { @@ -1358,55 +764,6 @@ "type": "github" } }, - "stash": { - "inputs": { - "crane": "crane_2", - "nixpkgs": [ - "stremio", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1764054504, - "narHash": "sha256-I4nXo/MQXbHg4S00RZZVwaldO/AfhchBFcDlmt4xcaQ=", - "owner": "NotAShelf", - "repo": "stash", - "rev": "f83836531405a42b5d3ad341811736e84275c90f", - "type": "github" - }, - "original": { - "owner": "NotAShelf", - "repo": "stash", - "type": "github" - } - }, - "stremio": { - "inputs": { - "flake-parts": "flake-parts", - "hjem": "hjem", - "hyprland": "hyprland", - "nixpkgs": [ - "nixpkgs" - ], - "nvf": "nvf", - "stash": "stash", - "systems": "systems_3", - "watt": "watt" - }, - "locked": { - "lastModified": 1765062048, - "narHash": "sha256-bbVoU6qos+UTWBOTanYRbEOlHrujviBs8ix8jZVCNpg=", - "owner": "fazzi", - "repo": "nixohess", - "rev": "dfd7b38a5bea820e0e71ff8b52ea79d4c37627cc", - "type": "gitlab" - }, - "original": { - "owner": "fazzi", - "repo": "nixohess", - "type": "gitlab" - } - }, "stylix": { "inputs": { "base16": "base16", @@ -1462,36 +819,6 @@ } }, "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": 1680978846, - "narHash": "sha256-Gtqg8b/v49BFDpDetjclCYXm8mAnTrUzR0JnE2nv5aw=", - "owner": "nix-systems", - "repo": "x86_64-linux", - "rev": "2ecfcac5e15790ba6ce360ceccddb15ad16d08a8", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "x86_64-linux", - "type": "github" - } - }, - "systems_4": { "flake": false, "locked": { "lastModified": 1707463813, @@ -1663,31 +990,9 @@ "type": "github" } }, - "watt": { - "inputs": { - "nixpkgs": [ - "stremio", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1764956445, - "narHash": "sha256-ORcrHG39emERbAM99pv1Prmfm9TNqSwW9uyibrcj5Js=", - "owner": "NotAShelf", - "repo": "watt", - "rev": "ae310b5ef2d39bec9a48b8833c48ea948b3bcb7f", - "type": "github" - }, - "original": { - "owner": "NotAShelf", - "ref": "v1-dev", - "repo": "watt", - "type": "github" - } - }, "windows": { "inputs": { - "flake-compat": "flake-compat_6", + "flake-compat": "flake-compat_4", "nixpkgs": [ "unstable" ] @@ -1706,53 +1011,6 @@ "type": "github" } }, - "xdph": { - "inputs": { - "hyprland-protocols": [ - "stremio", - "hyprland", - "hyprland-protocols" - ], - "hyprlang": [ - "stremio", - "hyprland", - "hyprlang" - ], - "hyprutils": [ - "stremio", - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "stremio", - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "stremio", - "hyprland", - "nixpkgs" - ], - "systems": [ - "stremio", - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1761431178, - "narHash": "sha256-xzjC1CV3+wpUQKNF+GnadnkeGUCJX+vgaWIZsnz9tzI=", - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "rev": "4b8801228ff958d028f588f0c2b911dbf32297f9", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "type": "github" - } - }, "xwayland-satellite-stable": { "flake": false, "locked": { diff --git a/flake.nix b/flake.nix @@ -149,12 +149,6 @@ inputs.nixpkgs.follows = "unstable"; }; - # Stremio Package - stremio = { - url = "gitlab:fazzi/nixohess"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - ## Theming # Base16 Theming Module stylix = { @@ -167,7 +161,7 @@ }; # Spicetify Module - spotify = { + spicetify = { url = "github:Gerg-L/spicetify-nix"; inputs = { nixpkgs.follows = "nixpkgs"; diff --git a/modules/apps/flatpak.nix b/modules/apps/flatpak.nix @@ -8,9 +8,9 @@ let enable = builtins.elem "flatpak" config.apps.list; in { + ## Flatpak Configuration ## imports = [ inputs.flatpak.nixosModules.nix-flatpak ]; - ## Flatpak Configuration ## config = lib.mkIf enable { warnings = [ '' diff --git a/modules/apps/media.nix b/modules/apps/media.nix @@ -1,7 +1,6 @@ { config, lib, - inputs, pkgs, ... }: @@ -12,11 +11,14 @@ in ## Media Configuration ## config = lib.mkIf enable { environment.systemPackages = with pkgs; [ + identity pitivi + vipsdisp + pwvucontrol qpwgraph - vipsdisp - inputs.stremio.packages.${pkgs.stdenv.system}.stremio-linux-shell + + stremio-linux-shell ]; user = { diff --git a/modules/apps/notes.nix b/modules/apps/notes.nix @@ -17,13 +17,13 @@ let cfg = config.apps.logseq; in { + ## Logseq Configuration ## options.apps.logseq.style = mkOption { description = "Path to Logseq Notes CSS"; type = types.str; default = ""; }; - ## Logseq Configuration ## config = mkIf enable { environment.systemPackages = [ pkgs.logseq ]; diff --git a/modules/apps/spotify.nix b/modules/apps/spotify.nix @@ -7,7 +7,6 @@ }: let enable = builtins.elem "spotify" config.apps.list; - spice = inputs.spotify.legacyPackages.${pkgs.stdenv.system}; in { ## Spotify Configuration ## @@ -26,18 +25,18 @@ in ]; homeConfig = { - imports = [ inputs.spotify.homeManagerModules.default ]; + imports = [ inputs.spicetify.homeManagerModules.default ]; programs.spicetify = { enable = true; # Player Improvements - enabledCustomApps = with spice.apps; [ + enabledCustomApps = with pkgs.spicetify.apps; [ betterLibrary localFiles newReleases ]; - enabledExtensions = with spice.extensions; [ + enabledExtensions = with pkgs.spicetify.extensions; [ beautifulLyrics goToSong history diff --git a/modules/apps/vscode/default.nix b/modules/apps/vscode/default.nix @@ -83,7 +83,7 @@ in dbaeumer.vscode-eslint ritwickdey.liveserver ] - ++ (with pkgs.code.vscode-marketplace; [ + ++ (with pkgs.vscode-marketplace; [ kisstkondoros.vscode-gutter-preview # Image Preview fwcd.kotlin # Kotlin ]); diff --git a/modules/apps/wine.nix b/modules/apps/wine.nix @@ -2,7 +2,6 @@ config, lib, util, - inputs, pkgs, ... }: @@ -66,7 +65,7 @@ in callPackage name { inherit lib pkgs; wine = cfg.package; - build = inputs.windows.lib."${pkgs.stdenv.system}"; + build = winelib; } ) ) diff --git a/modules/configuration.nix b/modules/configuration.nix @@ -73,8 +73,7 @@ in ## Device Configuration ## assert (user == null) -> (users != null); # User must be defined import ((self.patchedPkgs system) + "/nixos/lib/eval-config.nix") { - inherit system; - + system = null; specialArgs = { inherit util inputs files; lib = lib // { @@ -113,7 +112,11 @@ import ((self.patchedPkgs system) + "/nixos/lib/eval-config.nix") { environment.variables."LC_ALL" = "en_${locale}.UTF-8"; # Package Configuration - nixpkgs = { inherit pkgs; }; + nixpkgs = { + inherit pkgs; + hostPlatform = system; + }; + system = { name = "${name}-${replaceStrings [ " " ] [ "_" ] description}"; diff --git a/modules/gui/desktop/gnome/settings/default.nix b/modules/gui/desktop/gnome/settings/default.nix @@ -133,6 +133,7 @@ in dynamic-workspaces = true; edge-tiling = false; focus-change-on-pointer-rest = true; + overlay-key = "Super"; workspaces-only-on-primary = true; experimental-features = [ "scale-monitor-framebuffer" diff --git a/modules/gui/desktop/pantheon/default.nix b/modules/gui/desktop/pantheon/default.nix @@ -158,7 +158,7 @@ in { # Code Editor user.homeConfig.programs.vscode.profiles.default = mkIf (exists "vscode") { - extensions = [ pkgs.code.vscode-marketplace.sixpounder.elementary-theme ]; + extensions = [ pkgs.vscode-marketplace.sixpounder.elementary-theme ]; userSettings = { "workbench.colorTheme" = "Elementary Dark"; "terminal.external.linuxExec" = "io.elementary.terminal"; diff --git a/packages/flake.nix b/packages/flake.nix @@ -38,11 +38,13 @@ in unstable = import unstable { inherit system config; }; gaming = gaming.packages."${system}"; - code = vscode.extensions."${system}"; wine = windows.packages."${system}"; + winelib = windows.lib."${system}"; + spicetify = spotify.legacyPackages."${system}"; }) minecraft.overlay niri.overlays.niri + vscode.overlays.default ]; }; } @@ -62,11 +64,23 @@ in in { # Custom Packages - apps = map.modules ../scripts (name: inputs.utils.lib.mkApp { drv = call.script name; }) // { - default = self'.apps.nixos; - }; packages = map.modules ./. call // map.modules ../scripts call.script // inputs'.proprietary.packages; + apps = + map.modules ../scripts ( + name: + let + drv = call.script name; + in + { + type = "app"; + program = lib.getExe drv; + meta = drv.meta or { }; + } + ) + // { + default = self'.apps.nixos; + }; } ); diff --git a/packages/patches/stremio.patch b/packages/patches/stremio.patch @@ -0,0 +1,137 @@ +https://github.com/NixOS/nixpkgs/pull/468728 +--- +diff --git a/pkgs/by-name/st/stremio-linux-shell/package.nix b/pkgs/by-name/st/stremio-linux-shell/package.nix +new file mode 100644 +index 0000000000000..fcfbf9460f107 +--- /dev/null ++++ b/pkgs/by-name/st/stremio-linux-shell/package.nix +@@ -0,0 +1,129 @@ ++{ ++ lib, ++ symlinkJoin, ++ rustPlatform, ++ fetchFromGitHub, ++ versionCheckHook, ++ gitUpdater, ++ ++ # buildInputs ++ atk, ++ cef-binary, ++ gtk3, ++ libayatana-appindicator, ++ mpv, ++ openssl, ++ ++ # nativeBuildInputs ++ wrapGAppsHook4, ++ makeBinaryWrapper, ++ pkg-config, ++ ++ # Wrapper ++ libGL, ++ nodejs, ++}: ++ ++let ++ # Follow upstream ++ # https://github.com/Stremio/stremio-linux-shell/blob/v1.0.0-beta.12/flatpak/com.stremio.Stremio.Devel.json#L150 ++ cefPinned = cef-binary.override { ++ version = "138.0.21"; ++ gitRevision = "54811fe"; ++ chromiumVersion = "138.0.7204.101"; ++ ++ srcHashes = { ++ aarch64-linux = ""; # TODO: Add when available ++ x86_64-linux = "sha256-Kob/5lPdZc9JIPxzqiJXNSMaxLuAvNQKdd/AZDiXvNI="; ++ }; ++ }; ++ ++ # Stremio expects CEF files in a specific layout ++ cefPath = symlinkJoin { ++ name = "stremio-cef-target"; ++ paths = [ ++ "${cefPinned}/Resources" ++ "${cefPinned}/Release" ++ ]; ++ }; ++in ++rustPlatform.buildRustPackage (finalAttrs: { ++ pname = "stremio-linux-shell"; ++ version = "1.0.0-beta.12"; ++ ++ src = fetchFromGitHub { ++ owner = "Stremio"; ++ repo = "stremio-linux-shell"; ++ tag = "v${finalAttrs.version}"; ++ hash = "sha256-NVChTlW146AAHtpeLrCEJBhWmOM7FvrSv9H/KMLJiNY="; ++ }; ++ ++ cargoHash = "sha256-3HJqzkhmKF1J3aHiw3UvgeWzLNnr3tw+/cvMyAKNvAQ="; ++ ++ postPatch = '' ++ substituteInPlace $cargoDepsCopy/libappindicator-sys-*/src/lib.rs \ ++ --replace-fail "libayatana-appindicator3.so.1" "${libayatana-appindicator}/lib/libayatana-appindicator3.so.1" ++ ''; ++ ++ # Don't download CEF during build ++ buildFeatures = [ "offline-build" ]; ++ ++ buildInputs = [ ++ atk ++ cefPath ++ gtk3 ++ libayatana-appindicator ++ mpv ++ openssl ++ ]; ++ ++ nativeBuildInputs = [ ++ wrapGAppsHook4 ++ makeBinaryWrapper ++ pkg-config ++ ]; ++ ++ env.CEF_PATH = "${cefPath}"; ++ ++ postInstall = '' ++ mkdir -p $out/share/applications ++ cp data/com.stremio.Stremio.desktop $out/share/applications/com.stremio.Stremio.desktop ++ ++ mkdir -p $out/share/icons/hicolor/scalable/apps ++ cp data/icons/com.stremio.Stremio.svg $out/share/icons/hicolor/scalable/apps/com.stremio.Stremio.svg ++ ++ cp data/server.js $out/bin/server.js ++ mv $out/bin/stremio-linux-shell $out/bin/stremio ++ ''; ++ ++ # Node.js is required to run `server.js` ++ # Add to `gappsWrapperArgs` to avoid two layers of wrapping. ++ preFixup = '' ++ gappsWrapperArgs+=( ++ --prefix LD_LIBRARY_PATH : "/run/opengl-driver/lib" \ ++ --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libGL ]}" \ ++ --prefix PATH : "${lib.makeBinPath [ nodejs ]}" ++ ) ++ ''; ++ ++ nativeInstallCheckInputs = [ ++ versionCheckHook ++ ]; ++ versionCheckProgramArg = "--version"; ++ doInstallCheck = true; ++ ++ passthru.updateScript = gitUpdater { rev-prefix = "v"; }; ++ ++ meta = { ++ description = "Modern media center that gives you the freedom to watch everything you want"; ++ homepage = "https://www.stremio.com/"; ++ license = with lib.licenses; [ ++ gpl3Only ++ # server.js is unfree ++ unfree ++ ]; ++ maintainers = with lib.maintainers; [ thunze ]; ++ platforms = lib.platforms.linux; ++ mainProgram = "stremio"; ++ }; ++}) diff --git a/scripts/nixos.nix b/scripts/nixos.nix @@ -1,5 +1,4 @@ { - system ? builtins.currentSystem, lib, util, inputs, @@ -13,7 +12,7 @@ let inherit (util.map) list; inherit (lib) licenses recursiveUpdate; - devShells = list self.devShells."${system}"; + devShells = list self.devShells."${pkgs.stdenv.system}"; nixosConfigurations = list self.nixosConfigurations; # Usage Description @@ -203,6 +202,7 @@ recursiveUpdate SPECIALISATIONS=$(ls -1 /nix/var/nix/profiles/system/specialisation) if grep -wq "$2" <<<"$SPECIALISATIONS" &> /dev/null then + echo "Applying Configuration ($2)..." sudo nixos-rebuild switch --specialisation "$2" else error "Unknown Option '$2'\n${usage.apply}" "# Available Specialisations #\n$SPECIALISATIONS"