diff --git a/README.md b/README.md deleted file mode 100644 index 9fd0a30..0000000 --- a/README.md +++ /dev/null @@ -1,55 +0,0 @@ -# Nix Sakamoto -A rewrite of the original Sakamoto NixOS configuration. - -## Installation -Installing Sakamoto Nix configuration may vary on your current operating system. - -| Hosts | Description | -|----------|--------------| -| hakase | gaming desktop (linux) | -| sakamoto | \[unavailable] server that uses containers (linux) | -| nano | \[unavailable] windows configuration | -| macos | macos configuration | - -**Note: Replace `${Hosts}` with one of the options from the table above.** - -### Linux Installation - -1. Install [Nix](https://nixos.org). -2. Clone this directory. - ```sh - $ git clone https://git.sakamoto.dev/kenji/nixos.git ~/.config/nixos - ``` -3. Create a hardware-configuration.conf - ```sh - $ sudo nixos-generate-config --dir ~/.config/nixos/hosts/${Hosts}/ - ``` -4. ⚠️ Modify `config.nix` that suits your configuration. **Be sure to edit `config.nix`! Most especially `myConfig.essentials.Username`. Otherwise, your OS could break!!!** -5. Rebuild. - ```sh - $ sudo nixos-rebuild switch --flake ~/.config/nixos/hosts/#${Hosts} - ``` -6. Install unstable channel (fixes `pkgs.fish` misconfiguration). - ```sh - $ nix-channel --add https://nixos.org/channels/nixos-unstable nixos nix-channel --update - ``` -7. (Optional) You can install `proton-ge` by running the following command: - ```sh - protonup - ``` -8. (Optional) Add Decky Loader for Steam via this command: - ```sh - touch ~/.steam/steam/.cef-enable-remote-debugging - - ``` -### MacOS (Darwin) Installation -1. Install [Nix](https://nixos.org). -2. Clone this directory. - ```sh - $ git clone https://git.sakamoto.dev/kenji/nixos.git ~/.config/nixos - ``` -3. ⚠️ Modify `config.nix` that suits your configuration. **Be sure to edit `config.nix`! Most especially `myConfig.essentials.Username`. Otherwise, configuration would not work!!!** -4. Rebuild. - ```sh - $ sudo nix run nix-darwin --extra-experimental-features "nix-command flakes" -- switch --flake ~/.config/nixos#macos - ``` diff --git a/config.nix b/config.nix deleted file mode 100644 index a7b8dcc..0000000 --- a/config.nix +++ /dev/null @@ -1,85 +0,0 @@ -{ - myConfig = { - essentials = { - # !!! replace it with your own, else system might malfunction. - Username = "kenji"; - }; - general = { - Terminal = { - font = "JetBrainsMono Nerd Font"; - size = "18"; - shell = "fish"; # or zsh - aliases = {}; - }; - allowUnfree = true; - }; - - nixos = { - Hostname = "hakase"; - Timezone = "America/Chicago"; - enableSteamOS = true; - - Boot = { - mode = "systemd"; # systemd or grub - }; - Apps = { - packages = pkgs: - with pkgs; [ - jellyfin-media-player - usbutils - pciutils - goverlay - geekbench_6 - gparted - ntfs3g - todoist - feishin - discord - xfce.thunar - ]; - }; - Hyprland = { - enable = false; - monitors = [ - "DP-1, highres@165,0x1080,1,vrr,1" - "DP-2, highres@highrr,0x0,1" - "HDMI-A-1, 1920x1080@120, 20000x20000,1" - # "HDMI-A-1, disabled" - ]; - }; - Git = { - user = ""; - email = ""; - defaultBranch = "master"; - }; - }; - optionals = { - Builds = { - trustedUsers = [ - "@groups" - ]; - buildMachines = [ - { - hostName = ""; - sshUser = ""; - sshKey = ""; - system = ""; - supportedFeatures = ["big-parallel" "kvm" "nixos-test"]; - } - ]; - }; - Ssh = { - extraConfig = '' - Host macair - User biscuit - HostName 192.168.68.81 - - Host gitea.sakamoto.dev - User kenji - ProxyCommand cloudflared access ssh --hostname %h - HostName gitea.sakamoto.dev - ''; - }; - }; - }; -} diff --git a/flake.lock b/flake.lock deleted file mode 100644 index 619c89e..0000000 --- a/flake.lock +++ /dev/null @@ -1,1343 +0,0 @@ -{ - "nodes": { - "app2unit-src": { - "flake": false, - "locked": { - "lastModified": 1751917736, - "narHash": "sha256-TjePNU9Wu9kaXSczMAZcMV0HSC9zqzLcgKXdbkyLSAU=", - "owner": "Vladimir-csp", - "repo": "app2unit", - "rev": "6a2fe29210fd939571fdfcd78581965ef479c749", - "type": "github" - }, - "original": { - "owner": "Vladimir-csp", - "repo": "app2unit", - "type": "github" - } - }, - "aquamarine": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1751740947, - "narHash": "sha256-35040CHH7P3JGmhGVfEb2oJHL/A5mI2IXumhkxrBnao=", - "owner": "hyprwm", - "repo": "aquamarine", - "rev": "dfc1db15a08c4cd234288f66e1199c653495301f", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "aquamarine", - "type": "github" - } - }, - "caelestia-cli-src": { - "flake": false, - "locked": { - "lastModified": 1752705650, - "narHash": "sha256-+XPGBYwjvbsPx7HhST9QTliDWl2HG43l2mvV7bjHqr4=", - "ref": "refs/heads/main", - "rev": "4a0bd16dd50587343a2b95b2817608d2d5c47c3e", - "revCount": 268, - "type": "git", - "url": "https://git.sakamoto.dev/kenji/caelestia-cli" - }, - "original": { - "type": "git", - "url": "https://git.sakamoto.dev/kenji/caelestia-cli" - } - }, - "caelestia-shell": { - "inputs": { - "app2unit-src": "app2unit-src", - "caelestia-cli-src": "caelestia-cli-src", - "caelestia-shell-src": "caelestia-shell-src", - "flake-utils": "flake-utils", - "nixpkgs": [ - "nixpkgs" - ], - "quickshell": "quickshell" - }, - "locked": { - "lastModified": 1752705685, - "narHash": "sha256-0lh61BB1wR555O239wdf2wHeWn2xwbZxVxqF+nln5V4=", - "ref": "refs/heads/master", - "rev": "418754a149d692b3efd43dfb5cc3586c4d07d07f", - "revCount": 14, - "type": "git", - "url": "https://git.sakamoto.dev/kenji/caelestia-nix" - }, - "original": { - "type": "git", - "url": "https://git.sakamoto.dev/kenji/caelestia-nix" - } - }, - "caelestia-shell-src": { - "flake": false, - "locked": { - "lastModified": 1751355641, - "narHash": "sha256-GDarX9uOlXGc2NstZmCFXBl1g5iWvchL1QA9zuWKw4Q=", - "ref": "refs/heads/main", - "rev": "4b341ca16fda528987e5ac2745945d28f422d839", - "revCount": 806, - "type": "git", - "url": "https://git.sakamoto.dev/kenji/caelestia-dots" - }, - "original": { - "type": "git", - "url": "https://git.sakamoto.dev/kenji/caelestia-dots" - } - }, - "chaotic": { - "inputs": { - "flake-schemas": "flake-schemas", - "home-manager": "home-manager", - "jovian": "jovian", - "nixpkgs": "nixpkgs", - "rust-overlay": "rust-overlay" - }, - "locked": { - "lastModified": 1751984126, - "narHash": "sha256-PrNg+sypyNMU0dHLbfVFQx58NEnS59DUIu0SZSq3DSk=", - "owner": "chaotic-cx", - "repo": "nyx", - "rev": "8feb220c99c94c4957d37253eff6100cc33d7e8a", - "type": "github" - }, - "original": { - "owner": "chaotic-cx", - "ref": "nyxpkgs-unstable", - "repo": "nyx", - "type": "github" - } - }, - "darwin": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1751313918, - "narHash": "sha256-HsJM3XLa43WpG+665aGEh8iS8AfEwOIQWk3Mke3e7nk=", - "owner": "lnl7", - "repo": "nix-darwin", - "rev": "e04a388232d9a6ba56967ce5b53a8a6f713cdfcf", - "type": "github" - }, - "original": { - "owner": "lnl7", - "repo": "nix-darwin", - "type": "github" - } - }, - "devshell": { - "inputs": { - "nixpkgs": [ - "nixovim", - "nixvim", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1735644329, - "narHash": "sha256-tO3HrHriyLvipc4xr+Ewtdlo7wM1OjXNjlWRgmM7peY=", - "owner": "numtide", - "repo": "devshell", - "rev": "f7795ede5b02664b57035b3b757876703e2c3eac", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "devshell", - "type": "github" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_2": { - "locked": { - "lastModified": 1733328505, - "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", - "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", - "revCount": 69, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" - } - }, - "flake-parts": { - "inputs": { - "nixpkgs-lib": "nixpkgs-lib" - }, - "locked": { - "lastModified": 1738453229, - "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_2": { - "inputs": { - "nixpkgs-lib": [ - "nixovim", - "nixvim", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1738453229, - "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_3": { - "inputs": { - "nixpkgs-lib": [ - "nur", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1733312601, - "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-schemas": { - "locked": { - "lastModified": 1721999734, - "narHash": "sha256-G5CxYeJVm4lcEtaO87LKzOsVnWeTcHGKbKxNamNWgOw=", - "rev": "0a5c42297d870156d9c57d8f99e476b738dcd982", - "revCount": 75, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.1.5/0190ef2f-61e0-794b-ba14-e82f225e55e6/source.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%3D0.1.5.tar.gz" - } - }, - "flake-utils": { - "inputs": { - "systems": "systems" - }, - "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_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_5" - }, - "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" - } - }, - "git-hooks": { - "inputs": { - "flake-compat": [ - "nixovim", - "nixvim", - "flake-compat" - ], - "gitignore": "gitignore_2", - "nixpkgs": [ - "nixovim", - "nixvim", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1737465171, - "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "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" - } - }, - "gitignore_2": { - "inputs": { - "nixpkgs": [ - "nixovim", - "nixvim", - "git-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" - } - }, - "home-manager": { - "inputs": { - "nixpkgs": [ - "chaotic", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1751824240, - "narHash": "sha256-aDDC0CHTlL7QDKWWhdbEgVPK6KwWt+ca0QkmHYZxMzI=", - "owner": "nix-community", - "repo": "home-manager", - "rev": "fd9e55f5fac45a26f6169310afca64d56b681935", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "home-manager", - "type": "github" - } - }, - "home-manager_2": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1751578154, - "narHash": "sha256-7zfDzmaidDESMZpdmzK/+APeKN432CJuphHHETX88Ls=", - "owner": "nix-community", - "repo": "home-manager", - "rev": "7044c3eced5319148c09fe9612659765b9297d4a", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "home-manager", - "type": "github" - } - }, - "home-manager_3": { - "inputs": { - "nixpkgs": [ - "nixovim", - "nixvim", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1738878603, - "narHash": "sha256-fmhq8B3MvQLawLbMO+LWLcdC2ftLMmwSk+P29icJ3tE=", - "owner": "nix-community", - "repo": "home-manager", - "rev": "433799271274c9f2ab520a49527ebfe2992dcfbd", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "home-manager", - "type": "github" - } - }, - "hyprcursor": { - "inputs": { - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1749155331, - "narHash": "sha256-XR9fsI0zwLiFWfqi/pdS/VD+YNorKb3XIykgTg4l1nA=", - "owner": "hyprwm", - "repo": "hyprcursor", - "rev": "45fcc10b4c282746d93ec406a740c43b48b4ef80", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprcursor", - "type": "github" - } - }, - "hyprgraphics": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1751808145, - "narHash": "sha256-OXgL0XaKMmfX2rRQkt9SkJw+QNfv0jExlySt1D6O72g=", - "owner": "hyprwm", - "repo": "hyprgraphics", - "rev": "b841473a0bd4a1a74a0b64f1ec2ab199035c349f", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprgraphics", - "type": "github" - } - }, - "hyprland": { - "inputs": { - "aquamarine": "aquamarine", - "hyprcursor": "hyprcursor", - "hyprgraphics": "hyprgraphics", - "hyprland-protocols": "hyprland-protocols", - "hyprland-qtutils": "hyprland-qtutils", - "hyprlang": "hyprlang", - "hyprutils": "hyprutils", - "hyprwayland-scanner": "hyprwayland-scanner", - "nixpkgs": [ - "nixpkgs" - ], - "pre-commit-hooks": "pre-commit-hooks", - "systems": "systems_3", - "xdph": "xdph" - }, - "locked": { - "lastModified": 1751995875, - "narHash": "sha256-ud9sl1RjmzAzalH2ocmGPs182xvr7GktjVIYvzJamwo=", - "owner": "hyprwm", - "repo": "Hyprland", - "rev": "9517d0eaa4ef93de67dc80fecca7a826f7ad556d", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "Hyprland", - "type": "github" - } - }, - "hyprland-protocols": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1749046714, - "narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=", - "owner": "hyprwm", - "repo": "hyprland-protocols", - "rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-protocols", - "type": "github" - } - }, - "hyprland-qt-support": { - "inputs": { - "hyprlang": [ - "hyprland", - "hyprland-qtutils", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "hyprland-qtutils", - "nixpkgs" - ], - "systems": [ - "hyprland", - "hyprland-qtutils", - "systems" - ] - }, - "locked": { - "lastModified": 1749154592, - "narHash": "sha256-DO7z5CeT/ddSGDEnK9mAXm1qlGL47L3VAHLlLXoCjhE=", - "owner": "hyprwm", - "repo": "hyprland-qt-support", - "rev": "4c8053c3c888138a30c3a6c45c2e45f5484f2074", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-qt-support", - "type": "github" - } - }, - "hyprland-qtutils": { - "inputs": { - "hyprland-qt-support": "hyprland-qt-support", - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "hyprutils": [ - "hyprland", - "hyprland-qtutils", - "hyprlang", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1750371812, - "narHash": "sha256-D868K1dVEACw17elVxRgXC6hOxY+54wIEjURztDWLk8=", - "owner": "hyprwm", - "repo": "hyprland-qtutils", - "rev": "b13c7481e37856f322177010bdf75fccacd1adc8", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-qtutils", - "type": "github" - } - }, - "hyprlang": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1750371198, - "narHash": "sha256-/iuJ1paQOBoSLqHflRNNGyroqfF/yvPNurxzcCT0cAE=", - "owner": "hyprwm", - "repo": "hyprlang", - "rev": "cee01452bca58d6cadb3224e21e370de8bc20f0b", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprlang", - "type": "github" - } - }, - "hyprutils": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1751888065, - "narHash": "sha256-F2SV9WGqgtRsXIdUrl3sRe0wXlQD+kRRZcSfbepjPJY=", - "owner": "hyprwm", - "repo": "hyprutils", - "rev": "a8229739cf36d159001cfc203871917b83fdf917", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprutils", - "type": "github" - } - }, - "hyprwayland-scanner": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1751881472, - "narHash": "sha256-meB0SnXbwIe2trD041MLKEv6R7NZ759QwBcVIhlSBfE=", - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "rev": "8fb426b3e5452fd9169453fd6c10f8c14ca37120", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "type": "github" - } - }, - "ixx": { - "inputs": { - "flake-utils": [ - "nixovim", - "nixvim", - "nuschtosSearch", - "flake-utils" - ], - "nixpkgs": [ - "nixovim", - "nixvim", - "nuschtosSearch", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1729958008, - "narHash": "sha256-EiOq8jF4Z/zQe0QYVc3+qSKxRK//CFHMB84aYrYGwEs=", - "owner": "NuschtOS", - "repo": "ixx", - "rev": "9fd01aad037f345350eab2cd45e1946cc66da4eb", - "type": "github" - }, - "original": { - "owner": "NuschtOS", - "ref": "v0.0.6", - "repo": "ixx", - "type": "github" - } - }, - "jovian": { - "inputs": { - "nix-github-actions": "nix-github-actions", - "nixpkgs": [ - "chaotic", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1751529406, - "narHash": "sha256-jwKDHyUycp678zDYa5Hyfq3msO73YMXdZPxp96dU7po=", - "owner": "Jovian-Experiments", - "repo": "Jovian-NixOS", - "rev": "b2e5ce654e4f5bf8905c2e07a96dcf4966e6277d", - "type": "github" - }, - "original": { - "owner": "Jovian-Experiments", - "repo": "Jovian-NixOS", - "type": "github" - } - }, - "jovian_2": { - "inputs": { - "nix-github-actions": "nix-github-actions_2", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1752755091, - "narHash": "sha256-H/k35QJLyQxkFnXR5ckMv/Z+ElNa5f22qNKdyGBMAn4=", - "owner": "Jovian-Experiments", - "repo": "Jovian-NixOS", - "rev": "0d09755fe1df1886e5f07dbb16f7ed373080f86a", - "type": "github" - }, - "original": { - "owner": "Jovian-Experiments", - "repo": "Jovian-NixOS", - "type": "github" - } - }, - "matugen": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ], - "systems": "systems_4" - }, - "locked": { - "lastModified": 1745334376, - "narHash": "sha256-GZAesQW51EwCEB9w5caxgi87LiAMhVfP6GqZmet9VZc=", - "owner": "InioX", - "repo": "Matugen", - "rev": "4619cca93513470dc2a1833d9a138297cbccaf2e", - "type": "github" - }, - "original": { - "owner": "InioX", - "repo": "Matugen", - "type": "github" - } - }, - "nix-darwin": { - "inputs": { - "nixpkgs": [ - "nixovim", - "nixvim", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1738743987, - "narHash": "sha256-O3bnAfsObto6l2tQOmQlrO6Z2kD6yKwOWfs7pA0CpOc=", - "owner": "lnl7", - "repo": "nix-darwin", - "rev": "ae406c04577ff9a64087018c79b4fdc02468c87c", - "type": "github" - }, - "original": { - "owner": "lnl7", - "repo": "nix-darwin", - "type": "github" - } - }, - "nix-github-actions": { - "inputs": { - "nixpkgs": [ - "chaotic", - "jovian", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1729697500, - "narHash": "sha256-VFTWrbzDlZyFHHb1AlKRiD/qqCJIripXKiCSFS8fAOY=", - "owner": "zhaofengli", - "repo": "nix-github-actions", - "rev": "e418aeb728b6aa5ca8c5c71974e7159c2df1d8cf", - "type": "github" - }, - "original": { - "owner": "zhaofengli", - "ref": "matrix-name", - "repo": "nix-github-actions", - "type": "github" - } - }, - "nix-github-actions_2": { - "inputs": { - "nixpkgs": [ - "jovian", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1729697500, - "narHash": "sha256-VFTWrbzDlZyFHHb1AlKRiD/qqCJIripXKiCSFS8fAOY=", - "owner": "zhaofengli", - "repo": "nix-github-actions", - "rev": "e418aeb728b6aa5ca8c5c71974e7159c2df1d8cf", - "type": "github" - }, - "original": { - "owner": "zhaofengli", - "ref": "matrix-name", - "repo": "nix-github-actions", - "type": "github" - } - }, - "nixovim": { - "inputs": { - "flake-parts": "flake-parts", - "nixpkgs": [ - "nixpkgs" - ], - "nixvim": "nixvim", - "rust-overlay": "rust-overlay_2" - }, - "locked": { - "lastModified": 1751734292, - "narHash": "sha256-AeW333kvHQPHyhF1MH4ogtAuQmReNeCOJmOcvD2IHcM=", - "ref": "refs/heads/master", - "rev": "13cd454fb30d75a204ed245ec094210635cc22a6", - "revCount": 67, - "type": "git", - "url": "https://git.sakamoto.dev/kenji/nixovim.git" - }, - "original": { - "type": "git", - "url": "https://git.sakamoto.dev/kenji/nixovim.git" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1751792365, - "narHash": "sha256-J1kI6oAj25IG4EdVlg2hQz8NZTBNYvIS0l4wpr9KcUo=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1fd8bada0b6117e6c7eb54aad5813023eed37ccb", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-lib": { - "locked": { - "lastModified": 1738452942, - "narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=", - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1738797219, - "narHash": "sha256-KRwX9Z1XavpgeSDVM/THdFd6uH8rNm/6R+7kIbGa+2s=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1da52dd49a127ad74486b135898da2cef8c62665", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1736320768, - "narHash": "sha256-nIYdTAiKIGnFNugbomgBJR+Xv5F1ZQU+HfaBqJKroC0=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "4bc9c909d9ac828a039f288cf872d16d38185db8", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1751271578, - "narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixvim": { - "inputs": { - "devshell": "devshell", - "flake-compat": "flake-compat_2", - "flake-parts": "flake-parts_2", - "git-hooks": "git-hooks", - "home-manager": "home-manager_3", - "nix-darwin": "nix-darwin", - "nixpkgs": "nixpkgs_2", - "nuschtosSearch": "nuschtosSearch", - "treefmt-nix": "treefmt-nix" - }, - "locked": { - "lastModified": 1739353096, - "narHash": "sha256-w/T2uYCoq4k6K46GX2CMGWsKfMvcqnxC41LIgnvGifE=", - "owner": "nix-community", - "repo": "nixvim", - "rev": "78b6f8e1e5b37a7789216e17a96ebc117660f0e7", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixvim", - "type": "github" - } - }, - "nur": { - "inputs": { - "flake-parts": "flake-parts_3", - "nixpkgs": [ - "nixpkgs" - ], - "treefmt-nix": "treefmt-nix_2" - }, - "locked": { - "lastModified": 1751596056, - "narHash": "sha256-YYSPbbr900ciunCWYPIvUbSnnchcMWH907w4LY7uyZs=", - "owner": "nix-community", - "repo": "NUR", - "rev": "8062772f4de4a7ce091bfdb88322e236cffcff30", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "NUR", - "type": "github" - } - }, - "nuschtosSearch": { - "inputs": { - "flake-utils": "flake-utils_3", - "ixx": "ixx", - "nixpkgs": [ - "nixovim", - "nixvim", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1738508923, - "narHash": "sha256-4DaDrQDAIxlWhTjH6h/+xfG05jt3qDZrZE/7zDLQaS4=", - "owner": "NuschtOS", - "repo": "search", - "rev": "86e2038290859006e05ca7201425ea5b5de4aecb", - "type": "github" - }, - "original": { - "owner": "NuschtOS", - "repo": "search", - "type": "github" - } - }, - "pre-commit-hooks": { - "inputs": { - "flake-compat": "flake-compat", - "gitignore": "gitignore", - "nixpkgs": [ - "hyprland", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1750779888, - "narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, - "quickshell": { - "inputs": { - "nixpkgs": [ - "caelestia-shell", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1752486994, - "narHash": "sha256-/11zPRDdPPn61GXDyvDes9otFTP5lLqmETAtwMdeYWI=", - "ref": "refs/heads/master", - "rev": "5ac9096c1c63f6940c6b95f1118b540dfe029278", - "revCount": 632, - "type": "git", - "url": "https://git.outfoxxed.me/outfoxxed/quickshell" - }, - "original": { - "type": "git", - "url": "https://git.outfoxxed.me/outfoxxed/quickshell" - } - }, - "quickshell_2": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1751880110, - "narHash": "sha256-5fQ2cetL3rTHqXe2VM3puawL/8u5j6ujBr6Gdt7Iues=", - "ref": "refs/heads/master", - "rev": "5d7e07508ae3e5487edb1ac5a152120434f091d5", - "revCount": 607, - "type": "git", - "url": "https://git.outfoxxed.me/outfoxxed/quickshell" - }, - "original": { - "type": "git", - "url": "https://git.outfoxxed.me/outfoxxed/quickshell" - } - }, - "root": { - "inputs": { - "caelestia-shell": "caelestia-shell", - "chaotic": "chaotic", - "darwin": "darwin", - "flake-utils": "flake-utils_2", - "home-manager": "home-manager_2", - "hyprland": "hyprland", - "jovian": "jovian_2", - "matugen": "matugen", - "nixovim": "nixovim", - "nixpkgs": "nixpkgs_4", - "nur": "nur", - "quickshell": "quickshell_2" - } - }, - "rust-overlay": { - "inputs": { - "nixpkgs": [ - "chaotic", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1751856221, - "narHash": "sha256-/QE1eV0ckFvgRMcKjZqgdJDoXFNwSMepwRoBjaw2MCk=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "34cae4b56929c5b340e1c5b10d9a98a425b2a51e", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_2": { - "inputs": { - "nixpkgs": "nixpkgs_3" - }, - "locked": { - "lastModified": 1739327257, - "narHash": "sha256-rlGK8wxz/e50Z+PQRzuP+m03IrGkhcPGmgkBnkEZ9C8=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "e01f2c035b7b8a428c119b183f4cbc55f2eef07c", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "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": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_4": { - "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_5": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "treefmt-nix": { - "inputs": { - "nixpkgs": [ - "nixovim", - "nixvim", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1738680491, - "narHash": "sha256-8X7tR3kFGkE7WEF5EXVkt4apgaN85oHZdoTGutCFs6I=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "64dbb922d51a42c0ced6a7668ca008dded61c483", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" - } - }, - "treefmt-nix_2": { - "inputs": { - "nixpkgs": [ - "nur", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1733222881, - "narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "49717b5af6f80172275d47a418c9719a31a78b53", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" - } - }, - "xdph": { - "inputs": { - "hyprland-protocols": [ - "hyprland", - "hyprland-protocols" - ], - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1751300244, - "narHash": "sha256-PFuv1TZVYvQhha0ac53E3YgdtmLShrN0t4T6xqHl0jE=", - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "rev": "6115f3fdcb2c1a57b4a80a69f3c797e47607b90a", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "type": "github" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/flake.nix b/flake.nix index 757ac91..efe3e1d 100644 --- a/flake.nix +++ b/flake.nix @@ -1,113 +1,92 @@ { - description = "A rewrite of the original Sakamoto NixOS config."; + description = "A personal Nix flake for system and home configurations"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; - flake-utils.url = "github:numtide/flake-utils"; - chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable"; - - nur = { - url = "github:nix-community/NUR"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - jovian = { - url = "github:Jovian-Experiments/Jovian-NixOS"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - hyprland.url = "github:hyprwm/Hyprland"; - hyprland.inputs.nixpkgs.follows = "nixpkgs"; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; - darwin = { - url = "github:lnl7/nix-darwin"; + nix-darwin = { + url = "github:LnL7/nix-darwin"; inputs.nixpkgs.follows = "nixpkgs"; }; - nixovim = { - url = "git+https://git.sakamoto.dev/kenji/nixovim.git"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - matugen = { - url = "github:/InioX/Matugen"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - quickshell = { - url = "git+https://git.outfoxxed.me/outfoxxed/quickshell"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - caelestia-shell = { - url = "git+https://git.sakamoto.dev/kenji/caelestia-nix"; - inputs.nixpkgs.follows = "nixpkgs"; - }; + flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, - flake-utils, home-manager, - darwin, + nix-darwin, + flake-utils, ... - } @ inputs: let - config = import ./config.nix; - - mkArgs = system: - { - inherit inputs system; - } - // config; - - systems = ["x86_64-linux" "aarch64-linux"]; - in - flake-utils.lib.eachSystem systems (system: let + }: + flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; config.allowUnfree = true; }; - args = mkArgs system; + + homeManagerModule = { + # home.stateVersion = "24.05"; + }; in { - }) - // { nixosConfigurations = { - hakase = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - specialArgs = mkArgs "x86_64-linux"; + "my-nixos-desktop" = nixpkgs.lib.nixosSystem { + inherit system; modules = [ - ./hosts/hakase/configuration.nix + ./hosts/nixos/my-nixos-desktop/configuration.nix + + home-manager.nixosModules.home-manager + { + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + home-manager.users.youruser = homeManagerModule; + # home-manager.users.youruser = import ./home/youruser/home.nix; + } ]; + + specialArgs = { + inherit self pkgs; + }; }; }; homeConfigurations = { - hakase = home-manager.lib.homeManagerConfiguration { - pkgs = import nixpkgs { - system = "x86_64-linux"; - config.allowUnfree = true; - extraSpecialArgs = mkArgs "x86_64-linux"; - }; + "youruser-standalone" = home-manager.lib.homeManagerConfiguration { + inherit pkgs; modules = [ - ./home/hakase.nix + homeManagerModule + # ./home/youruser/home.nix ]; + + # specialArgs = { inherit self; }; }; }; darwinConfigurations = { - macos = darwin.lib.darwinSystem { - system = "aarch64-darwin"; - specialArgs = mkArgs "aarch64-darwin"; + "my-macbook-pro" = nix-darwin.lib.darwinSystem { + inherit system; modules = [ - ./hosts/macos/darwin.nix + ./hosts/darwin/my-macbook-pro/configuration.nix + + home-manager.darwinModules.home-manager + { + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + home-manager.users.youruser = homeManagerModule; + # home-manager.users.youruser = import ./home/youruser/home.nix; + } ]; + + specialArgs = { + inherit self pkgs; + }; }; }; - }; + }); } diff --git a/home/darwin.nix b/home/darwin.nix deleted file mode 100644 index 770c900..0000000 --- a/home/darwin.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ - config, - pkgs, - inputs, - ... -}: { - imports = [ - ../modules/home/terminal.nix - ]; - - programs.home-manager.enable = true; - - home.packages = []; - home.stateVersion = "25.11"; -} diff --git a/home/hakase.nix b/home/hakase.nix deleted file mode 100644 index 35aaff9..0000000 --- a/home/hakase.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ - pkgs, - inputs, - ... -}: let - info = import ../config.nix; -in { - imports = [ - # inputs.chaotic.homeManagerModules.default - ../modules/home/desktop.nix - ../modules/home/terminal.nix - ]; - # nix.package = pkgs.nix; - home.packages = info.myConfig.nixos.Apps.packages pkgs; - home.stateVersion = "25.05"; -} diff --git a/hosts/hakase/configuration.nix b/hosts/hakase/configuration.nix deleted file mode 100644 index 7d74308..0000000 --- a/hosts/hakase/configuration.nix +++ /dev/null @@ -1,204 +0,0 @@ -{ - pkgs, - myConfig, - inputs, - lib, - specialArgs, - ... -}: { - imports = [ - inputs.home-manager.nixosModules.home-manager - inputs.chaotic.nixosModules.default - ./hardware-configuration.nix - ../../modules/default/desktop.nix - ../../modules/default/dev.nix - ../../modules/default/remote.nix - ]; - - environment.systemPackages = with pkgs; [ - pavucontrol - wl-clipboard - wget - protontricks - ]; - - users = { - defaultUserShell = pkgs.${myConfig.general.Terminal.shell}; - users = { - ${myConfig.essentials.Username} = { - isNormalUser = true; - extraGroups = ["wheel" "networkmanager" "input" "video"]; - initialHashedPassword = "$y$j9T$NHFtSwF4NJtEmgMjy4Xdg.$9WQltjEx3eEfZ7GbpGLW8lBhJtiXPOeIawrxdmx0.vB"; - useDefaultShell = true; - packages = []; - }; - }; - }; - home-manager = { - backupFileExtension = "backup"; - useGlobalPkgs = true; - useUserPackages = true; - extraSpecialArgs = specialArgs; - users.${myConfig.essentials.Username} = import ../../home/hakase.nix; - }; - - nixpkgs.config.allowUnfree = myConfig.general.allowUnfree; - - hardware.logitech.wireless.enable = true; - hardware.bluetooth.enable = true; - hardware.bluetooth.powerOnBoot = true; - hardware.bluetooth.settings = { - General = { - AutoEnable = true; - Experimental = true; - MultiProfile = "multiple"; - FastConnectable = true; - }; - }; - hardware.graphics = { - enable = true; - enable32Bit = true; - }; - - i18n.defaultLocale = "en_US.UTF-8"; - time.timeZone = "${myConfig.nixos.Timezone}"; - - boot.loader = { - systemd-boot = lib.mkIf (myConfig.nixos.Boot.mode == "systemd") { - enable = true; - }; - grub = lib.mkIf (myConfig.nixos.Boot.mode == "grub") { - efiSupport = true; - enable = true; - device = "nodev"; - useOSProber = true; - }; - efi = { - canTouchEfiVariables = true; - efiSysMountPoint = "/boot"; - }; - }; - - programs.ssh.extraConfig = myConfig.optionals.Ssh.extraConfig; - - programs.bash = { - interactiveShellInit = '' - if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]] - then - shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION="" - exec ${pkgs.fish}/bin/fish $LOGIN_OPTION - fi - ''; - }; - - programs = { - zsh.enable = true; - fish.enable = true; - }; - - services = { - displayManager.sessionPackages = [inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland]; - # getty.autologinUser = "${myConfig.essentials.Username}"; - # greetd = { - # enable = true; - # settings.default_session = { - # user = "${myConfig.essentials.Username}"; - # command = "Hyprland"; - # }; - # }; - - seatd.enable = true; - upower.enable = true; - scx.enable = true; # by default uses scx_rustland scheduler - libinput.enable = true; - blueman.enable = true; - printing.enable = true; - openssh.enable = true; - pipewire = { - enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - - # lowLatency = { - # enable = true; - # quantum = 64; - # rate = 48000; - # }; - }; - }; - # make pipewire realtime-capable - security.rtkit.enable = true; - - nix = { - distributedBuilds = true; - settings = { - builders-use-substitutes = true; - trusted-users = myConfig.optionals.Builds.trustedUsers; - experimental-features = ["nix-command" "flakes"]; - }; - }; - - console = { - earlySetup = false; - font = "${pkgs.terminus_font}/share/consolefonts/ter-132n.psf.gz"; - packages = with pkgs; [terminus_font]; - useXkbConfig = true; - }; - - networking = { - # wakeOnLan.enable = true; - networkmanager.enable = true; - firewall = { - enable = true; - allowedTCPPorts = [22 80]; - allowedUDPPorts = [53]; - }; - proxy.default = null; - proxy.noProxy = null; - }; - - boot.loader.timeout = 0; - boot.loader.limine.maxGenerations = 5; - hardware.amdgpu.initrd.enable = true; - - boot.kernelParams = [ - "quiet" - "splash" - "boot.shell_on_fail" - "udev.log_priority=3" - "rd.systemd.show_status=auto" - "iommu=pt" - "amd_pstate=active" - ]; - boot.kernelPackages = pkgs.linuxPackages_cachyos; - boot.kernel.sysctl = { - "kernel.split_lock_mitigate" = 0; - "kernel.nmi_watchdog" = 0; - "kernel.sched_bore" = "1"; - }; - - boot.initrd = { - systemd.enable = true; - kernelModules = []; - verbose = false; - }; - boot.plymouth.enable = true; - boot.plymouth.theme = "seal"; - boot.plymouth.themePackages = with pkgs; [ - # By default we would install all themes - (adi1090x-plymouth-themes.override { - selected_themes = ["seal"]; - }) - ]; - boot.consoleLogLevel = 0; - systemd.extraConfig = "DefaultTimeoutStopSec=5s"; - # networking.firewall.allowedTCPPorts = [ ... ]; - # networking.firewall.allowedUDPPorts = [ ... ]; - # Or disable the firewall altogether. - # networking.firewall.enable = false; - - # networking.proxy.default = "http://user:password@proxy:port/"; - # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; - system.stateVersion = "25.05"; -} diff --git a/hosts/hakase/hardware-configuration.nix b/hosts/hakase/hardware-configuration.nix deleted file mode 100644 index 0d9785f..0000000 --- a/hosts/hakase/hardware-configuration.nix +++ /dev/null @@ -1,47 +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, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/532ac73e-1370-4e4d-9d5a-15033de0b96d"; - fsType = "btrfs"; - options = [ "subvol=@" ]; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/1368-D3F3"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - fileSystems."/home" = - { device = "/dev/disk/by-uuid/780aa81f-c4d6-478b-9c51-2d60362fdb07"; - fsType = "ext4"; - }; - - swapDevices = - [ { device = "/dev/disk/by-uuid/b02ef55c-4caf-4a24-a6a2-fb8001eafe22"; } - ]; - - # 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..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp11s0.useDHCP = lib.mkDefault true; - # networking.interfaces.wlp10s0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/macos/darwin.nix b/hosts/macos/darwin.nix deleted file mode 100644 index 5b066a1..0000000 --- a/hosts/macos/darwin.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ - pkgs, - myConfig, - inputs, - system, - mkArgs, - ... -}: { - imports = [ - ../../modules/default/darwin.nix - inputs.home-manager.darwinModules.home-manager - ]; - # List packages installed in system profile. To search by name, run: - # $ nix-env -qaP | grep wget - environment.systemPackages = []; - - # Auto upgrade nix package and the daemon service. - # services.nix-daemon.enable = true; - # services.karabiner-elements.enable = true; - # nix.package = pkgs.nix; - - # Necessary for using flakes on this system. - nix.settings.experimental-features = "nix-command flakes"; - nix.settings.trusted-users = myConfig.optionals.Builds.trustedUsers; - - # Create /etc/zshrc that loads the nix-darwin environment. - programs.zsh.enable = true; # default shell on catalina - programs.fish.enable = true; - - # $ darwin-rebuild changelog - system.stateVersion = 5; - - # The platform the configuration will be used on. - nixpkgs.hostPlatform = "aarch64-darwin"; - security.pam.services.sudo_local.touchIdAuth = true; - - users.users.${myConfig.essentials.Username} = { - name = "${myConfig.essentials.Username}"; - home = "/Users/${myConfig.essentials.Username}"; - # shell = pkgs.${myConfig.general.terminal.Shell}; # no support for nix-darwin, but can be changed via chsh. - }; - - home-manager.useGlobalPkgs = true; - home-manager.useUserPackages = true; - home-manager.extraSpecialArgs = mkArgs system; - home-manager.users.${myConfig.essentials.Username} = import ../../home/darwin.nix; -} diff --git a/hosts/steamos/configuration.nix b/hosts/steamos/configuration.nix deleted file mode 100644 index 9e36236..0000000 --- a/hosts/steamos/configuration.nix +++ /dev/null @@ -1,169 +0,0 @@ -{ - config, - pkgs, - lib, - myConfig, - inputs, - ... -}: { - imports = [ - # Include the results of the hardware scan. - inputs.chaotic.nixosModules.default - ./hardware-configuration.nix - ]; - - nix.settings.experimental-features = ["nix-command" "flakes"]; - nixpkgs.config.allowUnfree = true; - - #################### - # Boot & Kernel # - #################### - boot.loader.systemd-boot.enable = true; - boot.loader.efi.canTouchEfiVariables = true; - boot.loader.timeout = 0; - boot.loader.limine.maxGenerations = 5; - hardware.amdgpu.initrd.enable = true; - - boot.kernelParams = ["quiet"]; - boot.kernelPackages = pkgs.linuxPackages_cachyos; - boot.kernel.sysctl = { - "kernel.split_lock_mitigate" = 0; - "kernel.nmi_watchdog" = 0; - "kernel.sched_bore" = "1"; - }; - - boot.initrd = { - systemd.enable = true; - kernelModules = []; - verbose = false; - }; - boot.plymouth.enable = true; - boot.consoleLogLevel = 0; - systemd.extraConfig = "DefaultTimeoutStopSec=5s"; - - ################ - # FileSystems # - ################ - # fileSystems."/" = { - # options = ["compress=zstd"]; - # }; - - ############ - # Network # - ############ - networking = { - networkmanager.enable = true; - firewall.enable = false; - hostName = "nixos"; - }; - - ################# - # Bluetooth # - ################# - hardware.bluetooth.enable = true; - hardware.bluetooth.settings = { - General = { - MultiProfile = "multiple"; - FastConnectable = true; - }; - }; - - ################# - # Sound & RTKit # - ################# - security.rtkit.enable = true; - services.pipewire = { - enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - }; - - ######################## - # Graphical & Greetd # - ######################## - - services.xserver.enable = false; - services.getty.autologinUser = "steamos"; - services.greetd = { - enable = true; - settings.default_session = { - user = "${myConfig.essentials.Username}"; - command = "steam-gamescope > /dev/null 2>&1"; - }; - }; - - ######################## - # Programs & Gaming # - ######################## - services.automatic-timezoned.enable = true; - services.flatpak.enable = true; - xdg.portal.enable = true; - xdg.portal.config.common.default = "*"; - xdg.portal.extraPortals = [pkgs.xdg-desktop-portal-gtk]; - - # programs.steam.gamescopeSession.args = ["-w 1920" "-h 1080" "-r 120" "--xwayland-count 2" "-e" "--hdr-enabled" "--mangoapp"]; - - programs = { - appimage = { - enable = true; - binfmt = true; - }; - fish = {enable = true;}; - mosh = {enable = true;}; - tmux = {enable = true;}; - gamescope.capSysNice = true; - steam = { - enable = true; - gamescopeSession.enable = true; - extraCompatPackages = with pkgs; [proton-ge-bin]; - extraPackages = with pkgs; [ - mangohud - gamescope-wsi - ]; - }; - }; - - environment.sessionVariables = { - PROTON_USE_NTSYNC = "1"; - ENABLE_HDR_WSI = "1"; - DXVK_HDR = "1"; - PROTON_ENABLE_AMD_AGS = "1"; - PROTON_ENABLE_NVAPI = "1"; - ENABLE_GAMESCOPE_WSI = "1"; - STEAM_MULTIPLE_XWAYLANDS = "1"; - }; - - ################### - # Virtualization # - ################### - virtualisation.docker.enable = true; - virtualisation.docker.enableOnBoot = false; - virtualisation.libvirtd.enable = true; - - ############### - # Users # - ############### - users.users.${myConfig.essentials.Username} = { - isNormalUser = true; - description = "SteamOS user"; - extraGroups = ["networkmanager" "wheel" "docker" "video" "seat" "audio" "libvirtd"]; - # password = "steamos"; - }; - - ################# - # Security # - ################# - security.sudo.wheelNeedsPassword = false; - security.polkit.enable = true; - services.seatd.enable = true; - services.openssh.enable = true; - - ###################### - ###################### - - ######################## - # System State Version # - ######################## - system.stateVersion = "25.05"; -} diff --git a/hosts/steamos/hardware-configuration.nix b/hosts/steamos/hardware-configuration.nix deleted file mode 100644 index 0884052..0000000 --- a/hosts/steamos/hardware-configuration.nix +++ /dev/null @@ -1,47 +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, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/532ac73e-1370-4e4d-9d5a-15033de0b96d"; - fsType = "btrfs"; - options = [ "subvol=@" ]; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/1368-D3F3"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - fileSystems."/home" = - { device = "/dev/disk/by-uuid/780aa81f-c4d6-478b-9c51-2d60362fdb07"; - fsType = "ext4"; - }; - - swapDevices = - [ { device = "/dev/disk/by-uuid/b02ef55c-4caf-4a24-a6a2-fb8001eafe22"; } - ]; - - # 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..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp11s0.useDHCP = lib.mkDefault true; - # networking.interfaces.wlp10s0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/modules/default/darwin.nix b/modules/default/darwin.nix deleted file mode 100644 index c576eb0..0000000 --- a/modules/default/darwin.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ - imports = [ - ../../packages/python/default.nix - ]; -} diff --git a/modules/default/desktop.nix b/modules/default/desktop.nix deleted file mode 100644 index beb772a..0000000 --- a/modules/default/desktop.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ - lib, - myConfig, - ... -}: { - imports = - [ - ../../packages/hyprland/default.nix - ../../packages/matugen/default.nix - ../../packages/quickshell/default.nix - ../../packages/udev/default.nix - ] - ++ [ - ../../packages/steam/default.nix - ../../packages/bottles/default.nix - ] - ++ lib.optionals (myConfig.nixos.enableSteamOS == true) [ - ../../packages/steam/jovian.nix - ]; -} diff --git a/modules/default/dev.nix b/modules/default/dev.nix deleted file mode 100644 index c576eb0..0000000 --- a/modules/default/dev.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ - imports = [ - ../../packages/python/default.nix - ]; -} diff --git a/modules/default/remote.nix b/modules/default/remote.nix deleted file mode 100644 index f7e9be4..0000000 --- a/modules/default/remote.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ - imports = [ - ]; -} diff --git a/modules/home/desktop.nix b/modules/home/desktop.nix deleted file mode 100644 index b1f58ac..0000000 --- a/modules/home/desktop.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ - imports = - [ - ../../packages/fonts/home.nix - ../../packages/firefox/home.nix - - ../../packages/hyprland/home.nix - ../../packages/hyprlock/home.nix - ../../packages/hypridle/home.nix - ../../packages/quickshell/home.nix - ../../packages/swww/home.nix - ../../packages/hyprsunset/home.nix - ../../packages/matugen/home.nix - ../../packages/rofi/home.nix - ../../packages/bibata/home.nix - ] - ++ [ - ../../packages/solaar/home.nix - ] - ++ [ - ../../packages/mangohud/home.nix - ../../packages/protonup/home.nix - ../../packages/lutris/home.nix - ../../packages/steam/home.nix - ]; -} diff --git a/modules/home/remote.nix b/modules/home/remote.nix deleted file mode 100644 index efd2ab2..0000000 --- a/modules/home/remote.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ - imports = [ - ../../packages/moondeck-buddy/appimage.nix - ../../packages/sunshine/default.nix - ]; -} diff --git a/modules/home/terminal.nix b/modules/home/terminal.nix deleted file mode 100644 index 3e80dde..0000000 --- a/modules/home/terminal.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ - imports = [ - ../../packages/fish/home.nix - ../../packages/kitty/home.nix - ../../packages/neovim/home.nix - ../../packages/starship/home.nix - ../../packages/fastfetch/home.nix - ../../packages/zsh/home.nix - ../../packages/zoxide/home.nix - ../../packages/fonts/home.nix - - ../../packages/git/home.nix - - ../../packages/btop/home.nix - ../../packages/eza/home.nix - - ../../packages/cloudflared/home.nix - ]; -} diff --git a/packages/ags/custom/.gitignore b/packages/ags/custom/.gitignore deleted file mode 100644 index 298eb4d..0000000 --- a/packages/ags/custom/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -node_modules/ -@girs/ diff --git a/packages/ags/custom/app.ts b/packages/ags/custom/app.ts deleted file mode 100644 index 8952ecf..0000000 --- a/packages/ags/custom/app.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { App } from "astal/gtk3" -import style from "./style.scss" -import Bar from "./widget/Bar" - -App.start({ - css: style, - instanceName: "js", - requestHandler(request, res) { - print(request) - res("ok") - }, - main: () => { - const monitors = App.get_monitors() - const primary = monitors.find(m => m.primary) || monitors[0] - return Bar(primary) - } -}) diff --git a/packages/ags/custom/colors.scss b/packages/ags/custom/colors.scss deleted file mode 100644 index 96044bb..0000000 --- a/packages/ags/custom/colors.scss +++ /dev/null @@ -1,3 +0,0 @@ -$background: #131318; -$foreground: #e4e1e9; -$primary: #bec2ff; diff --git a/packages/ags/custom/env.d.ts b/packages/ags/custom/env.d.ts deleted file mode 100644 index 467c0a4..0000000 --- a/packages/ags/custom/env.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -declare const SRC: string - -declare module "inline:*" { - const content: string - export default content -} - -declare module "*.scss" { - const content: string - export default content -} - -declare module "*.blp" { - const content: string - export default content -} - -declare module "*.css" { - const content: string - export default content -} diff --git a/packages/ags/custom/package.json b/packages/ags/custom/package.json deleted file mode 100644 index 23b6342..0000000 --- a/packages/ags/custom/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "astal-shell", - "dependencies": { - "astal": "/home/biscuit/.local/share/ags" - } -} diff --git a/packages/ags/custom/style.scss b/packages/ags/custom/style.scss deleted file mode 100644 index 88d42f9..0000000 --- a/packages/ags/custom/style.scss +++ /dev/null @@ -1,143 +0,0 @@ -@use "sass:color"; -@use "./colors" as *; - -// default -// $bg: #212223; -// $fg: #f1f1f1; -// $accent: #378DF7; -// $radius: 7px; - -// Kanagawa Theme -// $bg: #1F1F28; -// $fg: #DCD7BA; -// $accent: #C0A36E; -// $radius: 7px; - -// mstcl -// $bg: #121212; -// $fg: #f1f1f1; -// $accent: #C0A36E; -// $radius: 7px; - -$bg: $background; -$fg: $foreground; -$accent: $primary; -$radius: 7px; - -window.Bar { - border: none; - box-shadow: none; - background-color: $bg; - color: $fg; - font-size: 1.1em; - font-weight: bold; - font-family: "JetBrainsMono Nerd Font"; - - label { - margin: 0 8px; - } - - .Workspaces { - button { - all: unset; - background-color: transparent; - - &:hover label { - background-color: color.adjust($fg, $alpha: -0.84); - border-color: color.adjust($accent, $alpha: -0.8); - } - - &:active label { - background-color: color.adjust($fg, $alpha: -0.8) - } - } - - label { - transition: 200ms; - padding: 0 8px; - margin: 2px; - border-radius: $radius; - border: 1pt solid transparent; - } - - .focused label { - color: $accent; - border-color: $accent; - } - } - - .SysTray { - margin-right: 8px; - - button { - padding: 0 4px; - } - } - - .Time { - .TimeHM { - font-weight: bold; - color: $accent; - } - - .TimeDate { - // color: color.adjust($fg, $lightness: -10%); - color: $fg; - opacity: 0.85; - font-weight: normal; - } - } - - - .FocusedClient { - color: color.adjust($fg, $lightness: -30%); - opacity: 0.7; - } - - .Media .Cover { - min-height: 1.2em; - min-width: 1.2em; - border-radius: $radius; - background-position: center; - background-size: contain; - } - - .Battery label { - padding-left: 0; - margin-left: 0; - } - - .AudioSlider { - * { - all: unset; - } - - icon { - margin-right: .6em; - } - - & { - margin: 0 1em; - } - - trough { - background-color: color.adjust($fg, $alpha: -0.8); - border-radius: $radius; - } - - highlight { - background-color: $accent; - min-height: .8em; - border-radius: $radius; - } - - slider { - background-color: $fg; - border-radius: $radius; - min-height: 1em; - min-width: 1em; - margin: -.2em; - } - } -} - diff --git a/packages/ags/custom/tsconfig.json b/packages/ags/custom/tsconfig.json deleted file mode 100644 index 9471e35..0000000 --- a/packages/ags/custom/tsconfig.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "compilerOptions": { - "experimentalDecorators": true, - "strict": true, - "target": "ES2022", - "module": "ES2022", - "moduleResolution": "Bundler", - // "checkJs": true, - // "allowJs": true, - "jsx": "react-jsx", - "jsxImportSource": "astal/gtk3", - } -} diff --git a/packages/ags/custom/widget/Bar.tsx b/packages/ags/custom/widget/Bar.tsx deleted file mode 100644 index 9941dc4..0000000 --- a/packages/ags/custom/widget/Bar.tsx +++ /dev/null @@ -1,189 +0,0 @@ -import { App } from "astal/gtk3" -import { Variable, GLib, bind } from "astal" -import { Astal, Gtk, Gdk } from "astal/gtk3" -import Hyprland from "gi://AstalHyprland" -import Mpris from "gi://AstalMpris" -import Battery from "gi://AstalBattery" -import Wp from "gi://AstalWp" -import Network from "gi://AstalNetwork" -import Tray from "gi://AstalTray" - -function SysTray() { - const tray = Tray.get_default() - - return - {bind(tray, "items").as(items => items.map(item => ( - ["dbusmenu", ag])} - menuModel={bind(item, "menuModel")}> - - - )))} - -} - -function Wifi() { - const network = Network.get_default() - const wifi = bind(network, "wifi") - - return - {wifi.as(wifi => wifi && ( - - ))} - - -} - -function AudioSlider() { - const speaker = Wp.get_default()?.audio.defaultSpeaker! - - return - - speaker.volume = value} - value={bind(speaker, "volume")} - /> - -} - -function BatteryLevel() { - const bat = Battery.get_default() - - return - - -} - -function Media() { - const mpris = Mpris.get_default() - - return - {bind(mpris, "players").as(ps => ps[0] ? ( - - - `background-image: url('${cover}');` - )} - /> - - ) : ( - -} - - -function Workspaces() { - const hypr = Hyprland.get_default(); - - return ( - - {bind(hypr, "focusedWorkspace").as((fw) => { - if (!fw) return null; - - // Determine the current chunk of 5 visible workspace buttons - const currentChunkStart = Math.floor((fw.id - 1) / 5) * 5 + 1; - const visibleIds = Array.from({ length: 5 }, (_, i) => currentChunkStart + i); - - return visibleIds.map((id) => { - // Try to get the real workspace, fall back to a dummy one if it doesn't exist - const ws = - hypr.workspaces.find((w) => w.id === id) ?? - Hyprland.Workspace.dummy(id, null); - - return ( - - ); - }); - })} - - ); -} - -function FocusedClient() { - const hypr = Hyprland.get_default(); - const focused = bind(hypr, "focusedClient"); - - return ( - - {focused.as(client => { - if (!client) return null; - - return ( - - ); -} -function Time({ format = "%H:%M|%a %b %d" }) { - const time = Variable("").poll(1000, () => - GLib.DateTime.new_now_local().format(format)! - ); - - return bind(time).as(str => { - const [hm, date] = str.split("|"); - - return ( - - - ); - }); -} - -export default function Bar(monitor: Gdk.Monitor) { - const { TOP, LEFT, RIGHT } = Astal.WindowAnchor - - return - - - - - - - - - - - - - - - -} diff --git a/packages/ags/home.nix b/packages/ags/home.nix deleted file mode 100644 index 8e4e1cf..0000000 --- a/packages/ags/home.nix +++ /dev/null @@ -1,28 +0,0 @@ -{ - inputs, - pkgs, - system, - ... -}: { - imports = [inputs.ags.homeManagerModules.default]; - - programs.ags = { - enable = true; - configDir = ./custom; - - extraPackages = let - agsPkgs = inputs.ags.packages.${system}; - in - with pkgs; [ - agsPkgs.battery - agsPkgs.hyprland - agsPkgs.mpris - agsPkgs.wireplumber - agsPkgs.notifd - agsPkgs.apps - agsPkgs.network - agsPkgs.tray - fzf - ]; - }; -} diff --git a/packages/bibata/home.nix b/packages/bibata/home.nix deleted file mode 100644 index dde1048..0000000 --- a/packages/bibata/home.nix +++ /dev/null @@ -1,5 +0,0 @@ -{pkgs, ...}: { - home.packages = with pkgs; [ - bibata-cursors - ]; -} diff --git a/packages/bottles/default.nix b/packages/bottles/default.nix deleted file mode 100644 index dde84db..0000000 --- a/packages/bottles/default.nix +++ /dev/null @@ -1,5 +0,0 @@ -{pkgs, ...}: { - environment.systemPackages = with pkgs; [ - bottles - ]; -} diff --git a/packages/btop/home.nix b/packages/btop/home.nix deleted file mode 100644 index 5f36a11..0000000 --- a/packages/btop/home.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ - programs.btop = { - enable = true; - settings = { - vim_keys = true; - theme_background = false; - }; - }; -} diff --git a/packages/cloudflared/home.nix b/packages/cloudflared/home.nix deleted file mode 100644 index 5e35d40..0000000 --- a/packages/cloudflared/home.nix +++ /dev/null @@ -1,5 +0,0 @@ -{pkgs, ...}: { - home.packages = with pkgs; [ - cloudflared - ]; -} diff --git a/packages/eza/home.nix b/packages/eza/home.nix deleted file mode 100644 index a082a74..0000000 --- a/packages/eza/home.nix +++ /dev/null @@ -1,12 +0,0 @@ -{pkgs, ...}: { - programs.eza = { - enable = true; - git = true; - colors = "auto"; - icons = "auto"; - - enableZshIntegration = true; - enableFishIntegration = true; - enableBashIntegration = true; - }; -} diff --git a/packages/fastfetch/home.nix b/packages/fastfetch/home.nix deleted file mode 100644 index 0e09cb7..0000000 --- a/packages/fastfetch/home.nix +++ /dev/null @@ -1,131 +0,0 @@ -{ - programs.fastfetch = { - enable = true; - - settings = { - logo = { - padding = { - top = 2; - left = 1; - right = 2; - }; - }; - - display = { - separator = " "; - }; - - modules = [ - # Title - { - type = "title"; - format = "{#1}╭───────────── {#}{user-name-colored}"; - } - - # System Information Header - { - type = "custom"; - format = "{#1}│ {#}System Information"; - } - { - type = "os"; - key = "│ {#keys}󰍹 OS"; - } - { - type = "kernel"; - key = "│ {#keys}󰒋 Kernel"; - } - { - type = "uptime"; - key = "│ {#keys}󰅐 Uptime"; - } - { - type = "packages"; - key = "│ {#keys}󰏖 Packages"; - format = "{all}"; - } - - { - type = "custom"; - format = "{#1}│"; - } - - # Desktop Environment - { - type = "custom"; - format = "{#1}│ {#}Desktop Environment"; - } - { - type = "de"; - key = "│ {#keys}󰧨 DE"; - } - { - type = "wm"; - key = "│ {#keys}󱂬 WM"; - } - { - type = "wmtheme"; - key = "│ {#keys}󰉼 Theme"; - } - { - type = "display"; - key = "│ {#keys}󰹑 Resolution"; - } - { - type = "shell"; - key = "│ {#keys}󰞷 Shell"; - } - { - type = "terminalfont"; - key = "│ {#keys}󰛖 Font"; - } - - { - type = "custom"; - format = "{#1}│"; - } - - # Hardware Information - { - type = "custom"; - format = "{#1}│ {#}Hardware Information"; - } - { - type = "cpu"; - key = "│ {#keys}󰻠 CPU"; - } - { - type = "gpu"; - key = "│ {#keys}󰢮 GPU"; - } - { - type = "memory"; - key = "│ {#keys}󰍛 Memory"; - } - { - type = "disk"; - key = "│ {#keys}󰋊 Disk (/)"; - folders = "/"; - } - - { - type = "custom"; - format = "{#1}│"; - } - - # Colors - { - type = "colors"; - key = "│"; - symbol = "circle"; - } - - # Footer - { - type = "custom"; - format = "{#1}╰───────────────────────────────╯"; - } - ]; - }; - }; -} diff --git a/packages/firefox/home.nix b/packages/firefox/home.nix deleted file mode 100644 index 139c05a..0000000 --- a/packages/firefox/home.nix +++ /dev/null @@ -1,113 +0,0 @@ -{ - programs.firefox = { - enable = true; - languagePacks = [ - "en-US" - ]; - profiles = { - hakase = { - search.force = true; - isDefault = true; - search.default = "ddg"; - settings = { - "browser.contentblocking.category" = "strict"; - "extensions.pocket.enabled" = false; - "extensions.screenshots.disabled" = true; - "browser.topsites.contile.enabled" = false; - "browser.formfill.enable" = false; - "browser.search.suggest.enabled" = false; - "browser.search.suggest.enabled.private" = false; - "browser.urlbar.suggest.searches" = false; - "browser.urlbar.showSearchSuggestionsFirst" = false; - "browser.newtabpage.activity-stream.feeds.section.topstories" = false; - "browser.newtabpage.activity-stream.feeds.snippets" = false; - "browser.newtabpage.activity-stream.section.highlights.includePocket" = false; - "browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false; - "browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false; - "browser.newtabpage.activity-stream.section.highlights.includeVisited" = false; - "browser.newtabpage.activity-stream.showSponsored" = false; - "browser.newtabpage.activity-stream.system.showSponsored" = false; - "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; - "browser.startup.homepage" = "https://dash.sakamoto.dev"; - "browser.newtabpage.pinned" = [ - { - title = "Dashboard"; - url = "https://dash.sakamoto.dev"; - } - ]; - }; - bookmarks = { - force = true; - settings = [ - { - toolbar = true; - bookmarks = [ - { - name = "Home Manager"; - url = "https://mynixos.com/home-manager/options/programs"; - } - { - name = "YouTube"; - url = "https://youtube.com"; - } - ]; - } - ]; - }; - }; - }; - - policies = { - DisableTelemetry = true; - DisableFirefoxStudies = true; - EnableTrackingProtection = { - Value = true; - Locked = true; - Cryptomining = true; - Fingerprinting = true; - }; - DisablePocket = true; - DisableFirefoxAccounts = true; - DisableAccounts = true; - DisableFirefoxScreenshots = true; - OverrideFirstRunPage = ""; - OverridePostUpdatePage = ""; - DontCheckDefaultBrowser = true; - DisplayBookmarksToolbar = "always"; # alternatives: "always" or "newtab" - DisplayMenuBar = "default-off"; # alternatives: "always", "never" or "default-on" - SearchBar = "unified"; # alternative: "separate" - - /* - ---- EXTENSIONS ---- - */ - # Check about:support for extension/add-on ID strings. - # Valid strings for installation_mode are "allowed", "blocked", - # "force_installed" and "normal_installed". - ExtensionSettings = { - "*".installation_mode = "blocked"; - "uBlock0@raymondhill.net" = { - install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi"; - installation_mode = "force_installed"; - }; - "{446900e4-71c2-419f-a6a7-df9c091e268b}" = { - install_url = "https://addons.mozilla.org/firefox/downloads/file/4493940/bitwarden_password_manager-2025.5.0.xpi"; - installation_mode = "force_installed"; - }; - "tridactyl.vim@cmcaine.co.uk" = { - install_url = "https://addons.mozilla.org/firefox/downloads/file/4405615/tridactyl_vim-1.24.2.xpi"; - installation_mode = "force_installed"; - }; - # Privacy Badger: - # "jid1-MnnxcxisBPnSXQ@jetpack" = { - # install_url = "https://addons.mozilla.org/firefox/downloads/latest/privacy-badger17/latest.xpi"; - # installation_mode = "force_installed"; - # }; - # 1Password: - # "{d634138d-c276-4fc8-924b-40a0ea21d284}" = { - # install_url = "https://addons.mozilla.org/firefox/downloads/latest/1password-x-password-manager/latest.xpi"; - # installation_mode = "force_installed"; - # }; - }; - }; - }; -} diff --git a/packages/fish/home.nix b/packages/fish/home.nix deleted file mode 100644 index 4fa8a81..0000000 --- a/packages/fish/home.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ - pkgs, - myConfig, - ... -}: { - programs.fish = { - enable = true; - interactiveShellInit = '' - set fish_greeting - fish_vi_key_bindings - zoxide init fish | source - - ''; - shellAliases = myConfig.general.Terminal.aliases; - - plugins = with pkgs.fishPlugins; [ - ]; - }; -} diff --git a/packages/fonts/home.nix b/packages/fonts/home.nix deleted file mode 100644 index fda586b..0000000 --- a/packages/fonts/home.nix +++ /dev/null @@ -1,8 +0,0 @@ -{pkgs, ...}: { - fonts = { - fontconfig.enable = true; - }; - home.packages = with pkgs; [ - nerd-fonts.jetbrains-mono - ]; -} diff --git a/packages/git/home.nix b/packages/git/home.nix deleted file mode 100644 index b15b115..0000000 --- a/packages/git/home.nix +++ /dev/null @@ -1,10 +0,0 @@ -{myConfig, ...}: { - programs.git = { - enable = true; - extraConfig = { - user.name = "${myConfig.nixos.Git.user}"; - user.email = "${myConfig.nixos.Git.email}"; - init.defaultBranch = "${myConfig.nixos.Git.defaultBranch}"; - }; - }; -} diff --git a/packages/hypridle/home.nix b/packages/hypridle/home.nix deleted file mode 100644 index 01ea574..0000000 --- a/packages/hypridle/home.nix +++ /dev/null @@ -1,38 +0,0 @@ -{...}: { - services.hypridle = { - enable = true; - settings = { - general = { - lock_cmd = "pidof hyprlock || hyprlock"; # avoid starting multiple hyprlock instances. - before_sleep_cmd = "loginctl lock-session"; # lock before suspend. - after_sleep_cmd = "hyprctl dispatch dpms on && agu"; # avoid needing to press a key twice to turn on the display. - }; - - listener = [ - # { - # timeout = 150; - # on-timeout = "brightnessctl -s set 10"; # set monitor backlight to minimum, avoid 0 on OLED monitor. - # on-resume = "brightnessctl -r"; # restore monitor backlight. - # } - # { - # timeout = 150; - # on-timeout = "brightnessctl -sd rgb:kbd_backlight set 0"; # turn off keyboard backlight. - # on-resume = "brightnessctl -rd rgb:kbd_backlight"; # turn on keyboard backlight. - # } - # { - # timeout = 300; - # on-timeout = "loginctl lock-session"; # lock screen when timeout has passed. - # } - # { - # timeout = 330; - # on-timeout = "hyprctl dispatch dpms off"; # screen off after 5.5min. - # on-resume = "hyprctl dispatch dpms on && brightnessctl -r"; # screen on and restore brightness on resume. - # } - { - timeout = 500; - on-timeout = "systemctl suspend"; # suspend PC after 30min. - } - ]; - }; - }; -} diff --git a/packages/hyprland/config/animation.nix b/packages/hyprland/config/animation.nix deleted file mode 100644 index 223c9f2..0000000 --- a/packages/hyprland/config/animation.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ - config, - pkgs, - myConfig, - ... -}: { - wayland.windowManager.hyprland.settings = { - animations = { - enabled = true; - bezier = [ - "linear, 0, 0, 1, 1" - "md3_standard, 0.2, 0, 0, 1" - "md3_decel, 0.05, 0.7, 0.1, 1" - "md3_accel, 0.3, 0, 0.8, 0.15" - "overshot, 0.05, 0.9, 0.1, 1.1" - "crazyshot, 0.1, 1.5, 0.76, 0.92" - "hyprnostretch, 0.05, 0.9, 0.1, 1.0" - "menu_decel, 0.1, 1, 0, 1" - "menu_accel, 0.38, 0.04, 1, 0.07" - "easeInOutCirc, 0.85, 0, 0.15, 1" - "easeOutCirc, 0, 0.55, 0.45, 1" - "easeOutExpo, 0.16, 1, 0.3, 1" - "softAcDecel, 0.26, 0.26, 0.15, 1" - "md2, 0.4, 0, 0.2, 1" - ]; - - animation = [ - "windows, 1, 3, md3_decel, popin 60%" - "windowsIn, 1, 3, md3_decel, popin 60%" - "windowsOut, 1, 3, md3_accel, popin 60%" - "border, 1, 10, default" - "fade, 1, 3, md3_decel" - "layersIn, 1, 3, menu_decel, slide" - "layersOut, 1, 1.6, menu_accel" - "fadeLayersIn, 1, 2, menu_decel" - "fadeLayersOut, 1, 0.5, menu_accel" - "workspaces, 1, 7, menu_decel, slide" - "specialWorkspace, 1, 3, md3_decel, slidevert" - ]; - }; - }; -} diff --git a/packages/hyprland/config/binds.nix b/packages/hyprland/config/binds.nix deleted file mode 100644 index 9088a10..0000000 --- a/packages/hyprland/config/binds.nix +++ /dev/null @@ -1,297 +0,0 @@ -{ - config, - pkgs, - ... -}: { - wayland.windowManager.hyprland.settings = { - exec = [ - "hyprctl dispatch submap global" - ]; - - submap = [ - "global" - ]; - - # Shell keybinds - bindi = [ - "$mod, Super_L, global, caelestia:launcher" # bind to `bind` because `bindi` maps to it - # Launcher - ]; - bindin = - [ - "$mod, catchall, global, caelestia:launcherInterrupt" - "$mod, mouse:272, global, caelestia:launcherInterrupt" - "$mod, mouse:273, global, caelestia:launcherInterrupt" - "$mod, mouse:274, global, caelestia:launcherInterrupt" - "$mod, mouse:275, global, caelestia:launcherInterrupt" - "$mod, mouse:276, global, caelestia:launcherInterrupt" - "$mod, mouse:277, global, caelestia:launcherInterrupt" - "$mod, mouse_up, global, caelestia:launcherInterrupt" - "$mod, mouse_down, global, caelestia:launcherInterrupt" - - "$mod, K, global, caelestia:launcherInterrupt" - "$mod, H, global, caelestia:launcherInterrupt" - "$mod, J, global, caelestia:launcherInterrupt" - "$mod, L, global, caelestia:launcherInterrupt" - - "$mod, S, global, caelestia:launcherInterrupt" - "$mod, G, global, caelestia:launcherInterrupt" - "$mod, T, global, caelestia:launcherInterrupt" - "$mod, D, global, caelestia:launcherInterrupt" - "$mod, Escape, global, caelestia:launcherInterrupt" - "$mod, PERIOD, global, caelestia:launcherInterrupt" - "$mod, E, global, caelestia:launcherInterrupt" - "$mod, V, global, caelestia:launcherInterrupt" - - "$mod, W, global, caelestia:launcherInterrupt" - "$mod, Q, global, caelestia:launcherInterrupt" - "$mod, C, global, caelestia:launcherInterrupt" - "$mod, Return, global, caelestia:launcherInterrupt" - ] - ++ ( - # Go to workspace group # - builtins.concatLists (builtins.genList ( - i: let - ws = i + 1; - in [ - "$mod, ${toString ws}, global, caelestia:launcherInterrupt" - ] - ) - 9) - ) - ++ [ - "$mod, 0, global, caelestia:launcherInterrupt" - ]; - bind = - [ - # Misc - "Control+Alt, Delete, exec, caelestia:session" - "$mod ALT, A, global, caelestia:showall" - "$mod ALT, L, global, caelestia:lock" - - # Restore lock - these are `bindl` in your original, but `exec` should be fine here. - # However, `bindl` is typically for a *release* event. If `caelestia shell -d` is a daemon, - # and `caelestia:lock` is a quickshell internal, you might need to reconsider. - # For direct translation, they go into `bindl` list. - - # Media - handled by bindl below - - # Apps - "$mod, Return, exec, app2unit -- kitty" - "$mod, W, exec, app2unit -- firefox" - "$mod, E, exec, app2unit -- thunar" - "$mod, Q, killactive" - "$mod ALT, E, exec, app2unit -- nemo" - "Control+Alt, Escape, exec, app2unit -- qps" - "Control+Alt, V, exec, app2unit -- pavucontrol" - - # Utilities - "$mod SHIFT, S, global, caelestia:screenshotFreeze" - "$mod SHIFT ALT, S, global, caelestia:screenshot" - "$mod ALT, R, exec, caelestia record -s" - "Control+Alt, R, exec, caelestia record" - "$mod SHIFT ALT, R, exec, caelestia record -r" - "$mod SHIFT, C, exec, hyprpicker -a" # Colour picker - - # Sleep - "$mod SHIFT, PRINT, exec, systemctl suspend-then-hibernate" - - # Clipboard and emoji picker - "$mod, V, exec, pkill fuzzel || caelestia clipboard" - "$mod ALT, V, exec, pkill fuzzel || caelestia clipboard -d" - "$mod, Period, exec, pkill fuzzel || caelestia emoji -p" - - # Testing - # This is a `bindl` (key release), so move it to `bindl` list below. - - # Window actions - "$mod, H, movefocus, l" - "$mod, L, movefocus, r" - "$mod, K, movefocus, u" - "$mod, J, movefocus, d" - "$mod SHIFT, H, movewindow, l" - "$mod SHIFT, L, movewindow, r" - "$mod SHIFT, K, movewindow, u" - "$mod SHIFT, J, movewindow, d" - "$mod CTRL, Backslash, centerwindow, 1" - "$mod CTRL ALT, Backslash, resizeactive, exact 55% 70%" - "$mod CTRL ALT, Backslash, centerwindow, 1" - "$mod ALT, Backslash, exec, caelestia pip" - "$mod, P, pin" - "$mod, F, fullscreen, 0" - "$mod ALT, F, fullscreen, 1" - - # Special workspace toggles - "Control+Shift, Escape, exec, caelestia toggle sysmon" - "$mod, Escape, exec, caelestia toggle sysmon" - "$mod, M, exec, caelestia toggle music" - "$mod, D, exec, caelestia toggle communication" - "$mod, R, exec, caelestia toggle todo" - - "$mod, G, togglespecialworkspace, gaming" - "$mod SHIFT, G, movetoworkspace, special:gaming" - - "$mod, T, exec, caelestia toggle steam" - - # "$mod, T, togglespecialworkspace, special:steam" - # "$mod SHIFT, T, movetoworkspace, special:steam" - - # Toggle special workspace - "$mod, S, exec, caelestia toggle specialws" - - # Window groups - "$mod, Comma, togglegroup" - "$mod SHIFT, Comma, lockactivegroup, toggle" - - # Go to workspace -1/+1 (mouse binds are `bind` for mouse-wheel) - "$mod, mouse_down, workspace, -1" - "$mod, mouse_up, workspace, +1" - - # Move window to workspace -1/+1 - "$mod ALT, mouse_down, movetoworkspace, -1" - "$mod ALT, mouse_up, movetoworkspace, +1" - - # Move window to/from special workspace - "$mod CTRL SHIFT, up, movetoworkspace, special:special" - "$mod CTRL SHIFT, down, movetoworkspace, e+0" - "$mod ALT, S, movetoworkspace, special:special" - ] - ++ ( - # Go to workspace # - let - wsaction = "~/.config/hypr/scripts/wsaction.fish"; - in - builtins.concatLists (builtins.genList ( - i: let - ws = i + 1; - in [ - "$mod, ${toString ws}, exec, ${wsaction} workspace ${toString ws}" - ] - ) - 9) # For workspaces 1-9 - ) - ++ [ - # "$mod, 0, exec, ${config.wayland.windowManager.hyprland.settings.workspaceRule."0".exec} workspace 10" # Workaround for workspace 0 - # Re-adding `wsaction` since it's used here. - "$mod, 0, exec, ~/.config/hypr/scripts/wsaction.fish workspace 10" - ] - ++ ( - # Go to workspace group # - let - wsaction = "~/.config/hypr/scripts/wsaction.fish"; - in - builtins.concatLists (builtins.genList ( - i: let - ws = i + 1; - in [ - "Control+$mod, ${toString ws}, exec, ${wsaction} -g workspace ${toString ws}" - ] - ) - 9) - ) - ++ [ - "Control+$mod, 0, exec, ~/.config/hypr/scripts/wsaction.fish -g workspace 10" - ] - ++ ( - # Move window to workspace # - let - wsaction = "~/.config/hypr/scripts/wsaction.fish"; - in - builtins.concatLists (builtins.genList ( - i: let - ws = i + 1; - in [ - "$mod SHIFT, ${toString ws}, exec, ${wsaction} movetoworkspace ${toString ws}" - ] - ) - 9) - ) - ++ [ - "$mod SHIFT, 0, exec, ~/.config/hypr/scripts/wsaction.fish movetoworkspace 10" - ] - ++ ( - # Move window to workspace group # - let - wsaction = "~/.config/hypr/scripts/wsaction.fish"; - in - builtins.concatLists (builtins.genList ( - i: let - ws = i + 1; - in [ - "Control+$mod ALT, ${toString ws}, exec, ${wsaction} -g movetoworkspace ${toString ws}" - ] - ) - 9) - ) - ++ [ - "Control+$mod ALT, 0, exec, ~/.config/hypr/scripts/wsaction.fish -g movetoworkspace 10" - ]; - - binde = [ - "$mod, Minus, splitratio, -0.1" - "$mod, Equal, splitratio, 0.1" - "Control+$mod, left, workspace, -1" - "$mod, Page_Up, workspace, -1" - "Control+$mod, right, workspace, +1" - "$mod, Page_Down, workspace, +1" - "$mod ALT, Page_Up, movetoworkspace, -1" - "$mod ALT, Page_Down, movetoworkspace, +1" - "Control+$mod SHIFT, right, movetoworkspace, +1" - "Control+$mod SHIFT, left, movetoworkspace, -1" - "Alt, Tab, cyclenext, activewindow" # `binde` for cycle next - "Control+Alt, Tab, changegroupactive, f" # `binde` for change group active - ]; - - bindm = [ - "$mod, mouse:272, movewindow" - "$mod, Z, movewindow" - "$mod, mouse:273, resizewindow" - "$mod, X, resizewindow" - ]; - - bindl = [ - # Restore lock - "$mod ALT, L, exec, caelestia shell -d" - "$mod ALT, L, global, caelestia:lock" # This is a Hyprland `global` command, not an `exec` - - # Brightness - ", XF86MonBrightnessUp, global, caelestia:brightnessUp" - ", XF86MonBrightnessDown, global, caelestia:brightnessDown" - - # Media - "Control+$mod, Space, global, caelestia:mediaToggle" - ", XF86AudioPlay, global, caelestia:mediaToggle" - ", XF86AudioPause, global, caelestia:mediaToggle" - "Control+$mod, Equal, global, caelestia:mediaNext" - ", XF86AudioNext, global, caelestia:mediaNext" - "Control+$mod, Minus, global, caelestia:mediaPrev" - ", XF86AudioPrev, global, caelestia:mediaPrev" - ", XF86AudioStop, global, caelestia:mediaStop" - - # Utilities (screenshot is `bindl` in your original) - ", Print, exec, caelestia screenshot" # Full screen capture > clipboard - - # Volume - ", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" - "$mod SHIFT, M, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" - - # Clipboard and emoji picker (alternate paste is `bindl`) - "Control+Shift+Alt, V, exec, sleep 0.5s && ydotool type -d 1 \"$(cliphist list | head -1 | cliphist decode)\"" - - # Testing - "$mod ALT, f12, exec, notify-send -u low -i dialog-information-symbolic 'Test notification' \"Here's a really long message to test truncation and wrapping\\nYou can middle click or flick this notification to dismiss it!\" -a 'Shell' -A \"Test1=I got it!\" -A \"Test2=Another action\"" - ]; - - bindel = [ - # Volume - ", XF86AudioRaiseVolume, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 0; wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 10%+" - ", XF86AudioLowerVolume, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 0; wpctl set-volume @DEFAULT_AUDIO_SINK@ 10%-" - ]; - - bindr = [ - # Kill/restart - "Control+$mod SHIFT, R, exec, qs -c caelestia kill" - "Control+$mod ALT, R, exec, qs -c caelestia kill; caelestia shell -d" - ]; - }; -} diff --git a/packages/hyprland/config/colours.nix b/packages/hyprland/config/colours.nix deleted file mode 100644 index 224019b..0000000 --- a/packages/hyprland/config/colours.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ - config, - pkgs, - myConfig, - ... -}: { - wayland.windowManager.hyprland.settings = { - exec = [ - "cp -L --no-preserve=mode --update=none ~/.config/hypr/scheme/default.conf ~/.config/hypr/scheme/current.conf" - ]; - source = [ - "~/.config/hypr/scheme/current.conf" - ]; - group = { - groupbar = { - "text_color" = "rgb($onPrimary)"; - "col.active" = "rgba($primaryd4)"; - "col.inactive" = "rgba($outlined4)"; - "col.locked_active" = "rgba($primaryd4)"; - "col.locked_inactive" = "rgba($secondaryd4)"; - }; - }; - misc = { - background_color = "rgb($surfaceVariant)"; - }; - }; -} diff --git a/packages/hyprland/config/decoration.nix b/packages/hyprland/config/decoration.nix deleted file mode 100644 index 4a36395..0000000 --- a/packages/hyprland/config/decoration.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ - config, - pkgs, - myConfig, - ... -}: { - wayland.windowManager.hyprland.settings = { - decoration = { - rounding = 10; - rounding_power = 2; - active_opacity = 1.0; - inactive_opacity = 1.0; - - dim_inactive = true; - dim_strength = 0.1; - dim_special = 0.8; - - shadow = { - enabled = true; - range = 4; - render_power = 3; - color = "rgba(1a1a1aee)"; - }; - - blur = { - enabled = true; - size = 3; - passes = 1; - vibrancy = 0.1696; - }; - }; - }; -} diff --git a/packages/hyprland/config/env.nix b/packages/hyprland/config/env.nix deleted file mode 100644 index 263343a..0000000 --- a/packages/hyprland/config/env.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ - config, - pkgs, - myConfig, - ... -}: { - wayland.windowManager.hyprland.settings = { - env = [ - "HYPRCURSOR_THEME, Bibata-Original-Classic" - "HYPRCURSOR_SIZE, 24" - - "QT_QPA_PLATFORMTHEME, qt5ct" - "QT_WAYLAND_DISABLE_WINDOWDECORATION, 1" - "QT_AUTO_SCREEN_SCALE_FACTOR, 1" - "XCURSOR_THEME, sweet-rainbow" - "XCURSOR_SIZE, 24" - - "GDK_BACKEND, wayland,x11" - "QT_QPA_PLATFORM, wayland;xcb" - "SDL_VIDEODRIVER, wayland,x11" - "CLUTTER_BACKEND, wayland" - "ELECTRON_OZONE_PLATFORM_HINT, auto" - - "XDG_CURRENT_DESKTOP, Hyprland" - "XDG_SESSION_TYPE, wayland" - "XDG_SESSION_DESKTOP, Hyprland" - - "_JAVA_AWT_WM_NONREPARENTING, 1" - ]; - }; -} diff --git a/packages/hyprland/config/execs.nix b/packages/hyprland/config/execs.nix deleted file mode 100644 index d99d4eb..0000000 --- a/packages/hyprland/config/execs.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ - config, - pkgs, - myConfig, - ... -}: { - wayland.windowManager.hyprland.settings = { - exec-once = [ - # "[workspace special:communication silent] discord" - "[workspace special:steam silent] steam" - "[workspace special:preload silent] kitty --single-instance --hold fastfetch" - "[workspace special:preload silent] firefox" - "[workspace 1] kitty --single-instance --hold -e fish -C fastfetch" - - "hyprctl setcursor Bibata-Modern-Ice 24" - - "solaar -w hide" - # "sunshine" - # "moondeck-buddy" - - "wl-paste --type text --watch cliphist store" - "wl-paste --type image --watch cliphist store" - - "sleep 3 && caelestia shell" - ]; - }; -} diff --git a/packages/hyprland/config/rules.nix b/packages/hyprland/config/rules.nix deleted file mode 100644 index 037d8d5..0000000 --- a/packages/hyprland/config/rules.nix +++ /dev/null @@ -1,128 +0,0 @@ -{ - config, - pkgs, - myConfig, - ... -}: { - wayland.windowManager.hyprland.settings = { - # ######## Window rules ######## - windowrule = [ - "opaque, class:foot|equibop" - "center 1, floating:1, xwayland:0" - - # Float - "float, class:guifetch" - "float, class:yad" - "float, class:zenity" - "float, class:wev" - "float, class:org\\.gnome\\.FileRoller" # Escaped backslash - "float, class:file-roller" - "float, class:blueman-manager" - "float, class:com\\.github\\.GradienceTeam\\.Gradience" # Escaped backslash - "float, class:feh" - "float, class:imv" - "float, class:system-config-printer" - "float, class:quickshell" - - # Float, resize and center - "float, class:foot, title:nmtui" - "size 60% 70%, class:foot, title:nmtui" - "center 1, class:foot, title:nmtui" - "float, class:org\\.gnome\\.Settings" - "size 70% 80%, class:org\\.gnome\\.Settings" - "center 1, class:org\\.gnome\\.Settings" - "float, class:org\\.pulseaudio\\.pavucontrol|yad-icon-browser" - "size 60% 70%, class:org\\.pulseaudio\\.pavucontrol|yad-icon-browser" - "center 1, class:org\\.pulseaudio\\.pavucontrol|yad-icon-browser" - "float, class:nwg-look" - "size 50% 60%, class:nwg-look" - "center 1, class:nwg-look" - - # Special workspaces - "workspace special:sysmon, class:btop" - "workspace special:music, class:feishin|Spotify|Supersonic" - "workspace special:music, initialTitle:Spotify( Free)?" - "workspace special:communication, class:discord|equibop|vesktop|whatsapp" - "workspace special:todo, class:Todoist" - "workspace special:steam, class:^(steam_app_.*)$" - - "noinitialfocus, class:discord" - "focusonactivate 0, class:discord" - - # Always full screen - # "fullscreen, title:^(Steam Big Picture Mode)$" - # "fullscreen, title:^(steam_app_.*)$" - - # Dialogs - "float, title:(Select|Open)( a)? (File|Folder)(s)?" - "float, title:File (Operation|Upload)( Progress)?" - "float, title:.* Properties" - "float, title:Export Image as PNG" - "float, title:GIMP Crash Debug" - "float, title:Save As" - "float, title:Library" - - # Picture in picture (resize and move done via script) - "move 100%-w-2% 100%-w-3%, title:Picture(-| )in(-| )[Pp]icture" - "keepaspectratio, title:Picture(-| )in(-| )[Pp]icture" - "float, title:Picture(-| )in(-| )[Pp]icture" - "pin, title:Picture(-| )in(-| )[Pp]icture" - - # Steam - "workspace special:steam, class:steam" - "rounding 10, title:, class:steam" - "float, title:Friends List, class:steam" - "immediate, class:steam_app_[0-9]+" - "idleinhibit always, class:steam_app_[0-9]+" - - # ATLauncher console - "float, class:com-atlauncher-App, title:ATLauncher Console" - - # Autodesk Fusion 360 - "noblur, title:Fusion360|(Marking Menu), class:fusion360\\.exe" # Escaped backslash - - # Ugh xwayland popups - "nodim, xwayland:1, title:win[0-9]+" - "noshadow, xwayland:1, title:win[0-9]+" - "rounding 10, xwayland:1, title:win[0-9]+" - ]; - - # ######## Workspace rules ######## - workspace = [ - "w[tv1]s[false], gapsout:20, gapsin:20" - "f[1]s[false], gapsout:20, gapsin:20" - "1, monitor:DP-1, default:true" - "2, monitor:DP-1" - "3, monitor:DP-1" - "4, monitor:DP-2" - "5, monitor:DP-2" - "6, monitor:DP-2" - - "special:gaming, monitor:DP-1, persistent:true" - "special:steam, monitor:DP-1, persistent:true, on-created-empty:steam" - ]; - - # ######## Layer rules ######## - layerrule = [ - "animation fade, hyprpicker" - "animation fade, logout_dialog" - "animation fade, selection" - "animation fade, wayfreeze" - - # Fuzzel - "animation popin 80%, launcher" - "blur, launcher" - - # Shell - "noanim, caelestia-(launcher|osd|notifications|border-exclusion|area-picker)" - "animation fade, caelestia-(drawers|background)" - "order 1, caelestia-border-exclusion" - "order 2, caelestia-bar" - # The commented out lines below need to remain commented if you don't want them active - #"xray 1, caelestia-(border|launcher|bar|sidebar|navbar|mediadisplay|screencorners)" - #"blur, caelestia-.*" - #"blurpopups, caelestia-.*" - #"ignorealpha 0.57, caelestia-.*" - ]; - }; -} diff --git a/packages/hyprland/default.nix b/packages/hyprland/default.nix deleted file mode 100644 index 1227c4f..0000000 --- a/packages/hyprland/default.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ - pkgs, - inputs, - myConfig, - lib, - ... -}: { - programs.hyprland = { - enable = true; - package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland; - portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland; - }; -} diff --git a/packages/hyprland/home.nix b/packages/hyprland/home.nix deleted file mode 100644 index 443d710..0000000 --- a/packages/hyprland/home.nix +++ /dev/null @@ -1,86 +0,0 @@ -{ - myConfig, - pkgs, - ... -}: { - imports = [ - ./config/binds.nix - ./config/execs.nix - ./config/rules.nix - ./config/animation.nix - ./config/decoration.nix - ./config/env.nix - ./config/colours.nix - ]; - - home.file.".config/hypr/scripts/wsaction.fish" = { - source = builtins.toPath ./scripts/wsaction.fish; - executable = true; - }; - wayland.windowManager.hyprland = { - enable = true; - xwayland.enable = true; - systemd.enable = true; - settings = { - "$mod" = "SUPER"; - "$term" = "kitty --single-instance"; - "$browser" = "firefox"; - "$wsaction" = "fish -c ./scripts/wsaction.fish"; - "$widget" = "qs -c caelestia"; - - monitor = myConfig.nixos.Hyprland.monitors; - general = { - gaps_in = 2; - gaps_out = 5; - border_size = 2; - # col.active_border = "#0DB7D4FF"; - # col.inactive_border = "#31313600"; - # col = { - # "inactive_border" = "rgba(595959aa)"; - # "active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg"; - # }; - resize_on_border = false; - allow_tearing = false; - layout = "dwindle"; - }; - - dwindle = { - pseudotile = true; - preserve_split = true; - }; - - master = { - new_status = "master"; - }; - - misc = { - force_default_wallpaper = -1; - disable_hyprland_logo = true; - }; - - input = { - kb_layout = "us"; - follow_mouse = 1; - sensitivity = 0; - force_no_accel = true; - repeat_delay = 250; - repeat_rate = 35; - - touchpad = { - natural_scroll = false; - }; - - numlock_by_default = true; - }; - - gestures = { - workspace_swipe = false; - }; - - binds = { - workspace_back_and_forth = true; - scroll_event_delay = 0; - }; - }; - }; -} diff --git a/packages/hyprland/scripts/wsaction.fish b/packages/hyprland/scripts/wsaction.fish deleted file mode 100644 index dd720e3..0000000 --- a/packages/hyprland/scripts/wsaction.fish +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env fish - -if test "$argv[1]" = '-g' - set group - set -e $argv[1] -end - -if test (count $argv) -ne 2 - echo 'Wrong number of arguments. Usage: ./wsaction.fish [-g] ' - exit 1 -end - -set -l active_ws (hyprctl activeworkspace -j | jq -r '.id') - -if set -q group - # Move to group - hyprctl dispatch $argv[1] (math "($argv[2] - 1) * 10 + $active_ws % 10") -else - # Move to ws in group - hyprctl dispatch $argv[1] (math "floor(($active_ws - 1) / 10) * 10 + $argv[2]") -end diff --git a/packages/hyprlock/home.nix b/packages/hyprlock/home.nix deleted file mode 100644 index 3658ee1..0000000 --- a/packages/hyprlock/home.nix +++ /dev/null @@ -1,7 +0,0 @@ -{...}: { - programs.hyprlock = { - enable = true; - settings = { - }; - }; -} diff --git a/packages/hyprsunset/home.nix b/packages/hyprsunset/home.nix deleted file mode 100644 index 55ca737..0000000 --- a/packages/hyprsunset/home.nix +++ /dev/null @@ -1,8 +0,0 @@ -{pkgs, ...}: { - # home.packages = with pkgs; [ - # hyprsunset - # ]; - services.hyprsunset = { - enable = true; - }; -} diff --git a/packages/kitty/home.nix b/packages/kitty/home.nix deleted file mode 100644 index 45dd8b2..0000000 --- a/packages/kitty/home.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ - myConfig, - pkgs, - ... -}: { - programs.kitty = { - enable = true; - - # themeFile = "kanagawa"; - themeFile = "Catppuccin-Mocha"; - settings = { - confirm_os_window_close = 0; - window_padding_width = 10; - - font_size = myConfig.general.Terminal.size; - font_family = myConfig.general.Terminal.font; - bold_font = "auto"; - italic_font = "auto"; - bold_italic_font = "auto"; - shell = "${pkgs.${myConfig.general.Terminal.shell}}/bin/${myConfig.general.Terminal.shell}"; - - # optimization - input_delay = 0; - repaint_delay = 2; - sync_to_monitor = false; - wayland_enable_ime = false; - allow_remote_control = true; - }; - # extraConfig = "include colors.conf"; - }; -} diff --git a/packages/lutris/home.nix b/packages/lutris/home.nix deleted file mode 100644 index 7466e1a..0000000 --- a/packages/lutris/home.nix +++ /dev/null @@ -1,5 +0,0 @@ -{pkgs, ...}: { - home.packages = with pkgs; [ - lutris - ]; -} diff --git a/packages/mangohud/home.nix b/packages/mangohud/home.nix deleted file mode 100644 index 05c13c7..0000000 --- a/packages/mangohud/home.nix +++ /dev/null @@ -1,88 +0,0 @@ -{myConfig, ...}: { - programs.mangohud = { - enable = true; - enableSessionWide = true; - settings = { - legacy_layout = false; - horizontal = true; - background_alpha = 0.6; - round_corners = 10; - background_color = "000000"; - font_size = 24; - text_color = "FFFFFF"; - position = "top-left"; - toggle_hud = "Shift_R+F12"; - no_display = true; - pci_dev = "0:03:00.0"; - table_columns = 3; - - gpu_text = "GPU"; - gpu_stats = true; - gpu_load_change = true; - gpu_load_value = [50 90]; - gpu_load_color = ["FFFFFF" "FFAA7F" "CC0000"]; - gpu_temp = true; - gpu_power = true; - gpu_color = "2E9762"; - - cpu_text = "CPU"; - cpu_stats = true; - cpu_load_change = true; - cpu_load_value = [50 90]; - cpu_load_color = ["FFFFFF" "FFAA7F" "CC0000"]; - cpu_temp = true; - cpu_power = true; - cpu_color = "2E97CB"; - - vram = true; - vram_color = "AD64C1"; - ram = true; - ram_color = "C26693"; - battery = true; - battery_color = "00FF00"; - - fps = true; - fps_metrics = ["avg" "0.01"]; - engine_version = true; - engine_color = "EB5B5B"; - arch = true; - frame_timing = true; - frametime_color = "FA8000"; - fps_limit_method = "late"; - toggle_fps_limit = "Shift_L+F1"; - fps_limit = 0; - resolution = true; - refresh_rate = true; - - # custom_text = [ - # "-" - # "$(cat /home/kenji/.config/goverlay/distro)" - # "-" - # "$(uname -r)" - # "Session:" - # "$(echo $XDG_SESSION_TYPE)" - # ]; - - fps_color_change = true; - fps_color = ["B22222" "FDFD09" "39F900"]; - fps_value = [30 60]; - - time = true; - - output_folder = "/home/${myConfig.essentials.Username}/.mangohud/"; - log_duration = 30; - autostart_log = false; - log_interval = 100; - toggle_logging = "Shift_L+F2"; - - blacklist = [ - "pamac-manager" - "lact" - "ghb" - "bitwig-studio" - "ptyxis" - "yumex" - ]; - }; - }; -} diff --git a/packages/matugen/custom/config.toml b/packages/matugen/custom/config.toml deleted file mode 100644 index 12a558b..0000000 --- a/packages/matugen/custom/config.toml +++ /dev/null @@ -1,70 +0,0 @@ -[config] -# If set to enabled, it will check for updates when you run the matugen command, notifying you that an update is avaiable. -# WARNING: Matugen needs to be compiled with the `update-informer` feature for this to work. -version_check = false - -[config.wallpaper] -# The base command to run for applying the wallpaper, shouldn't have spaces in it. -command = "swww" - -# The arguments that will be provided to the command. -# Keywords like {{ mode }} or anything that works inside of hooks doesn't work here. -# The last argument will be the image path. -arguments = ["img", "--transition-type", "center", "--transition-fps", "120"] - -# For example, killing the wallpaper daemon. Usage is like a normal hook. -# pre_hook = "" - -[config.custom_keywords] -test = "aaaa" - -[templates.name1] -# Relative paths will be resolved from the path `config.toml` is in. -input_path = "./colors.whatever-extension" -output_path = "./a/colors-generated.whatever-extension" - -# This will use a different input path depending on what mode you use. -# input_path_modes = { dark = "./colors.whatever-extension", light = "./colors.whatever-extension" } - -# This will compare all of the colors inside the array with the color you set as `compare_to`, and returns the closest color to it. -# You can then use `{{closest_color}}` inside templates and hooks. -colors_to_compare = [ - { name = "black", color = "#000000" }, - { name = "red", color = "#ff0000" }, - { name = "maroon", color = "#800000" }, - { name = "yellow", color = "#ffff00" }, - { name = "olive", color = "#808000" }, - { name = "lime", color = "#00ff00" }, - { name = "green", color = "#008000" }, - { name = "aqua", color = "#00ffff" }, - { name = "teal", color = "#008080" }, - { name = "blue", color = "#0000ff" }, - { name = "navy", color = "#000080" }, - { name = "fuchsia", color = "#ff00ff" }, - { name = "purple", color = "#800080" }, -] -compare_to = "{{colors.primary.default.hex}}" - -# Runs before the template is exported. You can use keywords here, -pre_hook = 'echo "source color {{colors.source_color.default.hex}}, source image {{image}}, closest color {{closest_color}}"' -# Runs after the template is exported. You can use keywords here. -post_hook = 'echo "after gen"' - -# Only hex values -# https://m3.material.io/styles/color/advanced/adjust-existing-colors#1cc12e43-237b-45b9-8fe0-9a3549c1f61e -# Blend is set to true by default. -[config.custom_colors] -green = "#00ff00" -red = "#ff0000" -blue = { color = "#0000ff", blend = false } - -### --- my config -[templates.kitty] -input_path = '~/.config/nixos/pkgs/matugen/custom/templates/kitty.conf' -output_path = '~/.config/kitty/colors.conf' -post_hook = "kitty @ set-colors -a -c ~/.config/kitty/colors.conf" - -[templates.ags] -input_path = '~/.config/nixos/pkgs/matugen/custom/templates/ags.scss' -output_path = '~/.config/nixos/pkgs/ags/biscuit/colors.scss' -post_hook = "pkill gjs & ags run ~/.config/nixos/pkgs/ags/biscuit/app.ts & disown (jobs -p) &" diff --git a/packages/matugen/custom/templates/ags.scss b/packages/matugen/custom/templates/ags.scss deleted file mode 100644 index 0ad29c0..0000000 --- a/packages/matugen/custom/templates/ags.scss +++ /dev/null @@ -1,3 +0,0 @@ -$background: {{colors.surface.dark.hex}}; -$foreground: {{colors.on_surface.dark.hex}}; -$primary: {{colors.primary.dark.hex}}; diff --git a/packages/matugen/custom/templates/kitty.conf b/packages/matugen/custom/templates/kitty.conf deleted file mode 100644 index 91b8e4b..0000000 --- a/packages/matugen/custom/templates/kitty.conf +++ /dev/null @@ -1,41 +0,0 @@ -cursor {{colors.on_surface.default.hex}} -cursor_text_color {{colors.on_surface_variant.default.hex}} - -foreground {{colors.on_surface.default.hex}} -background {{colors.surface.default.hex}} -selection_foreground {{colors.on_secondary.default.hex}} -selection_background {{colors.secondary_fixed_dim.default.hex}} -url_color {{colors.primary.default.hex}} - -# black -color8 #262626 -color0 #4c4c4c - -# red -color1 #ac8a8c -color9 #c49ea0 - -# green -color2 #8aac8b -color10 #9ec49f - -# yellow -color3 #aca98a -color11 #c4c19e - -# blue -/* color4 #8f8aac */ -color4 {{colors.primary.default.hex}} -color12 #a39ec4 - -# magenta -color5 #ac8aac -color13 #c49ec4 - -# cyan -color6 #8aacab -color14 #9ec3c4 - -# white -color15 #e7e7e7 -color7 #f0f0f0 diff --git a/packages/matugen/default.nix b/packages/matugen/default.nix deleted file mode 100644 index ab30bd3..0000000 --- a/packages/matugen/default.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ - inputs, - pkgs, - ... -}: { - imports = [inputs.matugen.nixosModules.default]; - environment.systemPackages = with pkgs; [ - inputs.matugen.packages.${system}.default - ]; -} diff --git a/packages/matugen/home.nix b/packages/matugen/home.nix deleted file mode 100644 index 2db2154..0000000 --- a/packages/matugen/home.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ - pkgs, - inputs, - system, - ... -}: { - home.file.".config/matugen/config.toml" = { - source = builtins.toPath ./custom/config.toml; - }; -} diff --git a/packages/moondeck-buddy/appimage.nix b/packages/moondeck-buddy/appimage.nix deleted file mode 100644 index 5f0e077..0000000 --- a/packages/moondeck-buddy/appimage.nix +++ /dev/null @@ -1,57 +0,0 @@ -# /etc/nixos/configuration.nix -{ - config, - pkgs, - lib, - fetchurl, - ... -}: let - moondeckBuddyWrapped = pkgs.appimageTools.wrapType2 { - pname = "moondeck-buddy"; - version = "1.8.2"; - - src = pkgs.fetchurl { - url = "https://github.com/FrogTheFrog/moondeck-buddy/releases/download/v1.8.2/MoonDeckBuddy-1.8.2-x86_64.AppImage"; - hash = "sha256-D+9XIi3pIwaAq22DGHWAUqKub778qHQSjCU0aIjXmYY="; # Don't forget to update this! - }; - - extraPkgs = pkgs: - with pkgs; [ - # Your extraPkgs here - ]; - - desktopItems = [ - (pkgs.makeDesktopItem { - name = "Moondeck Buddy"; - exec = "moondeck-buddy"; - icon = "applications-other"; - comment = "A Sunshine/Moondeck Buddy."; - categories = ["Utility" "Productivity"]; - }) - ]; - - meta = with lib; { - description = "Moondeck Buddy is an companion app for NVIDIA Sunshine/Moonlight."; - homepage = "https://github.com/FrogTheFrog/moondeck-buddy"; - license = licenses.gpl3Only; - platforms = platforms.linux; - mainProgram = "moondeck-buddy"; - }; - }; -in { - environment.systemPackages = with pkgs; [ - moondeckBuddyWrapped - ]; - - programs.appimage.enable = true; - programs.appimage.binfmt = true; - - # --- Firewall Configuration --- - networking.firewall.allowedTCPPorts = [ - 59999 # Allow Moondeck Buddy to listen on this port - ]; - # If Moondeck Buddy also needs UDP, uncomment and add it here: - # networking.firewall.allowedUDPPorts = [ - # 59999 - # ]; -} diff --git a/packages/neovim/home.nix b/packages/neovim/home.nix deleted file mode 100644 index 0a28a65..0000000 --- a/packages/neovim/home.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ - pkgs, - inputs, - system, - ... -}: { - home.packages = [ - inputs.nixovim.packages.${system}.default - ]; -} diff --git a/packages/protonup/home.nix b/packages/protonup/home.nix deleted file mode 100644 index 6427da3..0000000 --- a/packages/protonup/home.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ - pkgs, - myConfig, - ... -}: { - home.packages = with pkgs; [ - protonup - ]; - - home.sessionVariables = { - STEAM_EXTRA_COMPAT_TOOLS_PATHS = "/home/${myConfig.essentials.Username}/.steam/root/compatibilitytools.d"; - }; -} diff --git a/packages/python/default.nix b/packages/python/default.nix deleted file mode 100644 index 1a185be..0000000 --- a/packages/python/default.nix +++ /dev/null @@ -1,5 +0,0 @@ -{pkgs, ...}: { - environment.systemPackages = with pkgs; [ - python313Full - ]; -} diff --git a/packages/quickshell/default.nix b/packages/quickshell/default.nix deleted file mode 100644 index 2b57209..0000000 --- a/packages/quickshell/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ - inputs, - pkgs, - system, - ... -}: { - environment.systemPackages = [ - inputs.caelestia-shell.packages.${system}.caelestia-shell - inputs.caelestia-shell.packages.${system}.caelestia-cli - inputs.caelestia-shell.packages.${system}.beat-detector - ]; - environment.sessionVariables = { - # Set CAELESTIA_BD_PATH to the store path of beat-detector - CAELESTIA_BD_PATH = "${inputs.caelestia-shell.packages.${system}.beat-detector}/bin/beat_detector"; - }; -} diff --git a/packages/quickshell/home.nix b/packages/quickshell/home.nix deleted file mode 100644 index 86a1acc..0000000 --- a/packages/quickshell/home.nix +++ /dev/null @@ -1,48 +0,0 @@ -{ - pkgs, - inputs, - system, - ... -}: let - caelestia-shell = pkgs.fetchFromGitHub { - owner = "caelestia-dots"; - repo = "shell"; - rev = "main"; - sha256 = "sha256-FHPCSy/Fd9hIpFA2BxhTkbwBtY9vtvsEUYC3+ZX6zNQ="; - }; -in { - imports = [ - ]; - home.packages = with pkgs; [ - inputs.quickshell.packages.${system}.default - wl-screenrec - libnotify - grim - foot - hyprpicker - heroic-unwrapped - qalculate-qt - fuzzel - inotify-tools - app2unit - fish - jq - fd - cliphist - (pkgs.python3.withPackages (python-pkgs: - with python-pkgs; [ - aubio - pyaudio - numpy - ])) - cava - bluez - ddcutil - brightnessctl - curl - material-symbols - ]; - home.file.".config/quickshell/caelestia" = { - source = caelestia-shell; - }; -} diff --git a/packages/rofi/home.nix b/packages/rofi/home.nix deleted file mode 100644 index 729125b..0000000 --- a/packages/rofi/home.nix +++ /dev/null @@ -1,8 +0,0 @@ -{pkgs, ...}: { - programs.rofi = { - enable = true; - plugins = with pkgs; [ - rofi-calc - ]; - }; -} diff --git a/packages/solaar/home.nix b/packages/solaar/home.nix deleted file mode 100644 index 0dc6d5e..0000000 --- a/packages/solaar/home.nix +++ /dev/null @@ -1,5 +0,0 @@ -{pkgs, ...}: { - home.packages = with pkgs; [ - solaar - ]; -} diff --git a/packages/starship/home.nix b/packages/starship/home.nix deleted file mode 100644 index 1a73a8a..0000000 --- a/packages/starship/home.nix +++ /dev/null @@ -1,62 +0,0 @@ -{lib, ...}: { - programs.starship = { - enable = true; - settings = { - format = lib.concatStrings [ - "$username" - "$hostname" - "$directory" - "$git_branch" - "$git_state" - "$git_status" - "$cmd_duration" - "$line_break" - "$python" - "$character" - ]; - - directory = { - style = "blue"; - }; - - character = { - success_symbol = "[→](purple)"; - error_symbol = "[→](red)"; - vimcmd_symbol = "[←](green)"; - }; - - git_branch = { - format = "[$branch]($style)"; - style = "bright-black"; - }; - git_status = { - format = "[(*$conflicted$untracked$modified$staged$renamed$deleted) $ahead_behind$stashed]($style)"; - style = "cyan"; - conflicted = "​"; - untracked = "​"; - modified = "​"; - staged = "​"; - renamed = "​"; - deleted = "​"; - stashed = "≡"; - }; - git_state = { - format = "([$state( $progress_current/$progress_total)]($style)) "; - style = "bright-black"; - }; - - cmd_duration = { - format = "[$duration]($style) "; - style = "yellow"; - }; - - python = { - format = "[$virtualenv]($style) "; - style = "bright-black"; - }; - }; - }; - # home.file.".config/starship.toml" = { - # source = builtins.toPath ./pure.toml; - # }; -} diff --git a/packages/steam/default.nix b/packages/steam/default.nix deleted file mode 100644 index e84d8af..0000000 --- a/packages/steam/default.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ - pkgs, - myConfig, - ... -}: { - environment.systemPackages = with pkgs; [ - steam-run - ]; - - programs.appimage.enable = true; - programs.appimage.binfmt = true; - - programs.steam = { - enable = true; - remotePlay.openFirewall = true; - gamescopeSession.enable = true; - extraCompatPackages = with pkgs; [proton-ge-bin]; - extraPackages = with pkgs; [ - mangohud - gamescope-wsi - ]; - }; - programs.gamemode.enable = true; -} diff --git a/packages/steam/home.nix b/packages/steam/home.nix deleted file mode 100644 index bb1ae77..0000000 --- a/packages/steam/home.nix +++ /dev/null @@ -1,35 +0,0 @@ -{pkgs, ...}: { - xdg.desktopEntries = { - steam = { - name = "Steam"; - genericName = "Game Platform"; - comment = "Play and discuss games."; - # exec = "${pkgs.mangohud}/bin/mangohud ${pkgs.steam}/bin/steam %U"; # The standard command to launch Steam - exec = "${pkgs.steam}/bin/steam %U"; # The standard command to launch Steam - terminal = false; - icon = "steam"; # Assumes the 'steam' icon is available in your icon theme - type = "Application"; - categories = ["Game" "Network"]; - mimeType = [ - "x-scheme-handler/steam" # For handling steam:// links - ]; - actions = { - BigPicture = { - name = "Big Picture Mode"; - # exec = "${pkgs.mangohud}/bin/mangohud ${pkgs.steam}/bin/steam steam://open/bigpicture"; - exec = "${pkgs.steam}/bin/steam steam://open/bigpicture"; - }; - Store = { - name = "Store"; - # exec = "${pkgs.mangohud}/bin/mangohud ${pkgs.steam}/bin/steam steam://store"; - exec = "${pkgs.steam}/bin/steam steam://open/bigpicture"; - }; - Library = { - name = "Library"; - # exec = "${pkgs.mangohud}/bin/mangohud ${pkgs.steam}/bin/steam steam://library"; - exec = "${pkgs.steam}/bin/steam steam://open/bigpicture"; - }; - }; - }; - }; -} diff --git a/packages/steam/jovian.nix b/packages/steam/jovian.nix deleted file mode 100644 index b61725d..0000000 --- a/packages/steam/jovian.nix +++ /dev/null @@ -1,41 +0,0 @@ -{ - inputs, - pkgs, - myConfig, - ... -}: { - imports = [ - inputs.jovian.nixosModules.default - ]; - environment.sessionVariables = { - DECKY_HOME = "/home/${myConfig.essentials.Username}/homebrew"; - DECKY_USER_HOME = "/home/${myConfig.essentials.Username}"; - }; - # environment.systemPackages = with pkgs; [inputs.jovian.packages.${system}.default]; - jovian.steam.enable = true; - jovian.steam.autoStart = true; - jovian.steam.desktopSession = "hyprland"; - jovian.steam.user = "${myConfig.essentials.Username}"; - jovian.hardware.has.amd.gpu = true; - - jovian.decky-loader.enable = true; - jovian.decky-loader.user = "kenji"; - - # jovian.steamos.enableBluetoothConfig = true; - # jovian.steamos.enableMesaPatches = true; - jovian.steamos.useSteamOSConfig = true; - jovian.decky-loader.extraPythonPackages = pythonPackages: - with pythonPackages; [ - requests - aiohttp - ]; - - # jovian.devices.steamdeck.enableControllerUdevRules = true; - hardware = { - xone.enable = true; - }; - programs.nix-ld = { - enable = true; - libraries = pkgs.steam-run.args.multiPkgs pkgs; - }; -} diff --git a/packages/steam/launch.nix b/packages/steam/launch.nix deleted file mode 100644 index d65e1a5..0000000 --- a/packages/steam/launch.nix +++ /dev/null @@ -1,57 +0,0 @@ -{pkgs, ...}: let - mangoConfigList = ["cpu_temp" "gpu_temp" "ram" "vram"]; - mangoConfigStr = builtins.concatStringsSep "," mangoConfigList; - - gamescopeArgsList = [ - "--adaptive-sync" - "--hdr-enabled" - "--mangoapp" - "--rt" - "--steam" - ]; - gamescopeArgsStr = builtins.concatStringsSep " " gamescopeArgsList; - - steamArgsList = [ - "-pipewire-dmabuf" - "-tenfoot" - ]; - steamArgsStr = builtins.concatStringsSep " " steamArgsList; - - myGamescopeSteamScript = pkgs.writeShellApplication { - name = "start-gamescope-steam"; - runtimeInputs = [ - pkgs.gamescope - pkgs.steam - pkgs.mangohud - ]; - text = '' - #!/usr/bin/env bash - set -xeuo pipefail - - export MANGOHUD=1 - export MANGOHUD_CONFIG="${mangoConfigStr}" - - exec ${pkgs.gamescope}/bin/gamescope ${gamescopeArgsStr} -- ${pkgs.steam}/bin/steam ${steamArgsStr} - ''; - }; -in { - programs = { - gamescope = { - enable = true; - capSysNice = true; - }; - steam = { - enable = true; - remotePlay.openFirewall = true; - dedicatedServer.openFirewall = true; - localNetworkGameTransfers.openFirewall = true; - gamescopeSession.enable = true; - }; - }; - - hardware.xone.enable = true; - - environment.loginShellInit = '' - [[ "$(tty)" = "/dev/tty1" ]] && ${myGamescopeSteamScript}/bin/start-gamescope-steam - ''; -} diff --git a/packages/sunshine/home.nix b/packages/sunshine/home.nix deleted file mode 100644 index c51e610..0000000 --- a/packages/sunshine/home.nix +++ /dev/null @@ -1,11 +0,0 @@ -{pkgs, ...}: { - environment.systemPackages = with pkgs; [ - sunshine - ]; - services.sunshine = { - enable = true; - autoStart = true; - capSysAdmin = true; - openFirewall = true; - }; -} diff --git a/packages/swww/home.nix b/packages/swww/home.nix deleted file mode 100644 index 4b1bfe2..0000000 --- a/packages/swww/home.nix +++ /dev/null @@ -1,3 +0,0 @@ -{...}: { - services.swww.enable = true; -} diff --git a/packages/udev/default.nix b/packages/udev/default.nix deleted file mode 100644 index 3d420e8..0000000 --- a/packages/udev/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ - services.udev.extraRules = '' - SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", ATTR{idProduct}=="0616", ATTR{power/wakeup}="enabled" - - ''; -} diff --git a/packages/zoxide/home.nix b/packages/zoxide/home.nix deleted file mode 100644 index 1187df4..0000000 --- a/packages/zoxide/home.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ - programs.zoxide = { - enable = true; - enableFishIntegration = true; - enableZshIntegration = true; - enableBashIntegration = true; - }; -} diff --git a/packages/zsh/home.nix b/packages/zsh/home.nix deleted file mode 100644 index 5f81ced..0000000 --- a/packages/zsh/home.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ - pkgs, - myConfig, - ... -}: { - programs.zsh.enable = true; - programs.zoxide.enable = true; - - programs.zsh = { - enableCompletion = false; - syntaxHighlighting.enable = false; - shellAliases = myConfig.general.Terminal.aliases; - history.size = 10000; - antidote = { - enable = true; - plugins = [ - "MichaelAquilina/zsh-autoswitch-virtualenv" - "jeffreytse/zsh-vi-mode" - "zdharma-continuum/fast-syntax-highlighting kind:defer" - "zsh-users/zsh-autosuggestions kind:defer" - "zsh-users/zsh-history-substring-search kind:defer" - ]; - }; - initContent = '' - # zsh-autocomplete - # bindkey -M menuselect '^M' .accept-line # run code when selected completion - - autoload -Uz compinit - if [ "$(date +'%j')" != "$(stat -f '%Sm' -t '%j' ~/.zcompdump 2>/dev/null)" ]; then - compinit - else - compinit -C - fi - ''; - }; -}