diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..577b0a0 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +hardware-configuration.nix diff --git a/README.md b/README.md index c6c4df4..e77dc20 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,15 @@ # OCbwoy3's Dotfiles The second ones, because the first ones were too difficult to install. +```bash +cd ~ +nix-shell -p git --run "git clone https://github.com/ocbwoy3/config" +cd config +cp /etc/nixos/hardware-configuration.nix . +sudo nixos-rebuild switch --flake ./#default --impure +``` + Commands you will most likely need: ```bash -sudo nixos-rebuild switch --flake "~/config/#default" +sudo nixos-rebuild switch --flake ./#default --impure ``` diff --git a/flake.lock b/flake.lock index c9c4de9..32bb8ea 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,20 @@ { "nodes": { + "catppuccin": { + "locked": { + "lastModified": 1731088327, + "narHash": "sha256-Oizjf0wXBTqALipX4fQdGjq9IBSCXz8wwcfCGRK73bI=", + "owner": "catppuccin", + "repo": "nix", + "rev": "7bebd062df3239c005c0d600f5dfd8514f5915f8", + "type": "github" + }, + "original": { + "owner": "catppuccin", + "repo": "nix", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -20,6 +35,22 @@ "type": "github" } }, + "nix-flatpak": { + "locked": { + "lastModified": 1711997201, + "narHash": "sha256-J71xzQlVYsjagA4AsVwRazhBh2rZrPpKvxTgs6UzL7c=", + "owner": "gmodena", + "repo": "nix-flatpak", + "rev": "b76fa31346db7fc958a9898f3c594696ca71c4fd", + "type": "github" + }, + "original": { + "owner": "gmodena", + "ref": "v0.4.1", + "repo": "nix-flatpak", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1730785428, @@ -38,7 +69,9 @@ }, "root": { "inputs": { + "catppuccin": "catppuccin", "home-manager": "home-manager", + "nix-flatpak": "nix-flatpak", "nixpkgs": "nixpkgs" } } diff --git a/flake.nix b/flake.nix index 522b1d4..d581981 100644 --- a/flake.nix +++ b/flake.nix @@ -13,7 +13,7 @@ }; # Required by NixOS: - # /etc/nixos/hardware-configuration.nix + # ./hardware-configuration.nix # inputs.home-manager.nixosModules.default # catppuccin.nixosModules.catppuccin @@ -24,8 +24,8 @@ specialArgs = {inherit inputs;}; modules = [ inputs.home-manager.nixosModules.default - catppuccin.nixosModules.catppuccin - nix-flatpak.nixosModules.nix-flatpak + inputs.catppuccin.nixosModules.catppuccin + inputs.nix-flatpak.nixosModules.nix-flatpak /etc/nixos/hardware-configuration.nix ./hosts/default/configuration.nix diff --git a/hosts/default/configuration.nix b/hosts/default/configuration.nix index 006b0f2..dcd384a 100644 --- a/hosts/default/configuration.nix +++ b/hosts/default/configuration.nix @@ -12,7 +12,7 @@ ../../modules/nixos/network.nix ../../modules/nixos/programs.nix ./packages.nix - ] + ]; programs.steam = { enable = true; @@ -26,33 +26,60 @@ { name = "flathub"; location = "https://dl.flathub.org/repo/flathub.flatpakrepo"; - }; - { - name = "sober"; - location = "https://sober.vinegarhq.org/repo/" } ]; + # Sadly, I don't know how to install flatpaks like this. services.flatpak.packages = [ - { appId = "org.vinegarhq.Sober"; origin = "sober"; } + # { flatpakref = "https://sober.vinegarhq.org/sober.flatpakref"; sha256 = "0"; } ]; programs.hyprland = { - # Install the packages from nixpkgs enable = true; - # Whether to enable XWayland xwayland.enable = true; }; - main-user.userName = "ocbwoy3"; - main-user.realName = "OCbwoy3"; main-user.packages = with pkgs; [ - brave prismlauncher vesktop ]; - catppuccin.enable = true; - catppuccin.flavor = "mocha"; + # CHANGE YOUR NAME IN HOME MANAGER! + + main-user.userName = "ocbwoy3"; + main-user.realName = "OCbwoy3"; + + catppuccin = { + enable = true; + flavor = "mocha"; + accent = "blue"; + }; + + home-manager.users.ocbwoy3 = { + + programs.chromium = { + enable = true; + package = pkgs.brave; + extensions = [ + { id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # uBlock Origin + { id = "enamippconapkdmgfgjchkhakpfinmaj"; } # DeArrow + { id = "clngdbkpkpeebahjckkjfobafhncgmne"; } # Sytlus + { id = "hnmpcagpplmpfojmgmnngilcnanddlhb"; } # Windscribe + { id = "hfjngafpndganmdggnapblamgbfjhnof"; } # RoSeal + { id = "aflpfginfpjhanhkmdpohpggpolfopmb"; } # SkyLink + { id = "agjnjboanicjcpenljmaaigopkgdnihi"; } # PreMiD + + ]; + }; + + programs.git = { + enable = true; + userName = "OCbwoy3"; + userEmail = "ocbwoy3@ocbwoy3.dev"; + }; + + home.stateVersion = "24.11"; + + }; } diff --git a/hosts/default/packages.nix b/hosts/default/packages.nix index 1453596..a7bee36 100644 --- a/hosts/default/packages.nix +++ b/hosts/default/packages.nix @@ -18,11 +18,10 @@ imagemagick alacritty libimobiledevice - catppuccin-sddm vim microsoft-edge direnv - gnome.nautilus + nautilus kdePackages.dolphin kdePackages.kservice qpwgraph @@ -83,6 +82,6 @@ gobject-introspection gimp mpv - ] -} + ]; +} diff --git a/modules/nixos/hardware.nix b/modules/nixos/hardware.nix index f8cc396..e985c18 100644 --- a/modules/nixos/hardware.nix +++ b/modules/nixos/hardware.nix @@ -23,4 +23,6 @@ pulse.enable = true; }; + system.stateVersion = "24.11"; + } diff --git a/modules/nixos/main-user.nix b/modules/nixos/main-user.nix index 18c790b..880064c 100644 --- a/modules/nixos/main-user.nix +++ b/modules/nixos/main-user.nix @@ -29,14 +29,7 @@ description = "${config.main-user.realName}"; shell = pkgs.zsh; extraGroups = [ "networkmanager" "wheel" "input" ]; - packages = ${config.main-user.packages}; - # with pkgs; [ - # brave - # prismlauncher - # gimp - # mpv - # vesktop - # ]; + packages = config.main-user.packages; }; }; diff --git a/modules/nixos/nixpkgs.nix b/modules/nixos/nixpkgs.nix index 022eaa5..cf3ed6d 100644 --- a/modules/nixos/nixpkgs.nix +++ b/modules/nixos/nixpkgs.nix @@ -7,4 +7,6 @@ vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; }; }; + nix.settings.experimental-features = [ "nix-command" "flakes" ]; + } diff --git a/modules/nixos/programs.nix b/modules/nixos/programs.nix index 9d4f929..66d11ce 100644 --- a/modules/nixos/programs.nix +++ b/modules/nixos/programs.nix @@ -2,6 +2,11 @@ { + services.displayManager.sddm = { + enable = true; + package = pkgs.kdePackages.sddm; + }; + programs.zsh.enable = true; programs.direnv = {