summaryrefslogtreecommitdiff
path: root/modules/common.nix
diff options
context:
space:
mode:
authorKyren223 <Kyren223@proton.me>2025-05-16 16:06:11 +0300
committerKyren223 <Kyren223@proton.me>2025-05-16 16:06:11 +0300
commit2c5db1c0de31ac1b16f77d5b2b7412e1d4e4afc3 (patch)
tree7c6bb44aa007a2a89fb96e699a294c035d080a25 /modules/common.nix
parent4423b2f08f38c60b1e93c8a2182e6826768ceaa2 (diff)
Refactored NixOS config to be more modular
Diffstat (limited to 'modules/common.nix')
-rw-r--r--modules/common.nix146
1 files changed, 0 insertions, 146 deletions
diff --git a/modules/common.nix b/modules/common.nix
deleted file mode 100644
index b9fed82..0000000
--- a/modules/common.nix
+++ /dev/null
@@ -1,146 +0,0 @@
-{ pkgs, ... }: {
-
- imports = [
- ./packages.nix
- ];
-
- # User
- users.users.kyren = {
- isNormalUser = true;
- description = "Kyren";
- extraGroups = [ "networkmanager" "wheel" ];
- shell = pkgs.zsh;
- };
-
- programs.zsh.enable = true;
-
- # Localization
- time.timeZone = "Asia/Hebron";
- i18n.defaultLocale = "en_US.UTF-8";
- i18n.supportedLocales = [
- "en_US.UTF-8/UTF-8"
- "C.UTF-8/UTF-8"
- "en_IL/UTF-8"
- ];
-
- # Allow sudo without a password if in "wheel" group.
- security.sudo.wheelNeedsPassword = false;
-
- # Bootloader
- boot.loader.systemd-boot.enable = true;
- boot.loader.efi.canTouchEfiVariables = true;
- boot.supportedFilesystems = [ "ntfs" ];
-
- # Nix Config
- system.stateVersion = "24.05"; # DO NOT CHANGE!
- nixpkgs.config.allowUnfree = true;
- nix.settings.experimental-features = [ "nix-command" "flakes" ];
- nix.settings.auto-optimise-store = true; # reduces nix store size
-
- # Enable dynamic linking of apps that are not in nixpkgs
- # Fixes issues with neovim plugins not working
- programs.nix-ld.enable = true;
- programs.nix-ld.libraries = with pkgs; [
- stdenv.cc.cc
- ];
-
- programs.firefox.enable = true;
-
- # Install Steam
- 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
- localNetworkGameTransfers.openFirewall = true; # Open ports in the firewall for Steam Local Network Game Transfers
- };
-
- # Install Docker (without using root access)
- #virtualisation.docker.enable = true;
- virtualisation.docker.rootless = {
- enable = true;
- setSocketVariable = true;
- };
-
- # Enable sound with pipewire.
- 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;
- };
-
- # ENable CUPS daemon for printing
- services.printing.enable = false;
-
- # Install Flatpak and Flathub
- services.flatpak.enable = true;
-
- # Enable openssh
- services.openssh.enable = true;
-
- # Mouse config service (used with piper)
- services.ratbagd.enable = true;
-
- # Enable KVM/QEMU virtualization
- programs.virt-manager.enable = true;
- users.groups.libvirtd.members = ["kyren"];
- virtualisation.libvirtd.enable = true;
- virtualisation.spiceUSBRedirection.enable = true;
-
- services.syncthing.enable = true;
- services.syncthing = {
- group = "users";
- user = "kyren";
- dataDir = "/home/kyren";
- configDir = "/home/kyren/.config/syncthing";
- };
- systemd.tmpfiles.rules = [
- "d /home/kyren/.config/syncthing 0700 kyren users"
- ];
-
- # VPN for Vault Hunters to avoid connection issues
- # Note, will break discord, also tried proton VPN, still has conn issues
- services.cloudflare-warp.enable = true;
-
- systemd.timers."git-auto-sync" = {
- wantedBy = [ "timers.target" ];
- timerConfig = {
- OnBootSec = "5m";
- OnUnitActiveSec = "5m";
- Unit = "git-auto-sync.service";
- };
- };
-
- systemd.services."git-auto-sync" = {
- script = "$HOME/scripts/git-auto-sync.sh";
- path = [
- pkgs.git
- pkgs.gh
- pkgs.keychain
- pkgs.openssh
- ];
- serviceConfig = { Type = "oneshot"; User = "kyren"; };
- };
-
- systemd.timers."k-sleep-tracker" = {
- wantedBy = [ "timers.target" ];
- timerConfig = {
- OnBootSec = "1m";
- OnUnitActiveSec = "1m";
- Unit = "k-sleep-tracker.service";
- };
- };
-
- systemd.services."k-sleep-tracker" = {
- script = "$HOME/projects/k/bin/k tracker sleep";
- serviceConfig = { Type = "oneshot"; User = "kyren"; };
- };
-}