Compare commits
1 Commits
main
...
3b84a32dab
| Author | SHA1 | Date | |
|---|---|---|---|
|
3b84a32dab
|
@@ -4,12 +4,11 @@ keys:
|
||||
|
||||
- &hosts
|
||||
- &sirius age1f860dfewlx5jtt9ejr47gywx70p3dmyc8mat29gpr75psljwjv8q5xyxkq
|
||||
- &canopus age1x36yr8h993srfj29sfpzt4wyz52nztvncpmhgmfs0j26qvfecq3qvcm0an
|
||||
- &canopus age1udt3cssu7ahdrhsvckt8450rswrr6mknn36xpq74dkfp9lpajvnq84kdzj
|
||||
- &homelab age1jg642q775gmnmxeu29gcf3lph8vem4xr8t84cxe809dpd0myrussh49h60
|
||||
- &arcturus age1zsl5d4vj6gl3h96y5p53sq5y4vr4vtlwp727h7rp9a4xfkxm53lqrh6r50
|
||||
- &alpha age1zujp5gxy7suv8ysnygv43cmzuvv36nxfg0ch7r3xg2emc6fz3vmqqujheq
|
||||
- &vega age1ydkclhk9kwqdq74utesqdfupt43lz64d5k65gz2z9uyljcqq9fcq3hv28l
|
||||
- &node age1put942dyhly8nk9c8n0h8tq0x6xplrg3uw5q0d2jmvwez3zq79qsapl7he
|
||||
- &capella age1y4luzn2jls7rvgphej23srvdlx563lxq29tvf66vhwwzaf7c3f3qzvresh
|
||||
|
||||
creation_rules:
|
||||
@@ -23,7 +22,6 @@ creation_rules:
|
||||
- *arcturus
|
||||
- *alpha
|
||||
- *vega
|
||||
- *node
|
||||
- *capella
|
||||
- path_regex: hosts/sirius/secrets.yaml$
|
||||
key_groups:
|
||||
|
||||
152
README.md
@@ -22,132 +22,48 @@
|
||||
|
||||
## Hosts
|
||||
|
||||
| | Hostname | Board | CPU | RAM | GPU | Purpose |
|
||||
| --- | ---------- | ----------------- | ------------------ | ----- | ------------------------- | -------------------------------------------------------------------------------- |
|
||||
| 🖥️ | `sirius` | MSI X570-A Pro | Ryzen 7 5700X3D | 64GB | RTX 3080 TI + RTX 3060 TI | Triple-monitor desktop running Windows Subsystem for Linux. |
|
||||
| 💻 | `canopus` | Asus Zephyrus G15 | Ryzen 9 5900HS | 16GB | RTX 3060 | Optimized for productivity on the go and some gaming. |
|
||||
| ☁️ | `homelab` | Minisforum MS-A1 | Ryzen 7 8700G | 32GB | Radeon 780M | WIP |
|
||||
| ☁️ | `arcturus` | KVM | 4 Core | 8GB | | Primary server responsible for exposing my homelab applications to the internet. |
|
||||
| ☁️ | `alpha` | KVM | 4 Core | 4GB | | Monitors uptime and health status of all services across the infrastructure. |
|
||||
| 🥔 | `vega` | Raspberry Pi 3B+ | Cortex A53 | 1GB | | Running AdGuard Home for network-wide ad blocking. |
|
||||
| 📱 | `capella` | Samsung S25 Ultra | Snapdragon 8 Elite | 12GB | Adreno 830 | Primary mobile for daily usage. (Locked) |
|
||||
| 📱 | `rigel` | Motorola Edge 30 | Snapdragon 778G+ | 8GB | Adreno 642L | Secondary mobile for some fun. (Rooted) |
|
||||
| ☁️ | `node` | ASRock B565D4 | Ryzen 9 5950X | 128GB | | Running Ethereum and BSC nodes. |
|
||||
| | Hostname | Board | CPU | RAM | GPU | Purpose |
|
||||
| --- | ---------- | ----------------- | ------------------ | ---- | ------------------------- | ---------------------------------------------------------------------------------- |
|
||||
| 🖥️ | `sirius` | MSI X570-A Pro | Ryzen 7 5700X3D | 64GB | RTX 3080 TI + RTX 3060 TI | Triple-monitor desktop running Windows Subsystem for Linux. |
|
||||
| 💻 | `canopus` | Asus Zephyrus G15 | Ryzen 9 5900HS | 16GB | RTX 3060 | Optimized for productivity on the go and some gaming. |
|
||||
| ☁️ | `homelab` | Minisforum MS-A1 | Ryzen 7 8700G | 32GB | Radeon 780M | WIP |
|
||||
| ☁️ | `arcturus` | KVM | 4 Core | 8GB | | Primary server responsible for exposing my homelab applications to the internet. |
|
||||
| ☁️ | `alpha` | KVM | 4 Core | 4GB | | Monitors uptime and health status of all services across the infrastructure. |
|
||||
| 🥔 | `vega` | Raspberry Pi 3B+ | Cortex A53 | 1GB | | Running AdGuard Home for network-wide ad blocking. |
|
||||
| 📱 | `capella` | Samsung S25 Ultra | Snapdragon 8 Elite | 12GB | Adreno 830 | Primary mobile for daily usage. (Locked) |
|
||||
| 📱 | `rigel` | Motorola Edge 30 | Snapdragon 778G+ | 8GB | Adreno 642L | Secondary mobile for some fun. (Rooted) |
|
||||
| ☁️ | `node` | KVM | i9-13900 | 64GB | | Running Ethereum and BSC nodes. Currently in the process of migrating from Ubuntu. |
|
||||
|
||||
## Installation
|
||||
|
||||
> [!NOTE]
|
||||
> This will get your base system ready, but keep in mind that many things might not work correctly — such as monitor resolution, font size, and more.
|
||||
Boot into NixOS bootable USB and then enter the following commands
|
||||
|
||||
### Prerequisites
|
||||
|
||||
Boot into the NixOS bootable USB before proceeding with the installation steps.
|
||||
|
||||
### Installation Steps
|
||||
|
||||
#### 1. Clone the repository
|
||||
|
||||
```bash
|
||||
```
|
||||
# Clone this repositry
|
||||
git clone https://github.com/tuxdotrs/nix-config.git
|
||||
|
||||
# Navigate to the repository directory
|
||||
cd nix-config
|
||||
```
|
||||
|
||||
#### 2. Gain root privileges
|
||||
# Install disko for disk partitioning
|
||||
nix-shell -p disko
|
||||
|
||||
```bash
|
||||
sudo su
|
||||
|
||||
```
|
||||
|
||||
#### 3. Set up disk partitioning
|
||||
|
||||
Install the required tools:
|
||||
|
||||
```bash
|
||||
nix-shell -p disko neovim
|
||||
```
|
||||
|
||||
Partition your disk using disko. **This will wipe your drive.** Replace `DISK_PATH` with your actual disk path (e.g., `/dev/vda` or `/dev/nvme0n1`):
|
||||
|
||||
```bash
|
||||
# Partition the disk and make sure to replace DISK_PATH (eg. /dev/vda)
|
||||
disko --mode disko ./hosts/canopus/disko.nix --arg device '"DISK_PATH"'
|
||||
```
|
||||
|
||||
#### 4. Configure your disk
|
||||
|
||||
Edit the configuration file:
|
||||
|
||||
```bash
|
||||
nvim ./hosts/canopus/default.nix
|
||||
```
|
||||
|
||||
In the imports statement, replace:
|
||||
|
||||
```nix
|
||||
(import ./disko.nix {device = "/dev/nvme0n1";})
|
||||
```
|
||||
|
||||
with:
|
||||
|
||||
```nix
|
||||
(import ./disko.nix {device = "DISK_PATH";})
|
||||
```
|
||||
|
||||
Make sure to replace `DISK_PATH` with your actual disk path.
|
||||
|
||||
#### 5. Generate hardware configuration
|
||||
|
||||
```bash
|
||||
# Generate the hardware.nix file for your system
|
||||
nixos-generate-config --no-filesystems --root /mnt
|
||||
```
|
||||
|
||||
Copy the generated hardware configuration to the repository:
|
||||
|
||||
```bash
|
||||
# Replace the hardware.nix with generated one
|
||||
cp /mnt/etc/nixos/hardware-configuration.nix ./hosts/canopus/hardware.nix
|
||||
```
|
||||
|
||||
#### 6. Install NixOS
|
||||
|
||||
```bash
|
||||
# Install
|
||||
nixos-install --root /mnt --flake .#canopus
|
||||
```
|
||||
|
||||
#### 7. Enter into the new system
|
||||
|
||||
```bash
|
||||
nixos-enter --root /mnt
|
||||
```
|
||||
|
||||
#### 8. Set up directories and permissions
|
||||
|
||||
```bash
|
||||
mkdir -p /persist/home
|
||||
chown -R tux:users /persist/home
|
||||
```
|
||||
|
||||
#### 9. Set passwords
|
||||
|
||||
Set the root password:
|
||||
|
||||
```bash
|
||||
passwd root
|
||||
```
|
||||
|
||||
Set the user password:
|
||||
|
||||
```bash
|
||||
passwd tux
|
||||
```
|
||||
|
||||
#### 10. Reboot
|
||||
|
||||
```bash
|
||||
# Reboot to your beautiful DE
|
||||
reboot
|
||||
```
|
||||
|
||||
Your NixOS system should now boot into a beautiful DE.
|
||||
|
||||
## Components
|
||||
|
||||
| | Wayland | Xorg |
|
||||
@@ -155,30 +71,16 @@ Your NixOS system should now boot into a beautiful DE.
|
||||
| DM | ly | ly |
|
||||
| WM/DE | Hyprland | AwesomeWM |
|
||||
| Compositor | Hyprland | Picom (Jonaburg) |
|
||||
| Bar | tPanel | Wibar |
|
||||
| Bar | AGS | Wibar |
|
||||
| Hotkeys | Hyprland | Awful |
|
||||
| Launcher | tPanel | Rofi |
|
||||
| Notifications | tPanel | Naughty |
|
||||
| Launcher | AGS | Rofi |
|
||||
| Notifications | AGS | Naughty |
|
||||
| Terminal | Wezterm | Wezterm |
|
||||
| Editor | Neovim | Neovim |
|
||||
|
||||
## Showcase
|
||||
|
||||
### Desktop Hyprland
|
||||
|
||||

|
||||
|
||||
### tPanel
|
||||
|
||||

|
||||
|
||||
### Workflow
|
||||
|
||||

|
||||
|
||||
## Showcase
|
||||
|
||||
### Desktop AwesomeWM
|
||||
### Desktop
|
||||
|
||||

|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 3.2 MiB After Width: | Height: | Size: 3.2 MiB |
|
Before Width: | Height: | Size: 2.6 MiB After Width: | Height: | Size: 2.6 MiB |
|
Before Width: | Height: | Size: 439 KiB After Width: | Height: | Size: 439 KiB |
|
Before Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 1.9 MiB |
|
Before Width: | Height: | Size: 642 KiB |
|
Before Width: | Height: | Size: 487 KiB After Width: | Height: | Size: 487 KiB |
|
Before Width: | Height: | Size: 559 KiB After Width: | Height: | Size: 559 KiB |
|
Before Width: | Height: | Size: 574 KiB After Width: | Height: | Size: 574 KiB |
|
Before Width: | Height: | Size: 645 KiB After Width: | Height: | Size: 645 KiB |
383
flake.lock
generated
@@ -42,11 +42,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760101617,
|
||||
"narHash": "sha256-8jf/3ZCi+B7zYpIyV04+3wm72BD7Z801IlOzsOACR7I=",
|
||||
"lastModified": 1755946532,
|
||||
"narHash": "sha256-POePremlUY5GyA1zfbtic6XLxDaQcqHN6l+bIxdT5gc=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"rev": "1826a9923881320306231b1c2090379ebf9fa4f8",
|
||||
"rev": "81584dae2df6ac79f6b6dae0ecb7705e95129ada",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -124,11 +124,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760701190,
|
||||
"narHash": "sha256-y7UhnWlER8r776JsySqsbTUh2Txf7K30smfHlqdaIQw=",
|
||||
"lastModified": 1757508292,
|
||||
"narHash": "sha256-7lVWL5bC6xBIMWWDal41LlGAG+9u2zUorqo3QCUL4p4=",
|
||||
"owner": "nix-community",
|
||||
"repo": "disko",
|
||||
"rev": "3a9450b26e69dcb6f8de6e2b07b3fc1c288d85f5",
|
||||
"rev": "146f45bee02b8bd88812cfce6ffc0f933788875a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -139,15 +139,15 @@
|
||||
},
|
||||
"emacs": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761532382,
|
||||
"narHash": "sha256-j7UBuq/IbI2uYyFSbO4pRrRdQ4EPVFJSb4nmj2F8HhU=",
|
||||
"lastModified": 1758074676,
|
||||
"narHash": "sha256-9eBaBvXPcuEHgt0Hb2emoG4yqZqQ05yohsHBUazX8K0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "emacs-overlay",
|
||||
"rev": "b877b340deac13aeca7063f4801a1cbf9b8a4a00",
|
||||
"rev": "057134e47725e8f7b7fee1609ea8b4b434fd7007",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -315,6 +315,24 @@
|
||||
}
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": "systems_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"locked": {
|
||||
"lastModified": 1637014545,
|
||||
"narHash": "sha256-26IZAc5yzlD9FlDT54io1oqG/bBoyka+FJk5guaX4x4=",
|
||||
@@ -329,9 +347,9 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"flake-utils_4": {
|
||||
"inputs": {
|
||||
"systems": "systems_4"
|
||||
"systems": "systems_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
@@ -373,11 +391,11 @@
|
||||
"zon2nix": "zon2nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761535520,
|
||||
"narHash": "sha256-W1hIE64a5oNs++mqt2Z4l67AlT/m1h3kGtez4rmgLRI=",
|
||||
"lastModified": 1758065851,
|
||||
"narHash": "sha256-4yQjtJnX3tyDASjZTVRZWOBADrjJCaXMESFzM2uMvXQ=",
|
||||
"owner": "ghostty-org",
|
||||
"repo": "ghostty",
|
||||
"rev": "db75502fec94de27e7491a39082bd69eac827490",
|
||||
"rev": "0f0a61c38dbebbd70979afbd3df81bf143efca9d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -432,11 +450,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761574406,
|
||||
"narHash": "sha256-MoqeKxVuql6Bnj6CE/CG2CKcC0GJ2EgqYxUrYPRABdY=",
|
||||
"lastModified": 1758111822,
|
||||
"narHash": "sha256-Cpfyjkaft6yI5Ktvy2WTKDZehdU4sqKWs9EGaB2JFjs=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "aa888ffc10cad3ab6595039342f97d524fd620bf",
|
||||
"rev": "b035546241d842053c7f19c517e330d79d1dc801",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -490,11 +508,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760445448,
|
||||
"narHash": "sha256-fXGjL6dw31FPFRrmIemzGiNSlfvEJTJNsmadZi+qNhI=",
|
||||
"lastModified": 1757542864,
|
||||
"narHash": "sha256-8i9tsVoOmLQDHJkNgzJWnmxYFGkJNsSndimYpCoqmoA=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"rev": "50fb9f069219f338a11cf0bcccb9e58357d67757",
|
||||
"rev": "aa9d14963b94186934fd0715d9a7f0f2719e64bb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -519,11 +537,11 @@
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761572054,
|
||||
"narHash": "sha256-NuDXgcyWa9EfQZXs+7mXKTimzlxEdLV0kJR6gGcFU/8=",
|
||||
"lastModified": 1758110629,
|
||||
"narHash": "sha256-uHE+FdhKBohAUeO29034b68RN0ITf/KRy2tkaXQdLCY=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "560c53d87dedf7df8185eb370cfbf3575826e85c",
|
||||
"rev": "1cb8cd3930e2c8410bbc99baa0a5bea91994bd71",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -549,11 +567,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761249285,
|
||||
"narHash": "sha256-70dEwL5p3CB/00ODs2RHWUKTyafB+PF4Ld7IEMuO+no=",
|
||||
"lastModified": 1757774228,
|
||||
"narHash": "sha256-6jAtMjnWq8kty/dpPbIKxIupUG+WAE2AKMIKhxdLYNo=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-plugins",
|
||||
"rev": "81f6d1426537981fcbb921f8b5e470b1280ef8f3",
|
||||
"rev": "5ff379f4e525183cc6766ea95764b52ec97d8966",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -574,11 +592,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1759610243,
|
||||
"narHash": "sha256-+KEVnKBe8wz+a6dTLq8YDcF3UrhQElwsYJaVaHXJtoI=",
|
||||
"lastModified": 1749046714,
|
||||
"narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"rev": "bd153e76f751f150a09328dbdeb5e4fab9d23622",
|
||||
"rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -642,11 +660,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1759080228,
|
||||
"narHash": "sha256-RgDoAja0T1hnF0pTc56xPfLfFOO8Utol2iITwYbUhTk=",
|
||||
"lastModified": 1757508108,
|
||||
"narHash": "sha256-bTYedtQFqqVBAh42scgX7+S3O6XKLnT6FTC6rpmyCCc=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-qtutils",
|
||||
"rev": "629b15c19fa4082e4ce6be09fdb89e8c3312aed7",
|
||||
"rev": "119bcb9aa742658107b326c50dcd24ab59b309b7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -671,11 +689,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1758927902,
|
||||
"narHash": "sha256-LZgMds7M94+vuMql2bERQ6LiFFdhgsEFezE4Vn+Ys3A=",
|
||||
"lastModified": 1756810301,
|
||||
"narHash": "sha256-wgZ3VW4VVtjK5dr0EiK9zKdJ/SOqGIBXVG85C3LVxQA=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"rev": "4dafa28d4f79877d67a7d1a654cddccf8ebf15da",
|
||||
"rev": "3d63fb4a42c819f198deabd18c0c2c1ded1de931",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -696,11 +714,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1759619523,
|
||||
"narHash": "sha256-r1ed7AR2ZEb2U8gy321/Xcp1ho2tzn+gG1te/Wxsj1A=",
|
||||
"lastModified": 1756117388,
|
||||
"narHash": "sha256-oRDel6pNl/T2tI+nc/USU9ZP9w08dxtl7hiZxa0C/Wc=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"rev": "3df7bde01efb3a3e8e678d1155f2aa3f19e177ef",
|
||||
"rev": "b2ae3204845f5f2f79b4703b441252d8ad2ecfd0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -765,25 +783,6 @@
|
||||
"url": "https://codeberg.org/amjoseph/infuse.nix.git"
|
||||
}
|
||||
},
|
||||
"lan-mouse": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"rust-overlay": "rust-overlay"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760441707,
|
||||
"narHash": "sha256-PLDAQS4bJ6Q9+4tF5x6865PuUP+hLNEDyVrN4vTbwnA=",
|
||||
"owner": "feschber",
|
||||
"repo": "lan-mouse",
|
||||
"rev": "0a0d91b0da83349b89a17ee6839e180494553199",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "feschber",
|
||||
"repo": "lan-mouse",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"libpng": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
@@ -831,11 +830,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761451000,
|
||||
"narHash": "sha256-qBJL6xEIjqYq9zOcG2vf2nPTeVBppNJzvO0LuQWMwMo=",
|
||||
"lastModified": 1757822619,
|
||||
"narHash": "sha256-3HIpe3P2h1AUPYcAH9cjuX0tZOqJpX01c0iDwoUYNZ8=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-index-database",
|
||||
"rev": "ed6b293161b378a7368cda38659eb8d3d9a0dac4",
|
||||
"rev": "050a5feb5d1bb5b6e5fc04a7d3d816923a87c9ea",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -895,16 +894,17 @@
|
||||
},
|
||||
"nix-vscode-extensions": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761530505,
|
||||
"narHash": "sha256-SbuUyC5pfTcMa9JUqSxFyGJpCqoUsB74tboS22+lByY=",
|
||||
"lastModified": 1758073856,
|
||||
"narHash": "sha256-o13f4LtQnjSrViwSY5Nk5kwLL7ZSzqCdJNBFlisLW68=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-vscode-extensions",
|
||||
"rev": "5a5496a7d21265e0ce7641452daf6c560f0eb7a9",
|
||||
"rev": "4f7718392a369fad610c36d792d26386166f67e3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -917,14 +917,14 @@
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs_6"
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761409262,
|
||||
"narHash": "sha256-+rpIaK+0MBKuT4tC3h0Hh0FoX2Yy8mXuherWKcgONNg=",
|
||||
"lastModified": 1758071854,
|
||||
"narHash": "sha256-j+WhSfu+/gehgfV3zCVV7Nt8DERdXm8e3TAJ9r9wUtA=",
|
||||
"owner": "kaylorben",
|
||||
"repo": "nixcord",
|
||||
"rev": "f710d3dbf6688c6fa209b805c94127dedbcb0f44",
|
||||
"rev": "cebd8615c6e896b34083986eeee1a9b5c662689a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -935,11 +935,11 @@
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1760958188,
|
||||
"narHash": "sha256-2m1S4jl+GEDtlt2QqeHil8Ny456dcGSKJAM7q3j/BFU=",
|
||||
"lastModified": 1757943327,
|
||||
"narHash": "sha256-w6cDExPBqbq7fTLo4dZ1ozDGeq3yV6dSN4n/sAaS6OM=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "d6645c340ef7d821602fd2cd199e8d1eed10afbc",
|
||||
"rev": "67a709cfe5d0643dafd798b0b613ed579de8be05",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -956,11 +956,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761563673,
|
||||
"narHash": "sha256-d+1TpVAmRjcNBfjZsh2yQSdwUfN7Xgz1blJ185g73+A=",
|
||||
"lastModified": 1757937573,
|
||||
"narHash": "sha256-B+MT526k5th4x22h213/CgzdkKWIaeaa0+Y0uuCkH/I=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixos-wsl",
|
||||
"rev": "a518cf710e5ebb935518dc7ac98e07e7ee5014c3",
|
||||
"rev": "134e117c969f42277f1c5e60c8fbcac103c2c454",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1005,16 +1005,16 @@
|
||||
"inputs": {
|
||||
"emacs": "emacs",
|
||||
"infuse": "infuse",
|
||||
"nixpkgs": "nixpkgs_9",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"nixpkgs-fmt": "nixpkgs-fmt",
|
||||
"parts": "parts"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761535376,
|
||||
"narHash": "sha256-ZerN+biz7aJSihBAGPXn/O8g65oylPDQM6k6YVn6P88=",
|
||||
"lastModified": 1758077890,
|
||||
"narHash": "sha256-0vZDdgdF/CyjfpmXxLzJmj9p7uBnMCd4Ypaq0UeiN9c=",
|
||||
"owner": "moni-dz",
|
||||
"repo": "nixpkgs-f2k",
|
||||
"rev": "4c6ec5a7e2e5298c34c086b2d0f1e5b039a27c92",
|
||||
"rev": "53a0c297bd908bd7997b2d669182aedb9b9c4004",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1026,7 +1026,7 @@
|
||||
"nixpkgs-fmt": {
|
||||
"inputs": {
|
||||
"fenix": "fenix",
|
||||
"flake-utils": "flake-utils_2",
|
||||
"flake-utils": "flake-utils_3",
|
||||
"nixpkgs": [
|
||||
"nixpkgs-f2k",
|
||||
"nixpkgs"
|
||||
@@ -1094,16 +1094,16 @@
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1761173472,
|
||||
"narHash": "sha256-m9W0dYXflzeGgKNravKJvTMR4Qqa2MVD11AwlGMufeE=",
|
||||
"lastModified": 1751274312,
|
||||
"narHash": "sha256-/bVBlRpECLVzjV19t5KMdMFWSwKLtb5RyXdjz3LJT+g=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c8aa8cc00a5cb57fada0851a038d35c08a36a2bb",
|
||||
"rev": "50ab793786d9de88ee30ec4e4c24fb4236fc2674",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-25.05",
|
||||
"ref": "nixos-24.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -1126,27 +1126,11 @@
|
||||
},
|
||||
"nixpkgs_10": {
|
||||
"locked": {
|
||||
"lastModified": 1761373498,
|
||||
"narHash": "sha256-Q/uhWNvd7V7k1H1ZPMy/vkx3F8C13ZcdrKjO7Jv7v0c=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6a08e6bb4e46ff7fcbb53d409b253f6bad8a28ce",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_11": {
|
||||
"locked": {
|
||||
"lastModified": 1760596604,
|
||||
"narHash": "sha256-J/i5K6AAz/y5dBePHQOuzC7MbhyTOKsd/GLezSbEFiM=",
|
||||
"lastModified": 1757746433,
|
||||
"narHash": "sha256-fEvTiU4s9lWgW7mYEU/1QUPirgkn+odUBTaindgiziY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3cbe716e2346710d6e1f7c559363d14e11c32a43",
|
||||
"rev": "6d7ec06d6868ac6d94c371458fc2391ded9ff13d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1158,37 +1142,37 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 315532800,
|
||||
"narHash": "sha256-sV6pJNzFkiPc6j9Bi9JuHBnWdVhtKB/mHgVmMPvDFlk=",
|
||||
"rev": "82c2e0d6dde50b17ae366d2aa36f224dc19af469",
|
||||
"lastModified": 1748189127,
|
||||
"narHash": "sha256-zRDR+EbbeObu4V2X5QCd2Bk5eltfDlCr5yvhBwUT6pY=",
|
||||
"rev": "7c43f080a7f28b2774f3b3f43234ca11661bf334",
|
||||
"type": "tarball",
|
||||
"url": "https://releases.nixos.org/nixpkgs/nixpkgs-25.11pre877938.82c2e0d6dde5/nixexprs.tar.xz"
|
||||
"url": "https://releases.nixos.org/nixos/25.05/nixos-25.05.802491.7c43f080a7f2/nixexprs.tar.xz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"
|
||||
"url": "https://channels.nixos.org/nixos-25.05/nixexprs.tar.xz"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1758360447,
|
||||
"narHash": "sha256-XDY3A83bclygHDtesRoaRTafUd80Q30D/Daf9KSG6bs=",
|
||||
"rev": "8eaee110344796db060382e15d3af0a9fc396e0e",
|
||||
"lastModified": 1755972213,
|
||||
"narHash": "sha256-VYK7aDAv8H1enXn1ECRHmGbeY6RqLnNwUJkOwloIsko=",
|
||||
"rev": "73e96df7cff5783f45e21342a75a1540c4eddce4",
|
||||
"type": "tarball",
|
||||
"url": "https://releases.nixos.org/nixos/unstable/nixos-25.11pre864002.8eaee1103447/nixexprs.tar.xz"
|
||||
"url": "https://releases.nixos.org/nixos/unstable-small/nixos-25.11pre850642.73e96df7cff5/nixexprs.tar.xz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz"
|
||||
"url": "https://channels.nixos.org/nixos-unstable-small/nixexprs.tar.xz"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1761114652,
|
||||
"narHash": "sha256-f/QCJM/YhrV/lavyCVz8iU3rlZun6d+dAiC3H+CDle4=",
|
||||
"lastModified": 1757487488,
|
||||
"narHash": "sha256-zwE/e7CuPJUWKdvvTCB7iunV4E/+G0lKfv4kk/5Izdg=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "01f116e4df6a15f4ccdffb1bcd41096869fb385c",
|
||||
"rev": "ab0f3607a6c7486ea22229b92ed2d355f1482ee0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1199,22 +1183,6 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1752687322,
|
||||
"narHash": "sha256-RKwfXA4OZROjBTQAl9WOZQFm7L8Bo93FQwSJpAiSRvo=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6e987485eb2c77e5dcc5af4e3c70843711ef9251",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1754028485,
|
||||
"narHash": "sha256-IiiXB3BDTi6UqzAZcf2S797hWEPCRZOwyNThJIYhUfk=",
|
||||
@@ -1230,13 +1198,13 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1761373498,
|
||||
"narHash": "sha256-Q/uhWNvd7V7k1H1ZPMy/vkx3F8C13ZcdrKjO7Jv7v0c=",
|
||||
"lastModified": 1757745802,
|
||||
"narHash": "sha256-hLEO2TPj55KcUFUU1vgtHE9UEIOjRcH/4QbmfHNF820=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6a08e6bb4e46ff7fcbb53d409b253f6bad8a28ce",
|
||||
"rev": "c23193b943c6c689d70ee98ce3128239ed9e32d1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1246,34 +1214,50 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"locked": {
|
||||
"lastModified": 1757745802,
|
||||
"narHash": "sha256-hLEO2TPj55KcUFUU1vgtHE9UEIOjRcH/4QbmfHNF820=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c23193b943c6c689d70ee98ce3128239ed9e32d1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_8": {
|
||||
"locked": {
|
||||
"lastModified": 1761373498,
|
||||
"narHash": "sha256-Q/uhWNvd7V7k1H1ZPMy/vkx3F8C13ZcdrKjO7Jv7v0c=",
|
||||
"lastModified": 1758077456,
|
||||
"narHash": "sha256-BdoMXWGHPmciPf4pt0mVoHYV5s2DaHl+o/qW4g8SMHY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6a08e6bb4e46ff7fcbb53d409b253f6bad8a28ce",
|
||||
"rev": "789dbebe144b5f7d29197d27de9a01125ffb2e4b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"ref": "master",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1761532219,
|
||||
"narHash": "sha256-P1MRfYdKaKDAZ//yjV8/gj3xhVIH9SdqzNdHQKJmS3g=",
|
||||
"owner": "NixOS",
|
||||
"lastModified": 1757745802,
|
||||
"narHash": "sha256-hLEO2TPj55KcUFUU1vgtHE9UEIOjRcH/4QbmfHNF820=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "00f147ebfbb2c853a0681c9ae85edf1a43254593",
|
||||
"rev": "c23193b943c6c689d70ee98ce3128239ed9e32d1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "master",
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -1335,14 +1319,14 @@
|
||||
"nur": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": "nixpkgs_10"
|
||||
"nixpkgs": "nixpkgs_9"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761570745,
|
||||
"narHash": "sha256-gMESi6yA4/oafjgVh+vh1j+aS/s7gyxhyEINGb9rt68=",
|
||||
"lastModified": 1758109308,
|
||||
"narHash": "sha256-4AdIQNIxQkOjeOZ0ALsM6f2PA/vDG2rUVqhEGWpZFEE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nur",
|
||||
"rev": "0cf44196a53ace467e004a3cb18876de4d580cb5",
|
||||
"rev": "1db115a421a7cf95bd700b49482b63dcf9d9e80e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1356,11 +1340,11 @@
|
||||
"nixpkgs-lib": "nixpkgs-lib_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760948891,
|
||||
"narHash": "sha256-TmWcdiUUaWk8J4lpjzu4gCGxWY6/Ok7mOK4fIFfBuU4=",
|
||||
"lastModified": 1756770412,
|
||||
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "864599284fc7c0ba6357ed89ed5e2cd5040f0c04",
|
||||
"rev": "4524271976b625a4a605beefd893f270620fd751",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1379,11 +1363,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760663237,
|
||||
"narHash": "sha256-BflA6U4AM1bzuRMR8QqzPXqh8sWVCNDzOdsxXEguJIc=",
|
||||
"lastModified": 1757588530,
|
||||
"narHash": "sha256-tJ7A8mID3ct69n9WCvZ3PzIIl3rXTdptn/lZmqSS95U=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "ca5b894d3e3e151ffc1db040b6ce4dcc75d31c37",
|
||||
"rev": "b084b2c2b6bc23e83bbfe583b03664eb0b18c411",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1402,7 +1386,6 @@
|
||||
"hyprland": "hyprland",
|
||||
"hyprland-plugins": "hyprland-plugins",
|
||||
"impermanence": "impermanence",
|
||||
"lan-mouse": "lan-mouse",
|
||||
"nix-index-database": "nix-index-database",
|
||||
"nix-on-droid": "nix-on-droid",
|
||||
"nix-secrets": "nix-secrets",
|
||||
@@ -1410,7 +1393,7 @@
|
||||
"nixcord": "nixcord",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixos-wsl": "nixos-wsl",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"nixpkgs-f2k": "nixpkgs-f2k",
|
||||
"nixpkgs-stable": "nixpkgs-stable_2",
|
||||
"nur": "nur",
|
||||
@@ -1441,27 +1424,6 @@
|
||||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"lan-mouse",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1752806774,
|
||||
"narHash": "sha256-4cHeoR2roN7d/3J6gT+l6o7J2hTrBIUiCwVdDNMeXzE=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "3c90219b3ba1c9790c45a078eae121de48a39c55",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"rust-overlay_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"wezterm-flake",
|
||||
@@ -1500,14 +1462,14 @@
|
||||
},
|
||||
"sops-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_11"
|
||||
"nixpkgs": "nixpkgs_10"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760998189,
|
||||
"narHash": "sha256-ee2e1/AeGL5X8oy/HXsZQvZnae6XfEVdstGopKucYLY=",
|
||||
"lastModified": 1758007585,
|
||||
"narHash": "sha256-HYnwlbY6RE5xVd5rh0bYw77pnD8lOgbT4mlrfjgNZ0c=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "5a7d18b5c55642df5c432aadb757140edfeb70b3",
|
||||
"rev": "f77d4cfa075c3de66fc9976b80e0c4fc69e2c139",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1576,6 +1538,21 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_5": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tawm": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -1623,11 +1600,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1759575396,
|
||||
"narHash": "sha256-wFybL+I7KyCsb8g9PvJVmLAiIgFocCbYcH0z4B4V/JM=",
|
||||
"lastModified": 1758191570,
|
||||
"narHash": "sha256-5Icp/k7LFqoyo/UA0pQXREPnLvZhoaGBha4Kv8sv5X8=",
|
||||
"owner": "tuxdotrs",
|
||||
"repo": "tnvim",
|
||||
"rev": "13801bd8608abc9903fadcc240b143007d51dc32",
|
||||
"rev": "f3fc87a1412590563d50bbedd35ff4f0bc5a4b1f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1644,11 +1621,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760229755,
|
||||
"narHash": "sha256-g9R4PzkfPY9+Va92iUWRoTRYVrhyl72a6O5dehUHWIM=",
|
||||
"lastModified": 1759002991,
|
||||
"narHash": "sha256-11pZ+tGhOEIcIxipABQS1AnCR050dGipV3IArod8doI=",
|
||||
"owner": "tuxdotrs",
|
||||
"repo": "tpanel",
|
||||
"rev": "4b7ae63bc8b0f4cddd5485f923668a089d450c4d",
|
||||
"rev": "0f3fb291ec406ee333e4611eea24ccb4e7135407",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1697,23 +1674,23 @@
|
||||
},
|
||||
"wezterm-flake": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_3",
|
||||
"flake-utils": "flake-utils_4",
|
||||
"freetype2": "freetype2",
|
||||
"harfbuzz": "harfbuzz",
|
||||
"libpng": "libpng",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-overlay": "rust-overlay_2",
|
||||
"rust-overlay": "rust-overlay",
|
||||
"zlib": "zlib"
|
||||
},
|
||||
"locked": {
|
||||
"dir": "nix",
|
||||
"lastModified": 1761372218,
|
||||
"narHash": "sha256-DQQsgq3D78RHNf3YoiQRdYsxntJ4phl4DJ3pcM2DYv8=",
|
||||
"lastModified": 1757426712,
|
||||
"narHash": "sha256-z+jxV8FrUqmCS+aa3R38frr5dOVdA85P8SPIM7AkuMs=",
|
||||
"owner": "wez",
|
||||
"repo": "wezterm",
|
||||
"rev": "b6e75fd7c8f9c9ad5af4efbba1d28df0969f6b17",
|
||||
"rev": "bf9a2aeebacec19fd07b55234d626f006b22d369",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1752,11 +1729,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760713634,
|
||||
"narHash": "sha256-5HXelmz2x/uO26lvW7MudnadbAfoBnve4tRBiDVLtOM=",
|
||||
"lastModified": 1755354946,
|
||||
"narHash": "sha256-zdov5f/GcoLQc9qYIS1dUTqtJMeDqmBmo59PAxze6e4=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "753bbbdf6a052994da94062e5b753288cef28dfb",
|
||||
"rev": "a10726d6a8d0ef1a0c645378f983b6278c42eaa0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1781,11 +1758,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760401936,
|
||||
"narHash": "sha256-/zj5GYO5PKhBWGzbHbqT+ehY8EghuABdQ2WGfCwZpCQ=",
|
||||
"lastModified": 1748261582,
|
||||
"narHash": "sha256-3i0IL3s18hdDlbsf0/E+5kyPRkZwGPbSFngq5eToiAA=",
|
||||
"owner": "mitchellh",
|
||||
"repo": "zig-overlay",
|
||||
"rev": "365085b6652259753b598d43b723858184980bbe",
|
||||
"rev": "aafb1b093fb838f7a02613b719e85ec912914221",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1816,17 +1793,17 @@
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1758405547,
|
||||
"narHash": "sha256-WgaDgvIZMPvlZcZrpPMjkaalTBnGF2lTG+62znXctWM=",
|
||||
"lastModified": 1757167408,
|
||||
"narHash": "sha256-4XyJ6fmKd9wgJ7vHUQuULYy5ps2gUgkkDk/PrJb2OPY=",
|
||||
"owner": "jcollie",
|
||||
"repo": "zon2nix",
|
||||
"rev": "bf983aa90ff169372b9fa8c02e57ea75e0b42245",
|
||||
"rev": "dc78177e2ad28d5a407c9e783ee781bd559d7dd5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "jcollie",
|
||||
"repo": "zon2nix",
|
||||
"rev": "bf983aa90ff169372b9fa8c02e57ea75e0b42245",
|
||||
"rev": "dc78177e2ad28d5a407c9e783ee781bd559d7dd5",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -66,7 +66,6 @@
|
||||
alpha = nixosSystem (mkNixOSConfig "alpha");
|
||||
sirius = nixosSystem (mkNixOSConfig "sirius");
|
||||
vega = nixosSystem (mkNixOSConfig "vega");
|
||||
node = nixosSystem (mkNixOSConfig "node");
|
||||
vps = nixosSystem (mkNixOSConfig "vps");
|
||||
isoImage = nixosSystem (mkNixOSConfig "isoImage");
|
||||
homelab = nixosSystem (mkNixOSConfig "homelab");
|
||||
@@ -86,7 +85,6 @@
|
||||
alpha = mkNixOSNode "alpha";
|
||||
sirius = mkNixOSNode "sirius";
|
||||
vega = mkNixOSNode "vega";
|
||||
node = mkNixOSNode "node";
|
||||
homelab = mkNixOSNode "homelab";
|
||||
capella = mkDroidNode "capella";
|
||||
rigel = mkDroidNode "rigel";
|
||||
@@ -168,6 +166,5 @@
|
||||
impermanence.url = "github:nix-community/impermanence";
|
||||
deploy-rs.url = "github:serokell/deploy-rs";
|
||||
nixcord.url = "github:kaylorben/nixcord";
|
||||
lan-mouse.url = "github:feschber/lan-mouse";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -153,7 +153,6 @@
|
||||
];
|
||||
};
|
||||
|
||||
users.users.${username} = {linger = true;};
|
||||
home-manager.users.${username} = {
|
||||
imports = [
|
||||
./home.nix
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
../../modules/nixos/selfhosted/headscale.nix
|
||||
../../modules/nixos/selfhosted/vaultwarden.nix
|
||||
../../modules/nixos/selfhosted/gitea.nix
|
||||
../../modules/nixos/selfhosted/umami.nix
|
||||
../../modules/nixos/selfhosted/plausible.nix
|
||||
../../modules/nixos/selfhosted/monitoring/grafana.nix
|
||||
../../modules/nixos/selfhosted/monitoring/loki.nix
|
||||
../../modules/nixos/selfhosted/monitoring/promtail.nix
|
||||
@@ -35,18 +35,6 @@
|
||||
];
|
||||
|
||||
tux.services.openssh.enable = true;
|
||||
tux.containers.aiostreams = {
|
||||
enable = true;
|
||||
port = 4567;
|
||||
environment = {
|
||||
ADDON_ID = "aiostreams.tux.rs";
|
||||
BASE_URL = "https://aiostreams.tux.rs";
|
||||
};
|
||||
|
||||
environmentFiles = [
|
||||
config.sops.secrets."aiostreams".path
|
||||
];
|
||||
};
|
||||
|
||||
sops.secrets = {
|
||||
borg_encryption_key = {
|
||||
@@ -93,14 +81,6 @@
|
||||
"cs2_secrets/CS2_PW" = {
|
||||
sopsFile = ./secrets.yaml;
|
||||
};
|
||||
|
||||
aiostreams = {
|
||||
sopsFile = ./secrets.yaml;
|
||||
};
|
||||
|
||||
umami = {
|
||||
sopsFile = ./secrets.yaml;
|
||||
};
|
||||
};
|
||||
|
||||
nixpkgs = {
|
||||
@@ -164,13 +144,7 @@
|
||||
|
||||
firewall = {
|
||||
enable = true;
|
||||
allowedTCPPorts = [
|
||||
80
|
||||
443
|
||||
22
|
||||
3333
|
||||
8081
|
||||
];
|
||||
allowedTCPPorts = [80 443 22 3333 8081];
|
||||
};
|
||||
};
|
||||
|
||||
@@ -233,9 +207,6 @@
|
||||
];
|
||||
};
|
||||
|
||||
users.users.${username} = {
|
||||
linger = true;
|
||||
};
|
||||
home-manager.users.${username} = {
|
||||
imports = [
|
||||
./home.nix
|
||||
|
||||
@@ -11,9 +11,11 @@ cs2_secrets:
|
||||
SRCDS_TOKEN: ENC[AES256_GCM,data:SzPz4sHDgEoioX8ylLFM6AUUS60gWYpR3ifxUD8A8IQga24t6GM0dyGDryc=,iv:XefIn9yCLPLKVRA+rZiSGUH3l6ZANIJoGRuM/3vFLIw=,tag:flEjl9c7i3XBlHJaq41QYQ==,type:str]
|
||||
CS2_RCONPW: ENC[AES256_GCM,data:ZyVeoOngZjxKR/ObYo5yJC1ViCNufuA=,iv:+fJK0sY39V/iH7OjT0AzQq6RefVzLZCDETYcAMFnZNU=,tag:IOhRUQRdffNMXa2cKZvi/w==,type:str]
|
||||
CS2_PW: ENC[AES256_GCM,data:W1Cur7YT1F/+45vmqif2JbpjVURfnfo=,iv:sBNDM2N+QWDAMculBBZtYZcM7ILEfpwkwOd7ErORQhI=,tag:XFsxTUjctZKU38RQUfJ8HQ==,type:str]
|
||||
aiostreams: ENC[AES256_GCM,data:2U2EoRUsKr4OIkqrudmIUEp2bABNlSlNUTzR3vtvTfSJVemIGK31iu0SG8aR4tLSQFEZyhIP9M22zZJVWY5hX1UcMEJ1rmtXnaRjTiurRSpTj76pT9plnrjp0NWDcSWY+uhDrAsEko4oPPJEECTT3qMYLXipnzqpPeWsTrNYiuxmfDPcZw==,iv:tHKbtnLMNfY7B2ssE8x0dri9XhA2M6jIj2KOxOsmG2o=,tag:8hjqmniL/P+PfwfYiAdAwA==,type:str]
|
||||
umami: ENC[AES256_GCM,data:BJN9VpwknBaX+mz6xjq1GX9epM2bukplraPw67TttnLhM9JTmZiela5oFWZiaGjG3Oss3n4WPsPvhC4m28Ah+TQLCoiDFCFqervk228=,iv:YwbJ2/1hXs5Jbqx1dNj1t4ExFS27PWbA4NT9h8/tyU8=,tag:+R1aRF/TaMSGbLDi9GnYwA==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age:
|
||||
- recipient: age14vktfes95f33vuefwnmuvryas7az04u76dsgyhfvsx73czkvmp2q7njkl4
|
||||
enc: |
|
||||
@@ -33,7 +35,8 @@ sops:
|
||||
NGprRGVyZ2plWVNrM3drM3JSUjM2L0UKuNk5DqYn2DIfRpY72zDRP5BKoVAXtNv9
|
||||
uLI//8wc7f4I3uBdARQdpRE1fapY1UOJOn3i0yndrZARPEbdohRK1Q==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-11-14T08:22:34Z"
|
||||
mac: ENC[AES256_GCM,data:IiZKrdo500rf0JS2c94u1XiCtIB6QguJr1XKFcPilxN4G7coUJyD8v/z/BDqSyCDbiY6RjRWoyttyi1gzKlj/WQsJh65tbDHTXhk2nPGBoHL4ojnP1a7PYCaRKk64SyBg6vjNWHb0wILc2wu/yvKNfVKX6FtMEGhUcpReoJomAI=,iv:a4hmm47FAHnY2k+YY+WmLUWjpEE+5KwtUxc+Dq6sCMQ=,tag:Rx0yOoiKd2mRx/H5k8Hq8w==,type:str]
|
||||
lastmodified: "2025-01-24T12:59:25Z"
|
||||
mac: ENC[AES256_GCM,data:WGWGvbqu07XZ5oU2HBGUbP/9oNCavPBXb2SIm10CG2s377QAWZmpdOC2AGAX8J3NfLtyWEHm8WUQSKjNKvKWARsXU24lNnY+BTSIkF8ymrAU/rRMX8VJi92IYjregAfVBIaYomxqJFhNuAhmsQ75ZYMpRBTusxiEFEdl/H9obiY=,iv:VXIVkpnOY2gZ/xDX/oFvZn08K5Gp49tpiJQGK20blro=,tag:Hkk92ZQWTRY9oQb3Mm6R3w==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.11.0
|
||||
version: 3.9.3
|
||||
|
||||
@@ -21,9 +21,8 @@
|
||||
../../modules/nixos/steam.nix
|
||||
];
|
||||
|
||||
hardware.nvidia-container-toolkit.enable = true;
|
||||
tux.services.openssh.enable = true;
|
||||
tux.packages.distrobox.enable = true;
|
||||
|
||||
nixpkgs.config.cudaSupport = true;
|
||||
|
||||
sops.secrets = {
|
||||
@@ -61,7 +60,7 @@
|
||||
];
|
||||
|
||||
# Facilitate firewall punching
|
||||
allowedUDPPorts = [41641 4242];
|
||||
allowedUDPPorts = [41641];
|
||||
|
||||
allowedTCPPortRanges = [
|
||||
{
|
||||
@@ -236,8 +235,15 @@
|
||||
openDefaultPorts = true;
|
||||
};
|
||||
|
||||
xserver = {
|
||||
enable = true;
|
||||
xkb = {
|
||||
layout = "in";
|
||||
variant = "eng";
|
||||
};
|
||||
};
|
||||
|
||||
libinput.touchpad.naturalScrolling = true;
|
||||
libinput.mouse.accelProfile = "flat";
|
||||
|
||||
# To use Auto-cpufreq we need to
|
||||
# disable TLP because it's enabled by nixos-hardware
|
||||
@@ -284,31 +290,26 @@
|
||||
enableUserService = true;
|
||||
asusdConfig.text = ''
|
||||
(
|
||||
charge_control_end_threshold: 80,
|
||||
charge_control_end_threshold: 100,
|
||||
panel_od: false,
|
||||
mini_led_mode: false,
|
||||
disable_nvidia_powerd_on_battery: true,
|
||||
ac_command: "",
|
||||
bat_command: "",
|
||||
|
||||
platform_profile_linked_epp: true,
|
||||
platform_profile_on_battery: Quiet,
|
||||
platform_profile_on_ac: Performance,
|
||||
|
||||
change_platform_profile_on_battery: true,
|
||||
change_platform_profile_on_ac: true,
|
||||
|
||||
profile_quiet_epp: Power,
|
||||
profile_balanced_epp: BalancePower,
|
||||
profile_custom_epp: Performance,
|
||||
profile_performance_epp: Performance,
|
||||
|
||||
ac_profile_tunings: {},
|
||||
dc_profile_tunings: {},
|
||||
armoury_settings: {},
|
||||
platform_policy_on_battery: Quiet,
|
||||
platform_policy_on_ac: Quiet,
|
||||
ppt_pl1_spl: None,
|
||||
ppt_pl2_sppt: None,
|
||||
ppt_fppt: None,
|
||||
ppt_apu_sppt: None,
|
||||
ppt_platform_sppt: None,
|
||||
nv_dynamic_boost: None,
|
||||
nv_temp_target: None,
|
||||
)
|
||||
'';
|
||||
profileConfig.text = ''
|
||||
(
|
||||
active_profile: Quiet,
|
||||
active_profile: Balanced,
|
||||
)
|
||||
'';
|
||||
fanCurvesConfig.text = ''
|
||||
@@ -319,13 +320,13 @@
|
||||
fan: CPU,
|
||||
pwm: (2, 22, 45, 68, 91, 153, 153, 153),
|
||||
temp: (55, 62, 66, 70, 74, 78, 78, 78),
|
||||
enabled: false,
|
||||
enabled: true,
|
||||
),
|
||||
(
|
||||
fan: GPU,
|
||||
pwm: (2, 25, 48, 71, 94, 165, 165, 165),
|
||||
pwm: (2, 25, 48, 71, 94, 165, 165, 165)
|
||||
temp: (55, 62, 66, 70, 74, 78, 78, 78),
|
||||
enabled: false,
|
||||
enabled: true,
|
||||
),
|
||||
],
|
||||
performance: [
|
||||
@@ -333,19 +334,19 @@
|
||||
fan: CPU,
|
||||
pwm: (35, 68, 79, 91, 114, 175, 175, 175),
|
||||
temp: (58, 62, 66, 70, 74, 78, 78, 78),
|
||||
enabled: false,
|
||||
enabled: true,
|
||||
),
|
||||
(
|
||||
fan: GPU,
|
||||
pwm: (35, 71, 84, 94, 119, 188, 188, 188),
|
||||
temp: (58, 62, 66, 70, 74, 78, 78, 78),
|
||||
enabled: false,
|
||||
enabled: true,
|
||||
),
|
||||
],
|
||||
quiet: [
|
||||
(
|
||||
fan: CPU,
|
||||
pwm: (2, 12, 22, 35, 45, 58, 79, 79),
|
||||
pwm: (2, 12, 25, 35, 48, 61, 84, 90),
|
||||
temp: (55, 62, 66, 70, 74, 78, 82, 82),
|
||||
enabled: true,
|
||||
),
|
||||
|
||||
@@ -7,25 +7,13 @@
|
||||
partitions = {
|
||||
# EFI Partition
|
||||
ESP = {
|
||||
size = "1G";
|
||||
size = "512M";
|
||||
type = "EF00";
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "vfat";
|
||||
mountpoint = "/boot";
|
||||
mountOptions = [
|
||||
"defaults"
|
||||
"umask=0077"
|
||||
];
|
||||
};
|
||||
};
|
||||
# Swap Partition
|
||||
swap = {
|
||||
size = "32G";
|
||||
content = {
|
||||
type = "swap";
|
||||
discardPolicy = "both";
|
||||
resumeDevice = true; # Enable hibernation
|
||||
mountOptions = ["defaults" "umask=0077"];
|
||||
};
|
||||
};
|
||||
# Btrfs Root Partition
|
||||
@@ -36,19 +24,11 @@
|
||||
type = "btrfs";
|
||||
subvolumes = {
|
||||
"/root" = {
|
||||
mountOptions = [
|
||||
"compress=zstd"
|
||||
"noatime"
|
||||
"space_cache=v2"
|
||||
]; # Compression for better performance
|
||||
mountOptions = ["compress=zstd"]; # Compression for better performance
|
||||
mountpoint = "/"; # Root subvolume
|
||||
};
|
||||
"/persist" = {
|
||||
mountOptions = [
|
||||
"compress=zstd"
|
||||
"noatime"
|
||||
"space_cache=v2"
|
||||
]; # Compression for persistent data
|
||||
mountOptions = ["compress=zstd"]; # Compression for persistent data
|
||||
mountpoint = "/persist"; # Persistent subvolume
|
||||
};
|
||||
"/nix" = {
|
||||
@@ -56,7 +36,6 @@
|
||||
"compress=zstd"
|
||||
"noatime"
|
||||
"noacl"
|
||||
"space_cache=v2"
|
||||
]; # Optimize for Nix store
|
||||
mountpoint = "/nix"; # Nix subvolume
|
||||
};
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
../../modules/home/wezterm
|
||||
../../modules/home/ghostty
|
||||
../../modules/home/desktop/rofi
|
||||
../../modules/home/lan-mouse
|
||||
../../modules/home/barrier
|
||||
../../modules/home/firefox
|
||||
../../modules/home/brave
|
||||
../../modules/home/vs-code
|
||||
@@ -28,7 +28,6 @@
|
||||
home.pointerCursor = {
|
||||
package = pkgs.bibata-cursors;
|
||||
name = "Bibata-Modern-Ice";
|
||||
size = 28;
|
||||
};
|
||||
|
||||
qt = {
|
||||
@@ -77,6 +76,7 @@
|
||||
copyq
|
||||
vlc
|
||||
tor-browser
|
||||
distrobox
|
||||
bluetui
|
||||
impala
|
||||
];
|
||||
@@ -90,14 +90,12 @@
|
||||
"Videos"
|
||||
"Projects"
|
||||
"Stuff"
|
||||
"Distrobox"
|
||||
"go"
|
||||
".mozilla"
|
||||
".ssh"
|
||||
".wakatime"
|
||||
".rustup"
|
||||
".cargo"
|
||||
".steam"
|
||||
".cache/spotify-player"
|
||||
".config/BraveSoftware"
|
||||
".config/copyq"
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
hyperbolic_api_key: ENC[AES256_GCM,data:WGvF0PPbMd7zWiO8GfmgluV7dW+ZpzLMO31uI5xo+nekvTBkXiAuHFDK/SXKEUFDMEboNkA/a6JUNsCRhuA4N7qhIZgyQ2bc1iafsj7c4F4X/py63Z4bMx8+byScOSoW+RKAvSFOLDGXQ4s9dKc3XNW7G15QyzTRYUFDbXxsSQ6n6DMJk4jr,iv:o+Shbpl3tXmefpdQB5sod3bNQHHsBnEEP0Bk3C1H5Yo=,tag:fi+7K3nAjVoavqy2Mt8W3Q==,type:str]
|
||||
gemini_api_key: ENC[AES256_GCM,data:ToQn6NiBpebcSPIHbnAyTJm092Xv24pb7Q09hW/Qb0qZC0ORJGG5,iv:/VIw5hTKlZLaWYdEyaEvIv/ZPTBhq5OkguPL6wFs8A8=,tag:44tNJTBeHYW1ug+z+yKTrw==,type:str]
|
||||
open_router_api_key: ENC[AES256_GCM,data:QLXIEqsUe8HQobJMvqh8fZi7azXjnz7B524kDPWB8Dk5tAv6EVvM0KHAa6aTGmeMB8LJiUPcLmPU0ifU07s2OyB3Q9w+IFvlfQ==,iv:pBr8SJG8FHP1oYrXrHG0gRMPfdXXoBNPGcYEXF3IJGg=,tag:Yf2FuncT3/9pcBIEN+irGQ==,type:str]
|
||||
hyperbolic_api_key: ENC[AES256_GCM,data:FjDSbdutLa9hnVGRR+k2MznVfDGAx1/rNfjY/vaBuvKoBRj7aHqGpQ1cvhfxjyLMqPLqLnmimEtZeykvgkIIjKGzw5PewE23+lrN3oQyoYJvK+b8PRStjSaxOfzOnuLXi+YVnsU939nStLwnmSYKDabNWgFcWYsHwtHDafuWyovM9sVwasTn,iv:bxseG6GLKBL/CJOS8SrhgiLEyvMGSNQIMJSYLk2MqEo=,tag:4wxmkUwlcu23d7pMHbvIoQ==,type:str]
|
||||
gemini_api_key: ENC[AES256_GCM,data:HiseQDB9nJBynCvdqLx0NcJZHB71uEvBlA3l/Lw2EMHFUXSHqPoS,iv:4C5EGUdfwxhT6ExDYNcbc+MFE+rGvLRsZjbo9L/o/Eo=,tag:hvaODOzhFoywgsXZSQKeKA==,type:str]
|
||||
open_router_api_key: ENC[AES256_GCM,data:DMQojeQymXckIHj7O+CIucvMzhyLXEYt4VJNkpbJj8OnBlXlm46m75i2IL+SduzzOfH3GdGI8/5JcnXbt76M/2DFemYi6CcgrQ==,iv:OBTREDwI+aOXg5TNdU6rVilQnAngn0vuW2nIrGGozm4=,tag:P+2C+0IfjZqKBD/B+FR09Q==,type:str]
|
||||
sops:
|
||||
age:
|
||||
- recipient: age14vktfes95f33vuefwnmuvryas7az04u76dsgyhfvsx73czkvmp2q7njkl4
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAwZ1V0UE0vT3FoZDhKYXBi
|
||||
ODRvNGRmZzZQY2t0VDNYTzgzUW5TMlFRQzBnCm9sZEJ1WmY0QU1KR1AwS3R0NXlh
|
||||
cHhYNjA2TWM3Z1JZM2E1UHluNzdBYXcKLS0tIFRwQm10VlJEUVFyemRGYXpUNHhq
|
||||
eWNJdzc2dlNlR1N1THAzSVlDNEZZMUUK7kacPvAuwbl0hggMuKJS/hjy0j+i1Oeh
|
||||
tw7bdZ6do30sf9uY8TWDCeOiK1uOJGATLcDd14VhHl968By8n/5pDw==
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBwUnhkNzR0TnNzL29xV3cv
|
||||
R3lqYUtVWWlNOVFTZHhTMWJZL1ZJUDIxaG0wCnIvQnkxSWJxWTZYVEkvS1ZWSEhk
|
||||
YmhuK2JtS3lmUjV6MW50SGZrTnpkeDAKLS0tIDkvbk5abnhkNlA0dmgwV0Z0L1BS
|
||||
UUduZUV3OGcvaFdBOFFsc0xzVCtQcUUKrmZvR2onMD0snqPw8okxaK6Tz5sA/cmR
|
||||
1ZczgwLslJA7kwGKYOslUGA7aGB4jyP+M74wBAVa71BqWatypp0RfA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1x36yr8h993srfj29sfpzt4wyz52nztvncpmhgmfs0j26qvfecq3qvcm0an
|
||||
- recipient: age1udt3cssu7ahdrhsvckt8450rswrr6mknn36xpq74dkfp9lpajvnq84kdzj
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSByZk42NzVUMXV0ZDVWR3Q2
|
||||
N3NUN1B3blNZS1lKbEU1VmhaTDVOMmFESm1FCi9VeEFXVkRjUnFxYUxERUg0ODY4
|
||||
eFhFMXhOek1wWTRwOEd6Zk82Sm9VM0UKLS0tIGVBMHpQSWJzMVUxU09XeS8yVXFW
|
||||
UVM3a1VIMWZGRGNxaUNwbStKekd4N28KvouH73cSd9xMUzDX3ib5tsR8deXGaGTB
|
||||
N36MxnZcv9AhX7YErc18OkUv+lHZf2MoJ+x5+XOMCjhlUOlvqcBrAg==
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBEOE0xbDN0UmdVdE1DR1lo
|
||||
dmNudDk2TjNQdHFGc0lJTSt0dVVRU3BPRlg0ClV1ZUdxRVNpSmhYQm80QjdhdFc5
|
||||
SVI4bi93WDBDWHQvejJIV21Bc2NsMjgKLS0tIEduZ2hHSnI3UXlGU2ZFZkpTRDJo
|
||||
K0tiZ0swMmpuVW02OHMrRThlOXBWUjQKYHyJZuvQABh+gJ+THQ5SakVEqsKkyBMb
|
||||
k6KnjRATpdZlmm0GjbD4aasF/j/V2fuH327Z72jPWQuI1y5ZfbDhSg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-10-10T10:15:15Z"
|
||||
mac: ENC[AES256_GCM,data:ZkWoHKbfC9xqShgOy3KCDPzziQq6hHc6h/o+3MGd31juW2OLlkk4skyxF/u5Eoq6hAeMU27mKu3TnyvCQA3gv1trP5CObs5Cc/Rp8odN+B6549Ec5ljojQbmwwsTti3vo6CbbZXjBZyy6WzJqKWm6yotzp3AFC0CMe+GhsmKY30=,iv:JWWwy5mYdLOHQQ0f2mtRiAkG1LF0ckIe8ndrZfXuZ7Y=,tag:b3DCwgBBBmcJAEnL2qOH5g==,type:str]
|
||||
lastmodified: "2025-09-18T10:09:49Z"
|
||||
mac: ENC[AES256_GCM,data:EWSA3CNDLUiY9ClcvadRNREanBnZ7DMDcPG0cXFaoHQ+YwK0o0lTX6g03CqEoanApWMWHljV7Yc44n1+KIMCHok+3KmjesmpmhvVVJqEO5fiqqtKR2OAaqIWZ2u7yvHdIvajoI5xaE7CTOHStf5dZHuIoWQYGx9Qxu0PycL7E/0=,iv:c8wQtWbUM7mLmh8OwZYsm8ZnubSEYMrXhf9IQDhgIkk=,tag:nOY16LFcbVB1CpTyMpU8AQ==,type:str]
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.10.2
|
||||
|
||||
@@ -15,9 +15,7 @@
|
||||
../../modules/nixos/selfhosted/upstream-proxy.nix
|
||||
../../modules/nixos/selfhosted/tfolio.nix
|
||||
../../modules/nixos/selfhosted/cyber-tux.nix
|
||||
../../modules/nixos/selfhosted/containers/aiostreams.nix
|
||||
../../modules/nixos/networking/ssh.nix
|
||||
../../modules/nixos/distrobox.nix
|
||||
];
|
||||
|
||||
sops.secrets.tux-password = {
|
||||
@@ -50,14 +48,7 @@
|
||||
home-manager = {
|
||||
backupFileExtension = "hm-backup";
|
||||
useUserPackages = true;
|
||||
extraSpecialArgs = {
|
||||
inherit
|
||||
inputs
|
||||
outputs
|
||||
username
|
||||
email
|
||||
;
|
||||
};
|
||||
extraSpecialArgs = {inherit inputs outputs username email;};
|
||||
users.${username} = {
|
||||
imports = [
|
||||
./home.nix
|
||||
|
||||
@@ -1,88 +1,79 @@
|
||||
tux-password: ENC[AES256_GCM,data:yAqMKsk7uz0F0k32PdYnqAmn+tdLyXl2krvMstdgFCvIUZH8TlATWCUMPUtnxQiTQqCUY+Q8LE+yYcFFGC3r5TskbF98igZTDA==,iv:hkE/21gdD2bCEdIITrhm9lhKRTHhCPeo8YaYS61/dEM=,tag:/tz2Xvy2ro9gGwKHrJuuzw==,type:str]
|
||||
tux-password: ENC[AES256_GCM,data:ysw9mJef/l7WdXP9cCSM88GX019UMr8od80rSwZBftN8tWDGPe0/mdRmePXxaEY9yEXhvRON/4IaFIPVQ3VnbExcGrnbV5+u9A==,iv:P+BnLLJs7ePJvsBHgsaISvjy33KtLFQENS+YB2eroGI=,tag:D4dTQXzmBkeCkdFu2Ozlcg==,type:str]
|
||||
sops:
|
||||
age:
|
||||
- recipient: age14vktfes95f33vuefwnmuvryas7az04u76dsgyhfvsx73czkvmp2q7njkl4
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBXaTFZSENQZDcvczUrVFF6
|
||||
Mm1GV3pqSzVPd2pQaUp3ZGRJS0kzMExXSmtJCkVwR1VxbUhCTTlKVHlLR0kvWkFO
|
||||
R2VmQWhzSEsya3I4b1JRWnFSbXdUanMKLS0tIFR5bkU3cEVHL3BlUFRjL2l2ZDBK
|
||||
WUVaZzFCQkc0KzRNQlRRdGNvWFdQNkUKhxAV3VavBzjSQHJPNn+Ghspi1scCq7dS
|
||||
Qu81Q24kMK9sL7ddTjB7UqCgZ3LHq+Izzw5cSYVy+nq150oCBURnoA==
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSByVkUyUU8wbXNqY0JVb2RD
|
||||
N3NiNXJ3Tzc0bjU2QnJrbDcxTDVQeUJUYVhFCnNud3lXWmh5azByaEk0dkIyT1dP
|
||||
V0NKMzlpdTZaM2JpTyt4L1V1M2l1MGsKLS0tIDlzbjVHNUw4ci9mZ0tBaVhSNjJS
|
||||
MFdDa3hHMTlmU05TN2UxY3dhdGVFdU0KQ+hjPwBpv8g3x/N+Yd4kwUtiIxXDcZRx
|
||||
EFjLnDiOA5gkZqXCo05E1lXJN17wU59pYs1+1pfBYbGKc2oV+3oquw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1f860dfewlx5jtt9ejr47gywx70p3dmyc8mat29gpr75psljwjv8q5xyxkq
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBNVGdJQTdBVHAxTmFoeThj
|
||||
RWE0QjBiQUt5UkdDZzBRQm5vTUtGZmRxQ2xvCkRiUDIxUkV3ZW5Jd1ZoZWRzeE03
|
||||
T0VPZE9pYXJGclVZSTJRM1JaVjM3VU0KLS0tIGFXQ3pRWXFYYWkrYngyZDJST2Jr
|
||||
UlAzTFdxMENxckVpL05ReENjZHk3b1UK1NEgbZ5AMf9h6zlfIHL7ugNSyQ156T5r
|
||||
x3l7nFrvxAWE9aTzn03hFjgRP72If6k/3pHJmT8h2494+K20qAmx6g==
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBqM1Z4MlNwY1VxdXF6RG1P
|
||||
cWQ0S0hMOWh0aUUrdVF5VDVWZVNDYi82NERjCmZFSEdyNXNLMXBHeUp4NUNpZnp4
|
||||
UEVWZEJhZC9YSzgzb1VVMDNsdUk2K00KLS0tIGpqaS92NmJzVXRRb09SSGhJYTlE
|
||||
ZmpXd09Eam5EN1ExZFdYVXUxUEp5S0UKWZG87YOWIZR/eIFRjyZt4Jf8St+NEk/L
|
||||
obwyOlDnRJ9wI30g9VXMoYTUdZcebY6t6tmRvIKL4pbadua2JXwamg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1x36yr8h993srfj29sfpzt4wyz52nztvncpmhgmfs0j26qvfecq3qvcm0an
|
||||
- recipient: age1udt3cssu7ahdrhsvckt8450rswrr6mknn36xpq74dkfp9lpajvnq84kdzj
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBwZE16cm5vNzhVSkY5K2hV
|
||||
MWRaMHNIL1Q2cDZ0eHozbTJJWklKb09BK213CkFSazJGdnBWQnRvQ2Zlc1JQazZV
|
||||
VWVMb1FpcUZMeURQSXJBTkJGeVdCeUkKLS0tIG1uRDJ4T2pRaVY1aERQOWhZdGl0
|
||||
b3JVbHNpY1B5ekpodHp3ZXlrZFplNFEKiRPqPKh3g33a2/fQVrj8qGOcXheVaLgA
|
||||
CAShzomubIQNFZUnl12hjH+ZcKlAwYFXzCrHUNdkEUWRIASqGa5oMA==
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQelFwUGIzc1RuVFpGYzd6
|
||||
cjZOM3FGUDlPVTVuRkxqalEwamhlVjNFdVVBCjBiWFN0RVArYWNoL2ZuYXhSN0Y0
|
||||
eTFEWFdYUFJVWU53cmNURS9jNEJTSDgKLS0tIHd3SFlISGdVSTBJSmd3UUp0VVBE
|
||||
MCt6ZnMzRDNEK3I3ZXFucjRXRDJ3Wm8KltIXRrGVkr3AOvQ44/nlsqmGW6s/hlHF
|
||||
84elOBidwgb95RIhetUppD6jUJz2p0GHIsIvEc9AuZRbPkntmVjHkA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1jg642q775gmnmxeu29gcf3lph8vem4xr8t84cxe809dpd0myrussh49h60
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAvQ3UybGxJaUU5ckdDak5F
|
||||
d3RJdlR3VHNHZTJ0UXhXc08wSVVXZVFZb2lvClZGSzV6QmhqL01rYjhjdjNKT2RT
|
||||
V3k1QUF4VXBNb2d6dnA0N2lNNnpXS00KLS0tICs3bWRHMGZiMmM4S3YyY0ttRWZ1
|
||||
Snd1QTlRUndzK0RSUld1TlRkNU13cHMKTZsBN/4nBfEndip/vCUNtFZF89MKT8uA
|
||||
C/hKD33ycaLNzmgxz3VRSCxeALMspeobeOLfRHJLflusD9xGgXn73A==
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAxQXR2QVJCSk92WGF1dGxK
|
||||
K0o3V3dPTS9ZZHBDUEcrVWxKMzZpem5uL0VFCnB2c2hIcmxQTWdmTHhnVFhLQXhT
|
||||
b3V4Y01JSUdYMThqNy8zVEI4QXc3SmcKLS0tIDBuekhnaWRGUVF4a0tseUQxZW55
|
||||
L1VsWHljZ3VaMjNkbHhhYlVTU0dTL1UKXe4osbjCyMzBuJoD8bnhnAJSmaeOmtpr
|
||||
Gee9MSubfgxXKN+GNOjMF0DBB3SDlJTXjF7LpqqkiSbg0Jy4W6b+mA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1zsl5d4vj6gl3h96y5p53sq5y4vr4vtlwp727h7rp9a4xfkxm53lqrh6r50
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQWmkrNXJvUjR5anlUcFVE
|
||||
NExQTnAwZDVmWEl3c3B2bis1N00wQzF6MFFvCnpENVNJU1JWLyswNnZoUTBZNE16
|
||||
V2ZtLzIzanZEOWhkYXFxaWVLaDZoUDAKLS0tIEs3SXRZU283dERkZEFabmtFZTEx
|
||||
aUIwRTgzQklUZmlnS05MQ2o5QmJSQk0KVrx1ZHqnS3KQ9jB7yqVIWbrQAdqDt/c4
|
||||
i3mst4a/rKjgZGUYugHMctJppPIpqqVZTpBHPgY5OiAGESMrUZE+Ig==
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBmT3hudFJ5QTVLbHh1Zjg3
|
||||
elA1VEw4TzdhNTJqSVk3MWdwUnhUZ0V3ZmgwCkdOKzJ4RlVuR1VJL0NhbTc0SnZY
|
||||
MlFrbnhuN1UwYmE2ZlhpWnZVTWc4RncKLS0tIFdLT2k3dWdwQXJlSHQxWWJUd3Yx
|
||||
UHJ1aDhWVXprMUcyVHQxTlJEV21MMjQKveI0EjbGWwsBlIzHUIvjrTM5G7ZtulM/
|
||||
AuhqsH3qkDU4L3FdkVR5oG8yaCDbBxLDFhCDnXAGKrGCwOr1KB5hmQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1zujp5gxy7suv8ysnygv43cmzuvv36nxfg0ch7r3xg2emc6fz3vmqqujheq
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBvdUhKNU5BYmNEdllkWU1R
|
||||
QVIxMExuYit6ekNwVHFmd2dGNEJtTTlHd0IwCkxiZnAvSURQY2RyWnRVVGxtdlUv
|
||||
bmNpNFB6OENqOFJSakQ2NGJ0cVJTQlkKLS0tIEt5QXBXNC9WaDdIdklTeTA3ZEp6
|
||||
Y212bDZSRkttWjBqTEdkbjY4WHd5RTgK1Y779ogFUcr89gosqh7rra7Wg6G/Ez1o
|
||||
/+48kxF2DTKZLJYX2AFEP5H0JjBDtt+isiO7H1644LjdAwO/sgFMSQ==
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBkZlhyVVh6K2tvd2ZGODhY
|
||||
ODRLbFFiYmlPM3F5L3VwNS9EVGtuSWQ1VHlvCk1GTWlRUk9WVURWOEdBVlVHb1Rw
|
||||
c09EYlhFWFZHQmV3MUU5eU1ZYVE2MlEKLS0tIEFMV1FDTnBNMTEvTWREY3VFZjJ6
|
||||
QVV5U3dvTDFBT2s4bTQ1SXQ4U2RaYnMKs8q7OeaK188bTvVmAia0oF5SnpMOPKTd
|
||||
V31tngEgvmI7MxH9BrgjWneJye91Q/hCED0/aK0AuXIRapWgi1hGlA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1ydkclhk9kwqdq74utesqdfupt43lz64d5k65gz2z9uyljcqq9fcq3hv28l
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBwQXFScVBqUDZHc3BDK3N4
|
||||
T3BnSWk5SElzZllYRHdlMStPS2ZyMDZoZ3pnCm5KVnBYb1R6anRWd04rNllPSW1G
|
||||
ZVMwMTQ5NjQvaEYwZUhOOE56ckJHb00KLS0tIEpCWmNQZzFlK3ZrRGFPMFVwZndG
|
||||
ZStueWovUmtKdTk2enRJa3NSbFpJL1UKtzKYPJ6vy6+VjPkrsRvNTwUtV198oglr
|
||||
cMqBSuwkqzgjDC09sRMnW5PRfJo8hG+5gkd6EPZ8uAbUhGC+kAyLrg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1put942dyhly8nk9c8n0h8tq0x6xplrg3uw5q0d2jmvwez3zq79qsapl7he
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB0ZU93NCtxODQ2YjA4TUcr
|
||||
aWEyaW4zREZtVUpuZWhZSUw3TWhpMXBYWEVVCitDNGx1eWZQZGsvUDl0UzNCd0Zp
|
||||
QndpMys5OVg1WXMrdXRDUkFZWDErcjAKLS0tIDBOZTBxM09INTIxZm9tQk10ZUc2
|
||||
emExUmJZZk00WmxYK2Y3WCtmQXhSUmsKwMxI9I6kQYkvZ4TzJtv/MdGLwTbQdePx
|
||||
XB+oFbc9Rp3IAEZfH1+VEtJRjyKk5hE7HQoIh92XxJvmbDIswOe/Rg==
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBESVVPNGpGYnB0aFAzYnF3
|
||||
aUhkZkI1a2dWd2txSm9aWnpOKzBPdzg0VGdzCkJkeDJlZDdSZUVGTHVwQ2M2UjBj
|
||||
MjRnM2lNMWNVNFF1bTA0NGI3SGNPdFUKLS0tIGV6UkRQUWFYWjBrMzhhTmd4QlBV
|
||||
RTkvRVBSeUFUVXpyVHhHTFpZNzR3NlkKOksXAReInUnFJPuFsfu08MRQoA5J0j/H
|
||||
3cUt2jBIheWXBtg1Plz9UcXdjPaUEROadFcRveiGBaBEVz0LyBs8WA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1y4luzn2jls7rvgphej23srvdlx563lxq29tvf66vhwwzaf7c3f3qzvresh
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBwNUhPQThmWjJROW95SWsw
|
||||
aFk4dGR3c0RJZTkwSHFXaWp2UCtQWS9xYjFnCnAxa0RMV0xsNnZ2cnVMbmRzRFYv
|
||||
QmRZQVY1ME9zTmZtT1RxUmFQc2JYc2cKLS0tIGxUTjYwYXZUMU9FY3BFS04zQk1G
|
||||
bFJwRno1a0pwVHpaV0haZjlZazNtZDAKxTvzsmLtx50sI2bZ3fFcB6j9ZLas4KmL
|
||||
5bu9Z75hFi+N1sjvMpcK7oIFypGLIWU3xpTP//jv6RuiyjGuR2Dq2w==
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA0UVY1a1JFRTBZalRDeFll
|
||||
aHVNTnQ0MEtpN0pObnhaMlYwaXp2b2tKM2gwCmIrL2dzb0xGR0NCZzFIL0o2SS8w
|
||||
YnE2OE9rZFFWakgrYkNVcFpjUXJpbXMKLS0tIE9rZEoxNjdJbG9adVAydk1DVnhK
|
||||
WGhPaC96dk9qUzNxT1hadTZZSGZKQ28KiNhLhLaUSTVltWzyYHWLk6M8M3lxgvHj
|
||||
rPgFNVEcpVKN9f2v4N+XJipDaVgnP1YwwIlT0XSRQNrGWcO2JL6nmg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-11-04T09:28:17Z"
|
||||
mac: ENC[AES256_GCM,data:A+xfYhnoq/JWYGZOleieF5vjrsPOtkKnXPbd94iBAbnuuBKx8Vgkpuum+hJzVIBdDSCVm8hl2Tpcw7NqWLSkXtBR/NKixzk6eIwFvOZz4h7Qe1Zue10pB25IkIzR34sLnWSHtsxuRRG6fZnf0CNtp7baf4XU3doyDwy5A384Jf0=,iv:i0y0UEY7SSCOBIBc+97qIiq4obpUJYb3gFo1yEc5eUI=,tag:c5zONd6zTv3sq4bPqT73OQ==,type:str]
|
||||
lastmodified: "2025-07-09T22:50:12Z"
|
||||
mac: ENC[AES256_GCM,data:xf2fW1ajcrAx/oPwYvZmNKNJ6yHF/v3aVt3bIyENyfmB90yPDhHiw9twj7MYy1hVJyKE1Iy+1bmEgERBwaum2sROvzpCzuKbB8avJfBfeqpwBPob2yRdoAKFN29xgiJVJjtw2zKFf8NzMnv9Y5sLxgnhq5VB7aCavZ9+o0603kI=,iv:8aS9jVOm4rZpU/JTi9uUKoEfvo44Zhy43e6/GsIM7CE=,tag:D9I31EQwI6bCAN3tU4jGJg==,type:str]
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.11.0
|
||||
version: 3.10.2
|
||||
|
||||
@@ -23,21 +23,6 @@
|
||||
discord_token = {
|
||||
sopsFile = ./secrets.yaml;
|
||||
};
|
||||
|
||||
hyperbolic_api_key = {
|
||||
sopsFile = ./secrets.yaml;
|
||||
owner = "${username}";
|
||||
};
|
||||
|
||||
gemini_api_key = {
|
||||
sopsFile = ./secrets.yaml;
|
||||
owner = "${username}";
|
||||
};
|
||||
|
||||
open_router_api_key = {
|
||||
sopsFile = ./secrets.yaml;
|
||||
owner = "${username}";
|
||||
};
|
||||
};
|
||||
|
||||
tux.services.cyber-tux = {
|
||||
@@ -156,7 +141,6 @@
|
||||
];
|
||||
};
|
||||
|
||||
users.users.${username} = {linger = true;};
|
||||
home-manager.users.${username} = {
|
||||
imports = [
|
||||
./home.nix
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
discord_token: ENC[AES256_GCM,data:fZqz6LD3+Svtton5gNCXO5ddWAqW1IyxP3M2DAIXZEIYRHUfAq8h9LES2IHWepjl5qKimxB35zacE/TYK2fitngWtRGVoMDBzzU6VTKNulNV3yFWrPA=,iv:YOplYld+c9vHVC0Srfm89qrh4yUygDiW67X2TdwHKMc=,tag:Ioc2wNLX818fRQ/2PSO7Sw==,type:str]
|
||||
hyperbolic_api_key: ENC[AES256_GCM,data:t8xjjzhgvM9BXiB5jDc2RR384d+mL5zXr+/obDLMm2J+IN+Xw9fr4iz50CTQ5ZMWWMoPjxzY5vgiJ+h71BsDRM0TvBMWuXd2ihKOIZOVo6OQmCX/SeKUgkjunFqz+YKcxsLsF7ZG/tOgWGqMmxom8iGV7LELKG/8MLDCF50YgJNO568MJMUU,iv:Cf+mSG2dxsRclDy8k7gK+hi+Qd5J7wqfS9SQztRob80=,tag:Io4aAFa29SUsfuPFI2/+DA==,type:str]
|
||||
gemini_api_key: ENC[AES256_GCM,data:GJWo7dXSaUbl2Q9h+Sc1sRF0g+82LyHk3mKFqDaBmRdalvyGwMvp,iv:odLpACXHVqxWIj7e/u6AY1pxjYX+e10Lezne1BlHl60=,tag:qO3zcz/93eHuEzG66zwwdA==,type:str]
|
||||
open_router_api_key: ENC[AES256_GCM,data:ETiZEngQRnOrJtDXSDfBanzbUyThTAu9BSQCL1tuVv07CCWJaXUui9Y0kS9oIO5to655FON3C0RxovTGx6rWQwOMKeEn5bHUHA==,iv:ePJzHKFWddkLGfydPi6uEzvksm7Djln/DBV88Jc1ugA=,tag:Eb7eYPMC0DlqtT7OFK4UuA==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age:
|
||||
- recipient: age14vktfes95f33vuefwnmuvryas7az04u76dsgyhfvsx73czkvmp2q7njkl4
|
||||
enc: |
|
||||
@@ -22,7 +23,8 @@ sops:
|
||||
Y1RHaFdXaE9DODJtSTFCSVZWb0xVeUEK4qeBKg3u+vhBIM1dQ7BaOWi/C7Q8hk60
|
||||
vu9Zr075n0+kb5Ab+RH24ZmEoP5PJXjwEfbAnmRTjn0reYn1nfcNYA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-10-14T06:52:16Z"
|
||||
mac: ENC[AES256_GCM,data:/p5Mbonr1YcrDgBIi+wFFPnNKsn74kuWf/EloNDnVWg59LuBy3nhrfXHUvbwlX7vLbSLozbuAHKTDcQ0+OUXJTYvMRApAGVh9HrvQFEQuOPOkwN8/qtdvwduInetX3t7PLWu4vbCVhl1v2BzJyEVQ9tzn7+8zEJhDDS7cPsZ9Is=,iv:GPJxjmOQPAqh0TulLhhX4UX+5FrZizCtDOkQa9xxaXY=,tag:Vv33D3wubWBDVOxdKOMENQ==,type:str]
|
||||
lastmodified: "2025-02-15T12:45:59Z"
|
||||
mac: ENC[AES256_GCM,data:NLGe7L/oiG62x4PmQ6FobnuisFmMxYoGhxfqQ4qZdy9emYL/+FnrtFsKTKqZ9IHjrNnCmbk7y+Cds/azC1xGVcaj50jEox87vtqIZ3z0XsD1mJjCAdHkBVzzpQGwHas/5y0Inyj+oKsvQrqVacqYHVA/ES+zMvou8nD+EWIH2LE=,iv:fBVOnwih+QFkYZ8IfMBpQiT1XwSZtzo3VYaBOL3I5o4=,tag:p+ePQsrmcLcnLr2fgWQXQg==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.10.2
|
||||
version: 3.9.4
|
||||
|
||||
@@ -35,10 +35,7 @@
|
||||
ssh.startAgent = true;
|
||||
thunar = {
|
||||
enable = true;
|
||||
plugins = with pkgs.xfce; [
|
||||
thunar-archive-plugin
|
||||
thunar-volman
|
||||
];
|
||||
plugins = with pkgs.xfce; [thunar-archive-plugin thunar-volman];
|
||||
};
|
||||
nm-applet.enable = true;
|
||||
};
|
||||
@@ -54,15 +51,20 @@
|
||||
};
|
||||
|
||||
logind = {
|
||||
settings.Login = {
|
||||
HandlePowerKey = "suspend";
|
||||
HanldeLidSwitch = "suspend";
|
||||
HandleLidSwitchExternalPower = "suspend";
|
||||
extraConfig = "HandlePowerKey=suspend";
|
||||
lidSwitch = "suspend";
|
||||
lidSwitchExternalPower = "suspend";
|
||||
};
|
||||
|
||||
xserver = {
|
||||
enable = true;
|
||||
xkb = {
|
||||
layout = "in";
|
||||
variant = "eng";
|
||||
};
|
||||
};
|
||||
|
||||
libinput.touchpad.naturalScrolling = true;
|
||||
libinput.mouse.accelProfile = "flat";
|
||||
|
||||
blueman.enable = true;
|
||||
|
||||
@@ -73,7 +75,6 @@
|
||||
fonts.packages = with pkgs.nerd-fonts; [
|
||||
fira-code
|
||||
jetbrains-mono
|
||||
bigblue-terminal
|
||||
];
|
||||
|
||||
home-manager.users.${username} = {
|
||||
|
||||
@@ -3,16 +3,21 @@
|
||||
../../modules/home/desktop/awesome
|
||||
../../modules/home/desktop/hyprland
|
||||
../../modules/home/picom
|
||||
../../modules/home/alacritty
|
||||
../../modules/home/wezterm
|
||||
../../modules/home/ghostty
|
||||
../../modules/home/desktop/rofi
|
||||
../../modules/home/barrier
|
||||
../../modules/home/firefox
|
||||
../../modules/home/brave
|
||||
../../modules/home/vs-code
|
||||
../../modules/home/mopidy
|
||||
../../modules/home/thunderbird
|
||||
];
|
||||
|
||||
home.pointerCursor = {
|
||||
package = pkgs.bibata-cursors;
|
||||
name = "Bibata-Modern-Ice";
|
||||
size = 28;
|
||||
};
|
||||
|
||||
home.stateVersion = "24.11";
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
{
|
||||
inputs,
|
||||
username,
|
||||
...
|
||||
}:
|
||||
{
|
||||
imports = [
|
||||
inputs.disko.nixosModules.default
|
||||
|
||||
(import ./disko.nix {
|
||||
device = "/dev/nvme0n1";
|
||||
device2 = "/dev/nvme1n1";
|
||||
device3 = "/dev/sda";
|
||||
})
|
||||
./hardware.nix
|
||||
|
||||
../common
|
||||
];
|
||||
|
||||
tux.services.openssh.enable = true;
|
||||
|
||||
boot.loader.grub.enable = true;
|
||||
|
||||
networking = {
|
||||
hostName = "node";
|
||||
networkmanager = {
|
||||
enable = true;
|
||||
wifi.powersave = false;
|
||||
};
|
||||
firewall = {
|
||||
enable = true;
|
||||
allowedTCPPorts = [
|
||||
22
|
||||
8545
|
||||
8546
|
||||
9545
|
||||
9546
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
security.rtkit.enable = true;
|
||||
|
||||
environment.persistence."/persist" = {
|
||||
enable = false;
|
||||
};
|
||||
|
||||
home-manager.users.${username} = {
|
||||
imports = [
|
||||
./home.nix
|
||||
];
|
||||
};
|
||||
|
||||
system.stateVersion = "25.05";
|
||||
}
|
||||
@@ -1,87 +0,0 @@
|
||||
{
|
||||
device ? throw "Set this to the disk device, e.g. /dev/nvme0n1",
|
||||
device2 ? throw "Set this to the disk device2, e.g. /dev/nvme1n1",
|
||||
device3 ? throw "Set this to the disk device3, e.g. /dev/nvme1n1",
|
||||
...
|
||||
}: {
|
||||
disko.devices = {
|
||||
disk = {
|
||||
disk1 = {
|
||||
type = "disk";
|
||||
device = "${device}";
|
||||
content = {
|
||||
type = "gpt";
|
||||
partitions = {
|
||||
boot = {
|
||||
size = "1M";
|
||||
type = "EF02"; # for grub MBR
|
||||
};
|
||||
mdadm = {
|
||||
size = "100%";
|
||||
content = {
|
||||
type = "mdraid";
|
||||
name = "raid0";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
disk2 = {
|
||||
type = "disk";
|
||||
device = "${device2}";
|
||||
content = {
|
||||
type = "gpt";
|
||||
partitions = {
|
||||
boot = {
|
||||
size = "1M";
|
||||
type = "EF02"; # for grub MBR
|
||||
};
|
||||
mdadm = {
|
||||
size = "100%";
|
||||
content = {
|
||||
type = "mdraid";
|
||||
name = "raid0";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
hdd = {
|
||||
type = "disk";
|
||||
device = "${device3}";
|
||||
content = {
|
||||
type = "gpt";
|
||||
partitions = {
|
||||
data = {
|
||||
size = "100%";
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "ext4";
|
||||
mountpoint = "/mnt/hdd";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
mdadm = {
|
||||
raid0 = {
|
||||
type = "mdadm";
|
||||
level = 0;
|
||||
content = {
|
||||
type = "gpt";
|
||||
partitions = {
|
||||
primary = {
|
||||
size = "100%";
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "ext4";
|
||||
mountpoint = "/";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,25 +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" "ahci" "nvme" "usbhid" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp41s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
@@ -1,3 +0,0 @@
|
||||
{...}: {
|
||||
home.stateVersion = "25.05";
|
||||
}
|
||||
@@ -12,30 +12,8 @@
|
||||
../../modules/nixos/virtualisation/docker.nix
|
||||
];
|
||||
|
||||
hardware.nvidia-container-toolkit = {
|
||||
enable = true;
|
||||
suppressNvidiaDriverAssertion = true;
|
||||
};
|
||||
|
||||
tux.services.openssh.enable = true;
|
||||
|
||||
sops.secrets = {
|
||||
hyperbolic_api_key = {
|
||||
sopsFile = ./secrets.yaml;
|
||||
owner = "${username}";
|
||||
};
|
||||
|
||||
gemini_api_key = {
|
||||
sopsFile = ./secrets.yaml;
|
||||
owner = "${username}";
|
||||
};
|
||||
|
||||
open_router_api_key = {
|
||||
sopsFile = ./secrets.yaml;
|
||||
owner = "${username}";
|
||||
};
|
||||
};
|
||||
|
||||
boot.binfmt.emulatedSystems = ["aarch64-linux"];
|
||||
|
||||
nixpkgs = {
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
hyperbolic_api_key: ENC[AES256_GCM,data:3E4oWt65AU3anVUEU52r7vpRddDgXdqKgvc/URQmJGbA0nu6sbRmw3lD44SG0L5tMubi20+gkKlyFV3i8q2U148eo582Sxh8eXshvvjZ+gr9W9Eg0Tk9kQWycrE+N3r3g1AC+CWtbkRFDxQLuVAYf9W4mTw2Yg1VLV7H3BUCSYv3Rg5EPb9c,iv:Z+72Bk+5ZnHVR+SHXgM5mwfsIp4zZf9Iv8cAaZQB3Mg=,tag:phqWkpOCKnfiCBvR/f3flw==,type:str]
|
||||
gemini_api_key: ENC[AES256_GCM,data:S9DEgF4xIDXaOqs+3vdRbFb4Z8eAV1hVg8PwEfasWu9XGH3CTXV8,iv:LvUFg6dzlzC3feGh//d2rmxvVq5TJQDEBQWfxNa259Y=,tag:juLXnsiXz7OmYvyKfAv66Q==,type:str]
|
||||
open_router_api_key: ENC[AES256_GCM,data:tUtkVER9ZlhSeb0bDbA1nRi1lkRX/ofosV+mcHnaNQmAZXWXiyn8WDfemxxNuvU86YctURxL4TckfsQv7RmMjY7esB1Pmmwf9Q==,iv:elT8JJu48cgu4Q1YWxiL4ePNkP+EGhI8blqfUB/nmz8=,tag:bMvUXUegE+GJ6WdypTxLyw==,type:str]
|
||||
sops:
|
||||
age:
|
||||
- recipient: age14vktfes95f33vuefwnmuvryas7az04u76dsgyhfvsx73czkvmp2q7njkl4
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBtVUx5VWlHekQ1ZlBWb1cv
|
||||
aWpXQ0NUaDVudENNRWhPdXlhekhwZW9zbjNNCkRzTlVOZm53MnJmckp6d3FsTU9D
|
||||
M2pZYUs2aHJzWjQzM01BMUVaZHlsdm8KLS0tIG04Rjc3VXM1eFhvTGhpMVlJdE9K
|
||||
dkYwdGZMRmZ1MFFTVlI4T0MrNytsV00KmdCXJ/EBZhLN/NXuOf36LjwmGTze46Ou
|
||||
kQtKSpdzLdo/bdS6sbUGVHqDLeS7GwGtVciMh9zBHCsGBCAAkQHxIA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1f860dfewlx5jtt9ejr47gywx70p3dmyc8mat29gpr75psljwjv8q5xyxkq
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBiSXhQdEpJZHBGbjlZTnhD
|
||||
U0Zwc1pwbGtHdkRFbWJRVzRNWUdqakhzM2pJCmYyYlMwQVZEbzkxcnRKVERyeExB
|
||||
Z0hXcTdyMHMwREExdlJmR3JHTldvRnMKLS0tIFNMczN6QmI3cUR6clBDU2dKQTVF
|
||||
U1dpRkttaURwSkgySVdiR25iZk50b2cKrrNfeAV73W3+kWM0diIFj08+koBVySVx
|
||||
U3tYYrePi7qQxDSrNo4a14yOopjktj/ABKpxI5cfza6aS5NQxErq2Q==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-10-10T21:30:12Z"
|
||||
mac: ENC[AES256_GCM,data:IxGSaYj3PLV+RA4G+A3yep0RkcPr9xd6X7yKJP3QVthzGinm0KRNs8wyMdDgdSrK/e0AlzN594VOMTRRgxLV9oPqEPqufWDGGCpiKuW+q2mJSv3i3f1dUbO/l+OSTEFqeeKb8rWEhbJ3qcjEhI/eFB+RNkDtJvSzDlJsS4uDB9A=,iv:VlvTI3AHyBKpwr9b29YqN8V1Tjq2E8oAOAPA7LuAKps=,tag:+BFt/T4ep66WFz9Y2a7a9w==,type:str]
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.10.2
|
||||
@@ -56,7 +56,6 @@
|
||||
enable = false;
|
||||
};
|
||||
|
||||
users.users.${username} = {linger = true;};
|
||||
home-manager.users.${username} = {
|
||||
imports = [
|
||||
./home.nix
|
||||
|
||||
@@ -91,7 +91,6 @@
|
||||
];
|
||||
};
|
||||
|
||||
users.users.${username} = {linger = true;};
|
||||
home-manager.users.${username} = {
|
||||
imports = [
|
||||
./home.nix
|
||||
|
||||
7
modules/home/barrier/default.nix
Executable file
@@ -0,0 +1,7 @@
|
||||
{pkgs, ...}: {
|
||||
# services.barrier.client.enable = true;
|
||||
|
||||
home.packages = with pkgs; [
|
||||
barrier
|
||||
];
|
||||
}
|
||||
@@ -25,7 +25,7 @@ in {
|
||||
package = pkgs.brave;
|
||||
commandLineArgs = [
|
||||
"--disable-features=WebRtcAllowInputVolumeAdjustment"
|
||||
"--force-device-scale-factor=1.0"
|
||||
"--force-device-scale-factor=1.05"
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
editor = "wezterm -e nvim";
|
||||
browser = "brave";
|
||||
spotify = "wezterm start --class wezterm-floating -e spotify_player";
|
||||
filemanager = "wezterm start --class wezterm-floating -e superfile";
|
||||
filemanager = "thunar";
|
||||
in {
|
||||
#-- Output
|
||||
# See https://wiki.hyprland.org/Configuring/Monitors
|
||||
@@ -41,19 +41,15 @@
|
||||
|
||||
#-- Input: Keyboard, Mouse, Touchpad
|
||||
input = {
|
||||
sensitivity = -0.7;
|
||||
sensitivity = 0;
|
||||
scroll_method = "2 fg";
|
||||
natural_scroll = true;
|
||||
touchpad = {
|
||||
natural_scroll = true;
|
||||
clickfinger_behavior = false;
|
||||
};
|
||||
};
|
||||
|
||||
device = {
|
||||
name = "asue1209:00-04f3:319f-touchpad";
|
||||
sensitivity = 0;
|
||||
};
|
||||
|
||||
#-- General
|
||||
# See https://wiki.hyprland.org/Configuring/Variables
|
||||
general = {
|
||||
@@ -166,7 +162,7 @@
|
||||
|
||||
# Wezterm and Ghostty floating terminal
|
||||
"float, class:(com.ghostty.floating|wezterm-floating)"
|
||||
"size 1200 800, class:(com.ghostty.floating|wezterm-floating)"
|
||||
"size 1400 1000, class:(com.ghostty.floating|wezterm-floating)"
|
||||
|
||||
"float, class:GalaxyBudsClient"
|
||||
"size 900 700, class:GalaxyBudsClient"
|
||||
@@ -193,11 +189,6 @@
|
||||
};
|
||||
};
|
||||
|
||||
bindm = [
|
||||
"SUPER,mouse:273,resizewindow"
|
||||
"SUPER,mouse:272,movewindow"
|
||||
];
|
||||
|
||||
bind = [
|
||||
# apps
|
||||
"SUPER, Return, exec, ${terminal}"
|
||||
@@ -212,19 +203,18 @@
|
||||
"SUPER_SHIFT, Return, exec, ${floating_terminal}"
|
||||
"SUPER_SHIFT, S, exec, flameshot gui"
|
||||
|
||||
# tpanel
|
||||
# ags
|
||||
"SUPER, A, exec, ags toggle launcher"
|
||||
"SUPER_SHIFT, B, exec, ags toggle bar"
|
||||
"SUPER_SHIFT, C, exec, ags toggle control-center"
|
||||
"SUPER_SHIFT, W, exec, ags toggle wallpaper-manager"
|
||||
"SUPER, C, exec, ags toggle control-center"
|
||||
"SUPER_SHIFT, R, exec, ags quit; ${pkgs.tpanel}/bin/tpanel"
|
||||
"SUPER_SHIFT, B, exec, ags toggle bar"
|
||||
|
||||
# hyprland
|
||||
"SUPER, Q, killactive"
|
||||
"SUPER, grave, hyprexpo:expo, toggle"
|
||||
"SUPER_SHIFT, Q, forcekillactive"
|
||||
"SUPER_SHIFT, F, fullscreen, 0"
|
||||
"SUPER_SHIFT, Space, exec, hyprctl dispatch togglefloating; hyprctl dispatch resizeactive exact 1200 800; hyprctl dispatch centerwindow;"
|
||||
"SUPER_SHIFT, Space, exec, hyprctl dispatch togglefloating; hyprctl dispatch resizeactive exact 1600 1200; hyprctl dispatch centerwindow;"
|
||||
|
||||
# shutdown
|
||||
"SUPER_SHIFT, P, exec, poweroff"
|
||||
@@ -259,14 +249,6 @@
|
||||
"SUPER_SHIFT, 5, movetoworkspacesilent, 5"
|
||||
];
|
||||
|
||||
workspace = [
|
||||
"1, monitor:HDMI-A-1"
|
||||
"2, monitor:HDMI-A-1"
|
||||
"3, monitor:HDMI-A-1"
|
||||
"4, monitor:eDP-1"
|
||||
"5, monitor:eDP-1"
|
||||
];
|
||||
|
||||
binde = [
|
||||
# resize active
|
||||
"SUPER_CTRL, left, resizeactive, -20 0"
|
||||
@@ -279,7 +261,6 @@
|
||||
"SUPER_ALT, right, moveactive, 20 0"
|
||||
"SUPER_ALT, up, moveactive, 0 -20"
|
||||
"SUPER_ALT, down, moveactive, 0 20"
|
||||
"SUPER_ALT, equal, exec, hyprctl dispatch centerwindow;"
|
||||
|
||||
# speaker and mic volume control
|
||||
" , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 10%+"
|
||||
|
||||
@@ -8,11 +8,11 @@
|
||||
splash_offset = 2.0;
|
||||
|
||||
preload = [
|
||||
"~/Wallpapers/new/sunset-pixel.png"
|
||||
"~/Wallpapers/mountain.jpg"
|
||||
];
|
||||
|
||||
wallpaper = [
|
||||
", ~/Wallpapers/new/sunset-pixel.png"
|
||||
", ~/Wallpapers/mountain.jpg"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
@@ -5,15 +5,13 @@
|
||||
}: {
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "${username}";
|
||||
userEmail = "${email}";
|
||||
signing = {
|
||||
key = "~/.ssh/id_ed25519.pub";
|
||||
signByDefault = true;
|
||||
};
|
||||
settings = {
|
||||
user = {
|
||||
name = "${username}";
|
||||
email = "${email}";
|
||||
};
|
||||
extraConfig = {
|
||||
init.defaultBranch = "main";
|
||||
commit.gpgSign = true;
|
||||
gpg.format = "ssh";
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
{inputs, ...}: {
|
||||
imports = [
|
||||
inputs.lan-mouse.homeManagerModules.default
|
||||
];
|
||||
|
||||
programs.lan-mouse = {
|
||||
enable = true;
|
||||
systemd = true;
|
||||
settings = {
|
||||
# release_bind = ["KeyA" "KeyS" "KeyD" "KeyF"];
|
||||
|
||||
port = 4242;
|
||||
|
||||
authorized_fingerprints = {
|
||||
"30:66:b3:95:dc:6b:55:a4:9f:30:31:9c:3e:4d:70:03:33:c3:f0:6f:df:31:35:58:36:6e:80:2f:32:b2:ce:48" = "pc";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
15
modules/home/shell/aichat.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{...}: {
|
||||
programs = {
|
||||
aichat = {
|
||||
enable = true;
|
||||
settings = {
|
||||
model = "gemini:gemini-2.0-flash-lite";
|
||||
clients = [
|
||||
{
|
||||
type = "gemini";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
{pkgs, ...}: {
|
||||
imports = [
|
||||
./lazygit.nix
|
||||
./aichat.nix
|
||||
./superfile.nix
|
||||
./open-code.nix
|
||||
];
|
||||
|
||||
@@ -9,161 +9,69 @@
|
||||
customCommands = [
|
||||
{
|
||||
key = "<c-a>";
|
||||
description = "AI-powered conventional commit";
|
||||
context = "global";
|
||||
command = "git commit -m \"{{.Form.CommitMsg}}\"";
|
||||
loadingText = "Generating commit messages...";
|
||||
prompts = [
|
||||
{
|
||||
type = "menu";
|
||||
key = "Type";
|
||||
title = "Type of change";
|
||||
options = [
|
||||
{
|
||||
name = "AI defined";
|
||||
description = "Let AI analyze and determine the best commit type";
|
||||
value = "ai-defined";
|
||||
}
|
||||
{
|
||||
name = "build";
|
||||
description = "Changes that affect the build system or external dependencies";
|
||||
value = "build";
|
||||
}
|
||||
{
|
||||
name = "feat";
|
||||
description = "A new feature";
|
||||
value = "feat";
|
||||
}
|
||||
{
|
||||
name = "fix";
|
||||
description = "A bug fix";
|
||||
value = "fix";
|
||||
}
|
||||
{
|
||||
name = "chore";
|
||||
description = "Other changes that don't modify src or test files";
|
||||
value = "chore";
|
||||
}
|
||||
{
|
||||
name = "ci";
|
||||
description = "Changes to CI configuration files and scripts";
|
||||
value = "ci";
|
||||
}
|
||||
{
|
||||
name = "docs";
|
||||
description = "Documentation only changes";
|
||||
value = "docs";
|
||||
}
|
||||
{
|
||||
name = "perf";
|
||||
description = "A code change that improves performance";
|
||||
value = "perf";
|
||||
}
|
||||
{
|
||||
name = "refactor";
|
||||
description = "A code change that neither fixes a bug nor adds a feature";
|
||||
value = "refactor";
|
||||
}
|
||||
{
|
||||
name = "revert";
|
||||
description = "Reverts a previous commit";
|
||||
value = "revert";
|
||||
}
|
||||
{
|
||||
name = "style";
|
||||
description = "Changes that do not affect the meaning of the code";
|
||||
value = "style";
|
||||
}
|
||||
{
|
||||
name = "test";
|
||||
description = "Adding missing tests or correcting existing tests";
|
||||
value = "test";
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
type = "menuFromCommand";
|
||||
title = "AI Generated Commit Messages";
|
||||
key = "CommitMsg";
|
||||
command = ''
|
||||
bash -c "
|
||||
# Check for staged changes
|
||||
diff=\$(git diff --cached | head -n 10)
|
||||
if [ -z \"\$diff\" ]; then
|
||||
echo \"No changes in staging. Add changes first.\"
|
||||
exit 1
|
||||
fi
|
||||
description = "Pick AI commit";
|
||||
command = ''
|
||||
aichat "Please suggest 10 commit messages, given the following diff:
|
||||
|
||||
SELECTED_TYPE=\"{{.Form.Type}}\"
|
||||
COMMITS_TO_SUGGEST=8
|
||||
\`\`\`diff
|
||||
$(git diff --cached)
|
||||
\`\`\`
|
||||
|
||||
opencode run -m \"google/gemini-2.5-flash-lite\" \"
|
||||
You are an expert at writing Git commits. Your job is to write commit messages that follow the Conventional Commits format.
|
||||
**Criteria:**
|
||||
|
||||
The user has selected: \$SELECTED_TYPE
|
||||
1. **Format:** Each commit message must follow the conventional commits format, which is \`<type>(<scope>): <description>\`.
|
||||
2. **Relevance:** Avoid mentioning a module name unless it's directly relevant to the change.
|
||||
3. **Enumeration:** List the commit messages from 1 to 10.
|
||||
4. **Clarity and Conciseness:** Each message should clearly and concisely convey the change made.
|
||||
|
||||
Your task is to:
|
||||
1. Analyze the code changes
|
||||
2. Determine the most appropriate commit type (if user selected 'ai-defined')
|
||||
3. Determine an appropriate scope (component/area affected)
|
||||
4. Decide if this is a breaking change
|
||||
5. Write clear, concise commit messages
|
||||
**Commit Message Examples:**
|
||||
|
||||
Available commit types:
|
||||
- feat: A new feature
|
||||
- fix: A bug fix
|
||||
- docs: Documentation only changes
|
||||
- style: Changes that do not affect the meaning of the code
|
||||
- refactor: A code change that neither fixes a bug nor adds a feature
|
||||
- perf: A code change that improves performance
|
||||
- test: Adding missing tests or correcting existing tests
|
||||
- build: Changes that affect the build system or external dependencies
|
||||
- ci: Changes to CI configuration files and scripts
|
||||
- chore: Other changes that don't modify src or test files
|
||||
- revert: Reverts a previous commit
|
||||
- fix(app): add password regex pattern
|
||||
- test(unit): add new test cases
|
||||
- style: remove unused imports
|
||||
- refactor(pages): extract common code to \`utils/wait.ts\`
|
||||
|
||||
Follow these guidelines:
|
||||
- Structure: <type>(<scope>): <description>
|
||||
- If user selected 'ai-defined', analyze the changes and pick the most suitable type
|
||||
- If user selected a specific type, use that type: \$SELECTED_TYPE
|
||||
- Add scope in parentheses if applicable (e.g., auth, api, ui, config)
|
||||
- Use exclamation mark (!) after type/scope for breaking changes: type(scope)!: description
|
||||
- Use lowercase for description (except proper nouns)
|
||||
- Use imperative mood (\\\"add\\\", not \\\"added\\\")
|
||||
- Keep description under 50 characters when possible
|
||||
- No period at the end of subject line
|
||||
**Recent Commits on Repo for Reference:**
|
||||
|
||||
Examples:
|
||||
- feat(auth): add OAuth login support
|
||||
- fix(api): handle null response in user endpoint
|
||||
- docs(readme): update installation instructions
|
||||
- style(ui): improve button spacing consistency
|
||||
- refactor(database): simplify query builder logic
|
||||
- test(auth): add unit tests for login flow
|
||||
- build(deps): upgrade React to version 18
|
||||
- ci(github): fix deployment workflow
|
||||
- chore(config): update ESLint rules
|
||||
- perf(api)!: optimize database queries
|
||||
\`\`\`
|
||||
$(git log -n 10 --pretty=format:'%h %s')
|
||||
\`\`\`
|
||||
|
||||
IMPORTANT:
|
||||
- Generate exactly \$COMMITS_TO_SUGGEST different commit message options
|
||||
- If user selected 'ai-defined', you can use different types for different options
|
||||
- If user selected a specific type, all messages must use that type
|
||||
- Only return commit messages, no explanations
|
||||
- Do not use markdown code blocks
|
||||
- One message per line
|
||||
**Output Template**
|
||||
|
||||
Previous commits for context:
|
||||
\$(git log --oneline -10)
|
||||
Follow this output template and ONLY output raw commit messages without spacing, numbers or other decorations.
|
||||
|
||||
Changes to analyze:
|
||||
\$(git diff --cached --stat)
|
||||
\$(git diff --cached)
|
||||
\"
|
||||
"
|
||||
'';
|
||||
}
|
||||
];
|
||||
fix(app): add password regex pattern
|
||||
test(unit): add new test cases
|
||||
style: remove unused imports
|
||||
refactor(pages): extract common code to \`utils/wait.ts\`
|
||||
|
||||
|
||||
**Instructions:**
|
||||
|
||||
- Take a moment to understand the changes made in the diff.
|
||||
- Think about the impact of these changes on the project (e.g., bug fixes, new features, performance improvements, code refactoring, documentation updates). It's critical to my career you abstract the changes to a higher level and not just describe the code changes.
|
||||
- Generate commit messages that accurately describe these changes, ensuring they are helpful to someone reading the project's history.
|
||||
- Remember, a well-crafted commit message can significantly aid in the maintenance and understanding of the project over time.
|
||||
- If multiple changes are present, make sure you capture them all in each commit message.
|
||||
|
||||
Keep in mind you will suggest 10 commit messages. Only 1 will be used. It's better to push yourself (esp to synthesize to a higher level) and maybe wrong about some of the 10 commits because only one needs to be good. I'm looking for your best commit, not the best average commit. It's better to cover more scenarios than include a lot of overlap.
|
||||
|
||||
Write your 10 commit messages below in the format shown in Output Template section above." \
|
||||
| fzf --height 40% --border --ansi --preview "echo {}" --preview-window=up:wrap \
|
||||
| xargs -I {} bash -c '
|
||||
COMMIT_MSG_FILE=$(mktemp)
|
||||
echo "{}" > "$COMMIT_MSG_FILE"
|
||||
''${EDITOR:-vim} "$COMMIT_MSG_FILE"
|
||||
if [ -s "$COMMIT_MSG_FILE" ]; then
|
||||
git commit -F "$COMMIT_MSG_FILE"
|
||||
else
|
||||
echo "Commit message is empty, commit aborted."
|
||||
fi
|
||||
rm -f "$COMMIT_MSG_FILE"'
|
||||
'';
|
||||
context = "files";
|
||||
output = "terminal";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
default_open_file_preview = true;
|
||||
show_image_preview = true;
|
||||
show_panel_footer_info = true;
|
||||
default_directory = "~";
|
||||
default_directory = ".";
|
||||
file_size_use_si = false;
|
||||
default_sort_type = 0;
|
||||
sort_order_reversed = false;
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
}
|
||||
];
|
||||
userSettings = {
|
||||
ui_font_size = 18;
|
||||
buffer_font_size = 18;
|
||||
ui_font_size = 8;
|
||||
buffer_font_size = 8;
|
||||
theme = {
|
||||
mode = "dark";
|
||||
light = "Ayu Light";
|
||||
|
||||
@@ -1,112 +0,0 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.tux.packages.distrobox;
|
||||
in {
|
||||
options.tux.packages.distrobox = {
|
||||
enable = mkEnableOption "Enable DistroBox";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
distrobox
|
||||
|
||||
(writeShellScriptBin "dbox-create" ''
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# 1. Initialize variables
|
||||
IMAGE=""
|
||||
NAME=""
|
||||
|
||||
# Array to hold optional arguments (like volumes)
|
||||
declare -a EXTRA_ARGS
|
||||
|
||||
# 2. Parse arguments
|
||||
while [[ $# -gt 0 ]]; do
|
||||
case $1 in
|
||||
-i|--image)
|
||||
IMAGE="$2"
|
||||
shift 2
|
||||
;;
|
||||
-n|--name)
|
||||
NAME="$2"
|
||||
shift 2
|
||||
;;
|
||||
-p|--profile)
|
||||
echo ":: Profile mode enabled: Mounting Nix store and user profiles (Read-Only)"
|
||||
# Add volume flags to the array
|
||||
EXTRA_ARGS+=( "--volume" "/nix/store:/nix/store:ro" )
|
||||
EXTRA_ARGS+=( "--volume" "/etc/profiles/per-user:/etc/profiles/per-user:ro" )
|
||||
EXTRA_ARGS+=( "--volume" "/etc/static/profiles/per-user:/etc/static/profiles/per-user:ro" )
|
||||
shift 1
|
||||
;;
|
||||
*)
|
||||
echo "Unknown option $1"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ -z "$IMAGE" ] || [ -z "$NAME" ]; then
|
||||
echo "Usage: dbox-create -i <image> -n <name> [-p]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 3. Define the custom home path
|
||||
CUSTOM_HOME="$HOME/Distrobox/$NAME"
|
||||
|
||||
echo "------------------------------------------------"
|
||||
echo "Creating Distrobox: $NAME"
|
||||
echo "Location: $CUSTOM_HOME"
|
||||
echo "------------------------------------------------"
|
||||
|
||||
# 4. Run Distrobox Create
|
||||
# We expand "''${EXTRA_ARGS[@]}" to properly pass the volume arguments
|
||||
${pkgs.distrobox}/bin/distrobox create \
|
||||
--image "$IMAGE" \
|
||||
--name "$NAME" \
|
||||
--home "$CUSTOM_HOME" \
|
||||
"''${EXTRA_ARGS[@]}"
|
||||
|
||||
# Check exit code
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Error: Distrobox creation failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 5. Post-Creation: Symlink Config Files
|
||||
echo "--> Linking configurations to $NAME..."
|
||||
|
||||
# Helper function to symlink
|
||||
link_config() {
|
||||
SRC="$1"
|
||||
DEST="$2"
|
||||
DEST_DIR=$(dirname "$DEST")
|
||||
|
||||
# Create parent directory if it doesn't exist
|
||||
mkdir -p "$DEST_DIR"
|
||||
|
||||
if [ -e "$SRC" ]; then
|
||||
# ln -sf: symbolic link, force overwrite
|
||||
ln -sf "$SRC" "$DEST"
|
||||
echo " [LINK] $DEST -> $SRC"
|
||||
else
|
||||
echo " [SKIP] $SRC not found on host"
|
||||
fi
|
||||
}
|
||||
|
||||
# Create Symlinks
|
||||
link_config "$HOME/.zshrc" "$CUSTOM_HOME/.zshrc"
|
||||
link_config "$HOME/.zshenv" "$CUSTOM_HOME/.zshenv"
|
||||
link_config "$HOME/.config/fastfetch" "$CUSTOM_HOME/.config/fastfetch"
|
||||
link_config "$HOME/.config/starship.toml" "$CUSTOM_HOME/.config/starship.toml"
|
||||
|
||||
echo "--> Done! Enter via: distrobox enter $NAME"
|
||||
'')
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,52 +0,0 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.tux.containers.aiostreams;
|
||||
in {
|
||||
options.tux.containers.aiostreams = {
|
||||
enable = mkEnableOption "Enable AIOStreams";
|
||||
|
||||
port = mkOption {
|
||||
type = types.int;
|
||||
default = 3000;
|
||||
};
|
||||
|
||||
environment = mkOption {
|
||||
type = with types; attrsOf str;
|
||||
default = {};
|
||||
};
|
||||
|
||||
environmentFiles = mkOption {
|
||||
type = with types; listOf path;
|
||||
default = [];
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
virtualisation.oci-containers.containers.aiostreams = {
|
||||
autoStart = true;
|
||||
image = "ghcr.io/viren070/aiostreams:latest";
|
||||
ports = [
|
||||
"${toString cfg.port}:3000"
|
||||
];
|
||||
|
||||
environment = cfg.environment;
|
||||
environmentFiles = cfg.environmentFiles;
|
||||
};
|
||||
|
||||
services.nginx.virtualHosts = {
|
||||
"${cfg.environment.ADDON_ID}" = {
|
||||
forceSSL = true;
|
||||
useACMEHost = "tux.rs";
|
||||
locations = {
|
||||
"/" = {
|
||||
proxyPass = "http://localhost:${toString cfg.port}";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -19,7 +19,7 @@
|
||||
nextcloud = {
|
||||
enable = true;
|
||||
hostName = "cloud.tux.rs";
|
||||
package = pkgs.nextcloud32;
|
||||
package = pkgs.nextcloud31;
|
||||
database.createLocally = true;
|
||||
configureRedis = true;
|
||||
maxUploadSize = "16G";
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
services = {
|
||||
umami = {
|
||||
enable = true;
|
||||
settings = {
|
||||
APP_SECRET_FILE = config.sops.secrets.umami.path;
|
||||
PORT = 4645;
|
||||
};
|
||||
createPostgresqlDatabase = true;
|
||||
};
|
||||
|
||||
nginx = {
|
||||
enable = lib.mkForce true;
|
||||
virtualHosts = {
|
||||
"umami.tux.rs" = {
|
||||
forceSSL = true;
|
||||
useACMEHost = "tux.rs";
|
||||
locations = {
|
||||
"/" = {
|
||||
proxyPass = "http://localhost:${toString config.services.umami.settings.PORT}";
|
||||
proxyWebsockets = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -8,6 +8,8 @@
|
||||
enable = true;
|
||||
qemu = {
|
||||
swtpm.enable = true;
|
||||
ovmf.enable = true;
|
||||
ovmf.packages = [pkgs.OVMFFull.fd];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
|
||||
owner = "datguypiko";
|
||||
repo = "Firefox-Mod-Blur";
|
||||
rev = "refs/heads/master";
|
||||
sha256 = "sha256-BZ1NvKQwUDTMxQHEKX61PvD99cTDmBURSUKEKZNQDR4=";
|
||||
sha256 = "sha256-zokmzwv+JcGhuX5GMySISE7ErrUz2NL+NYB/74JYi5g=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
||||