diff --git a/configuration.nix b/configuration.nix new file mode 100644 index 0000000..c562e89 --- /dev/null +++ b/configuration.nix @@ -0,0 +1,225 @@ +# Edit this configuration file to define what should be installed on +# your system. Help is available in the configuration.nix(5) man page +# and in the NixOS manual (accessible by running ‘nixos-help’). + +{ + inputs, + config, + pkgs, + ... +}: + +{ + imports = [ + inputs.home-manager.nixosModules.home-manager + ]; + + home-manager = { + extraSpecialArgs = { inherit inputs; }; + users = { + dea = import ./home.nix; + }; + }; + + # Bootloader. + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + networking.hostName = "tohka"; # Define your hostname. + # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. + + # Configure network proxy if necessary + # networking.proxy.default = "http://user:password@proxy:port/"; + # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; + + # Enable networking + networking.networkmanager.enable = true; + + # Set your time zone. + time.timeZone = "America/New_York"; + + # Select internationalisation properties. + i18n.defaultLocale = "en_US.UTF-8"; + + i18n.extraLocaleSettings = { + LC_ADDRESS = "en_US.UTF-8"; + LC_IDENTIFICATION = "en_US.UTF-8"; + LC_MEASUREMENT = "en_US.UTF-8"; + LC_MONETARY = "en_US.UTF-8"; + LC_NAME = "en_US.UTF-8"; + LC_NUMERIC = "en_US.UTF-8"; + LC_PAPER = "en_US.UTF-8"; + LC_TELEPHONE = "en_US.UTF-8"; + LC_TIME = "en_US.UTF-8"; + }; + + # Enable the X11 windowing system. + # You can disable this if you're only using the Wayland session. + services.xserver.enable = true; + + # Enable the KDE Plasma Desktop Environment. + services.displayManager.sddm.enable = true; + services.desktopManager.plasma6.enable = true; + + # Configure keymap in X11 + services.xserver.xkb = { + layout = "us"; + variant = ""; + }; + + # Enable CUPS to print documents. + services.printing.enable = true; + + # Enable sound with pipewire. + # hardware.pulseaudio.enable = false; + services.pulseaudio.enable = false; + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + # If you want to use JACK applications, uncomment this + #jack.enable = true; + + # use the example session manager (no others are packaged yet so this is enabled by default, + # no need to redefine it in your config for now) + #media-session.enable = true; + }; + + security.polkit.enable = true; + + # Enables nginx + services.nginx.enable = true; + + # Enable touchpad support (enabled default in most desktopManager). + # services.xserver.libinput.enable = true; + + # Define a user account. Don't forget to set a password with ‘passwd’. + + # Enable docker virtualisation. + virtualisation.docker.enable = true; + + # Install firefox. + programs.firefox.enable = true; + + # Allow unfree packages + nixpkgs.config.allowUnfree = true; + + # Enables nix commands + flakes + nix.settings.extra-experimental-features = [ + "nix-command" + "flakes" + ]; + + # ====================== + # List packages installed in system profile. To search, run: + # $ nix search wget + # nixos-rebuild switch --use-remote-sudo + # ====================== + # Update packages?: + # sudo nix-channel --update + # sudo nixos-rebuild switch + # ====================== + # sudo nixos-rebuild switch --flake . + environment.systemPackages = with pkgs; [ + wget + lunarvim + vscode + python3 + p7zip + unzip + chawan # tui browser cha + git + gcc + gdb + glibc.static + nixfmt + + kitty # terminal + wayland + + emacs # calander/todo list + + nemo # file browser + monophony # yt music tryout + + vesktop # discord-canary + equibop # equibop 3.1.7 + + vivaldi # vivaldi install requires qt5 + qt5.qtbase + + starship # shell customizer + + libreoffice-qt # libreoffice + hunspell + hunspellDicts.uk_UA + hunspellDicts.th_TH + openjdk + + notepad-next # notepad++ + sqlitebrowser + + ffmpeg-full + yt-dlp + qbittorrent + + bottles # windows emulation + + element-desktop # element 4 matrix + ]; + + # There have been amdgpu issues in 6.10 so you maybe need to revert on the default lts kernel. + # boot.kernelPackages = pkgs.linuxPackages; + programs.steam = { + enable = true; + remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play + dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server + }; + + services.mullvad-vpn = { + enable = true; + package = pkgs.mullvad-vpn; # mullvad only has the cli + }; + + programs.nix-ld = { + enable = true; + libraries = with pkgs; [ + ## Put here any library that is required when running a package + ## ... + ## Uncomment if you want to use the libraries provided by default in the steam distribution + ## but this is quite far from being exhaustive + ## https://github.com/NixOS/nixpkgs/issues/354513 + (pkgs.runCommand "steamrun-lib" { } "mkdir $out; ln -s ${pkgs.steam-run.fhsenv}/usr/lib64 $out/lib") + ]; + }; + + # Some programs need SUID wrappers, can be configured further or are + # started in user sessions. + # programs.mtr.enable = true; + # programs.gnupg.agent = { + # enable = true; + # enableSSHSupport = true; + # }; + + # List services that you want to enable: + + # Enable the OpenSSH daemon. + # services.openssh.enable = true; + + # Open ports in the firewall. + # networking.firewall.allowedTCPPorts = [ ... ]; + # networking.firewall.allowedUDPPorts = [ ... ]; + # Or disable the firewall altogether. + # networking.firewall.enable = false; + + # This value determines the NixOS release from which the default + # settings for stateful data, like file locations and database versions + # on your system were taken. It‘s perfectly fine and recommended to leave + # this value at the release version of the first install of this system. + # Before changing this value read the documentation for this option + # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). + system.stateVersion = "24.11"; # Did you read the comment? + +} diff --git a/exprs/overlay.nix b/exprs/overlay.nix new file mode 100644 index 0000000..2fae41b --- /dev/null +++ b/exprs/overlay.nix @@ -0,0 +1,14 @@ +inputs: final: prev: { + waywall = prev.waywall.overrideAttrs ( + f: p: { + version = "0-unstable-2026-01-06"; + + src = prev.fetchFromGitHub { + owner = "tesselslate"; + repo = "waywall"; + rev = "c6504f95f8d757a2e060c4df8bd3ed145ad59e8d"; + hash = "sha256-kfBsppc+esz0Q6iIIKAeOMwkIWdN12AlH3Dji8bU32c="; + }; + } + ); +} \ No newline at end of file diff --git a/flake.lock b/flake.lock index f7ec999..ebc50a0 100644 --- a/flake.lock +++ b/flake.lock @@ -1,175 +1,17 @@ { "nodes": { - "abseil-src": { - "flake": false, - "locked": { - "lastModified": 1722535511, - "narHash": "sha256-51jpDhdZ0n+KLmxh8KVaTz53pZAB0dHjmILFX+OLud4=", - "owner": "abseil", - "repo": "abseil-cpp", - "rev": "4447c7562e3bc702ade25105912dce503f0c4010", - "type": "github" - }, - "original": { - "owner": "abseil", - "ref": "20240722.0", - "repo": "abseil-cpp", - "type": "github" - } - }, - "asio-src": { - "flake": false, - "locked": { - "lastModified": 1702548444, - "narHash": "sha256-8Xo6J6+dTvDtsthjbLMMTInHMDnMMM0rQwzbZu70J/s=", - "owner": "chriskohlhoff", - "repo": "asio", - "rev": "22ccfc94fc77356f7820601f9f33b9129a337d2d", - "type": "github" - }, - "original": { - "owner": "chriskohlhoff", - "ref": "asio-1-30-0", - "repo": "asio", - "type": "github" - } - }, - "cerulean": { + "home-manager": { "inputs": { - "deploy-rs": "deploy-rs", - "microvm": "microvm", "nixpkgs": [ - "nixpkgs-unstable" - ], - "nt": "nt", - "sops-nix": "sops-nix", - "systems": [ - "systems" - ] - }, - "locked": { - "lastModified": 1772954046, - "narHash": "sha256-yCTjpnXhx44tsuOW9VolMiP/ckQNwO6wQST5vmXE7ig=", - "owner": "cry128", - "repo": "cerulean", - "rev": "6c7f335fbde5b6f1931d79d287bf03ee642ba7f5", - "type": "github" - }, - "original": { - "owner": "cry128", - "ref": "v0.2.5-alpha", - "repo": "cerulean", - "type": "github" - } - }, - "curl-src": { - "flake": false, - "locked": { - "lastModified": 1743572790, - "narHash": "sha256-huAGWNm2rYBmgzUuYQ21IYp2skyQECelEkXPMBJY3cE=", - "owner": "curl", - "repo": "curl", - "rev": "1c3149881769e7bd79b072e48374e4c2b3678b2f", - "type": "github" - }, - "original": { - "owner": "curl", - "ref": "curl-8_13_0", - "repo": "curl", - "type": "github" - } - }, - "deploy-rs": { - "inputs": { - "flake-compat": "flake-compat", - "nixpkgs": [ - "cerulean", - "nixpkgs" - ], - "utils": "utils" - }, - "locked": { - "lastModified": 1766051518, - "narHash": "sha256-znKOwPXQnt3o7lDb3hdf19oDo0BLP4MfBOYiWkEHoik=", - "owner": "serokell", - "repo": "deploy-rs", - "rev": "d5eff7f948535b9c723d60cd8239f8f11ddc90fa", - "type": "github" - }, - "original": { - "owner": "serokell", - "repo": "deploy-rs", - "type": "github" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1733328505, - "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-parts": { - "inputs": { - "nixpkgs-lib": [ - "cerulean", - "nt", - "nix-unit", "nixpkgs" ] }, "locked": { - "lastModified": 1762440070, - "narHash": "sha256-xxdepIcb39UJ94+YydGP221rjnpkDZUlykKuF54PsqI=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "26d05891e14c88eb4a5d5bee659c0db5afb609d8", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "fmt-src": { - "flake": false, - "locked": { - "lastModified": 1758127535, - "narHash": "sha256-AZDmIeU1HbadC+K0TIAGogvVnxt0oE9U6ocpawIgl6g=", - "owner": "fmtlib", - "repo": "fmt", - "rev": "e424e3f2e607da02742f73db84873b8084fc714c", - "type": "github" - }, - "original": { - "owner": "fmtlib", - "ref": "12.0.0", - "repo": "fmt", - "type": "github" - } - }, - "home-manager-unstable": { - "inputs": { - "nixpkgs": [ - "nixpkgs-unstable" - ] - }, - "locked": { - "lastModified": 1775598298, - "narHash": "sha256-FZRwskiertE+8wgFKjLoc/41UrVqzR2V3QseMBHuo/g=", + "lastModified": 1771756436, + "narHash": "sha256-Tl2I0YXdhSTufGqAaD1ySh8x+cvVsEI1mJyJg12lxhI=", "owner": "nix-community", "repo": "home-manager", - "rev": "98b4d61cfaf825c8b691afae0b6e152f0cc05c86", + "rev": "5bd3589390b431a63072868a90c0f24771ff4cbb", "type": "github" }, "original": { @@ -178,219 +20,6 @@ "type": "github" } }, - "incbin-src": { - "flake": false, - "locked": { - "lastModified": 1748303270, - "narHash": "sha256-vgOfViZnWTKpBB6vDNDJSB3YuuGGVhg++zsi9Ubatno=", - "owner": "graphitemaster", - "repo": "incbin", - "rev": "22061f51fe9f2f35f061f85c2b217b55dd75310d", - "type": "github" - }, - "original": { - "owner": "graphitemaster", - "repo": "incbin", - "rev": "22061f51fe9f2f35f061f85c2b217b55dd75310d", - "type": "github" - } - }, - "json-src": { - "flake": false, - "locked": { - "lastModified": 1744360948, - "narHash": "sha256-cECvDOLxgX7Q9R3IE86Hj9JJUxraDQvhoyPDF03B2CY=", - "owner": "nlohmann", - "repo": "json", - "rev": "55f93686c01528224f448c19128836e7df245f72", - "type": "github" - }, - "original": { - "owner": "nlohmann", - "ref": "v3.12.0", - "repo": "json", - "type": "github" - } - }, - "libgit2-src": { - "flake": false, - "locked": { - "lastModified": 1749227175, - "narHash": "sha256-/xI3v7LNhpgfjv/m+sZwYDhhYvS6kQYxiiiG3+EF8Mw=", - "owner": "libgit2", - "repo": "libgit2", - "rev": "0060d9cf5666f015b1067129bd874c6cc4c9c7ac", - "type": "github" - }, - "original": { - "owner": "libgit2", - "ref": "v1.9.1", - "repo": "libgit2", - "type": "github" - } - }, - "luajit-src": { - "flake": false, - "locked": { - "lastModified": 1763177035, - "narHash": "sha256-oYD86MqmlJpiCuEs4LwVtxvarPtz1RPWm8nJqNE0sBs=", - "owner": "SteamClientHomebrew", - "repo": "LuaJIT", - "rev": "89550023569c3e195e75e12951c067fe5591e0d2", - "type": "github" - }, - "original": { - "owner": "SteamClientHomebrew", - "ref": "v2.1", - "repo": "LuaJIT", - "type": "github" - } - }, - "luajson-src": { - "flake": false, - "locked": { - "lastModified": 1763065879, - "narHash": "sha256-5Mdp4jp+rqz2ufkBa1gMfd8nep+Um+mBdr6+Ut6yz9I=", - "owner": "SteamClientHomebrew", - "repo": "LuaJSON", - "rev": "0c1fabf07c42f3907287d1e4f729e0620c1fe6fd", - "type": "github" - }, - "original": { - "owner": "SteamClientHomebrew", - "repo": "LuaJSON", - "rev": "0c1fabf07c42f3907287d1e4f729e0620c1fe6fd", - "type": "github" - } - }, - "microvm": { - "inputs": { - "nixpkgs": [ - "cerulean", - "nixpkgs" - ], - "spectrum": "spectrum" - }, - "locked": { - "lastModified": 1771365290, - "narHash": "sha256-1XJOslVyF7yzf6yd/yl1VjGLywsbtwmQh3X1LuJcLI4=", - "owner": "microvm-nix", - "repo": "microvm.nix", - "rev": "789c90b164b55b4379e7a94af8b9c01489024c18", - "type": "github" - }, - "original": { - "owner": "microvm-nix", - "repo": "microvm.nix", - "type": "github" - } - }, - "millennium": { - "inputs": { - "abseil-src": "abseil-src", - "asio-src": "asio-src", - "curl-src": "curl-src", - "fmt-src": "fmt-src", - "incbin-src": "incbin-src", - "json-src": "json-src", - "libgit2-src": "libgit2-src", - "luajit-src": "luajit-src", - "luajson-src": "luajson-src", - "millennium-src": "millennium-src", - "minhook-src": "minhook-src", - "mini-src": "mini-src", - "minizip-src": "minizip-src", - "nixpkgs": [ - "nixpkgs-unstable" - ], - "re2-src": "re2-src", - "websocketpp-src": "websocketpp-src", - "zlib-src": "zlib-src" - }, - "locked": { - "dir": "packages/nix", - "lastModified": 1774491538, - "narHash": "sha256-11rgTocaXAIFYVEcbb6ju/sDN6sZpxjneXj9FSbgwrA=", - "owner": "SteamClientHomebrew", - "repo": "millennium", - "rev": "bf8b0cd016fcc4168c4e348cbcbfd237de4c01c8", - "type": "github" - }, - "original": { - "dir": "packages/nix", - "owner": "SteamClientHomebrew", - "repo": "millennium", - "type": "github" - } - }, - "millennium-src": { - "flake": false, - "locked": { - "lastModified": 1770463863, - "narHash": "sha256-MceGTpXobCAh5Ll/1iTWcEf6/nHY3Ll1t06JxbYc+Co=", - "owner": "SteamClientHomebrew", - "repo": "Millennium", - "rev": "1bc62c94a06f25f7e8d7e269f11cd968cf576bff", - "type": "github" - }, - "original": { - "owner": "SteamClientHomebrew", - "repo": "Millennium", - "rev": "1bc62c94a06f25f7e8d7e269f11cd968cf576bff", - "type": "github" - } - }, - "minhook-src": { - "flake": false, - "locked": { - "lastModified": 1743163800, - "narHash": "sha256-0eGFfg365bb4zic1WTHMvKHbxuhhGp72/clu8OklHXs=", - "owner": "TsudaKageyu", - "repo": "minhook", - "rev": "c3fcafdc10146beb5919319d0683e44e3c30d537", - "type": "github" - }, - "original": { - "owner": "TsudaKageyu", - "ref": "v1.3.4", - "repo": "minhook", - "type": "github" - } - }, - "mini-src": { - "flake": false, - "locked": { - "lastModified": 1743356736, - "narHash": "sha256-zBFFOlECbie7+62fTGf+NP4gNmfv2Qddw3ys6xn7o9U=", - "owner": "metayeti", - "repo": "mINI", - "rev": "52b66e987cb56171dc91d96115cdf094b6e4d7a0", - "type": "github" - }, - "original": { - "owner": "metayeti", - "ref": "0.9.18", - "repo": "mINI", - "type": "github" - } - }, - "minizip-src": { - "flake": false, - "locked": { - "lastModified": 1746408966, - "narHash": "sha256-I3CZwtfJMsZYQOMdGhooUN8vssnQj6rCzv8F+rne3vg=", - "owner": "zlib-ng", - "repo": "minizip-ng", - "rev": "f3ed731e27a97e30dffe076ed5e0537daae5c1bd", - "type": "github" - }, - "original": { - "owner": "zlib-ng", - "ref": "4.0.10", - "repo": "minizip-ng", - "type": "github" - } - }, "nix-flatpak": { "locked": { "lastModified": 1767983141, @@ -407,61 +36,13 @@ "type": "github" } }, - "nix-github-actions": { - "inputs": { - "nixpkgs": [ - "cerulean", - "nt", - "nix-unit", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1737420293, - "narHash": "sha256-F1G5ifvqTpJq7fdkT34e/Jy9VCyzd5XfJ9TO8fHhJWE=", - "owner": "nix-community", - "repo": "nix-github-actions", - "rev": "f4158fa080ef4503c8f4c820967d946c2af31ec9", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nix-github-actions", - "type": "github" - } - }, - "nix-unit": { - "inputs": { - "flake-parts": "flake-parts", - "nix-github-actions": "nix-github-actions", - "nixpkgs": [ - "cerulean", - "nt", - "nixpkgs" - ], - "treefmt-nix": "treefmt-nix" - }, - "locked": { - "lastModified": 1762774186, - "narHash": "sha256-hRADkHjNt41+JUHw2EiSkMaL4owL83g5ZppjYUdF/Dc=", - "owner": "nix-community", - "repo": "nix-unit", - "rev": "1c9ab50554eed0b768f9e5b6f646d63c9673f0f7", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nix-unit", - "type": "github" - } - }, "nixcats": { "locked": { - "lastModified": 1774835836, - "narHash": "sha256-6ok7iv/9R82vl6MYe3Lwyyb6S5bmW2PxEZtmjzlqyPs=", + "lastModified": 1770584904, + "narHash": "sha256-9Zaz8lbKF2W9pwXZEnbiGsicHdBoU+dHt3Wv3mCJoZ8=", "owner": "BirdeeHub", "repo": "nixCats-nvim", - "rev": "ebb9f279a55ca60ff4e37e4accf6518dc627aa8d", + "rev": "538fdde784d2909700d97a8ef307783b33a86fb1", "type": "github" }, "original": { @@ -472,27 +53,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1767313136, - "narHash": "sha256-16KkgfdYqjaeRGBaYsNrhPRRENs0qzkQVUooNHtoy2w=", + "lastModified": 1771369470, + "narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ac62194c3917d5f474c1a844b6fd6da2db95077d", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-25.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-unstable": { - "locked": { - "lastModified": 1775423009, - "narHash": "sha256-vPKLpjhIVWdDrfiUM8atW6YkIggCEKdSAlJPzzhkQlw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "68d8aa3d661f0e6bd5862291b5bb263b2a6595c9", + "rev": "0182a361324364ae3f436a63005877674cf45efb", "type": "github" }, "original": { @@ -502,56 +67,21 @@ "type": "github" } }, - "nixpkgs_2": { - "locked": { - "lastModified": 1775608838, - "narHash": "sha256-2ySoGH+SAi34U0PeuQgABC0WiH9LQ3tkyHTiE93KUeg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "9a01fad67a57e44e1b3e1d905c6881bcfb209e8a", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "type": "github" - } - }, - "nt": { - "inputs": { - "nix-unit": "nix-unit", - "nixpkgs": "nixpkgs", - "systems": "systems_2" - }, - "locked": { - "lastModified": 1770975056, - "narHash": "sha256-ZXTz/P3zUbbM6lNXzt91u8EwfNqhXpYMu8+wvFZqQHE=", - "owner": "cry128", - "repo": "nt", - "rev": "f42dcdd49a7921a7f433512e83d5f93696632412", - "type": "github" - }, - "original": { - "owner": "cry128", - "repo": "nt", - "type": "github" - } - }, "plasma-manager": { "inputs": { "home-manager": [ - "home-manager-unstable" + "home-manager" ], "nixpkgs": [ - "nixpkgs-unstable" + "nixpkgs" ] }, "locked": { - "lastModified": 1774915545, - "narHash": "sha256-COT4l/+ZddGBvrDVfPf7MEOJxV8EDKame6/aRnNIKcY=", + "lastModified": 1770766818, + "narHash": "sha256-12RCFLyAedyMOdenUi7cN3ioJPEGjA/ZG1BLjugfUVs=", "owner": "nix-community", "repo": "plasma-manager", - "rev": "f3177b3c69fb3f03201098d7fe8ab6422cce7fc1", + "rev": "44b928068359b7d2310a34de39555c63c93a2c90", "type": "github" }, "original": { @@ -560,215 +90,13 @@ "type": "github" } }, - "re2-src": { - "flake": false, - "locked": { - "lastModified": 1762353507, - "narHash": "sha256-0J1HVk+eR7VN0ymucW9dNlT36j16XIfCzcs1EVyEIEU=", - "owner": "google", - "repo": "re2", - "rev": "927f5d53caf8111721e734cf24724686bb745f55", - "type": "github" - }, - "original": { - "owner": "google", - "ref": "2025-11-05", - "repo": "re2", - "type": "github" - } - }, "root": { "inputs": { - "cerulean": "cerulean", - "home-manager-unstable": "home-manager-unstable", - "millennium": "millennium", + "home-manager": "home-manager", "nix-flatpak": "nix-flatpak", "nixcats": "nixcats", - "nixpkgs": "nixpkgs_2", - "nixpkgs-unstable": "nixpkgs-unstable", - "plasma-manager": "plasma-manager", - "systems": "systems_3", - "zen-browser": "zen-browser" - } - }, - "sops-nix": { - "inputs": { - "nixpkgs": [ - "cerulean", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1775365543, - "narHash": "sha256-f50qrK0WwZ9z5EdaMGWOTtALgSF7yb7XwuE7LjCuDmw=", - "owner": "Mic92", - "repo": "sops-nix", - "rev": "a4ee2de76efb759fe8d4868c33dec9937897916f", - "type": "github" - }, - "original": { - "owner": "Mic92", - "repo": "sops-nix", - "type": "github" - } - }, - "spectrum": { - "flake": false, - "locked": { - "lastModified": 1759482047, - "narHash": "sha256-H1wiXRQHxxPyMMlP39ce3ROKCwI5/tUn36P8x6dFiiQ=", - "ref": "refs/heads/main", - "rev": "c5d5786d3dc938af0b279c542d1e43bce381b4b9", - "revCount": 996, - "type": "git", - "url": "https://spectrum-os.org/git/spectrum" - }, - "original": { - "type": "git", - "url": "https://spectrum-os.org/git/spectrum" - } - }, - "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" - } - }, - "treefmt-nix": { - "inputs": { - "nixpkgs": [ - "cerulean", - "nt", - "nix-unit", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1762410071, - "narHash": "sha256-aF5fvoZeoXNPxT0bejFUBXeUjXfHLSL7g+mjR/p5TEg=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "97a30861b13c3731a84e09405414398fbf3e109f", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" - } - }, - "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" - } - }, - "websocketpp-src": { - "flake": false, - "locked": { - "lastModified": 1587320717, - "narHash": "sha256-9fIwouthv2GcmBe/UPvV7Xn9P2o0Kmn2hCI4jCh0hPM=", - "owner": "zaphoyd", - "repo": "websocketpp", - "rev": "56123c87598f8b1dd471be83ca841ceae07f95ba", - "type": "github" - }, - "original": { - "owner": "zaphoyd", - "ref": "0.8.2", - "repo": "websocketpp", - "type": "github" - } - }, - "zen-browser": { - "inputs": { - "home-manager": [ - "home-manager-unstable" - ], - "nixpkgs": [ - "nixpkgs-unstable" - ] - }, - "locked": { - "lastModified": 1775453133, - "narHash": "sha256-VIlMG985ONqVqF+OnPuS5Shbz5k6tqbOWnDL7EH+IT4=", - "owner": "0xc000022070", - "repo": "zen-browser-flake", - "rev": "8d0508ffceba8ad785ae442591dd115080a55142", - "type": "github" - }, - "original": { - "owner": "0xc000022070", - "repo": "zen-browser-flake", - "type": "github" - } - }, - "zlib-src": { - "flake": false, - "locked": { - "lastModified": 1754565515, - "narHash": "sha256-c2RYqHi3hj/ViBzJcYWoNib27GAbq/B1SJUfvG7CPG4=", - "owner": "zlib-ng", - "repo": "zlib-ng", - "rev": "425439062b114a0f6cf625022c41d929c7e879f9", - "type": "github" - }, - "original": { - "owner": "zlib-ng", - "ref": "2.2.5", - "repo": "zlib-ng", - "type": "github" + "nixpkgs": "nixpkgs", + "plasma-manager": "plasma-manager" } } }, diff --git a/flake.nix b/flake.nix index 2479289..412d931 100644 --- a/flake.nix +++ b/flake.nix @@ -2,42 +2,52 @@ description = "release the dea files"; inputs = { - systems.url = "github:nix-systems/default-linux"; - - nixpkgs.url = "github:NixOS/nixpkgs"; - nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable"; - home-manager-unstable.url = "github:nix-community/home-manager"; - home-manager-unstable.inputs.nixpkgs.follows = "nixpkgs-unstable"; - - cerulean.url = "github:cry128/cerulean/v0.2.5-alpha"; - cerulean.inputs.systems.follows = "systems"; - cerulean.inputs.nixpkgs.follows = "nixpkgs-unstable"; - + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + home-manager.url = "github:nix-community/home-manager"; + home-manager.inputs.nixpkgs.follows = "nixpkgs"; nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=latest"; nixcats.url = "github:BirdeeHub/nixCats-nvim"; plasma-manager = { url = "github:nix-community/plasma-manager"; - inputs.nixpkgs.follows = "nixpkgs-unstable"; - inputs.home-manager.follows = "home-manager-unstable"; - }; - - millennium = { - url = "github:SteamClientHomebrew/millennium?dir=packages/nix"; - inputs.nixpkgs.follows = "nixpkgs-unstable"; - }; - - zen-browser = { - url = "github:0xc000022070/zen-browser-flake"; - inputs.nixpkgs.follows = "nixpkgs-unstable"; - inputs.home-manager.follows = "home-manager-unstable"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.home-manager.follows = "home-manager"; }; }; - - nixConfig = { - extra-experimental-features = "pipe-operators"; - }; - outputs = {cerulean, ...} @ inputs: - cerulean.snow.flake inputs ./.; + outputs = + inputs@{ self, nixpkgs, nixcats, ... }: + let + lib = nixpkgs.lib; + + commonModules = [ + ./configuration.nix + ./user.nix + inputs.nix-flatpak.nixosModules.nix-flatpak + ]; + in + { + # laptop + nixosConfigurations.nahemah = lib.nixosSystem { + specialArgs = { + host = "nahemah"; + inherit inputs; + }; + modules = [ + ./hosts/nahemah/hardware-configuration.nix + ] + ++ commonModules; + }; + + # pc + nixosConfigurations.sandalphon = lib.nixosSystem { + specialArgs = { inherit inputs; }; + modules = [ + ./hosts/sandalphon/hardware-configuration.nix + ./hosts/sandalphon/configuration.nix + ./hosts/sandalphon/games.nix + ] + ++ commonModules; + }; + }; } diff --git a/groups/all/default.nix b/groups/all/default.nix deleted file mode 100644 index ab72c63..0000000 --- a/groups/all/default.nix +++ /dev/null @@ -1,30 +0,0 @@ -# configuration shared by all cerulean nodes -{lib, ...}: { - nix.settings.extra-experimental-features = [ - "nix-command" - "flakes" - "pipe-operators" - ]; - - boot.loader.systemd-boot.enable = lib.mkDefault true; - boot.loader.efi.canTouchEfiVariables = true; - - networking.hostName = lib.mkDefault "tohka"; - networking.networkmanager.enable = true; - networking.nftables.enable = true; # firewall - networking.firewall.enable = true; - - time.timeZone = lib.mkDefault "America/New_York"; - i18n.defaultLocale = lib.mkDefault "en_US.UTF-8"; - i18n.extraLocaleSettings = { - LC_ADDRESS = "en_US.UTF-8"; - LC_IDENTIFICATION = "en_US.UTF-8"; - LC_MEASUREMENT = "en_US.UTF-8"; - LC_MONETARY = "en_US.UTF-8"; - LC_NAME = "en_US.UTF-8"; - LC_NUMERIC = "en_US.UTF-8"; - LC_PAPER = "en_US.UTF-8"; - LC_TELEPHONE = "en_US.UTF-8"; - LC_TIME = "en_US.UTF-8"; - }; -} diff --git a/groups/yezelhlev/default.nix b/groups/yezelhlev/default.nix deleted file mode 100644 index e257e3b..0000000 --- a/groups/yezelhlev/default.nix +++ /dev/null @@ -1,95 +0,0 @@ -{ - pkgs, - root, - ... -}: { - imports = [ - ./programs.nix - /${root}/hosts/modules/steam.nix - ]; - - # Configure keymap in X11 - services.xserver.enable = true; - services.xserver.xkb = { - layout = "us"; - variant = ""; - }; - # Enable the KDE Plasma Desktop Environment. - services.displayManager.sddm.enable = true; - services.desktopManager.plasma6.enable = true; - - # Enable CUPS to print documents. - services.printing.enable = true; - - security.rtkit.enable = true; - services.pipewire = { - enable = true; - audio.enable = true; - wireplumber.enable = true; - - alsa.enable = true; - alsa.support32Bit = true; - # pulse.enable = true; - # jack.enable = true; - }; - - security.polkit.enable = true; - - services.nginx.enable = true; - - services.mullvad-vpn = { - enable = true; - package = pkgs.mullvad-vpn; # mullvad only has the cli - }; - - # Enable docker virtualisation. - virtualisation.docker.enable = true; - - programs.nix-ld = { - enable = true; - libraries = [ - ## Put here any library that is required when running a package - ## ... - ## Uncomment if you want to use the libraries provided by default in the steam distribution - ## but this is quite far from being exhaustive - ## https://github.com/NixOS/nixpkgs/issues/354513 - (pkgs.runCommand "steamrun-lib" {} "mkdir $out; ln -s ${pkgs.steam-run.fhsenv}/usr/lib64 $out/lib") - ]; - }; - - programs.nh = { - enable = true; - clean.enable = true; - clean.extraArgs = "--keep-since 7d --keep 3"; - flake = "/home/dea/dea-files"; # sets NH_OS_FLAKE variable for you - }; - - users.users.dea = { - description = "dea"; - isNormalUser = true; - extraGroups = [ - "networkmanager" - "wheel" - "docker" - ]; - packages = with pkgs; [ - kdePackages.kate - # thunderbird - ]; - }; - - # Better alternative to the standard ssh-agent - # services.pcscd.enable = true; - # programs.gnupg.agent = { - # enable = true; - # enableSSHSupport = true; - # }; - - # This value determines the NixOS release from which the default - # settings for stateful data, like file locations and database versions - # on your system were taken. It‘s perfectly fine and recommended to leave - # this value at the release version of the first install of this system. - # Before changing this value read the documentation for this option - # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). - system.stateVersion = "24.11"; # Did you read the comment? -} diff --git a/groups/yezelhlev/programs.nix b/groups/yezelhlev/programs.nix deleted file mode 100644 index e47ac0e..0000000 --- a/groups/yezelhlev/programs.nix +++ /dev/null @@ -1,68 +0,0 @@ -{upkgs, ...}: { - # ====================== - # List packages installed in system profile. To search, run: - # $ nix search wget - # nixos-rebuild switch --use-remote-sudo - # ====================== - # Update packages?: - # sudo nix-channel --update - # sudo nixos-rebuild switch - # ====================== - # sudo nixos-rebuild switch --flake . - environment.systemPackages = with upkgs; [ - # CLI tools - git - wget - unzip - p7zip - kitty # terminal - starship # shell customizer - btop-cuda # system monitoring - croc # e2ee file transfer - chawan # tui browser cha - shellcheck # sh warning - calcure # calendar app TODO: remove & fork calendar.vim - - # editors - #lunarvim - vscode - - # languages - gcc - gdb - glibc.static - python3 - nixfmt - - # window management - wayland - - # programs - vivaldi # TODO: switch to zen later - vesktop # discord-canary - equibop # equibop 3.1.7 - element-desktop # element 4 matrix - monophony # yt music tryout - syncplay - qbittorrent - libreoffice-qt # libreoffice - notepad-next # notepad++ - # notepadqq # TODO: which is better? - sqlitebrowser - bottles # windows emulation - - # dependencies - qt5.qtbase # vivaldi + others - libsForQt5.qtstyleplugin-kvantum # libs for Qt5 - libsForQt5.qt5ct - libsForQt5.qt5.qtbase - - hunspell # spellcheck for libreoffice - hunspellDicts.uk_UA - hunspellDicts.th_TH - openjdk - - ffmpeg-full # mpv + syncplay - yt-dlp - ]; -} diff --git a/home.nix b/home.nix new file mode 100644 index 0000000..870fe24 --- /dev/null +++ b/home.nix @@ -0,0 +1,94 @@ +{ + pkgs, + inputs, + ... +}: + +{ + # Enables nix commands + flakes + nix = { + settings.extra-experimental-features = [ + "nix-command" + "flakes" + ]; + }; + + # Home manager things + home.username = "dea"; + home.homeDirectory = "/home/dea"; + home.stateVersion = "25.11"; + home.packages = with pkgs; [ + libsForQt5.qtstyleplugin-kvantum # libs for Qt5 + libsForQt5.qt5ct + libsForQt5.qt5.qtbase + btop-cuda + + croc + syncplay + ]; + + # programs.neovim = { }; + + home.sessionPath = [ + "$HOME/.local/bin" + ]; + + nixpkgs.config.allowUnfree = true; + nixpkgs.overlays = [ + (import ./exprs/overlay.nix { }) + (self: super: { + element-desktop = super.element-desktop.overrideAttrs ( + final: prev: { + desktopItems = [ + ((builtins.elemAt prev.desktopItems 0).override { + exec = "element-desktop %u --password-store=\"gnome-libsecret\""; + }) + ]; + } + ); + }) + ]; + imports = [ + ./homemanager/mpv.nix + ./hosts/sandalphon/mcsr/home.nix + ./homemanager/vim/nixcats.nix + inputs.plasma-manager.homeModules.plasma-manager + ]; + + # dconf.settings = {}; + + # home = {}; + + programs.bash = { + enable = true; + bashrcExtra = builtins.readFile ./homemanager/bashrc; + }; + + # programs.starship = { + # enable = true; + # settings = { + # add_newline = true; + + # format = ''$directory\n + # $character''; + + # directory = { + # truncation_length = 3; + # truncate_to_repo = false; + # format = "[$path]($style) [❤](bold fg:#ff5fff) "; + # style = "bold cyan"; + # }; + # character = { + # success_symbol = ""; + # error_symbol = ""; + # }; + # }; + # }; + + programs.plasma = { + enable = true; + kwin.edgeBarrier = 50; + }; + + programs.home-manager.enable = true; +} diff --git a/homemanager/bashrc b/homemanager/bashrc new file mode 100644 index 0000000..1947c6f --- /dev/null +++ b/homemanager/bashrc @@ -0,0 +1,17 @@ +eval "$(starship init bash)" + +alias eep='systemctl suspend' +alias hibernate='systemctl hybrid-sleep' +alias restart='systemctl reboot' +alias shutdown='systemctl poweroff' +alias vim='dvim' +alias nvim='dvim' +rebuild() { + if [ -z "$1" ] + then + sudo nixos-rebuild switch --flake ~/dea-files#"$(hostname)" + else + sudo nixos-rebuild switch --flake ~/dea-files#"$1" + fi +} +[ -f "/home/dea/.ghcup/env" ] && . "/home/dea/.ghcup/env" # ghcup-env diff --git a/homes/modules/mpv/default.nix b/homemanager/mpv.nix similarity index 100% rename from homes/modules/mpv/default.nix rename to homemanager/mpv.nix diff --git a/homes/modules/starship/starship.toml b/homemanager/starship.toml similarity index 100% rename from homes/modules/starship/starship.toml rename to homemanager/starship.toml diff --git a/homes/modules/vim/init.lua b/homemanager/vim/init.lua similarity index 100% rename from homes/modules/vim/init.lua rename to homemanager/vim/init.lua diff --git a/homes/modules/vim/lua/lsp/capabilities.lua b/homemanager/vim/lua/lsp/capabilities.lua similarity index 100% rename from homes/modules/vim/lua/lsp/capabilities.lua rename to homemanager/vim/lua/lsp/capabilities.lua diff --git a/homes/modules/vim/lua/lsp/completion.lua b/homemanager/vim/lua/lsp/completion.lua similarity index 100% rename from homes/modules/vim/lua/lsp/completion.lua rename to homemanager/vim/lua/lsp/completion.lua diff --git a/homes/modules/vim/lua/lsp/indentation.lua b/homemanager/vim/lua/lsp/indentation.lua similarity index 66% rename from homes/modules/vim/lua/lsp/indentation.lua rename to homemanager/vim/lua/lsp/indentation.lua index edab845..df7c2a8 100644 --- a/homes/modules/vim/lua/lsp/indentation.lua +++ b/homemanager/vim/lua/lsp/indentation.lua @@ -7,15 +7,6 @@ vim.api.nvim_create_autocmd("FileType", { end, }) -vim.api.nvim_create_autocmd("FileType", { - pattern = "hs", - callback = function() - vim.opt_local.shiftwidth = 2 - vim.opt_local.tabstop = 2 - vim.opt_local.expandtab = true - end, -}) - vim.api.nvim_create_autocmd("FileType", { pattern = "nix", callback = function() diff --git a/homes/modules/vim/lua/lsp/init.lua b/homemanager/vim/lua/lsp/init.lua similarity index 100% rename from homes/modules/vim/lua/lsp/init.lua rename to homemanager/vim/lua/lsp/init.lua diff --git a/homes/modules/vim/lua/lsp/lsp.lua b/homemanager/vim/lua/lsp/lsp.lua similarity index 100% rename from homes/modules/vim/lua/lsp/lsp.lua rename to homemanager/vim/lua/lsp/lsp.lua diff --git a/homes/modules/vim/lua/plugins/comment.lua b/homemanager/vim/lua/plugins/comment.lua similarity index 100% rename from homes/modules/vim/lua/plugins/comment.lua rename to homemanager/vim/lua/plugins/comment.lua diff --git a/homes/modules/vim/lua/plugins/dressing.lua b/homemanager/vim/lua/plugins/dressing.lua similarity index 100% rename from homes/modules/vim/lua/plugins/dressing.lua rename to homemanager/vim/lua/plugins/dressing.lua diff --git a/homes/modules/vim/lua/plugins/format.lua b/homemanager/vim/lua/plugins/format.lua similarity index 100% rename from homes/modules/vim/lua/plugins/format.lua rename to homemanager/vim/lua/plugins/format.lua diff --git a/homes/modules/vim/lua/plugins/fyler.lua b/homemanager/vim/lua/plugins/fyler.lua similarity index 100% rename from homes/modules/vim/lua/plugins/fyler.lua rename to homemanager/vim/lua/plugins/fyler.lua diff --git a/homes/modules/vim/lua/plugins/init.lua b/homemanager/vim/lua/plugins/init.lua similarity index 100% rename from homes/modules/vim/lua/plugins/init.lua rename to homemanager/vim/lua/plugins/init.lua diff --git a/homes/modules/vim/lua/plugins/mini-hipatterns.lua b/homemanager/vim/lua/plugins/mini-hipatterns.lua similarity index 100% rename from homes/modules/vim/lua/plugins/mini-hipatterns.lua rename to homemanager/vim/lua/plugins/mini-hipatterns.lua diff --git a/homes/modules/vim/lua/plugins/orgmode.lua b/homemanager/vim/lua/plugins/orgmode.lua similarity index 92% rename from homes/modules/vim/lua/plugins/orgmode.lua rename to homemanager/vim/lua/plugins/orgmode.lua index 1f308e0..aae46cb 100644 --- a/homes/modules/vim/lua/plugins/orgmode.lua +++ b/homemanager/vim/lua/plugins/orgmode.lua @@ -1,7 +1,7 @@ # options: https://github.com/nvim-orgmode/orgmode/blob/master/docs/installation.org return { { - "orgmode", + "nvim-orgmode/orgmode", event = { "FileType" }, ft = { "org" }, after = function(plugin) diff --git a/homes/modules/vim/lua/plugins/telescope.lua b/homemanager/vim/lua/plugins/telescope.lua similarity index 100% rename from homes/modules/vim/lua/plugins/telescope.lua rename to homemanager/vim/lua/plugins/telescope.lua diff --git a/homes/modules/vim/lua/plugins/treesitter.lua b/homemanager/vim/lua/plugins/treesitter.lua similarity index 100% rename from homes/modules/vim/lua/plugins/treesitter.lua rename to homemanager/vim/lua/plugins/treesitter.lua diff --git a/homes/modules/vim/nixcats.nix b/homemanager/vim/nixcats.nix similarity index 99% rename from homes/modules/vim/nixcats.nix rename to homemanager/vim/nixcats.nix index b45a388..32b54cc 100644 --- a/homes/modules/vim/nixcats.nix +++ b/homemanager/vim/nixcats.nix @@ -85,7 +85,6 @@ in nvim-web-devicons base16-nvim mini-nvim - calendar-vim (pkgs.vimUtils.buildVimPlugin { pname = "candyland-nvim"; diff --git a/homes/dea/default.nix b/homes/dea/default.nix deleted file mode 100644 index e3595dc..0000000 --- a/homes/dea/default.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ - config, - inputs, - root, - ... -}: { - imports = [ - inputs.plasma-manager.homeModules.plasma-manager # - - /${root}/homes/modules/bash - /${root}/homes/modules/starship - /${root}/homes/modules/vim - /${root}/homes/modules/mpv - /${root}/homes/modules/zen - ]; - - home.username = "dea"; - home.homeDirectory = "/home/dea"; - home.sessionPath = [ - "$HOME/.local/bin" - ]; - home.shellAliases = { - eep = "systemctl suspend"; - hibernate = "systemctl hybrid-sleep"; - restart = "systemctl reboot"; - shutdown = "systemctl poweroff"; - vim = "dvim"; - nvim = "dvim"; - rebuild = "nh os switch ~/dea-files"; - trybuild = "nh os test ~/dea-files"; - }; - - programs.plasma = { - enable = true; - kwin.edgeBarrier = 50; - }; - - # DO NOT MODIFY - home.stateVersion = "25.11"; -} diff --git a/homes/modules/bash/bashrc b/homes/modules/bash/bashrc deleted file mode 100644 index b1070af..0000000 --- a/homes/modules/bash/bashrc +++ /dev/null @@ -1,3 +0,0 @@ -eval "$(starship init bash)" - -[ -f "/home/dea/.ghcup/env" ] && . "/home/dea/.ghcup/env" # ghcup-env diff --git a/homes/modules/bash/default.nix b/homes/modules/bash/default.nix deleted file mode 100644 index 8078099..0000000 --- a/homes/modules/bash/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{...}: { - programs.bash = { - enable = true; - bashrcExtra = builtins.readFile ./bashrc; - }; -} diff --git a/homes/modules/starship/default.nix b/homes/modules/starship/default.nix deleted file mode 100644 index 39017df..0000000 --- a/homes/modules/starship/default.nix +++ /dev/null @@ -1,8 +0,0 @@ -{...}: { - programs.starship = { - enable = true; - settings = - builtins.readFile ./starship.toml - |> builtins.fromTOML; - }; -} diff --git a/homes/modules/vim/default.nix b/homes/modules/vim/default.nix deleted file mode 100644 index c42d9b4..0000000 --- a/homes/modules/vim/default.nix +++ /dev/null @@ -1 +0,0 @@ -import ./nixcats.nix diff --git a/homes/modules/zen/default.nix b/homes/modules/zen/default.nix deleted file mode 100644 index 3044c4e..0000000 --- a/homes/modules/zen/default.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ - inputs, - ... -}: - -{ - imports = [ - inputs.zen-browser.homeModules.twilight - ]; - - programs.zen-browser = { - enable = true; - # policies = {}; - }; -} diff --git a/hosts/modules/steam.nix b/hosts/modules/steam.nix deleted file mode 100644 index 7d409b6..0000000 --- a/hosts/modules/steam.nix +++ /dev/null @@ -1,24 +0,0 @@ -{upkgs, ...}: { - programs.steam = { - enable = true; - package = upkgs.millennium-steam; - - remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play - dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server - localNetworkGameTransfers.openFirewall = true; - - extraCompatPackages = with upkgs; [ - proton-ge-bin - ]; - }; - - programs.gamemode.enable = true; - - environment.systemPackages = with upkgs; [ - steamcmd - protonup-qt - - bottles - mangohud - ]; -} diff --git a/hosts/nahemah/configuration.nix b/hosts/nahemah/configuration.nix new file mode 100644 index 0000000..604175f --- /dev/null +++ b/hosts/nahemah/configuration.nix @@ -0,0 +1,13 @@ +{ + lib, + pkgs, + ... +}: + +{ + networking.hostName = lib.mkForce "nahemah"; + + environment.systemPackages = with pkgs; [ + + ]; +} diff --git a/hosts/nahemah/default.nix b/hosts/nahemah/default.nix deleted file mode 100644 index 2e29aba..0000000 --- a/hosts/nahemah/default.nix +++ /dev/null @@ -1,7 +0,0 @@ -{...}: { - imports = [ - ./hardware-configuration.nix - ]; - - networking.hostName = "nahemah"; -} diff --git a/hosts/sandalphon/configuration.nix b/hosts/sandalphon/configuration.nix new file mode 100644 index 0000000..b333047 --- /dev/null +++ b/hosts/sandalphon/configuration.nix @@ -0,0 +1,48 @@ +{ + lib, + inputs, + pkgs, + config, + ... +}: + +let + nvidiaPackage = config.hardware.nvidia.package; +in +{ + networking.hostName = lib.mkForce "sandalphon"; + + # nvidia drivers + hardware.graphics.enable = true; + services.xserver.videoDrivers = lib.mkDefault [ "nvidia" ]; + hardware.nvidia = { + modesetting.enable = true; + # Nvidia power management. Experimental, and can cause sleep/suspend to fail. + # Enable this if you have graphical corruption issues or application crashes after waking + # up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead + # of just the bare essentials. + powerManagement.enable = false; + + powerManagement.finegrained = false; + # open = true; + open = lib.mkOverride 990 (nvidiaPackage ? open && nvidiaPackage ? firmware); + # Enable the Nvidia settings menu, + # accessible via `nvidia-settings`. + nvidiaSettings = true; + package = config.boot.kernelPackages.nvidiaPackages.stable; + }; + + services.flatpak = { + enable = true; + packages = [ + { + appId = "org.vinegarhq.Sober"; + origin = "flathub"; + } + ]; + }; + + environment.systemPackages = with pkgs; [ + + ]; +} diff --git a/hosts/sandalphon/default.nix b/hosts/sandalphon/default.nix deleted file mode 100644 index 6c5ff1d..0000000 --- a/hosts/sandalphon/default.nix +++ /dev/null @@ -1,35 +0,0 @@ -{config, ...}: { - imports = [ - ./hardware-configuration.nix - ./games.nix - ]; - - networking.hostName = "sandalphon"; - - # nvidia drivers - hardware.graphics.enable = true; - services.xserver.videoDrivers = ["nvidia"]; - hardware.nvidia = { - package = config.boot.kernelPackages.nvidiaPackages.stable; - open = true; - - nvidiaSettings = true; - modesetting.enable = true; - powerManagement.enable = false; - powerManagement.finegrained = false; - }; - - services.flatpak = { - enable = true; - packages = [ - { - appId = "org.vinegarhq.Sober"; - origin = "flathub"; - } - ]; - }; - - home-manager.sharedModules = [ - ./mcsr - ]; -} diff --git a/hosts/sandalphon/games.nix b/hosts/sandalphon/games.nix index 187240d..ec1fe17 100644 --- a/hosts/sandalphon/games.nix +++ b/hosts/sandalphon/games.nix @@ -1,10 +1,14 @@ -{upkgs, ...}: { +{ pkgs, ... }: + +{ + imports = [ ./mcsr ]; + # hardware = { # xone.enable = true; # xpadneo.enable = true; # }; - environment.systemPackages = with upkgs; [ + environment.systemPackages = with pkgs; [ prismlauncher # minecraft r2modman # osu-lazer-bin @@ -15,7 +19,7 @@ programs = { obs-studio = { enable = true; - plugins = with upkgs.obs-studio-plugins; [ + plugins = with pkgs.obs-studio-plugins; [ obs-pipewire-audio-capture ]; }; diff --git a/hosts/sandalphon/mcsr/default.nix b/hosts/sandalphon/mcsr/default.nix index eeb82a4..ffcd441 100644 --- a/hosts/sandalphon/mcsr/default.nix +++ b/hosts/sandalphon/mcsr/default.nix @@ -1 +1 @@ -import ./home.nix +{ } diff --git a/hosts/sandalphon/mcsr/ninjabrain.nix b/hosts/sandalphon/mcsr/ninjabrain.nix index be14045..cfb94f6 100644 --- a/hosts/sandalphon/mcsr/ninjabrain.nix +++ b/hosts/sandalphon/mcsr/ninjabrain.nix @@ -11,11 +11,11 @@ }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "ninjabrain-bot"; - version = "1.5.2"; + version = "1.5.1"; src = fetchurl { url = "https://github.com/Ninjabrain1/Ninjabrain-Bot/releases/download/${finalAttrs.version}/Ninjabrain-Bot-${finalAttrs.version}.jar"; - hash = "sha256-mAmfYyGpDUrOwTQA6G0F96+NYOVjnC84Qn6WjccUUP8="; + hash = "sha256-Rxu9A2EiTr69fLBUImRv+RLC2LmosawIDyDPIaRcrdw="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/hosts/sandalphon/mcsr/waywall.lua b/hosts/sandalphon/mcsr/waywall.lua index 1297ea3..aae7329 100644 --- a/hosts/sandalphon/mcsr/waywall.lua +++ b/hosts/sandalphon/mcsr/waywall.lua @@ -33,7 +33,7 @@ local mc_eye_y = (tall_h - mc_eye_h) / 2 -- https://github.com/Esensats/mcsr-calcsens local normal_sens = 4.699455756166794 local tall_sens = 0.31702247418659996 --- 0.0229116492 + local left_middle = (resolution.w - thin_w) / 4 scene:register("e_counter", { diff --git a/nixpkgs.nix b/nixpkgs.nix deleted file mode 100644 index 46b6e92..0000000 --- a/nixpkgs.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ - inputs, - system, - ... -} @ args: { - nixpkgs.channels = { - default = { - inherit system; - overlays = [ - (import ./overlays args) - ]; - config = { - allowUnfree = true; - allowBroken = false; - }; - }; - - # nixpkgs-unstable (upkgs) - upkgs = { - inherit system; - source = inputs.nixpkgs-unstable; - overlays = [ - inputs.millennium.overlays.default - (import ./overlays args) - ]; - config = { - allowUnfree = true; - allowBroken = false; - }; - }; - }; -} diff --git a/overlays/default.nix b/overlays/default.nix deleted file mode 100644 index 446cb54..0000000 --- a/overlays/default.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ - inputs, - system, - ... -}: ( - self: super: { - element-desktop = super.element-desktop.overrideAttrs ( - final: prev: { - desktopItems = [ - ((builtins.elemAt prev.desktopItems 0).override { - exec = "element-desktop %u --password-store=\"gnome-libsecret\""; - }) - ]; - } - ); - - waywall = super.waywall.overrideAttrs ( - f: p: { - version = "0-unstable-2026-01-06"; - - src = super.fetchFromGitHub { - owner = "tesselslate"; - repo = "waywall"; - rev = "c6504f95f8d757a2e060c4df8bd3ed145ad59e8d"; - hash = "sha256-kfBsppc+esz0Q6iIIKAeOMwkIWdN12AlH3Dji8bU32c="; - }; - } - ); - } -) diff --git a/snow.nix b/snow.nix deleted file mode 100644 index f132e1a..0000000 --- a/snow.nix +++ /dev/null @@ -1,30 +0,0 @@ -{inputs, ...}: { - nodes = { - base = inputs.nixpkgs-unstable; - homeManager = inputs.home-manager-unstable; - - args = {inherit inputs;}; - modules = [ - inputs.nix-flatpak.nixosModules.nix-flatpak - ]; - - groups = { - # desktop environment group - yezelhlev = {}; - }; - - nodes = { - # laptop - nahemah = { - system = "x86_64-linux"; - groups = groups: [groups.yezelhlev]; - }; - - # pc - sandalphon = { - system = "x86_64-linux"; - groups = groups: [groups.yezelhlev]; - }; - }; - }; -} diff --git a/user.nix b/user.nix new file mode 100644 index 0000000..22eaa3b --- /dev/null +++ b/user.nix @@ -0,0 +1,16 @@ +{ pkgs, ... }: +{ + users.users.dea = { + isNormalUser = true; + description = "dea"; + extraGroups = [ + "networkmanager" + "wheel" + "docker" + ]; + packages = with pkgs; [ + kdePackages.kate + # thunderbird + ]; + }; +}