me like nix
0

Configure Feed

Select the types of activity you want to include in your feed.

init commit

author
Sean Aye
date (Jul 7, 2025, 11:17 AM -0400) commit 347983c9
+314
+186
configuration.nix
··· 1 + { config, pkgs, ... }: 2 + 3 + { 4 + imports = 5 + [ # Include the results of the hardware scan. 6 + ./hardware-configuration.nix 7 + # home-manager is now imported via the flake's modules list 8 + ]; 9 + 10 + nix.settings.experimental-features = [ "nix-command" "flakes" ]; 11 + 12 + # Bootloader. 13 + boot.loader.systemd-boot.enable = true; 14 + boot.loader.efi.canTouchEfiVariables = true; 15 + 16 + # Use latest kernel. 17 + boot.kernelPackages = pkgs.linuxPackages_latest; 18 + 19 + networking.hostName = "nixos"; # Define your hostname. 20 + # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. 21 + 22 + # Configure network proxy if necessary 23 + # networking.proxy.default = "http://user:password@proxy:port/"; 24 + # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; 25 + 26 + # Enable networking 27 + networking.networkmanager.enable = true; 28 + 29 + # Set your time zone. 30 + time.timeZone = "America/New_York"; 31 + 32 + # Select internationalisation properties. 33 + i18n.defaultLocale = "en_US.UTF-8"; 34 + 35 + i18n.extraLocaleSettings = { 36 + LC_ADDRESS = "en_US.UTF-8"; 37 + LC_IDENTIFICATION = "en_US.UTF-8"; 38 + LC_MEASUREMENT = "en_US.UTF-8"; 39 + LC_MONETARY = "en_US.UTF-8"; 40 + LC_NAME = "en_US.UTF-8"; 41 + LC_NUMERIC = "en_US.UTF-8"; 42 + LC_PAPER = "en_US.UTF-8"; 43 + LC_TELEPHONE = "en_US.UTF-8"; 44 + LC_TIME = "en_US.UTF-8"; 45 + }; 46 + 47 + # Enable the X11 windowing system. 48 + services.xserver.enable = true; 49 + 50 + # Enable the GNOME Desktop Environment. 51 + services.xserver.displayManager.gdm.enable = true; 52 + services.xserver.desktopManager.gnome.enable = true; 53 + 54 + # Configure keymap in X11 55 + services.xserver.xkb = { 56 + layout = "us"; 57 + variant = ""; 58 + }; 59 + 60 + # Enable CUPS to print documents. 61 + services.printing.enable = true; 62 + 63 + # Enable sound with pipewire. 64 + services.pulseaudio.enable = false; 65 + security.rtkit.enable = true; 66 + services.pipewire = { 67 + enable = true; 68 + alsa.enable = true; 69 + alsa.support32Bit = true; 70 + pulse.enable = true; 71 + # If you want to use JACK applications, uncomment this 72 + #jack.enable = true; 73 + 74 + # use the example session manager (no others are packaged yet so this is enabled by default, 75 + # no need to redefine it in your config for now) 76 + #media-session.enable = true; 77 + }; 78 + 79 + # Enable touchpad support (enabled default in most desktopManager). 80 + # services.xserver.libinput.enable = true; 81 + 82 + # Define a user account. Don't forget to set a password with ‘passwd’. 83 + users.users.sean = { 84 + isNormalUser = true; 85 + description = "Sean Aye"; 86 + extraGroups = [ "networkmanager" "wheel" ]; 87 + shell = pkgs.fish; 88 + }; 89 + home-manager.users.sean = { pkgs, ...}: { 90 + home.packages = [ 91 + pkgs.atool 92 + pkgs.httpie 93 + pkgs.helix 94 + pkgs.jujutsu 95 + ]; 96 + programs.jujutsu = { 97 + enable = true; 98 + settings = { 99 + user = { 100 + email = "hello@seanaye.ca"; 101 + name = "Sean Aye"; 102 + }; 103 + }; 104 + }; 105 + home.sessionVariables = { 106 + EDITOR = "hx"; 107 + VISUAL = "hx"; 108 + SUDO_EDITOR = "hx"; 109 + }; 110 + programs.home-manager.enable = true; 111 + programs.helix.enable = true; 112 + programs.fish = { 113 + enable = true; 114 + interactiveShellInit = '' 115 + set fish_greeting 116 + ''; 117 + }; 118 + programs.starship = { 119 + enable = true; 120 + enableFishIntegration = true; 121 + }; 122 + 123 + 124 + home.stateVersion = "25.05"; 125 + }; 126 + 127 + # Install firefox. 128 + programs.firefox.enable = true; 129 + programs.fish.enable = true; 130 + 131 + programs._1password.enable = true; 132 + programs._1password-gui = { 133 + enable = true; 134 + polkitPolicyOwners = ["sean"]; 135 + }; 136 + 137 + programs.steam = { 138 + enable = true; 139 + }; 140 + 141 + 142 + # Allow unfree packages 143 + nixpkgs.config.allowUnfree = true; 144 + 145 + # List packages installed in system profile. To search, run: 146 + # $ nix search wget 147 + environment.systemPackages = with pkgs; [ 148 + git 149 + helix 150 + wl-clipboard 151 + ]; 152 + environment.variables = { 153 + EDITOR = "hx"; 154 + VISUAL = "hx"; 155 + SUDO_EDITOR = "hx"; 156 + }; 157 + 158 + 159 + # Some programs need SUID wrappers, can be configured further or are 160 + # started in user sessions. 161 + # programs.mtr.enable = true; 162 + # programs.gnupg.agent = { 163 + # enable = true; 164 + # enableSSHSupport = true; 165 + # }; 166 + 167 + # List services that you want to enable: 168 + 169 + # Enable the OpenSSH daemon. 170 + # services.openssh.enable = true; 171 + 172 + # Open ports in the firewall. 173 + # networking.firewall.allowedTCPPorts = [ ... ]; 174 + # networking.firewall.allowedUDPPorts = [ ... ]; 175 + # Or disable the firewall altogether. 176 + # networking.firewall.enable = false; 177 + 178 + # This value determines the NixOS release from which the default 179 + # settings for stateful data, like file locations and database versions 180 + # on your system were taken. It‘s perfectly fine and recommended to leave 181 + # this value at the release version of the first install of this system. 182 + # Before changing this value read the documentation for this option 183 + # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). 184 + system.stateVersion = "25.05"; # Did you read the comment? 185 + 186 + }
+49
flake.lock
··· 1 + { 2 + "nodes": { 3 + "home-manager": { 4 + "inputs": { 5 + "nixpkgs": [ 6 + "nixpkgs" 7 + ] 8 + }, 9 + "locked": { 10 + "lastModified": 1748665073, 11 + "narHash": "sha256-RMhjnPKWtCoIIHiuR9QKD7xfsKb3agxzMfJY8V9MOew=", 12 + "owner": "nix-community", 13 + "repo": "home-manager", 14 + "rev": "282e1e029cb6ab4811114fc85110613d72771dea", 15 + "type": "github" 16 + }, 17 + "original": { 18 + "owner": "nix-community", 19 + "ref": "release-25.05", 20 + "repo": "home-manager", 21 + "type": "github" 22 + } 23 + }, 24 + "nixpkgs": { 25 + "locked": { 26 + "lastModified": 1748437600, 27 + "narHash": "sha256-hYKMs3ilp09anGO7xzfGs3JqEgUqFMnZ8GMAqI6/k04=", 28 + "owner": "NixOS", 29 + "repo": "nixpkgs", 30 + "rev": "7282cb574e0607e65224d33be8241eae7cfe0979", 31 + "type": "github" 32 + }, 33 + "original": { 34 + "owner": "NixOS", 35 + "ref": "nixos-25.05", 36 + "repo": "nixpkgs", 37 + "type": "github" 38 + } 39 + }, 40 + "root": { 41 + "inputs": { 42 + "home-manager": "home-manager", 43 + "nixpkgs": "nixpkgs" 44 + } 45 + } 46 + }, 47 + "root": "root", 48 + "version": 7 49 + }
+32
flake.nix
··· 1 + { 2 + description = "My NixOS Flake Configuration"; 3 + 4 + inputs = { 5 + # Nixpkgs (stable or unstable) 6 + nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05"; # Or "nixos-24.05" for stable 7 + 8 + # Home Manager 9 + home-manager = { 10 + url = "github:nix-community/home-manager/release-25.05"; 11 + inputs.nixpkgs.follows = "nixpkgs"; # Ensures Home Manager uses the same nixpkgs 12 + }; 13 + }; 14 + 15 + outputs = { self, nixpkgs, home-manager, ... }@inputs: { 16 + nixosConfigurations = { 17 + # Replace "nixos" with your actual desired hostname if it's different 18 + # This "nixos" must match the `networking.hostName` in your configuration.nix 19 + nixos = nixpkgs.lib.nixosSystem { 20 + system = "x86_64-linux"; # Or your system's architecture 21 + specialArgs = { inherit inputs; }; # Pass inputs to your modules 22 + modules = [ 23 + # Your main configuration file 24 + ./configuration.nix 25 + 26 + # Home Manager module 27 + home-manager.nixosModules.home-manager 28 + ]; 29 + }; 30 + }; 31 + }; 32 + }
+47
hardware-configuration.nix
··· 1 + # Do not modify this file! It was generated by ‘nixos-generate-config’ 2 + # and may be overwritten by future invocations. Please make changes 3 + # to /etc/nixos/configuration.nix instead. 4 + { config, lib, pkgs, modulesPath, ... }: 5 + 6 + { 7 + imports = 8 + [ (modulesPath + "/installer/scan/not-detected.nix") 9 + ]; 10 + 11 + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ]; 12 + boot.initrd.kernelModules = [ ]; 13 + boot.kernelModules = [ "kvm-intel" ]; 14 + boot.extraModulePackages = [ ]; 15 + 16 + fileSystems."/" = 17 + { device = "/dev/disk/by-uuid/e51cb271-90b6-49ae-89aa-491b17e59d97"; 18 + fsType = "ext4"; 19 + }; 20 + 21 + fileSystems."/boot" = 22 + { device = "/dev/disk/by-uuid/0089-74FA"; 23 + fsType = "vfat"; 24 + options = [ "fmask=0077" "dmask=0077" ]; 25 + }; 26 + 27 + swapDevices = [ ]; 28 + 29 + hardware.system76.kernel-modules.enable = true; 30 + hardware.system76.enableAll = true; 31 + hardware.graphics = { 32 + enable = true; 33 + enable32Bit = true; # crucial for many steam games 34 + }; 35 + 36 + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking 37 + # (the default) this is the recommended approach. When using systemd-networkd it's 38 + # still possible to use this option, but it's recommended to use it in conjunction 39 + # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. 40 + networking.useDHCP = lib.mkDefault true; 41 + # networking.interfaces.enp0s20f0u4u3.useDHCP = lib.mkDefault true; 42 + # networking.interfaces.enp3s0.useDHCP = lib.mkDefault true; 43 + # networking.interfaces.wlo1.useDHCP = lib.mkDefault true; 44 + 45 + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; 46 + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; 47 + }