diff options
| author | Natasha Moongrave <natasha@256phi.eu> | 2026-03-24 13:57:44 +0100 |
|---|---|---|
| committer | Natasha Moongrave <natasha@256phi.eu> | 2026-03-24 13:57:44 +0100 |
| commit | 640794a741177bb0bb1a0d161eb743f2bfed73ca (patch) | |
| tree | 4b825dc642cb6eb9a060e54bf8d69288fbee4904 | |
| parent | c4af2e03eb09a9b6566da1fd0c8be3e341e97463 (diff) | |
Removed everything
47 files changed, 0 insertions, 2817 deletions
diff --git a/README.md b/README.md deleted file mode 100644 index 8862029..0000000 --- a/README.md +++ /dev/null @@ -1,581 +0,0 @@ -# NixOS Configuration Guide - -This NixOS configuration repository uses a modular, hierarchical import structure to manage system and home-manager configurations across multiple environments and desktop setups. - -## Table of Contents - -1. [Architecture Overview](#architecture-overview) -2. [Directory Structure](#directory-structure) -3. [How Import Wranglers Work](#how-import-wranglers-work) -4. [Switching Environments](#switching-environments) -5. [Configuration Layers](#configuration-layers) -6. [Modifying Configurations](#modifying-configurations) - ---- - -## Architecture Overview - -The configuration follows a **layered orchestrator pattern**: - -``` -flake.nix (entry point) - ↓ -configuration.nix (system orchestrator) - ├─ hardware-configuration.nix (hardware specifics) - ├─ modules/nixos/base/ (system-wide config) - │ └─ default.nix (orchestrator) - │ ├─ nix.nix - │ ├─ boot.nix - │ ├─ networking.nix - │ ├─ users.nix - │ ├─ services.nix - │ ├─ programs.nix - │ ├─ graphics.nix - │ └─ packages.nix - └─ modules/nixos/{i3wm,hyprland}/ (environment-specific) - -mun.nix (home-manager orchestrator) - ├─ modules/home/i3wm/default.nix (orchestrator) - │ ├─ dunst.nix - │ ├─ i3.nix - │ ├─ kitty.nix - │ ├─ neovim.nix - │ ├─ nnn.nix - │ ├─ picom.nix - │ ├─ polybar.nix - │ ├─ rofi.nix - │ ├─ scripts.nix - │ └─ xdg.nix - └─ modules/home/hyprland/default.nix (orchestrator) - └─ chernobyl/default.nix (orchestrator) - ├─ dunst.nix - ├─ fastfetch.nix - ├─ hyprland.nix - └─ kitty.nix -``` - ---- - -## Directory Structure - -``` -. -├── flake.nix # Flake inputs/outputs definition -├── flake.lock # Lock file for reproducibility -├── configuration.nix # Main system config (thin orchestrator) -├── hardware-configuration.nix # Hardware-specific config (generated) -├── mun.nix # Home-manager user config (orchestrator) -├── modules/ -│ ├── nixos/ -│ │ ├── base/ # Base system config (split modules) -│ │ │ ├── default.nix # Orchestrator: imports all base modules -│ │ │ ├── nix.nix # Nix settings, flakes, substituters -│ │ │ ├── boot.nix # Boot loader, kernel, Plymouth -│ │ │ ├── networking.nix # Hostname, NetworkManager, Bluetooth -│ │ │ ├── users.nix # User definitions -│ │ │ ├── services.nix # System services (SSH, Pipewire, Printing, Ly) -│ │ │ ├── programs.nix # System programs (Firefox, Zsh, Steam) -│ │ │ ├── graphics.nix # GPU drivers, hardware acceleration -│ │ │ └── packages.nix # System-wide packages -│ │ ├── i3wm/ -│ │ │ └── default.nix # X11, i3 window manager config -│ │ └── hyprland/ -│ │ └── default.nix # Wayland, Hyprland config -│ └── home/ -│ ├── i3wm/ -│ │ ├── default.nix # Orchestrator: imports all i3wm home modules -│ │ ├── dunst.nix # Notification daemon (i3 config) -│ │ ├── i3.nix # i3 window manager config (keybinds, layout) -│ │ ├── kitty.nix # Terminal emulator (i3 config) -│ │ ├── neovim.nix # Text editor with LazyVim setup -│ │ ├── nnn.nix # File browser -│ │ ├── picom.nix # X11 compositor -│ │ ├── polybar.nix # Status bar (i3 specific) -│ │ ├── rofi.nix # Application launcher -│ │ ├── scripts.nix # Custom shell scripts -│ │ └── xdg.nix # XDG MIME type defaults -│ └── hyprland/ -│ ├── default.nix # Orchestrator: imports Hyprland rices -│ └── chernobyl/ # "Chernobyl" Hyprland rice -│ ├── default.nix # Orchestrator for chernobyl rice -│ ├── dunst.nix # Notification daemon (Hyprland config) -│ ├── fastfetch.nix # System info display -│ ├── hyprland.nix # Hyprland window manager config -│ └── kitty.nix # Terminal emulator (Hyprland config) -``` - ---- - -## How Import Wranglers Work - -An "import wrangler" is a `default.nix` file that acts as a **local aggregator**, collecting all related configurations into one place for easy management. This pattern appears at multiple levels: - -### Level 1: Base System Configuration - -**File:** `modules/nixos/base/default.nix` - -```nix -{ ... }: - -{ - imports = [ - ./nix.nix - ./boot.nix - ./networking.nix - ./users.nix - ./services.nix - ./programs.nix - ./graphics.nix - ./packages.nix - ]; - - system.stateVersion = "25.11"; -} -``` - -**Purpose:** Groups all foundational system configurations (boot, networking, users, services, packages) into a single import point. When you need to add a base system feature, you either: -- Add it to an existing module file -- Create a new module (e.g., `firewall.nix`) and add it to this import list - -**Benefits:** -- Single import in `configuration.nix`: `./modules/nixos/base` -- All base modules are in one place; easy to see what's included -- New base modules are simply added to the imports list - -### Level 2: Environment-Specific System Configuration - -**Files:** `modules/nixos/i3wm/default.nix`, `modules/nixos/hyprland/default.nix` - -These are currently thin wrappers but follow the same pattern. To extend them (e.g., add environment-specific services or packages), you would create sub-modules: - -```nix -# Example expansion of modules/nixos/i3wm/default.nix -{ ... }: - -{ - imports = [ - ./xserver.nix # X11-specific settings - ./i3.nix # i3 window manager - ./keyboard.nix # Czech keyboard layout - ]; -} -``` - -### Level 3: Home-Manager Orchestration - -**File:** `modules/home/i3wm/default.nix` - -```nix -{ ... }: - -{ - imports = [ - ./dunst.nix - ./i3.nix - ./kitty.nix - ./neovim.nix - ./nnn.nix - ./picom.nix - ./polybar.nix - ./rofi.nix - ./scripts.nix - ./xdg.nix - ]; -} -``` - -**Purpose:** All i3wm-specific home-manager modules (dunst, i3 keybinds, polybar, etc.) are collected here. This is imported once in `mun.nix`, rather than importing 10 separate files. - -**Benefits:** -- One line in `mun.nix`: `./modules/home/i3wm/default.nix` -- All i3 home configs are clearly grouped -- Easy to switch entire environments with a single comment/uncomment - -### Level 4: Multi-Rice Support (Hyprland) - -**File:** `modules/home/hyprland/default.nix` - -```nix -{ ... }: - -{ - imports = [ - #./default.nix # main hyprland rice (future) - ./chernobyl/default.nix # chernobyl hyprland rice - ]; -} -``` - -**File:** `modules/home/hyprland/chernobyl/default.nix` - -```nix -{ ... }: - -{ - imports = [ - ./dunst.nix - ./fastfetch.nix - ./hyprland.nix - ./kitty.nix - ]; -} -``` - -**Purpose:** Supports multiple visual rices/themes for the same window manager. The parent orchestrator selects which rice to use. - -**Benefits:** -- Scale to many rices easily (add `./cyberpunk/default.nix`, `./nord/default.nix`, etc.) -- Each rice has its own folder with consistent structure -- Switch rices by commenting/uncommenting in the parent orchestrator - ---- - -## Switching Environments - -### Switch from i3wm to Hyprland - -Edit **two files**: - -#### 1. System Configuration (`configuration.nix`) - -```nix -{ config, lib, pkgs, ... }: - -{ - imports = [ - ./hardware-configuration.nix - ./modules/nixos/base - - # === Environment Choice === - # Uncomment one of the following to select your environment: - #./modules/nixos/i3wm # ← comment this - ./modules/nixos/hyprland # ← uncomment this - ]; -} -``` - -#### 2. Home-Manager Configuration (`mun.nix`) - -```nix -{ config, lib, pkgs, ... }: - -{ - imports = [ - #./modules/home/i3wm/default.nix # ← comment this - ./modules/home/hyprland/default.nix # ← uncomment this - ]; - - # ... rest of mun.nix -} -``` - -#### 3. Rebuild - -```bash -sudo nixos-rebuild switch -``` - ---- - -## Configuration Layers - -The configuration is organized in **four distinct layers**: - -### 1. **System-Wide Base (`modules/nixos/base/`)** - -Applied to **all environments**. - -**Includes:** -- Nix settings (flakes, substituters) -- Boot configuration (GRUB, EFI, kernel) -- Networking (hostname, NetworkManager, Bluetooth) -- Users (mun user definition) -- System services (SSH, Pipewire, Printing, Ly display manager) -- System programs (Firefox, Zsh, Steam) -- Graphics drivers (Intel VAAPI, hardware acceleration) -- System packages (Neovim, Git, TeX Live, RetroArch, etc.) - -**Modify by:** Editing existing files in `base/` or creating new ones and adding them to `base/default.nix`. - -### 2. **Environment-Specific System (`modules/nixos/{i3wm,hyprland}/`)** - -Applied to **one environment at a time** (X11 vs Wayland). - -**i3wm includes:** -- X11 enable -- i3 window manager -- Keyboard layout (Czech) -- Display manager session - -**Hyprland includes:** -- X11 disable -- Hyprland enable -- XDG portal for Wayland -- Qt6 Wayland support -- Keyboard layout (Czech) - -**Modify by:** Editing the respective `default.nix` or creating sub-modules. - -### 3. **Home-Manager User-Wide Config (`mun.nix`)** - -Configuration applied to user `mun` only. - -**Includes:** -- SSH setup -- Shell configuration (Zsh with oh-my-zsh) -- Environment variables -- Gnome-keyring service -- User packages (Rust tools, Discord, utilities) -- Environment-specific home-manager orchestrator import - -**Modify by:** Editing `mun.nix` directly or adding packages to the `packages` list. - -### 4. **Environment-Specific Home-Manager (`modules/home/{i3wm,hyprland}/`)** - -Applied to **one environment at a time**. - -**i3wm includes:** -- i3 keybindings and layout -- Polybar status bar -- Dunst notifications -- Picom compositor -- Rofi launcher -- NeoVim with LazyVim -- Kitty terminal -- Custom scripts -- XDG MIME type defaults - -**Hyprland (chernobyl rice) includes:** -- Hyprland config -- Dunst notifications -- Kitty terminal -- Fastfetch system info - -**Modify by:** Editing the respective module files or adding new ones to the orchestrator `default.nix`. - ---- - -## Modifying Configurations - -### Add a New System Package - -**File:** `modules/nixos/base/packages.nix` - -```nix -environment.systemPackages = with pkgs; [ - # ... existing packages ... - my-new-package # ← add here -]; -``` - -### Add a New Base System Service - -**File:** `modules/nixos/base/services.nix` or create `modules/nixos/base/firewall.nix` - -If adding firewall rules, create a new file: - -```nix -# modules/nixos/base/firewall.nix -{ config, lib, pkgs, ... }: - -{ - networking.firewall.allowedTCPPorts = [ 80 443 ]; -} -``` - -Then add to orchestrator: - -```nix -# modules/nixos/base/default.nix -{ ... }: - -{ - imports = [ - ./nix.nix - ./boot.nix - ./networking.nix - ./users.nix - ./services.nix - ./programs.nix - ./graphics.nix - ./packages.nix - ./firewall.nix # ← add here - ]; - - system.stateVersion = "25.11"; -} -``` - -### Add an i3wm Home-Manager Module - -**File:** `modules/home/i3wm/my-new-config.nix` - -```nix -{ config, pkgs, ... }: - -{ - # Your home-manager config here -} -``` - -Then add to orchestrator: - -```nix -# modules/home/i3wm/default.nix -{ ... }: - -{ - imports = [ - ./dunst.nix - ./i3.nix - # ... other modules ... - ./my-new-config.nix # ← add here - ]; -} -``` - -### Add a New Hyprland Rice - -Create a new directory: - -```bash -mkdir modules/home/hyprland/cyberpunk -``` - -Add files: - -```nix -# modules/home/hyprland/cyberpunk/default.nix -{ ... }: - -{ - imports = [ - ./dunst.nix - ./hyprland.nix - ./kitty.nix - ]; -} -``` - -Update parent orchestrator: - -```nix -# modules/home/hyprland/default.nix -{ ... }: - -{ - imports = [ - #./default.nix - ./chernobyl/default.nix - #./cyberpunk/default.nix # ← uncomment to use - ]; -} -``` - ---- - -## Rebuilding Your System - -After making changes: - -```bash -# Switch to new system configuration -sudo nixos-rebuild switch - -# Or, test first (doesn't activate) -sudo nixos-rebuild test - -# Show what changed -sudo nixos-rebuild dry-run -``` - -To edit and rebuild in one step: - -```bash -# If you have the 'edit' alias from mun.nix -edit -sudo nixos-rebuild switch -``` - ---- - -## Key Principles - -1. **One Import Per Layer:** Each `default.nix` orchestrator imports related modules, reducing clutter in parent files. - -2. **Separation of Concerns:** System config (nixos/) is separate from user config (home/); base is separate from environment-specific. - -3. **Easy Environment Switching:** Change environments by commenting one line in `configuration.nix` and `mun.nix`. - -4. **Scalability:** Adding new features (base services, home modules, rices) follows a consistent pattern of creating a file + adding it to the orchestrator. - -5. **Clarity:** Each file has a clear purpose; finding where to modify something is straightforward. - ---- - -## Example Workflow - -### Goal: Add Firefox configuration to i3wm - -1. Create `modules/home/i3wm/firefox.nix`: - ```nix - { config, pkgs, ... }: - - { - programs.firefox = { - enable = true; - profiles.mun = { - settings = { - "browser.startup.homepage" = "about:home"; - }; - }; - }; - } - ``` - -2. Add to orchestrator in `modules/home/i3wm/default.nix`: - ```nix - imports = [ - ./dunst.nix - ./firefox.nix # ← add here - ./i3.nix - # ... rest - ]; - ``` - -3. Rebuild: - ```bash - sudo nixos-rebuild switch - ``` - -Done! Firefox is now configured for the i3wm environment. - ---- - -## Troubleshooting - -### "Module not found" error - -Check that all imports in `default.nix` files reference correct file paths. Use absolute paths from the module directory: -- `./nix.nix` ✓ (correct) -- `../base/nix.nix` ✓ (correct, relative to parent) -- `/absolute/path/nix.nix` ✗ (avoid; use relative) - -### Environment not loading after switch - -Ensure **both** `configuration.nix` and `mun.nix` have the same environment enabled (not one i3wm and one hyprland). - -### Syntax errors in .nix files - -Use `nix flake check` to validate: -```bash -nix flake check -``` - ---- - -## References - -- [NixOS Manual - Configuration](https://nixos.org/manual/nixos/stable/) -- [Home Manager Manual](https://nix-community.github.io/home-manager/) -- [Nix Language](https://nixos.wiki/wiki/Nix_language) diff --git a/enviroments/i3wm.nix b/enviroments/i3wm.nix deleted file mode 100644 index 0421853..0000000 --- a/enviroments/i3wm.nix +++ /dev/null @@ -1,71 +0,0 @@ -{ config, lib, pkgs, ... }: - - -let - get_spotify_status = pkgs.writeShellScript "get_spotify_status.sh" '' - #!/bin/bash - PARENT_BAR="example" - PARENT_BAR_PID=$(pgrep -a "polybar" | grep "$PARENT_BAR" | cut -d" " -f1) - PLAYER="playerctld" - FORMAT="{{ title }} - {{ artist }}" - - update_hooks() { - while IFS= read -r id; do - polybar-msg -p "$id" hook spotify-play-pause $2 1>/dev/null 2>&1 - done < <(echo "$1") - } - - PLAYERCTL_STATUS=$(playerctl --player=$PLAYER status 2>/dev/null) - EXIT_CODE=$? - - if [ $EXIT_CODE -eq 0 ]; then - STATUS=$PLAYERCTL_STATUS - else - STATUS="No player is running" - fi - - if [ "$1" == "--status" ]; then - echo "$STATUS" - else - if [ "$STATUS" = "Stopped" ]; then - echo "Music Stopped" - elif [ "$STATUS" = "Paused" ]; then - update_hooks "$PARENT_BAR_PID" 2 - playerctl --player=$PLAYER metadata --format "$FORMAT" - elif [ "$STATUS" = "No player is running" ]; then - echo "Music Off" - else - update_hooks "$PARENT_BAR_PID" 1 - playerctl --player=$PLAYER metadata --format "$FORMAT" - fi - fi - ''; - - hidePolybarInFullscreen = pkgs.writeShellScript "hidePolybarInFullscreen.sh" '' - #!/usr/bin/env bash - sleep 1 - i3-msg -t subscribe -m '[ "window" ]' | while read -r event; do - if echo "$event" | grep -q '"fullscreen_mode":[[:space:]]*1'; then - polybar-msg cmd hide - elif echo "$event" | grep -q '"fullscreen_mode":[[:space:]]*0'; then - polybar-msg cmd show - fi - done - ''; -in -{ - services = { - xserver = { - enable = true; - windowManager.i3 = { - enable = true; - }; - }; - displayManager.defaultSession = "none+i3"; - }; - - home = { - - }; - -}
\ No newline at end of file diff --git a/flake.lock b/flake.lock deleted file mode 100755 index 1b3609a..0000000 --- a/flake.lock +++ /dev/null @@ -1,49 +0,0 @@ -{ - "nodes": { - "home-manager": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1773963144, - "narHash": "sha256-WzBOBfSay3GYilUfKaUa1Mbf8/jtuAiJIedx7fWuIX4=", - "owner": "nix-community", - "repo": "home-manager", - "rev": "a91b3ea73a765614d90360580b689c48102d1d33", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "release-25.11", - "repo": "home-manager", - "type": "github" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1773964973, - "narHash": "sha256-NV/J+tTER0P5iJhUDL/8HO5MDjDceLQPRUYgdmy5wXw=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "812b3986fd1568f7a858f97fcf425ad996ba7d25", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-25.11", - "repo": "nixpkgs", - "type": "github" - } - }, - "root": { - "inputs": { - "home-manager": "home-manager", - "nixpkgs": "nixpkgs" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/flake.nix b/flake.nix deleted file mode 100644 index 6388760..0000000 --- a/flake.nix +++ /dev/null @@ -1,46 +0,0 @@ -{ - description = "A very basic flake"; - - inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; - home-manager = { - url = "github:nix-community/home-manager/release-25.11"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - }; - - outputs = { - self, - nixpkgs, - home-manager, - ... - } @ inputs: let - hmModule = { - home-manager.useGlobalPkgs = true; - home-manager.useUserPackages = true; - home-manager.users.mun = import ./mun.nix; - }; - in { - nixosConfigurations = { - kronos = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - specialArgs = {inherit inputs;}; - modules = [ - ./hosts/kronos/configuration.nix - home-manager.nixosModules.home-manager - hmModule # ← use shared module - ]; - }; - - herra = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - specialArgs = {inherit inputs;}; - modules = [ - ./hosts/herra/configuration.nix - home-manager.nixosModules.home-manager - hmModule - ]; - }; - }; - }; -} diff --git a/flake.nix.bak b/flake.nix.bak deleted file mode 100755 index ade56b2..0000000 --- a/flake.nix.bak +++ /dev/null @@ -1,46 +0,0 @@ -{ - description = "A very basic flake"; - - inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; - home-manager = { - url = "github:nix-community/home-manager/release-25.11"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - }; - - outputs = { self, nixpkgs, home-manager, ... }@inputs: { - let - hmModule = { - home-manager.useGlobalPkgs = true; - home-manager.useUserPackages = true; - home-manager.users.mun = import ./mun.nix; - }; - in { - nixosConfigurations = { - kronos = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - specialArgs = { inherit inputs; }; - modules = [ - ./configuration.nix - home-manager.nixosModules.home-manager - { - home-manager.useGlobalPkgs = true; - home-manager.useUserPackages = true; - - home-manager.users.mun = import ./mun.nix; - } - ]; - }; - herra = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - specialArgs = { inherit inputs; }; - modules = [ - ./hosts/herra/configuration.nix - home-manager.nixosModules.home-manager - hmModule - ]; - }; - }; - }; -} diff --git a/hosts/herra/configuration.nix b/hosts/herra/configuration.nix deleted file mode 100644 index 35542a8..0000000 --- a/hosts/herra/configuration.nix +++ /dev/null @@ -1,30 +0,0 @@ -# hosts/desktop/configuration.nix -{ - config, - lib, - pkgs, - ... -}: { - imports = [ - ./hardware-configuration.nix - ../../modules/nixos/base/default.nix - - # === Environment Choice === - ../../modules/nixos/des/i3wm.nix - #../../modules/nixos/des/gnome.nix - ]; - - # Override boot for GRUB dual boot with Windows - boot.loader = { - efi.canTouchEfiVariables = true; - grub = { - enable = true; - device = "nodev"; - efiSupport = true; - useOSProber = true; # auto-detects Windows 11 - }; - }; - - # Desktop-specific hostname - networking.hostName = "herra"; # or whatever you want -} diff --git a/hosts/herra/hardware-configuration.nix b/hosts/herra/hardware-configuration.nix deleted file mode 100755 index 0dc8341..0000000 --- a/hosts/herra/hardware-configuration.nix +++ /dev/null @@ -1,31 +0,0 @@ -# Do not modify this file! It was generated by 'nixos-generate-config' -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - -{ - imports = [ - (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-intel" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/f62daee8-ba51-478c-97db-c8b96c12043e"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/22BE-C329"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - swapDevices = [ ]; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/kronos/configuration.nix b/hosts/kronos/configuration.nix deleted file mode 100755 index 79b637b..0000000 --- a/hosts/kronos/configuration.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: { - imports = [ - ./hardware-configuration.nix - ../../modules/nixos/base/default.nix - - # === Environment Choice === - # Uncomment one of the following to select your environment: - ../../modules/nixos/des/i3wm.nix - #../../modules/nixos/des/gnome.nix - ]; -} diff --git a/hosts/kronos/hardware-configuration.nix b/hosts/kronos/hardware-configuration.nix deleted file mode 100755 index 0dc8341..0000000 --- a/hosts/kronos/hardware-configuration.nix +++ /dev/null @@ -1,31 +0,0 @@ -# Do not modify this file! It was generated by 'nixos-generate-config' -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - -{ - imports = [ - (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-intel" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/f62daee8-ba51-478c-97db-c8b96c12043e"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/22BE-C329"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - swapDevices = [ ]; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/modules/home/default.nix b/modules/home/default.nix deleted file mode 100644 index 2e6fff4..0000000 --- a/modules/home/default.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ ... }: - -{ - # Home environment orchestrator - imports = [ - #./i3wm/original/default.nix - ./i3wm/nord-blue/default.nix - ]; -} diff --git a/modules/home/i3wm/nord-blue/alacritty.nix b/modules/home/i3wm/nord-blue/alacritty.nix deleted file mode 100644 index 0c56ec6..0000000 --- a/modules/home/i3wm/nord-blue/alacritty.nix +++ /dev/null @@ -1,28 +0,0 @@ -{ lib, pkgs, ... }: - -{ - programs.alacritty = { - enable = true; - settings = { - font = { - normal = { - family = "JetBrainsMono Nerd Font"; - style = "Regular"; - }; - bold = { - family = "JetBrainsMono Nerd Font"; - style = "Bold"; - }; - italic = { - family = "JetBrainsMono Nerd Font"; - style = "Italic"; - }; - size = 7.0; - }; - }; - }; - - home.packages = with pkgs; [ - nerd-fonts.jetbrains-mono - ]; -} diff --git a/modules/home/i3wm/nord-blue/default.nix b/modules/home/i3wm/nord-blue/default.nix deleted file mode 100644 index fca7c9c..0000000 --- a/modules/home/i3wm/nord-blue/default.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ ... }: - -{ - imports = [ - ./alacritty.nix - ./i3.nix - ./nvim.nix - ./helix.nix - ./picom.nix - ]; -}
\ No newline at end of file diff --git a/modules/home/i3wm/nord-blue/dmenu.nix b/modules/home/i3wm/nord-blue/dmenu.nix deleted file mode 100644 index 2e6f6d8..0000000 --- a/modules/home/i3wm/nord-blue/dmenu.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ pkgs, vars }: - -pkgs.writeShellScriptBin "app-launcher" '' - #!/usr/bin/env sh - BG='${vars.colors.background}' - FG='${vars.colors.foreground}' - ACCENT='${vars.colors.accent}' - TEXT='${vars.colors.text}' - - dmenu_run -fn 'JetBrains Mono-12' -nb "$BG" -nf "$FG" -sb "$ACCENT" -sf "$TEXT" -'' diff --git a/modules/home/i3wm/nord-blue/fastfetch.nix b/modules/home/i3wm/nord-blue/fastfetch.nix deleted file mode 100644 index a9c6bd3..0000000 --- a/modules/home/i3wm/nord-blue/fastfetch.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ - pkgs, - lib, - ... -}: { - programs.fastfetch = { - enable = true; - - settings = { - logo = { - type = "builtin"; - source = "nixos_small"; - }; - - display = { - separator = " "; - }; - - modules = [ - "title" - "os" - "kernel" - "uptime" - "packages" - "shell" - "terminal" - "cpu" - "memory" - "disk" - ]; - }; - }; -} diff --git a/modules/home/i3wm/nord-blue/helix.nix b/modules/home/i3wm/nord-blue/helix.nix deleted file mode 100644 index a8987f8..0000000 --- a/modules/home/i3wm/nord-blue/helix.nix +++ /dev/null @@ -1,199 +0,0 @@ -{ pkgs, ... }: - -{ - programs.helix = { - enable = true; - defaultEditor = false; - settings = { - theme = "ayu_mirage"; - editor = { - cursor-shape = { - normal = "block"; - insert = "bar"; - select = "underline"; - }; - - line-number = "relative"; - bufferline = "multiple"; - color-modes = true; - cursorline = true; - auto-save = { - after-delay.enable = true; - after-delay.timeout = 10000; - }; - auto-format = true; - end-of-line-diagnostics = "hint"; - inline-diagnostics = { - cursor-line = "hint"; - }; - lsp = { - display-messages = true; - display-inlay-hints = true; - }; - popup-border = "popup"; - - statusline.left = [ - "mode" - "spinner" - "spacer" - "version-control" - "file-name" - "diagnostics" - "read-only-indicator" - "file-modification-indicator" - "spacer" - ]; - - statusline.right = [ - "workspace-diagnostics" - "register" - "position" - "selections" - "file-encoding" - "file-type" - ]; - idle-timeout = 50; - completion-timeout = 100; - indent-guides = { - render = true; - character = "│"; - skip-levels = 3; - }; - soft-wrap = { - enable = true; - }; - whitespace = { - render = { - space = "none"; - tab = "all"; - newline = "none"; - }; - characters = { - nbsp = "·"; - tab = "→"; - }; - }; - }; - }; - languages = { - language-server = { - # Bash - "bash-language-server" = { - command = "${pkgs.bash-language-server}/bin/bash-language-server"; - args = [ "start" ]; - }; - - # HTML - "superhtml" = { - command = "${pkgs.superhtml}/bin/superhtml"; - }; - - # CSS - "vscode-css-languageserver" = { - command = "${pkgs.vscode-css-languageserver}/bin/vscode-css-languageserver"; - }; - - # Rust - "rust-analyzer" = { - command = "${pkgs.rust-analyzer}/bin/rust-analyzer"; - }; - - # Python - "pyright" = { - command = "${pkgs.pyright}/bin/pyright"; - }; - - # Nix - "nil" = { - command = "${pkgs.nil}/bin/nil"; - }; - - # LaTeX - "texlab" = { - command = "${pkgs.texlab}/bin/texlab"; - }; - texlab.config.texlab = { - build = { - onSave = true; - forwardSearchAfter = true; - }; - - chktext = { - onEdit = true; - }; - forwardSearch = { - executable = "zathura"; - args = [ - "--synctex-forward" - "%l:1:%f" - "%p" - ]; - }; - }; - - # Markdown - "marksman" = { - command = "${pkgs.marksman}/bin/marksman"; - }; - }; - language = [ - { - name = "bash"; - language-servers = [ "bash-language-server" ]; - auto-format = true; - } - { - name = "html"; - language-servers = [ "superhtml" ]; - auto-format = true; - } - { - name = "css"; - language-servers = [ "vscode-css-languageserver" ]; - auto-format = true; - } - { - name = "rust"; - language-servers = [ "rust-analyzer" ]; - auto-format = true; - } - { - name = "python"; - language-servers = [ "pyright" ]; - auto-format = true; - } - { - name = "nix"; - language-servers = [ "nil" ]; - auto-format = true; - } - { - name = "latex"; - language-servers = [ "texlab" ]; - auto-format = true; - } - { - name = "markdown"; - language-servers = [ "marksman" ]; - auto-format = true; - } - ]; - }; - }; - home.packages = with pkgs; [ - zathura - ripgrep - fd - - bash-language-server # LSP for Bash - superhtml # LSP for HTML - vscode-css-languageserver # LSP for CSS - rust-analyzer # Rust LSP - llvmPackages_latest.lldb # lldb-dap for Rust - pyright # Python LSP - nil # Nix LSP - texlab # LaTeX LSP - marksman # Markdown LSP - ]; - -} diff --git a/modules/home/i3wm/nord-blue/i3.nix b/modules/home/i3wm/nord-blue/i3.nix deleted file mode 100644 index 57e8300..0000000 --- a/modules/home/i3wm/nord-blue/i3.nix +++ /dev/null @@ -1,127 +0,0 @@ -{ pkgs, config, lib, ... }: - -let - vars = import ./variables.nix; - lock-screen = import ./i3lock.nix {inherit pkgs; }; - app-launcher = import ./dmenu.nix {inherit pkgs vars; }; - mod = "Mod4"; -in -{ - xsession.windowManager = { - i3 = { - enable = true; - config = { - modifier = mod; - - bars = [ ]; - - window = { - titlebar = false; - border = 3; - }; - - colors = { - focused = { - border = vars.colors.accent; - childBorder = vars.colors.accent; - background = vars.colors.background; - text = vars.colors.foreground; - indicator = vars.colors.foreground; - }; - focusedInactive = { - border = vars.colors.background; - childBorder = vars.colors.background; - background = vars.colors.background; - text = vars.colors.foreground; - indicator = vars.colors.foreground; - }; - unfocused = { - border = vars.colors.background; - childBorder = vars.colors.background; - background = vars.colors.background; - text = vars.colors.foreground; - indicator = vars.colors.foreground; - }; - }; - - startup = [ - { command = "sh -c 'feh --bg-scale ~/Pictures/wallpaper.png'"; } - ]; - - keybindings = lib.mkOptionDefault { - "${mod}+Return" = "exec ${pkgs.alacritty}/bin/alacritty"; # Lanuch alacritty as a terminal - "${mod}+d" = "exec app-launcher"; # Launch dmenu (app launcher) - "${mod}+m" = "exec app-launcher"; # Alternative keybind to launch the app launcher - "${mod}+Shift+m" = "exec alacritty -e nnn"; # Launch nnn - "${mod}+n" = "exec firefox"; # Launch firefox - "${mod}+q" = "kill"; # Close an app (kill the process) - "${mod}+Ctrl+l" = "exec lock-screen"; # Lock screen - "${mod}+Shift+r" = "restart"; # Reload i3 - "${mod}+Ctrl+Shift+e" = "exec sh -c 'i3-msg exit'"; # Exit i3 (CAREFUL NO CONFIRM) - "${mod}+Shift+s" = "exec flameshot gui"; - - - # === FOCUS === # - - # Vim bindings - "${mod}+h" = "focus left"; - "${mod}+j" = "focus down"; - "${mod}+k" = "focus up"; - "${mod}+l" = "focus right"; - - # Arrow keys - "${mod}+Left" = "focus left"; - "${mod}+Down" = "focus down"; - "${mod}+Up" = "focus up"; - "${mod}+Right" = "focus right"; - - # === MOVE === # - - # Vim bindings - "${mod}+Shift+h" = "move left"; - "${mod}+Shift+j" = "move down"; - "${mod}+Shift+k" = "move up"; - "${mod}+Shift+l" = "move right"; - - # Arrow keys - "${mod}+Shift+Left" = "focus left"; - "${mod}+Shift+Down" = "focus down"; - "${mod}+Shift+Up" = "focus up"; - "${mod}+Shift+Right" = "focus right"; - - - # === F-KEYS === # - - # Volume - "XF86AudioRaiseVolume" = "exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+"; # Raise volume by 5% - "XF86AudioLowerVolume" = "exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"; # Lower volume by 5% - "XF86AudioMute" = "exec wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; # Toggle volume (audio) on/off - "XF86AudioMicMute" = "exec wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; # Toggle mic on/off - - - # Brigtness - "XF86MonBrightnessUp" = "exec brightnessctl set 5%+"; # Raise brightness by 5% - "XF86MonBrightnessDown" = "exec brightnessctl set 5%-"; # Lower brightness by 5% - # NOTE: Yes, the brightness can go to 0%, thus turning the screen off. - - }; - }; - # I'm trying to avoid using this option as much as I can but sometimes I can't figure out how to do stuff via HM - # TODO: Find a way to declare smart borders in proper nixos home-manager - extraConfig = '' - smart_borders on - ''; - }; - }; - home.packages = with pkgs; [ - dmenu # App launcher - app-launcher - i3lock # Lock screen - lock-screen - imagemagick # Handle wallpaper resizing for i3-lock - polybar # Status bar - alacritty # Terminal Emulator - feh # Wallpaper utility - nnn # File browser - ]; -} diff --git a/modules/home/i3wm/nord-blue/i3lock.nix b/modules/home/i3wm/nord-blue/i3lock.nix deleted file mode 100644 index dc87766..0000000 --- a/modules/home/i3wm/nord-blue/i3lock.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ pkgs }: - -# Wrapper/script for i3-lock to use '~/Pictures/wallpaper.png' as the lock screen - -pkgs.writeShellScriptBin "lock-screen" '' - #!/usr/bin/env sh - set -eu - - WALL="''${1:-$HOME/Pictures/wallpaper.png}" - TMP="/tmp/lockscreen.png" - - # Get current resolution (single-monitor friendly) - RES=$(xrandr | awk '/\*/ {print $1; exit}') - - # Scale like feh --bg-fill - magick "''$WALL" -resize "''${RES}^" -gravity center -extent "''$RES" "''$TMP" - - i3lock -i "$TMP" -'' diff --git a/modules/home/i3wm/nord-blue/nvim.nix b/modules/home/i3wm/nord-blue/nvim.nix deleted file mode 100644 index ef054a0..0000000 --- a/modules/home/i3wm/nord-blue/nvim.nix +++ /dev/null @@ -1,314 +0,0 @@ -{ - pkgs, - config, - lib, - ... -}: { - ################################################# - # Packages - ################################################# - home.packages = with pkgs; [ - zathura - ripgrep - fd - lazygit - stylua - alejandra - black - shfmt - - # Language servers - lua-language-server - nil - rust-analyzer - pyright - bash-language-server - texlab - ]; - - ################################################# - # Neovim - ################################################# - programs.neovim = { - enable = true; - defaultEditor = true; - viAlias = true; - vimAlias = true; - - ################################################# - # Plugins - ################################################# - plugins = with pkgs.vimPlugins; [ - # UI - catppuccin-nvim - nvim-web-devicons - which-key-nvim - gitsigns-nvim - - # Syntax - (nvim-treesitter.withPlugins (p: [ - p.lua - p.nix - p.rust - p.python - p.bash - p.latex - p.c - ])) - - # LSP - nvim-lspconfig - - # Completion / snippets - nvim-cmp - cmp-nvim-lsp - cmp_luasnip - luasnip - friendly-snippets - nvim-autopairs - - # Formatting - conform-nvim - comment-nvim - - # Navigation - telescope-nvim - plenary-nvim - nvim-tree-lua - - # Terminal - toggleterm-nvim - - # Writing - vimtex - orgmode - - # Start screen - { - plugin = vim-startify; - config = "let g:startify_change_to_vcs_root = 0"; - } - ]; - - ################################################# - # Lua Configuration - ################################################# - extraLuaConfig = '' - ------------------------------------------------- - -- LEADER - ------------------------------------------------- - vim.g.mapleader = " " - - ------------------------------------------------- - -- BASIC OPTIONS - ------------------------------------------------- - vim.opt.number = true - vim.opt.relativenumber = true - vim.opt.clipboard = "unnamedplus" - vim.opt.showtabline = 2 - vim.o.timeout = true - vim.o.timeoutlen = 300 - - ------------------------------------------------- - -- THEME - ------------------------------------------------- - require("catppuccin").setup({ - flavour = "mocha", - }) - vim.cmd.colorscheme("catppuccin") - - ------------------------------------------------- - -- GITSIGNS - ------------------------------------------------- - require("gitsigns").setup() - - ------------------------------------------------- - -- TREESITTER - ------------------------------------------------- - require("nvim-treesitter.configs").setup({ - highlight = { enable = true }, - indent = { enable = true }, - }) - - vim.opt.foldmethod = "expr" - vim.opt.foldexpr = "nvim_treesitter#foldexpr()" - vim.opt.foldenable = false - - ------------------------------------------------- - -- SNIPPETS - ------------------------------------------------- - require("luasnip.loaders.from_vscode").lazy_load() - - ------------------------------------------------- - -- COMPLETION - ------------------------------------------------- - local cmp = require("cmp") - local luasnip = require("luasnip") - - cmp.setup({ - snippet = { - expand = function(args) - luasnip.lsp_expand(args.body) - end, - }, - - mapping = cmp.mapping.preset.insert({ - ["<C-Space>"] = cmp.mapping.complete(), - ["<CR>"] = cmp.mapping.confirm({ select = true }), - }), - - sources = { - { name = "nvim_lsp" }, - { name = "luasnip" }, - }, - }) - - - -- BRACKET PAIRS - require("nvim-autopairs").setup({}) - - ------------------------------------------------- - -- LSP - ------------------------------------------------- - local capabilities = - require("cmp_nvim_lsp").default_capabilities() - - local servers = { - "lua_ls", - "nil_ls", - "rust_analyzer", - "pyright", - "bashls", - "texlab", - } - - for _, server in ipairs(servers) do - vim.lsp.config(server, { - capabilities = capabilities - }) - vim.lsp.enable(server) - end - - ------------------------------------------------- - -- LSP KEYMAPS - ------------------------------------------------- - - -- navigation - vim.keymap.set("n", "<leader>ld", vim.lsp.buf.definition) - vim.keymap.set("n", "<leader>lD", vim.lsp.buf.declaration) - vim.keymap.set("n", "<leader>li", vim.lsp.buf.implementation) - vim.keymap.set("n", "<leader>lr", vim.lsp.buf.references) - - -- information - vim.keymap.set("n", "lh", vim.lsp.buf.hover) - - -- refactor - vim.keymap.set("n", "ln", vim.lsp.buf.rename) - vim.keymap.set("n", "la", vim.lsp.buf.code_action) - - -- formatting - vim.keymap.set("n", "lf", function() - vim.lsp.buf.format() - end) - - ------------------------------------------------- - -- DIAGNOSTICS - ------------------------------------------------- - - vim.keymap.set("n", "lj", vim.diagnostic.goto_next) - vim.keymap.set("n", "lk", vim.diagnostic.goto_prev) - vim.keymap.set("n", "le", vim.diagnostic.open_float) - - ------------------------------------------------- - -- FORMATTER - ------------------------------------------------- - - require("conform").setup({ - format_on_save = { - timeout_ms = 500, - lsp_format = "fallback", - }, - - formatters_by_ft = { - lua = { "stylua" }, - nix = { "alejandra" }, - rust = { "rustfmt" }, - python = { "black" }, - bash = { "shfmt" }, - }, - }) - - -- COMMENT TOGGLING - require("Comment").setup() - - ------------------------------------------------- - -- TELESCOPE - ------------------------------------------------- - local builtin = require("telescope.builtin") - - require("telescope").setup({ - defaults = { - layout_strategy = "horizontal", - sorting_strategy = "ascending", - file_ignore_patterns = { "node_modules", ".git/" }, - }, - }) - - vim.keymap.set("n", "<leader><leader>", builtin.find_files) - vim.keymap.set("n", "<leader>fg", builtin.live_grep) - vim.keymap.set("n", "<leader>fb", builtin.buffers) - - ------------------------------------------------- - -- WHICH KEY - ------------------------------------------------- - local wk = require("which-key") - wk.add({ - { "<leader>l", desc = "LSP"} - }) - - ------------------------------------------------- - -- NVIM TREE - ------------------------------------------------- - require("nvim-tree").setup({}) - vim.keymap.set("n", "<leader>e", "<cmd>NvimTreeToggle<CR>") - - ------------------------------------------------- - -- TERMINAL - ------------------------------------------------- - require("toggleterm").setup({ - direction = "float", - }) - - local Terminal = require("toggleterm.terminal").Terminal - - local lazygit = Terminal:new({ - cmd = "lazygit", - hidden = true, - direction = "float", - }) - - vim.keymap.set("n", "<leader>gg", function() - lazygit:toggle() - end) - - ------------------------------------------------- - -- ORGMODE - ------------------------------------------------- - local projects = { - "~/Documents/2_Writing/0_SOČ/**/*.org", - "~/Documents/2_Writing/2_Notes/**/*.org", - "~/Documents/1_Projects/6_CRC-Altura/**/*.org", - "~/ORG/**/*.org" - } - require("orgmode").setup({ - org_agenda_files = projects, - org_default_notes_file = "~/INBOX.org" - }) - - ------------------------------------------------- - -- VIMTEX - ------------------------------------------------- - vim.g.vimtex_view_method = "zathura" - ''; - }; -} diff --git a/modules/home/i3wm/nord-blue/picom.nix b/modules/home/i3wm/nord-blue/picom.nix deleted file mode 100644 index 60b015d..0000000 --- a/modules/home/i3wm/nord-blue/picom.nix +++ /dev/null @@ -1,68 +0,0 @@ -{ pkgs, config, lib, ... }: - - -{ - services.picom = { - enable = true; - package = pkgs.picom-pijulius; - - settings = { - ### Backend - backend = "glx"; - vsync = true; - - ### Opacity - inactive-opacity = 0.9; - active-opacity = 1.0; - - ### Fading - fading = true; - fade-delta = 5; - fade-in-step = 0.09; - fade-out-step = 0.09; - - - - ### Shadows - shadow = true; - shadow-radius = 15; - shadow-opacity = 0.5; - shadow-offset-x = 12; - shadow-offset-y = 12; - - shadow-exclude = [ - "class_g = 'i3-frame'" - "window_type = 'dock'" - "window_type = 'desktop'" - "name = 'dmenu'" - "class_g = 'dmenu'" - ]; - - ### Rounded corners - corner-radius = 15; - round-borders = 1; - - rounded-corners-exclude = [ - "class_g = 'i3-frame'" - "window_type = 'dock'" - ]; - - ### Animations - animations = true; - - # Physics tuning (higher = snappier) - animation-stiffness = 25; - animation-dampening = 1; - animation-window-mass = 0.01; - - ### Per-action animations - animation-for-open-window = "zoom"; - animation-for-unmap-window = "slide-up"; - animation-for-transient-window = "zoom"; - - # Moving / resizing - animation-for-move-window = "slide"; - animation-for-resize-window = "stretch"; - }; - }; -}
\ No newline at end of file diff --git a/modules/home/i3wm/nord-blue/scripts.nix b/modules/home/i3wm/nord-blue/scripts.nix deleted file mode 100644 index e69de29..0000000 --- a/modules/home/i3wm/nord-blue/scripts.nix +++ /dev/null diff --git a/modules/home/i3wm/nord-blue/variables.nix b/modules/home/i3wm/nord-blue/variables.nix deleted file mode 100644 index 5fac2bc..0000000 --- a/modules/home/i3wm/nord-blue/variables.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ - colors = { - background = "#2D333F"; - accent = "#82A3C0"; - foreground = "#C6D0F5"; - text = "#D5A18E"; - }; - - wallpaper = "~/home/mun/Documents/4. Configuration/modules/home/i3wm/nord-blue/wallpapers/wave-minimal.png"; - # Add other wallpapers eventually -} diff --git a/modules/home/i3wm/nord-blue/wallpapers/wave-minimal.png b/modules/home/i3wm/nord-blue/wallpapers/wave-minimal.png Binary files differdeleted file mode 100644 index 5d322d4..0000000 --- a/modules/home/i3wm/nord-blue/wallpapers/wave-minimal.png +++ /dev/null diff --git a/modules/home/i3wm/original/default.nix b/modules/home/i3wm/original/default.nix deleted file mode 100644 index c861b04..0000000 --- a/modules/home/i3wm/original/default.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ ... }: - -{ - # i3wm home-manager configuration orchestrator - imports = [ - ./dunst.nix - ./i3.nix - ./kitty.nix - ./neovim.nix - ./nnn.nix - ./picom.nix - ./polybar.nix - ./rofi.nix - ./scripts.nix - ./xdg.nix - ]; -}
\ No newline at end of file diff --git a/modules/home/i3wm/original/dunst.nix b/modules/home/i3wm/original/dunst.nix deleted file mode 100644 index 6f217d9..0000000 --- a/modules/home/i3wm/original/dunst.nix +++ /dev/null @@ -1,45 +0,0 @@ -{ config, pkgs, lib, ... }: - -{ - services.dunst = { - enable = true; - - settings = let - colors = { - foreground = "#d0b6fd"; - background = "#1c182d"; - alert = "#7b91fc"; - }; - in { - global = { - width = "(200,300)"; - height = "(0,150)"; - offset = "(30,50)"; - origin = "bottom-right"; - transparency = 10; - frame_width = 0; - font = "Fira Code 10"; - }; - - urgency_low = { - background = colors.background; - foreground = colors.foreground; - timeout = 8; - }; - - urgency_normal = { - background = colors.background; - foreground = colors.foreground; - frame-size = "0"; - timeout = 10; - }; - - urgency_critical = { - background = colors.background; - foreground = colors.foreground; - frame-size = "5"; - frame-color = colors.alert; - }; - }; - }; -}
\ No newline at end of file diff --git a/modules/home/i3wm/original/i3.nix b/modules/home/i3wm/original/i3.nix deleted file mode 100644 index a4f6858..0000000 --- a/modules/home/i3wm/original/i3.nix +++ /dev/null @@ -1,130 +0,0 @@ -{ config, pkgs, lib, ... }: - -{ - xsession.windowManager.i3 = { - enable = true; - config.bars = []; - - extraConfig = '' - # i3 config - set $mod Mod4 - font pango:Fira Code 10 - - exec --no-startup-id dex-autostart --autostart --environment i3 - exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock-fancy-rapid 5 3 --nofork - exec --no-startup-id nm-applet - exec --no-startup-id blueman-applet - exec_always --no-startup-id sh -c "sleep 1 && picom --config ~/.config/picom/picom.conf" - exec --no-startup-id -merge ~/.Xresources - exec_always --no-startup-id feh --bg-scale ~/Pictures/wallpapers/vox.jpg - exec_always --no-startup-id sh -c "killall -q polybar; sleep 1; polybar example --config=~/.config/polybar/config.ini &" - exec_always --no-startup-id polybar-hide-on-fullscreen - exec --no-startup-id flameshot - - gaps top 60 - - bindsym XF86MonBrightnessDown exec brightnessctl set 10%- - bindsym XF86MonBrightnessUp exec brightnessctl set +10% - bindsym XF86AudioMute exec amixer set Master toggle - bindsym XF86AudioLowerVolume exec amixer set Master 5%- - bindsym XF86AudioRaiseVolume exec amixer set Master 5%+ - bindsym XF86AudioMicMute exec amixer set Capture toggle - - floating_modifier $mod - - bindsym $mod+Shift+s exec flameshot gui - bindsym $mod+Return exec kitty - bindsym $mod+Control+l exec --no-startup-id i3lock-fancy-rapid 5 3 - bindsym $mod+m exec rofi -show drun - bindsym $mod+Shift+m exec kitty nnn - bindsym $mod+n exec firefox - bindsym $mod+Shift+q kill - - bindsym $mod+h focus left - bindsym $mod+j focus down - bindsym $mod+k focus up - bindsym $mod+l focus right - - bindsym $mod+Shift+h move left - bindsym $mod+Shift+j move down - bindsym $mod+Shift+k move up - bindsym $mod+Shift+l move right - - bindsym $mod+Control+h split h - bindsym $mod+Control+v split v - bindsym $mod+f fullscreen toggle - bindsym $mod+s layout stacking - bindsym $mod+w layout tabbed - bindsym $mod+e layout toggle split - bindsym $mod+Shift+space floating toggle - bindsym $mod+space focus mode_toggle - bindsym $mod+a focus parent - - set $ws1 "1" - set $ws2 "2" - set $ws3 "3" - set $ws4 "4" - set $ws5 "5" - set $ws6 "6" - set $ws7 "7" - set $ws8 "8" - set $ws9 "9" - set $ws10 "10" - - bindsym $mod+plus workspace number $ws1 - bindsym $mod+ecaron workspace number $ws2 - bindsym $mod+scaron workspace number $ws3 - bindsym $mod+ccaron workspace number $ws4 - bindsym $mod+rcaron workspace number $ws5 - bindsym $mod+zcaron workspace number $ws6 - bindsym $mod+yacute workspace number $ws7 - bindsym $mod+aacute workspace number $ws8 - bindsym $mod+iacute workspace number $ws9 - bindsym $mod+eacute workspace number $ws10 - - bindsym $mod+Shift+plus move container to workspace number $ws1 - bindsym $mod+Shift+ecaron move container to workspace number $ws2 - bindsym $mod+Shift+scaron move container to workspace number $ws3 - bindsym $mod+Shift+ccaron move container to workspace number $ws4 - bindsym $mod+Shift+rcaron move container to workspace number $ws5 - bindsym $mod+Shift+zcaron move container to workspace number $ws6 - bindsym $mod+Shift+yacute move container to workspace number $ws7 - bindsym $mod+Shift+aacute move container to workspace number $ws8 - bindsym $mod+Shift+iacute move container to workspace number $ws9 - bindsym $mod+Shift+eacute move container to workspace number $ws10 - - bindsym $mod+Shift+c reload - bindsym $mod+Shift+r restart - bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'" - - mode "resize" { - bindsym h resize shrink width 5 px or 5 ppt - bindsym j resize grow height 5 px or 5 ppt - bindsym k resize shrink height 5 px or 5 ppt - bindsym l resize grow width 5 px or 5 ppt - - bindsym Left resize shrink width 5 px or 5 ppt - bindsym Down resize grow height 5 px or 5 ppt - bindsym Up resize shrink height 5 px or 5 ppt - bindsym Right resize grow width 5 px or 5 ppt - - bindsym Return mode "default" - bindsym Escape mode "default" - bindsym $mod+r mode "default" - } - - bindsym $mod+r mode "resize" - - client.focused #FFFFFF #FFFFFF #FFFFFF #FFFFFF #b12cbf - client.focused_inactive #8C8C8C #4C4C4C #FFFFFF #4C4C4C #FFFFFF - client.unfocused #4C4C4C #222222 #888888 #292D2E #500096 - client.urgent #EC69A0 #DB3279 #FFFFFF #DB3279 #DB3279 - client.placeholder #000000 #0C0C0C #FFFFFF #000000 #FFFFFF - client.background #FFFFFF - - default_border pixel 3 - default_floating_border pixel 3 - hide_edge_borders smart - ''; - }; -}
\ No newline at end of file diff --git a/modules/home/i3wm/original/kitty.nix b/modules/home/i3wm/original/kitty.nix deleted file mode 100644 index 17b220d..0000000 --- a/modules/home/i3wm/original/kitty.nix +++ /dev/null @@ -1,45 +0,0 @@ -{ config, pkgs, lib, ... }: - -{ - programs.kitty = { - enable = true; - extraConfig = '' - confirm_os_window_close 0 - font_family Fira Code - bold_font Fira Code Bold - italic_font Fira Code Light - shell_integration no-cursor - cursor_shape beam - window_padding_width 7 - window_padding_height 10 - scrollback_lines 3000 - font_size 11 - map ctrl+shift+plus change_font_size all +1.0 - map ctrl+shift+minus change_font_size all -1.0 - background_opacity 0.7 - - cursor #AC82E9 - selection_background #d8cab8 - selection_foreground #141216 - background #141216 - foreground #d8cab8 - - color0 #2b2135 - color8 #92fcfa - color1 #fc4649 - color9 #fc4649 - color2 #c4e881 - color10 #c4e881 - color3 #AC82E9 - color11 #AC82E9 - color4 #7b91fc - color12 #7b91fc - color5 #f3fc7b - color13 #f3fc7b - color6 #8F56E1 - color14 #8F56E1 - color7 #fc92fc - color15 #d8cab8 - ''; - }; -}
\ No newline at end of file diff --git a/modules/home/i3wm/original/neovim.nix b/modules/home/i3wm/original/neovim.nix deleted file mode 100644 index e59fd3d..0000000 --- a/modules/home/i3wm/original/neovim.nix +++ /dev/null @@ -1,101 +0,0 @@ -{ pkgs, ... }: - -{ - programs.neovim = { - enable = true; - defaultEditor = true; - viAlias = true; - vimAlias = true; - withNodeJs = true; - - # +ANT FIX - plugins = []; # disable HM plugin processing - - extraLuaConfig = '' - -- LazyVim bootstrap - local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" - if not vim.loop.fs_stat(lazypath) then - vim.fn.system({ - "git", "clone", "--filter=blob:none", - "https://github.com/folke/lazy.nvim.git", - "--branch=stable", lazypath, - }) - end - vim.opt.rtp:prepend(lazypath) - - require("lazy").setup({ - spec = { - { "LazyVim/LazyVim", import = "lazyvim.plugins" }, - { import = "lazyvim.plugins.extras.lang.tex" }, - { import = "lazyvim.plugins.extras.lang.markdown" }, - { import = "lazyvim.plugins.extras.ui.mini-animate" }, - { import = "lazyvim.plugins.extras.lang.typescript" }, - { import = "lazyvim.plugins.extras.lang.python" }, - { import = "lazyvim.plugins.extras.lang.rust" }, - { import = "lazyvim.plugins.extras.lang.nix" }, - - { - "lervag/vimtex", - lazy = false, - init = function() - vim.g.vimtex_view_method = "zathura" - end - }, - - { - "MeanderingProgrammer/render-markdown.nvim", - opts = { - enabled = true, - file_types = { "markdown", "rmd" }, - colorscheme = "default", - }, - dependencies = { - "nvim-treesitter/nvim-treesitter", - "nvim-tree/nvim-web-devicons", - }, - }, - - { "mracos/mermaid.vim", ft = { "mermaid" } }, - }, - - defaults = { lazy = false, version = false }, - checker = { enabled = true }, - - performance = { - rtp = { - disabled_plugins = { - "gzip", "tarPlugin", "tohtml", - "tutor", "zipPlugin", - }, - }, - }, - }) - - -- LaTeX wrapping - vim.api.nvim_create_autocmd("FileType", { - pattern = "tex", - callback = function() - vim.opt_local.wrap = true - vim.opt_local.linebreak = true - vim.opt_local.breakindent = true - vim.opt_local.breakindentopt = "shift:2" - vim.opt_local.textwidth = 0 - end, - }) - - -- Disable diagnostics in markdown - vim.api.nvim_create_autocmd("FileType", { - pattern = "markdown", - callback = function() - vim.diagnostic.disable(0) - end, - }) - - -- Nix LSP - local lspconfig = require("lspconfig") - lspconfig.nil_ls.setup({ cmd = { "nil" } }) - - vim.opt.clipboard = "unnamedplus" - ''; - }; -}
\ No newline at end of file diff --git a/modules/home/i3wm/original/nnn.nix b/modules/home/i3wm/original/nnn.nix deleted file mode 100644 index 74b7dcb..0000000 --- a/modules/home/i3wm/original/nnn.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ pkgs, ... }: -{ - programs.nnn = { - enable = true; - package = pkgs.nnn.override { withNerdIcons = true; }; - }; -}
\ No newline at end of file diff --git a/modules/home/i3wm/original/picom.nix b/modules/home/i3wm/original/picom.nix deleted file mode 100644 index 93cb37d..0000000 --- a/modules/home/i3wm/original/picom.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ config, pkgs, lib, ... }: - -{ - services.picom = { - enable = true; - - package = pkgs.picom-pijulius; - - backend = "glx"; - vSync = true; - inactiveOpacity = 0.9; - activeOpacity = 1.0; - fade = true; - fadeSteps = [ 0.09 0.09 ]; - fadeDelta = 5; - shadow = true; - shadowOffsets = [ 12 12 ]; - shadowOpacity = 0.5; - shadowExclude = [ - "class_g = 'Polybar'" - "name = 'Polybar'" - ]; - settings = { - corner-radius = 15; - }; - }; -}
\ No newline at end of file diff --git a/modules/home/i3wm/original/polybar.nix b/modules/home/i3wm/original/polybar.nix deleted file mode 100644 index 95130cf..0000000 --- a/modules/home/i3wm/original/polybar.nix +++ /dev/null @@ -1,181 +0,0 @@ -{ config, pkgs, lib, ... }: - - -{ - services.polybar = { - enable = true; - - extraConfig = let - colors = { - background = "#1c182d"; - background-alt = "#2b1b3d"; - foreground = "#d0b6fd"; - primary = "#cfb5fd"; - secondary = "#8a78b0"; - alert = "#7b91fc"; - disabled = "#707880"; - }; - in '' - [bar/example] - width = 98% - height = 30pt - radius = 15 - offset-x = 1% - offset-y = 1% - override-redirect = true - fixed-center = true - enable-ipc = true - - background = ${colors.background} - foreground = ${colors.foreground} - - line-size = 4pt - border-size = Opt - border-color = #00000000 - - padding-left = 1 - padding-right = 1 - module-margin = 1 - - separator = | - separator-foreground = ${colors.disabled} - - font-0 = fira code;2 - - modules-left = xworkspaces spotify spotify-prev spotify-play-pause spotify-next - modules-center = date - modules-right = filesystem memory cpu pulseaudio-devices wlan xkeyboard battery - - [module/systray] - type = internal/tray - format-margin = 8pt - tray-spacing = 16pt - - [module/xworkspaces] - type = internal/xworkspaces - label-active = %name% - label-active-background = ${colors.background-alt} - label-active-underline = ${colors.primary} - label-active-padding = 1 - label-occupied = %name% - label-occupied-padding = 1 - label-urgent = %name% - label-urgent-background = ${colors.alert} - label-urgent-padding = 1 - label-empty = %name% - label-empty-foreground = ${colors.disabled} - label-empty-padding = 1 - - [module/xwindow] - type = internal/xwindow - label = %title:0:60:...% - - [module/filesystem] - type = internal/fs - interval = 25 - mount-0 = / - label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%% - label-unmounted = %mountpoint% not mounted - label-unmounted-foreground = ${colors.disabled} - - [module/pulseaudio] - type = internal/pulseaudio - format-volume-prefix = "VOL " - format-volume-prefix-foreground = ${colors.primary} - format-volume = <label-volume> - label-volume = %percentage%% - label-muted = muted - label-muted-foreground = ${colors.disabled} - - [module/xkeyboard] - type = internal/xkeyboard - blacklist-0 = num lock - label-layout = %layout% - label-layout-foreground = ${colors.primary} - label-indicator-padding = 2 - label-indicator-margin = 1 - label-indicator-foreground = ${colors.background} - label-indicator-background = ${colors.secondary} - - [module/memory] - type = internal/memory - interval = 2 - format-prefix = "RAM " - format-prefix-foreground = ${colors.primary} - label = %percentage_used:2%% - - [module/cpu] - type = internal/cpu - interval = 2 - format-prefix = "CPU " - format-prefix-foreground = ${colors.primary} - label = %percentage:2%% - - [network-base] - type = internal/network - interval = 5 - format-connected = <label-connected> - format-disconnected = <label-disconnected> - label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected - - [module/wlan] - inherit = network-base - interface-type = wireless - label-connected = %{F#F0C674}%ifname%%{F-} %essid% - - [module/eth] - inherit = network-base - interface-type = wired - label-connected = %{F#F0C674}%ifname%%{F-} - - [module/date] - type = internal/date - interval = 1 - date = %H:%M - date-alt = %Y-%m-%d %H:%M:%S - label = %date% - label-foreground = ${colors.primary} - - [settings] - screenchange-reload = true - pseudo-transparency = true - - [module/battery] - type = internal/battery - full-at = 100 - low-at = 15 - battery = BAT0 - adapter = ADP1 - poll-interval = 5 - - [module/spotify] - type = custom/script - tail = true - interval = 1 - format-prefix = "♫" - format = <label> - exec = get-spotify-status - - [module/spotify-prev] - type = custom/script - exec = echo "◀◀" - format = <label> - click-left = playerctl previous -p spotify - - [module/spotify-play-pause] - type = custom/ipc - hook-0 = echo "▶" - hook-1 = echo "▶" - initial = 1 - click-left = playerctl play-pause -p spotify - - [module/spotify-next] - type = custom/script - exec = echo "▶▶" - format = <label> - click-left = playerctl next -p spotify - ''; - - script = "polybar example --config=~/.config/polybar/config.ini &"; - }; -}
\ No newline at end of file diff --git a/modules/home/i3wm/original/rofi.nix b/modules/home/i3wm/original/rofi.nix deleted file mode 100644 index 9332efd..0000000 --- a/modules/home/i3wm/original/rofi.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ pkgs, ... }: - -{ - programs.rofi = { - enable = true; - location = "center"; - cycle = true; - theme = "purple"; - terminal = "${pkgs.kitty}/bin/kitty"; - modes = [ "drun" "ssh" "emoji" "calc" ]; - plugins = with pkgs; [ rofi-emoji rofi-calc ]; - }; -}
\ No newline at end of file diff --git a/modules/home/i3wm/original/scripts.nix b/modules/home/i3wm/original/scripts.nix deleted file mode 100644 index 4eb0b61..0000000 --- a/modules/home/i3wm/original/scripts.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ pkgs, ... }: - -{ - home.packages = [ - (pkgs.writeShellScriptBin "get-spotify-status" '' - PARENT_BAR="example" - PLAYER="playerctld" - FORMAT="{{ title }} - {{ artist }}" - - PLAYERCTL_STATUS=$(playerctl --player=$PLAYER status 2>/dev/null) - - if [ "$PLAYERCTL_STATUS" = "Playing" ]; then - playerctl --player=$PLAYER metadata --format "$FORMAT" - elif [ "$PLAYERCTL_STATUS" = "Paused" ]; then - echo "Paused" - else - echo "No music" - fi - '') - - (pkgs.writeShellScriptBin "polybar-hide-on-fullscreen" '' - i3-msg -t subscribe -m '[ "window" ]' | while read -r event; do - if echo "$event" | grep -q '"fullscreen_mode":[[:space:]]*1'; then - polybar-msg cmd hide - elif echo "$event" | grep -q '"fullscreen_mode":[[:space:]]*0'; then - polybar-msg cmd show - fi - done - '') - ]; -}
\ No newline at end of file diff --git a/modules/home/i3wm/original/xdg.nix b/modules/home/i3wm/original/xdg.nix deleted file mode 100644 index 7590ea8..0000000 --- a/modules/home/i3wm/original/xdg.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ pkgs, ... }: - -{ - xdg = { - enable = true; - - mimeApps = { - enable = true; - defaultApplications = { - "text/plain" = [ "nvim.desktop" ]; - "text/markdown" = [ "nvim.desktop" ]; - "text/x-markdown" = [ "nvim.desktop" ]; - }; - }; - }; -}
\ No newline at end of file diff --git a/modules/nixos/base/audio.nix b/modules/nixos/base/audio.nix deleted file mode 100644 index a963081..0000000 --- a/modules/nixos/base/audio.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ pkgs, config, lib, ... }: - -{ - # rtkit is optional but recommended - 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; - }; - - environment.systemPackages = with pkgs; [ - pavucontrol - ]; -}
\ No newline at end of file diff --git a/modules/nixos/base/bluetooth.nix b/modules/nixos/base/bluetooth.nix deleted file mode 100644 index e850ee7..0000000 --- a/modules/nixos/base/bluetooth.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ pkgs, config, lib, ... }: - -{ - hardware.bluetooth = { - enable = true; - powerOnBoot = true; - settings = { - General = { - # Shows battery charge of connected devices on supported - # Bluetooth adapters. Defaults to 'false'. - Experimental = true; - # When enabled other devices can connect faster to us, however - # the tradeoff is increased power consumption. Defaults to - # 'false'. - FastConnectable = true; - }; - Policy = { - # Enable all controllers when they are found. This includes - # adapters present on start as well as adapters that are plugged - # in later on. Defaults to 'true'. - AutoEnable = true; - }; - }; -}; -}
\ No newline at end of file diff --git a/modules/nixos/base/boot.nix b/modules/nixos/base/boot.nix deleted file mode 100644 index a9aaff1..0000000 --- a/modules/nixos/base/boot.nix +++ /dev/null @@ -1,46 +0,0 @@ -{ config, lib, pkgs, ... }: - -{ - boot = { - kernelPackages = pkgs.linuxPackages_latest; - initrd = { - kernelModules = [ "i915" ]; - systemd.enable = true; - }; - loader = { - efi = { - canTouchEfiVariables = true; - efiSysMountPoint = "/boot"; - }; - grub = { - enable = true; - device = "nodev"; - useOSProber = true; - efiSupport = true; - }; - systemd-boot = { - enable = false; - consoleMode = "keep"; - configurationLimit = 5; - }; - }; - plymouth = { - enable = false; - theme = "deus_ex"; - themePackages = with pkgs; [ - (adi1090x-plymouth-themes.override { - selected_themes = [ "deus_ex" ]; - }) - ]; - logo = pkgs.fetchurl { - url = "https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fcdn.icon-icons.com%2Ficons2%2F2699%2FPNG%2F512%2Fnixos_logo_icon_170910.png&f=1&nofb=1&ipt=71345d68f1fc864748db54e81111d5853a24fba1d39bdee7cc6fda3e58181bc0"; - sha256 = "sha256-fr1ZnKdX9EeXl2eTIrxEd17DkVKZL8BV9RGmluSgFfk="; - }; - extraConfig = '' - DeviceScale=1 - ''; - }; - }; - - fileSystems."/boot".options = [ "fmask=0077" "dmask=0077" ]; -} diff --git a/modules/nixos/base/default.nix b/modules/nixos/base/default.nix deleted file mode 100644 index d49f742..0000000 --- a/modules/nixos/base/default.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ ... }: - -{ - imports = [ - ./audio.nix - ./nix.nix - ./bluetooth.nix - ./boot.nix - ./networking.nix - ./users.nix - ./services.nix - ./programs.nix - ./graphics.nix - ./packages.nix - ]; - - system.stateVersion = "25.11"; -} diff --git a/modules/nixos/base/graphics.nix b/modules/nixos/base/graphics.nix deleted file mode 100644 index 08e64f0..0000000 --- a/modules/nixos/base/graphics.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ config, lib, pkgs, ... }: - -{ - services.xserver.videoDrivers = [ "intel" ]; - - hardware.graphics = { - enable = true; - extraPackages = with pkgs; [ - intel-vaapi-driver - intel-media-driver - intel-compute-runtime - mesa - ]; - }; - - environment.variables = { - - }; -} diff --git a/modules/nixos/base/networking.nix b/modules/nixos/base/networking.nix deleted file mode 100644 index b1c22dd..0000000 --- a/modules/nixos/base/networking.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ config, lib, pkgs, ... }: - -{ - networking.hostName = "kronos"; - networking.networkmanager.enable = true; -} diff --git a/modules/nixos/base/nix.nix b/modules/nixos/base/nix.nix deleted file mode 100644 index 748dbe6..0000000 --- a/modules/nixos/base/nix.nix +++ /dev/null @@ -1,38 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: { - nix = { - package = pkgs.lixPackageSets.stable.lix; # Use lix as the package manager instead of Nix - - settings = { - substituters = [ - "https://cache.lix.systems" - "https://cache.nixos.org/" - ]; - - trusted-public-keys = [ - "cache.lix.systems-1:32QFpmvZsbQ8HhH3dBHDx1E8zFGbxqMNxjE2Rk5OGcQ=" - "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" - ]; - experimental-features = [ - "nix-command" - "flakes" - ]; - }; - }; - # Fix nixkpgs.overlays being broken after switching to Lix from Nix - nixpkgs.overlays = [ - (final: prev: { - inherit - (prev.lixPackageSets.stable) - nixpkgs-review - nix-eval-jobs - nix-fast-build - colmena - ; - }) - ]; -} diff --git a/modules/nixos/base/packages.nix b/modules/nixos/base/packages.nix deleted file mode 100644 index b8318b4..0000000 --- a/modules/nixos/base/packages.nix +++ /dev/null @@ -1,72 +0,0 @@ -{ config, lib, pkgs, ... }: - -{ - nixpkgs.config.allowUnfree = true; - - environment.systemPackages = with pkgs; [ - # === Core Development Tools === - neovim - wget - stdenv - tree-sitter - git - lazygit - killall - acpi - - # === CLI Utilities === - tree - ripgrep - fd - unzip - bzip2 - - # === System Monitoring === - btop - auto-cpufreq - - # === Audio/Media === - alsa-utils - helvum - playerctl - pipewire - - # === Bluetooth & Wireless === - blueman - bluez - wirelesstools - - # === Display & Graphics === - feh - flameshot - xss-lock - brightnessctl - hyprlock - imagemagick - ghostscript - - - # === Development Languages & Compilers === - clang - libgcc - lua-language-server - stylua - nil - lua53Packages.luarocks - lua - - # === Language Servers & Formatters === - ruff - vtsls - pyright - python314 - - # === System Packages === - ly - ]; - - fonts = { - enableDefaultPackages = true; - packages = with pkgs; [ fira-code noto-fonts noto-fonts-color-emoji blackout beon]; - }; -} diff --git a/modules/nixos/base/programs.nix b/modules/nixos/base/programs.nix deleted file mode 100644 index 603111c..0000000 --- a/modules/nixos/base/programs.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: { - programs.firefox.enable = true; - programs.zsh.enable = true; - - programs.steam = { - enable = true; - remotePlay.openFirewall = true; - dedicatedServer.openFirewall = true; - localNetworkGameTransfers.openFirewall = true; - }; - - programs.ssh = { - startAgent = true; - }; -} diff --git a/modules/nixos/base/services.nix b/modules/nixos/base/services.nix deleted file mode 100644 index 913d27b..0000000 --- a/modules/nixos/base/services.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: { - security.pam.sshAgentAuth.enable = true; - - time.timeZone = "Europe/Prague"; - - services.displayManager.ly = { - enable = true; - }; - - services.printing.enable = true; - services.libinput.enable = true; - services.openssh.enable = true; - services.tailscale.enable = true; -} diff --git a/modules/nixos/base/users.nix b/modules/nixos/base/users.nix deleted file mode 100644 index c2db993..0000000 --- a/modules/nixos/base/users.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ config, lib, pkgs, ... }: - -{ - users.users = { - mun = { - isNormalUser = true; - extraGroups = [ "wheel" "bluetooth" "networkmanager" "kvm" "nixos" ]; - packages = with pkgs; [ tree ]; - shell = pkgs.zsh; - }; - }; -} diff --git a/modules/nixos/des/gnome.nix b/modules/nixos/des/gnome.nix deleted file mode 100644 index 79d32c8..0000000 --- a/modules/nixos/des/gnome.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ config, pkgs, ... }: - -{ - services.displayManager.gdm.enable = true; - services.desktopManager.gnome.enable = true; - - # To disable installing GNOME's suite of applications - # and only be left with GNOME shell. - services.gnome.core-apps.enable = false; - services.gnome.core-developer-tools.enable = false; - services.gnome.games.enable = false; - environment.gnome.excludePackages = with pkgs; [ gnome-tour gnome-user-docs ]; - -}
\ No newline at end of file diff --git a/modules/nixos/des/i3wm.nix b/modules/nixos/des/i3wm.nix deleted file mode 100644 index 2d3d67f..0000000 --- a/modules/nixos/des/i3wm.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ config, lib, pkgs, ... }: - -{ - services = { - xserver = { - enable = true; - windowManager.i3.enable = true; - - # Czech QWERTZ layout (Czech "CZ" layout) - xkb = { - layout = "cz"; - options = "eurosign:e,caps:escape"; - }; - }; - - picom = { - enable = true; - }; - }; -}
\ No newline at end of file diff --git a/mun.nix b/mun.nix deleted file mode 100755 index 80e927e..0000000 --- a/mun.nix +++ /dev/null @@ -1,146 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: { - imports = [ - ./modules/home/default.nix - ]; - home = { - username = "mun"; - homeDirectory = "/home/mun"; - stateVersion = "25.11"; - - packages = with pkgs; [ - # === Development Tools === - clippy - ruff - - # === Applications === - discord - spotify - openrocket - kicad - - # === Utilities === - pay-respects - zathura - ripgrep - fd - git - lazygit - tree-sitter - gcr - perl - gnome-disk-utility - syncthing - - # === CLI Tools === - fastfetch - bat - tealdeer - claude-code - - # === Fun Stuff === # - peaclock - kdePackages.kdenlive - dwarf-fortress - dwarf-fortress-packages.themes.spacefox - tetris - minefair - - # === Text/Document Tools === - thunderbird - libreoffice - texstudio - zathura - krita - aseprite - audacity - - # === Network & Utilities === - clipman - xclip - qbittorrent - - # === Gaming & Emulation === - godotPackages_4_5.godot - prismlauncher - vlc - - # === Creative & Editors === - obsidian - vscodium - peazip - - # === Wine/Compatibility === - wine - bottles - lutris - - # === Miscellaneous === - xfce.thunar - - # === TeX Live === - (texlive.combine { - inherit (texlive) scheme-full; - notestex = texlivePackages.notestex; - }) - - # === RetroArch with Cores === - (retroarch.withCores (cores: - with cores; [ - fceumm - mgba - gambatte - sameboy - ])) - ]; - - sessionVariables = { - EDITOR = "nvim"; - VISUAL = "nvim"; - }; - }; - - programs = { - ssh = { - enable = true; - matchBlocks = { - "*" = { - addKeysToAgent = "yes"; - forwardAgent = false; # or true if you actually need it - }; - "cgit" = { - user = "git"; - hostname = "cgit"; # tailscale MagicDNS name - identityFile = "~/.ssh/cgit"; - }; - }; - }; - - zsh = { - enable = true; - syntaxHighlighting.enable = true; - - shellAliases = { - ll = "ls -l"; - rebuild = "sudo nixos-rebuild switch"; - edit = "sudo vi /etc/nixos/configuration.nix"; - }; - - history.size = 10000; - - oh-my-zsh = { - enable = true; - plugins = ["git"]; - theme = "simple"; - }; - - initContent = '' - fastfetch --config examples/9.jsonc - ''; - }; - }; -} |
