diff options
author | Jacob Janzen <jacob.a.s.janzen@gmail.com> | 2024-09-28 00:01:09 -0500 |
---|---|---|
committer | Jacob Janzen <jacob.a.s.janzen@gmail.com> | 2024-09-28 00:01:09 -0500 |
commit | b7e84fa6048007cda7e6c8226e28bc2db90f792a (patch) | |
tree | 170bcaff17d7aec0c6aac5807c7a5857dbd71def /nixos/.flake/system/desktop.nix.org | |
parent | 7b2986845fde19db57703dad1105359913486abd (diff) |
add file extensions to files
Diffstat (limited to 'nixos/.flake/system/desktop.nix.org')
-rw-r--r-- | nixos/.flake/system/desktop.nix.org | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/nixos/.flake/system/desktop.nix.org b/nixos/.flake/system/desktop.nix.org new file mode 100644 index 0000000..fbe4206 --- /dev/null +++ b/nixos/.flake/system/desktop.nix.org @@ -0,0 +1,108 @@ +#+title: Desktop System Configuration + +Open the desktop configuration. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + { config, lib, pkgs, ... }: + + { +#+end_src + +Allow unfree packages on this system. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + nixpkgs.config.allowUnfree = true; +#+end_src + +Install necessary packages for the desktop. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + environment.systemPackages = with pkgs; [ + dolphin + firefox + git + greetd.tuigreet + kitty + neovim + wget + ]; +#+end_src + +Install Steam. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + programs.steam = { + enable = true; + remotePlay.openFirewall = true; + dedicatedServer.openFirewall = true; + localNetworkGameTransfers.openFirewall = true; + }; +#+end_src + +Use Neovim as my default editor. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + environment.variables.EDITOR = "nvim"; +#+end_src + +Enable GPG agent globally. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + programs.gnupg.agent = { + enable = true; + enableSSHSupport = true; + }; +#+end_src + +Install =zsh= and set up completions. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + programs.zsh.enable = true; + environment.pathsToLink = [ "/share/zsh" ]; +#+end_src + +Use the =us= keyboard layout. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + services.xserver.xkb.layout = "us"; +#+end_src + +Install Hyprland as a window manager. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + services.xserver.enable = true; + xdg.portal.enable = true; + programs.hyprland.enable = true; + environment.sessionVariables.NIXOS_OZONE_WL = "1"; +#+end_src + +Enable =pam= support for Hyprlock. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + security.pam.services.hyprlock = {}; +#+end_src + +Enable =greetd= with =tuigreet= as my login manager. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + services.greetd = { + enable = true; + settings = { + default_session = { + command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --remember --remember-session --sessions ${pkgs.hyprland}/share/wayland-sessions --cmd \"dbus-run-session Hyprland\""; + user = "greeter"; + }; + }; + }; + systemd.services.greetd.serviceConfig = { + Type = "idle"; + StandardInput = "tty"; + StanardOutput = "tty"; + StandardError = "journal"; + TTYReset = true; + TTYVHangup = true; + TTYVTDisallocate = true; + }; +#+end_src + +Enable PipeWire. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + services.pipewire = { + enable = true; + pulse.enable = true; + }; +#+end_src + +Close the desktop configuration. +#+begin_src nix :tangle ~/.flake/system/desktop.nix :mkdirp yes + } +#+end_src |