Compare commits

...

28 Commits

Author SHA1 Message Date
b9f8bbfb9c Added boxbuddy and winboat flake. 2025-10-27 22:20:38 +01:00
b91eb30fa9 update anki module 2025-10-24 00:26:52 +02:00
1c80038c08 add now wallpaper adn update 2025-10-23 00:38:45 +02:00
789879c6eb update git config 2025-10-23 00:33:04 +02:00
add12d2958 update & add new wallpaper 2025-10-20 23:22:26 +02:00
ad1408ebfd update 2025-10-20 17:52:29 +02:00
ac6e0d98b8 biome w zed 2025-10-20 11:10:05 +02:00
7213a861ae Enable nix-ld and add Biome to Zed's packages 2025-10-18 03:25:07 +02:00
873e9fd4e7 Update system packages and home configuration 2025-10-17 01:20:53 +02:00
efb8dcda36 update 2025-10-14 00:30:04 +02:00
148481fa52 update 2025-10-13 20:24:00 +02:00
1739679b25 aktualizacja i tymczasowe usunięcie kronometer 2025-10-11 02:32:01 +02:00
3dbb31caf7 update 2025-10-05 19:32:46 +02:00
e60623f0bc fix back licence 2025-10-05 13:26:30 +02:00
121fccf135 Tweak icons and formatting in various config files 2025-10-03 15:20:08 +02:00
41d0fd2075 korekty starship 2025-10-02 09:25:35 +02:00
9e59f925b5 update 2025-10-01 21:14:35 +02:00
233029c316 Update LVM partition size recommendation in README 2025-09-30 17:06:47 +02:00
75bf262cea Add rocm-smi package to systemPackages for AMD driver configuration and
monitoring
2025-09-30 16:32:44 +02:00
fe19fa616e Add Nvidia Docker toolkit support 2025-09-30 16:07:58 +02:00
a8ebaf2dd6 Add Glance application to Hyprland binds and XDG desktop entries 2025-09-30 13:07:18 +02:00
7ae2f26c8a update oraz optymalizacja inputów w flake stylix 2025-09-28 21:27:54 +02:00
4133d74d85 Add keybinding to launch Iotas note-taking app 2025-09-28 16:59:34 +02:00
61651d2bc0 Add Iotas and related language dictionaries 2025-09-28 16:52:01 +02:00
09ba4ccbf0 Enable KDE Connect in system configuration 2025-09-28 11:02:50 +02:00
4458732589 Replace btop with Bitwarden keybinding 2025-09-28 10:46:43 +02:00
7600f9da0c Switch from systemd-boot to Limine bootloader 2025-09-28 10:37:48 +02:00
a46850ebfb Update hardware config. 2025-09-28 09:51:19 +02:00
48 changed files with 504 additions and 430 deletions

View File

@@ -1,10 +1,10 @@
# 📜 License
### GarandOS is licensed under the MIT License.
### ZaneyOS is licensed under the MIT License.
## MIT License
**Copyright (c) 2025 Garand_PLG**
**Copyright (c) 2025 Tyler Kelley**
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the <strong> "Software" </strong>), to deal

View File

@@ -54,8 +54,8 @@ sudo vgcreate vg0 /dev/mapper/cryptroot
# Create Logical Volumes
# (Up to max 16GB)
sudo lvcreate -L 12G -n swap vg0 # 12GB SWAP
# (For ROOT partition it's best to give at least 1/4 of the disk, but from experience I recommend roughly 100-200GB. System takes about 70GB, but it's worth leaving some extra space)
sudo lvcreate -L 175G -n root vg0 # 175GB ROOT
# (For ROOT partition it's best to give at least 1/4 of the disk. System takes about 45GB, but around 1,5x more is necessary)
sudo lvcreate -L 75GB -n root vg0 # 75GB ROOT
sudo lvcreate -l 100%FREE -n home vg0 # rest HOME
```
@@ -215,5 +215,5 @@ sudo nixos-rebuild switch --flake .#your-system-hostname
- `upd-ts` - rebuild system and switch to it, but won't be added to bootloader.
- `upd-bd` - only builds new configuration.
## TODO:
- Add instruction for needed PWA
## Winboat
I highly recommend using [Ghost Spectre 11](https://tech-latest.com/ghost-spectre-windows-11/#Download_Ghost_Spectre_Windows_11_Superlite_Version) as windows ISO for **winboat**.

86
flake.lock generated
View File

@@ -41,16 +41,17 @@
"base16-fish": {
"flake": false,
"locked": {
"lastModified": 1622559957,
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
"lastModified": 1754405784,
"narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
"owner": "tomyun",
"repo": "base16-fish",
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
"type": "github"
},
"original": {
"owner": "tomyun",
"repo": "base16-fish",
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
"type": "github"
}
},
@@ -95,11 +96,11 @@
},
"locked": {
"dir": "pkgs/firefox-addons",
"lastModified": 1758798674,
"narHash": "sha256-9ocRdyGIr67hgrfG8TWv8M6EuIGYUi3256JVHxXaD6s=",
"lastModified": 1761105810,
"narHash": "sha256-h1hNPjW3DLrIbT4cTv/27mN0DfsrSSU9mJa4xRmtGeE=",
"owner": "rycee",
"repo": "nur-expressions",
"rev": "810a33a4d21060a52a7babd8af7672485954b3ad",
"rev": "4e0b79686a41e34e76aa72aef7f834a4daf8b6c3",
"type": "gitlab"
},
"original": {
@@ -112,11 +113,11 @@
"firefox-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1756083905,
"narHash": "sha256-UqYGTBgI5ypGh0Kf6zZjom/vABg7HQocB4gmxzl12uo=",
"lastModified": 1758112371,
"narHash": "sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
"rev": "b655eaf16d4cbec9c3472f62eee285d4b419a808",
"rev": "0909cfe4a2af8d358ad13b20246a350e14c2473d",
"type": "github"
},
"original": {
@@ -128,7 +129,6 @@
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
"stylix",
"nixpkgs"
]
},
@@ -186,11 +186,11 @@
]
},
"locked": {
"lastModified": 1758810399,
"narHash": "sha256-bpWoE1tiFX5T1tr5EudkpW9Kk02XR+6olkoSkf3nHZU=",
"lastModified": 1761081701,
"narHash": "sha256-IwpfaKg5c/WWQiy8b5QGaVPMvoEQ2J6kpwRFdpVpBNQ=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "39d26c16866260eee6d0487fe9c102ba1c1bf7b2",
"rev": "9b4a2a7c4fbd75b422f00794af02d6edb4d9d315",
"type": "github"
},
"original": {
@@ -234,11 +234,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1758690382,
"narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=",
"lastModified": 1760878510,
"narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "e643668fd71b949c53f8626614b21ff71a07379d",
"rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67",
"type": "github"
},
"original": {
@@ -255,16 +255,15 @@
"flake-parts"
],
"nixpkgs": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1756961635,
"narHash": "sha256-hETvQcILTg5kChjYNns1fD5ELdsYB/VVgVmBtqKQj9A=",
"lastModified": 1758998580,
"narHash": "sha256-VLx0z396gDCGSiowLMFz5XRO/XuNV+4EnDYjdJhHvUk=",
"owner": "nix-community",
"repo": "NUR",
"rev": "6ca27b2654ac55e3f6e0ca434c1b4589ae22b370",
"rev": "ba8d9c98f5f4630bcb0e815ab456afd90c930728",
"type": "github"
},
"original": {
@@ -302,7 +301,8 @@
"nix-flatpak": "nix-flatpak",
"nixpkgs": "nixpkgs",
"prismlauncher-cracked": "prismlauncher-cracked",
"stylix": "stylix"
"stylix": "stylix",
"winboat": "winboat"
}
},
"stylix": {
@@ -326,11 +326,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1758757969,
"narHash": "sha256-2zC4aHoDsR12Jyd6WvSxmQbAKT4V93frnHHDjA8o3r8=",
"lastModified": 1761028816,
"narHash": "sha256-s1XiIeJHpODVWfzsPaK9e21iz1dQSCU3H4/1OxOsyps=",
"owner": "danth",
"repo": "stylix",
"rev": "484819a16fdc1c76cdd62d8e94018db44e5e1a8b",
"rev": "b81dc0a385443099e7d231fe6275189e32c3b760",
"type": "github"
},
"original": {
@@ -390,11 +390,11 @@
"tinted-schemes": {
"flake": false,
"locked": {
"lastModified": 1754779259,
"narHash": "sha256-8KG2lXGaXLUE0F/JVwLQe7kOVm21IDfNEo0gfga5P4M=",
"lastModified": 1757716333,
"narHash": "sha256-d4km8W7w2zCUEmPAPUoLk1NlYrGODuVa3P7St+UrqkM=",
"owner": "tinted-theming",
"repo": "schemes",
"rev": "097d751b9e3c8b97ce158e7d141e5a292545b502",
"rev": "317a5e10c35825a6c905d912e480dfe8e71c7559",
"type": "github"
},
"original": {
@@ -406,11 +406,11 @@
"tinted-tmux": {
"flake": false,
"locked": {
"lastModified": 1754788770,
"narHash": "sha256-LAu5nBr7pM/jD9jwFc6/kyFY4h7Us4bZz7dvVvehuwo=",
"lastModified": 1757811970,
"narHash": "sha256-n5ZJgmzGZXOD9pZdAl1OnBu3PIqD+X3vEBUGbTi4JiI=",
"owner": "tinted-theming",
"repo": "tinted-tmux",
"rev": "fb2175accef8935f6955503ec9dd3c973eec385c",
"rev": "d217ba31c846006e9e0ae70775b0ee0f00aa6b1e",
"type": "github"
},
"original": {
@@ -422,11 +422,11 @@
"tinted-zed": {
"flake": false,
"locked": {
"lastModified": 1755613540,
"narHash": "sha256-zBFrrTxHLDMDX/OYxkCwGGbAhPXLi8FrnLhYLsSOKeY=",
"lastModified": 1757811247,
"narHash": "sha256-4EFOUyLj85NRL3OacHoLGEo0wjiRJzfsXtR4CZWAn6w=",
"owner": "tinted-theming",
"repo": "base16-zed",
"rev": "937bada16cd3200bdbd3a2f5776fc3b686d5cba0",
"rev": "824fe0aacf82b3c26690d14e8d2cedd56e18404e",
"type": "github"
},
"original": {
@@ -434,6 +434,26 @@
"repo": "base16-zed",
"type": "github"
}
},
"winboat": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1761401704,
"narHash": "sha256-zIaF3MEMNR17uiLLb+9bFjxar7EkOI6QyaOIxAhs/gQ=",
"owner": "TibixDev",
"repo": "winboat",
"rev": "aa868ea63512ab984c70c8a9e60ffe841a194167",
"type": "github"
},
"original": {
"owner": "TibixDev",
"repo": "winboat",
"type": "github"
}
}
},
"root": "root",

View File

@@ -11,7 +11,14 @@
stylix = {
url = "github:danth/stylix";
inputs.nixpkgs.follows = "nixpkgs";
inputs = {
nixpkgs.follows = "nixpkgs";
flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs";
nur.inputs = {
nixpkgs.follows = "nixpkgs";
flake-parts.follows = "stylix/flake-parts";
};
};
};
auto-cpufreq = {
@@ -29,13 +36,17 @@
inputs.nixpkgs.follows = "nixpkgs";
};
winboat = {
url = "github:TibixDev/winboat";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-flatpak.url = "github:gmodena/nix-flatpak?ref=latest";
};
outputs =
{
nixpkgs,
home-manager,
nix-flatpak,
auto-cpufreq,
...

View File

@@ -53,17 +53,19 @@
# This will set your color palette
# Default background
# Add new images to ~/garandos/wallpapers
stylixImage = ../../wallpapers/attack-on-titan-mikasa-ackerman.jpg;
#stylixImage = ../../wallpapers/attack-on-titan-mikasa-ackerman.jpg;
#stylixImage = ../../wallpapers/DW_Pacts.jpg;
#stylixImage = ../../wallpapers/edward-elric-fullmetal-alchemist.jpg;
#stylixImage = ../../wallpapers/fire-nation.jpg;
#stylixImage = ../../wallpapers/four-elements.jpg;
#stylixImage = ../../wallpapers/fullmetal-alchemist-5120x2880-10399.png;
#stylixImage = ../../wallpapers/Grounded_Wallpaper_4K.jpg;
#stylixImage = ../../wallpapers/jablon.jpg;
#stylixImage = ../../wallpapers/rammstein-log-two.jpg;
#stylixImage = ../../wallpapers/rammstein-log-one.jpg;
#stylixImage = ../../wallpapers/rammstein-log-three.jpg;
#stylixImage = ../../wallpapers/rammstein-logo-one.jpg;
#stylixImage = ../../wallpapers/rammstein-logo-three.jpg;
#stylixImage = ../../wallpapers/rammstein-one.jpg;
stylixImage = ../../wallpapers/1346530.jpeg;
# Set Waybar
# Available Options:

View File

@@ -4,34 +4,54 @@
{
config,
lib,
pkgs,
modulesPath,
...
}: {
}:
{
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = ["nvme" "xhci_pci"];
boot.initrd.kernelModules = [];
boot.kernelModules = ["kvm-amd"];
boot.extraModulePackages = [];
fileSystems."/" = {
device = "/dev/disk/by-uuid/a96dc5a2-e2bf-4725-a7be-6b9d2b020fa6";
fsType = "ext4";
boot = {
initrd = {
availableKernelModules = [
"nvme"
"xhci_pci"
"usb_storage"
"sd_mod"
];
kernelModules = [ "dm-snapshot" ];
luks.devices.cryptroot = {
device = "/dev/disk/by-uuid/6abc2228-823e-42b0-94c7-48fda757732c";
preLVM = true;
};
};
kernelModules = [ "kvm-amd" ];
extraModulePackages = [ ];
};
boot.initrd.luks.devices."luks-9b24a6b5-14e7-4e50-bd1d-c1af7382027c".device = "/dev/disk/by-uuid/9b24a6b5-14e7-4e50-bd1d-c1af7382027c";
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/3D12-F697";
fileSystems = {
"/" = {
device = "/dev/disk/by-uuid/d30939d0-53ed-4728-9190-6a5b9dec8fb4";
fsType = "ext4";
};
"/home" = {
device = "/dev/disk/by-uuid/3df34a25-7e42-433d-b723-be80f1738ba5";
fsType = "ext4";
};
"/boot" = {
device = "/dev/disk/by-uuid/0E68-9A34";
fsType = "vfat";
options = ["fmask=0077" "dmask=0077"];
options = [
"fmask=0022"
"dmask=0022"
];
};
};
swapDevices = [
{device = "/dev/disk/by-uuid/f1c0ee39-01a9-4508-916a-978650d6c514";}
{ device = "/dev/disk/by-uuid/5da7c845-7dd3-4882-93af-2d679cdb5e7a"; }
];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking

View File

@@ -57,17 +57,19 @@
# This will set your color palette
# Default background
# Add new images to ~/garandos/wallpapers
stylixImage = ../../wallpapers/attack-on-titan-mikasa-ackerman.jpg;
#stylixImage = ../../wallpapers/attack-on-titan-mikasa-ackerman.jpg;
#stylixImage = ../../wallpapers/DW_Pacts.jpg;
#stylixImage = ../../wallpapers/edward-elric-fullmetal-alchemist.jpg;
#stylixImage = ../../wallpapers/fire-nation.jpg;
#stylixImage = ../../wallpapers/four-elements.jpg;
#stylixImage = ../../wallpapers/fullmetal-alchemist-5120x2880-10399.png;
#stylixImage = ../../wallpapers/Grounded_Wallpaper_4K.jpg;
#stylixImage = ../../wallpapers/jablon.jpg;
#stylixImage = ../../wallpapers/rammstein-log-two.jpg;
#stylixImage = ../../wallpapers/rammstein-log-one.jpg;
#stylixImage = ../../wallpapers/rammstein-log-three.jpg;
#stylixImage = ../../wallpapers/rammstein-logo-one.jpg;
#stylixImage = ../../wallpapers/rammstein-logo-three.jpg;
#stylixImage = ../../wallpapers/rammstein-one.jpg;
stylixImage = ../../wallpapers/1346530.jpeg;
# Set Waybar
# Available Options:
@@ -88,8 +90,8 @@
# animations-end4.nix (end-4 project very fluid)
# animations-dynamic.nix (ml4w project)
# animations-moving.nix (ml4w project)
animChoice = ../../modules/home/hyprland/animations-def.nix;
#animChoice = ../../modules/home/hyprland/animations-end4.nix;
# animChoice = ../../modules/home/hyprland/animations-def.nix;
animChoice = ../../modules/home/hyprland/animations-end4.nix;
#animChoice = ../../modules/home/hyprland/animations-dynamic.nix;
#animChoice = ../../modules/home/hyprland/animations-moving.nix;

View File

@@ -59,17 +59,19 @@
# This will set your color palette
# Default background
# Add new images to ~/garandos/wallpapers
stylixImage = ../../wallpapers/attack-on-titan-mikasa-ackerman.jpg;
#stylixImage = ../../wallpapers/attack-on-titan-mikasa-ackerman.jpg;
#stylixImage = ../../wallpapers/DW_Pacts.jpg;
#stylixImage = ../../wallpapers/edward-elric-fullmetal-alchemist.jpg;
#stylixImage = ../../wallpapers/fire-nation.jpg;
#stylixImage = ../../wallpapers/four-elements.jpg;
#stylixImage = ../../wallpapers/fullmetal-alchemist-5120x2880-10399.png;
#stylixImage = ../../wallpapers/Grounded_Wallpaper_4K.jpg;
#stylixImage = ../../wallpapers/jablon.jpg;
#stylixImage = ../../wallpapers/rammstein-log-two.jpg;
#stylixImage = ../../wallpapers/rammstein-log-one.jpg;
#stylixImage = ../../wallpapers/rammstein-log-three.jpg;
#stylixImage = ../../wallpapers/rammstein-logo-one.jpg;
#stylixImage = ../../wallpapers/rammstein-logo-three.jpg;
#stylixImage = ../../wallpapers/rammstein-one.jpg;
stylixImage = ../../wallpapers/1346530.jpeg;
# Set Waybar
# Available Options:

View File

@@ -8,8 +8,23 @@
kernel.sysctl = {
"vm.max_map_count" = 2147483642;
};
loader.systemd-boot.enable = true;
loader.efi.canTouchEfiVariables = true;
loader = {
efi.canTouchEfiVariables = true;
limine = {
enable = true;
style = {
wallpapers = [
./../../wallpapers/attack-on-titan-mikasa-ackerman.jpg
];
wallpaperStyle = "centered";
backdrop = "${config.stylix.base16Scheme.base00}";
interface = {
branding = "GarandOS Bootloader";
resolution = "1920x1080";
};
};
};
};
# Appimage Support
binfmt.registrations.appimage = {
wrapInterpreterInShell = false;

View File

@@ -6,13 +6,17 @@
extraBackends = [ pkgs.sane-airscan ];
disabledDefaultBackends = [ "escl" ];
};
logitech.wireless.enable = false;
logitech.wireless.enableGraphical = false;
logitech.wireless = {
enable = false;
enableGraphical = false;
};
graphics.enable = true;
enableRedistributableFirmware = true;
keyboard.qmk.enable = true;
bluetooth.enable = true;
bluetooth.powerOnBoot = true;
bluetooth = {
enable = true;
powerOnBoot = false;
};
};
local.hardware-clock.enable = false;
}

View File

@@ -2,18 +2,13 @@
{
environment.systemPackages = with pkgs; [
# Communication
discord
slack
mattermost-desktop
# Productivity & Office
bitwarden-desktop
tutanota-desktop
anki-bin
onlyoffice-bin
# Cloud
nextcloud-client
# Browsers
ungoogled-chromium
iotas
logseq
# Utilities
galculator
gedit

View File

@@ -5,8 +5,6 @@
nixd
nil
nixfmt-rfc-style
# Editors & IDEs
zed-editor
# Learning & practice
exercism
];

View File

@@ -6,11 +6,7 @@
}:
{
environment.systemPackages = with pkgs; [
# Gaming platforms
lutris
wineWowPackages.waylandFull
inputs.prismlauncher-cracked.packages.${system}.default
# Games
space-cadet-pinball
tty-solitaire
];

View File

@@ -1,4 +1,5 @@
{
# pkgs
...
}:
{
@@ -18,5 +19,11 @@
enable = true;
enableSSHSupport = true;
};
nix-ld = {
enable = true;
# libraries = with pkgs; [
# biome
# ];
};
};
}

View File

@@ -41,6 +41,10 @@
appimage-run
libnotify
v4l-utils
kronometer
tasktimer
# Language dicts for Iotas
hunspell
hunspellDicts.pl_PL
hunspellDicts.en_US
];
}

View File

@@ -1,10 +1,17 @@
{ pkgs, ... }:
{
pkgs,
inputs,
system,
...
}:
{
environment.systemPackages = with pkgs; [
virt-viewer
lazydocker
docker-client
docker-compose
distrobox
boxbuddy
freerdp
inputs.winboat.packages.${system}.winboat
];
}

View File

@@ -1,74 +0,0 @@
{ ... }:
{
programs = {
starship = {
enable = false;
settings = {
add_newline = false;
buf = {
symbol = " ";
};
c = {
symbol = " ";
};
directory = {
read_only = " 󰌾";
};
docker_context = {
symbol = " ";
};
fossil_branch = {
symbol = " ";
};
git_branch = {
symbol = " ";
};
golang = {
symbol = " ";
};
hg_branch = {
symbol = " ";
};
hostname = {
ssh_symbol = " ";
};
lua = {
symbol = " ";
};
memory_usage = {
symbol = "󰍛 ";
};
meson = {
symbol = "󰔷 ";
};
nim = {
symbol = "󰆥 ";
};
nix_shell = {
symbol = " ";
};
nodejs = {
symbol = " ";
};
ocaml = {
symbol = " ";
};
package = {
symbol = "󰏗 ";
};
python = {
symbol = " ";
};
rust = {
symbol = " ";
};
swift = {
symbol = " ";
};
zig = {
symbol = " ";
};
};
};
};
}

View File

@@ -8,16 +8,14 @@
gamescopeSession.enable = true;
extraCompatPackages = [ pkgs.proton-ge-bin ];
};
gamescope = {
enable = true;
capSysNice = true;
args = [
"--rt"
"--expose-wayland"
];
};
# gamescope = {
# enable = true;
# capSysNice = true;
# args = [
# "--rt"
# "--expose-wayland"
# ];
# };
gamemode.enable = true;
};
}

View File

@@ -16,5 +16,6 @@ in
config = mkIf cfg.enable {
systemd.tmpfiles.rules = [ "L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}" ];
services.xserver.videoDrivers = [ "amdgpu" ];
environment.systemPackages = with pkgs; [ rocmPackages.rocm-smi ];
};
}

View File

@@ -1,6 +1,7 @@
{
lib,
config,
pkgs,
...
}:
with lib;
@@ -14,7 +15,10 @@ in
config = mkIf cfg.enable {
services.xserver.videoDrivers = [ "nvidia" ];
hardware.nvidia = {
environment.systemPackages = with pkgs; [ nvidia-docker ];
hardware = {
nvidia-container-toolkit.enable = true;
nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
@@ -37,4 +41,21 @@ in
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
};
};
}
# Making nvidia docker toolkit work:
#
# sudo nvidia-ctk cdi generate --output=/etc/cdi/nvidia.yaml
#
# sudo nvidia-ctk cdi list
#
# sudo tee /etc/docker/daemon.json > /dev/null <<EOF
# {
# "features": {
# "cdi": true
# }
# }
# EOF
#
# docker run --device nvidia.com/gpu=all

10
modules/home/anki.nix Normal file
View File

@@ -0,0 +1,10 @@
{ pkgs, username, ... }:
{
programs.anki = {
enable = true;
package = pkgs.anki;
language = "pl_PL";
style = "native";
sync.username = username;
};
}

View File

@@ -6,10 +6,11 @@
pullos = "git -C /home/${username}/garandos pull";
upd = "nh os switch --hostname ${host}";
upg = "nh os switch --hostname ${host} --update";
upf = "sudo nix flake update";
upd-bt = "nh os boot --hostname ${host}";
upd-ts = "nh os test --hostname ${host}";
upd-bd = "nh os build --hostname ${host}";
ncg = "nix-collect-garbage --delete-old && sudo nix-collect-garbage -d && sudo /run/current-system/bin/switch-to-configuration boot";
ncg = "nh clean all";
# Development aliases
srvenv = "source .venv/bin/activate";

View File

@@ -2,8 +2,8 @@ _: {
programs.bash = {
enable = true;
enableCompletion = true;
initExtra = ''
fastfetch
'';
# initExtra = ''
# fastfetch
# '';
};
}

View File

@@ -1,5 +1,4 @@
{ config, ... }:
{
_: {
programs.cava = {
enable = true;
settings = {

37
modules/home/chromium.nix Normal file
View File

@@ -0,0 +1,37 @@
{ pkgs, ... }:
{
programs.chromium = {
enable = true;
package = pkgs.ungoogled-chromium;
commandLineArgs = [
"--disable-gpu" # Do czasu aż naprawią problemy
];
dictionaries = with pkgs; [
hunspellDictsChromium.en_US
# hunspellDictsChromium.pl_PL Jeśli się taka pojawi
];
extensions = [
{
id = "ocaahdebbfolfmndjeplogmgcagdmblk"; # Chromium Web Store
}
{
id = "eimadpbcbfnmbkopoojfekhnkhdbieeh"; # Dark Reader
}
{
id = "fnaicdffflnofjppbagibeoednhnbjhg"; # floccus bookmarks sync
}
{
id = "amknoiejhlmhancpahfcfcfhllgkpbld"; # Hoppscotch Browser Extension
}
{
id = "nngceckbapebfimnlniiiahkandclblb"; # Menedżer haseł Bitwarden
}
{
id = "fdaphilojaklgkoocegabckfanjoacjg"; # mtab
}
{
id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; # uBlock Origin
}
];
};
}

View File

@@ -11,6 +11,7 @@ in
waybarChoice
./wlogout
./amfora.nix
./anki.nix
./bash.nix
./bash-aliases.nix
./bash-functions.nix
@@ -18,17 +19,20 @@ in
./btop.nix
./bottom.nix
./cava.nix
./chromium.nix
./emoji.nix
./eza.nix
./fzf.nix
./gh.nix
./git.nix
./gtk.nix
./htop.nix
./kdeConnect.nix
./kitty.nix
./lazygit.nix
./librewolf.nix
./lutris.nix
./nextcloud.nix
./obs-studio.nix
./onlyoffice.nix
./qt.nix
./ssh.nix
./starship.nix
@@ -36,10 +40,11 @@ in
./swappy.nix
./swaync.nix
./tealdeer.nix
./vesktop.nix
./virtmanager.nix
./xdg.nix
./zoxide.nix
./vscode.nix
# ./zed.nix
./zed.nix
];
}

View File

@@ -78,7 +78,7 @@
}
{
type = "os";
key = " OS";
key = " OS";
keyColor = "31";
}
{

View File

@@ -5,29 +5,19 @@ in
{
programs.git = {
enable = true;
userName = "${gitUsername}";
userEmail = "${gitEmail}";
extraConfig = {
# FOSS-friendly settings
push.default = "simple"; # Match modern push behavior
credential.helper = "cache --timeout=7200";
init.defaultBranch = "main"; # Set default new branches to 'main'
log.decorate = "full"; # Show branch/tag info in git log
log.date = "iso"; # ISO 8601 date format
# Conflict resolution style for readable diffs
merge.conflictStyle = "diff3";
settings = {
user = {
name = "${gitUsername}";
email = "${gitEmail}";
};
# Optional: FOSS-friendly Git aliases
aliases = {
br = "branch --sort=-committerdate";
co = "checkout";
df = "diff";
com = "commit -a";
gs = "stash";
gp = "pull";
lg = "log --graph --pretty=format:'%Cred%h%Creset - %C(yellow)%d%Creset %s %C(green)(%cr)%C(bold blue) <%an>%Creset' --abbrev-commit";
st = "status";
push.default = "simple";
credential.helper = "cache --timeout=7200";
init.defaultBranch = "main";
log = {
decorate = "full";
date = "iso";
};
merge.conflictStyle = "diff3";
};
};
}

View File

@@ -1,46 +0,0 @@
{ config, ... }:
{
programs.htop = {
enable = true;
settings = {
color_scheme = 6;
cpu_count_from_one = 0;
delay = 15;
fields = with config.lib.htop.fields; [
PID
USER
PRIORITY
NICE
M_SIZE
M_RESIDENT
M_SHARE
STATE
PERCENT_CPU
PERCENT_MEM
TIME
COMM
];
highlight_base_name = 1;
highlight_megabytes = 1;
highlight_threads = 1;
}
// (
with config.lib.htop;
leftMeters [
(bar "AllCPUs2")
(bar "Memory")
(bar "Swap")
(text "Zram")
]
)
// (
with config.lib.htop;
rightMeters [
(text "Tasks")
(text "LoadAverage")
(text "Uptime")
(text "Systemd")
]
);
};
}

View File

@@ -10,10 +10,12 @@ in
# APLIKACJE - GŁÓWNE
# =============================================================================
"$modifier, A, exec, anki"
"$modifier, B, exec, btop"
"$modifier, B, exec, bitwarden"
"$modifier, C, exec, chromium"
"$modifier, D, exec, discord"
"$modifier, D, exec, vesktop"
"$modifier, G, exec, gimp"
"$modifier, I, exec, iotas"
"$modifier, L, exec, logseq"
"$modifier, M, exec, plexamp"
"$modifier, N, exec, dex ${desktopEntriesPath}/garandcloud.desktop"
"$modifier, O, exec, obs"
@@ -40,6 +42,8 @@ in
# =============================================================================
# APLIKACJE - Z ALT I CONTROL
# =============================================================================
"$modifier ALT, B, exec, btop"
"$modifier ALT, G, exec, dex ${desktopEntriesPath}/glance.desktop"
"$modifier ALT, M, exec, dex ${desktopEntriesPath}/mastodon.desktop"
"$modifier ALT, S, exec, slack"
"$modifier CONTROL, M, exec, mattermost-desktop"
@@ -50,7 +54,6 @@ in
"$modifier, E, exec, emopicker9000"
"$modifier, K, exec, galculator"
"$modifier, P, exec, hyprpicker -a"
"$modifier ALT, K, exec, kronometer"
"$modifier ALT, W, exec, wallsetter"
"$modifier SHIFT, K, exec, list-keybinds"
"$modifier SHIFT, P, exec, pavucontrol"
@@ -62,6 +65,7 @@ in
"$modifier, Escape, exec, hyprlock"
"$modifier, F, fullscreen,"
"$modifier, Q, killactive,"
"$modifier CONTROL, Escape, exec, wlogout"
"$modifier SHIFT, Escape, exit,"
"$modifier SHIFT, I, togglesplit,"

View File

@@ -9,8 +9,7 @@ in
exec-once = [
"wl-paste --type text --watch cliphist store" # Saves text
"wl-paste --type image --watch cliphist store" # Saves images
"dbus-update-activation-environment --all --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
"
"dbus-update-activation-environment --all --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
"systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
"systemctl --user start hyprpolkitagent"

View File

@@ -135,6 +135,10 @@ in
direct_scanout = 0;
};
debug = {
full_cm_proto = true;
};
master = {
new_status = "master";
new_on_top = 1;

View File

@@ -0,0 +1,8 @@
{ pkgs, ... }:
{
services.kdeconnect = {
enable = true;
indicator = true;
package = pkgs.kdePackages.kdeconnect-kde;
};
}

View File

@@ -1,35 +0,0 @@
# Lazygit is a simple terminal UI for git commands.
{ config, lib, ... }:
let
accent = "#${config.lib.stylix.colors.base0D}";
muted = "#${config.lib.stylix.colors.base03}";
in
{
programs.lazygit = {
enable = true;
settings = lib.mkForce {
disableStartupPopups = true;
notARepository = "skip";
promptToReturnFromSubprocess = false;
update.method = "never";
git = {
commit.signOff = true;
parseEmoji = true;
};
gui = {
theme = {
activeBorderColor = [
accent
"bold"
];
inactiveBorderColor = [ muted ];
};
showListFooter = false;
showRandomTip = false;
showCommandLog = false;
showBottomLine = false;
nerdFontsVersion = "3";
};
};
};
}

11
modules/home/lutris.nix Normal file
View File

@@ -0,0 +1,11 @@
{ pkgs, osConfig, ... }:
{
programs.lutris = {
enable = true;
package = pkgs.lutris;
protonPackages = [ pkgs.proton-ge-bin ];
winePackages = [ pkgs.wineWowPackages.waylandFull ];
defaultWinePackage = pkgs.wineWowPackages.waylandFull;
steamPackage = osConfig.programs.steam.package;
};
}

View File

@@ -0,0 +1,8 @@
{ pkgs, ... }:
{
services.nextcloud-client = {
enable = true;
startInBackground = true;
package = pkgs.nextcloud-client;
};
}

View File

@@ -0,0 +1,13 @@
{ pkgs, ... }:
{
programs.onlyoffice = {
enable = true;
package = pkgs.onlyoffice-desktopeditors;
settings = {
UITheme = "theme-night";
editorWindowMode = false;
position = "@Rect(10 50 1900 1020)";
titlebar = "custom";
};
};
}

View File

@@ -14,7 +14,7 @@
icon-theme = "Papirus";
font = "JetBrainsMono Nerd Font Mono 12";
drun-display-format = "{icon} {name}";
display-drun = " Apps";
display-drun = " Apps";
display-run = " Run";
display-filebrowser = " File";
};

View File

@@ -11,8 +11,17 @@ pkgs.writeShellScriptBin "list-keybinds" ''
msg=' = Windows/Super/CAPS LOCK (Enter nie wykonuje skrótu)'
keybinds=$(cat ~/.config/hypr/hyprland.conf | grep -E '^bind')
# replace #modifier with SUPER in the displayed keybinds for rofi
display_keybinds=$(echo "$keybinds" | sed 's/\$modifier//g' | sed 's|${desktopEntriesPath}/||g')
# replace $modifier with SUPER and clean up paths
display_keybinds=$(echo "$keybinds" | sed 's/\$modifier//g' | sed 's|${desktopEntriesPath}/||g')
# remove "bind=" and "bindm=" prefixes
display_keybinds=$(echo "$display_keybinds" | sed 's/^bind=//' | sed 's/^bindm=/🖱/')
# add + before CONTROL, SHIFT, ALT when they appear after removed $modifier
display_keybinds=$(echo "$display_keybinds" | sed 's/ CONTROL/ + CONTROL/g' | sed 's/ SHIFT/ + SHIFT/g' | sed 's/ ALT/ + ALT/g')
# replace commas: first comma -> " +", second comma -> " =", remaining commas -> " ->"
display_keybinds=$(echo "$display_keybinds" | sed 's/,/ +/1' | sed 's/,/ =/1' | sed 's/,/ ->/g')
# use rofi to display the keybinds with the modified content
echo "$display_keybinds" | rofi -dmenu -i -config ~/.config/rofi/config-long.rasi -mesg "$msg"

View File

@@ -35,21 +35,24 @@ in
truncation_symbol = "/";
truncate_to_repo = false;
substitutions = {
"Documents" = "󰈙";
"Documents" = "󰈙 ";
"Downloads" = " ";
"Music" = " ";
"Pictures" = " ";
"Projects" = " ";
"nix" = " ";
"nixos" = " ";
};
};
character = {
success_symbol = "[](${accent})";
error_symbol = "[](red)";
success_symbol = "[ ](${accent})";
error_symbol = "[ ](red)";
};
nix_shell = {
format = "[$symbol]($style) ";
symbol = " ";
symbol = " ";
style = "";
};

View File

@@ -6,8 +6,9 @@
rofi.enable = false;
hyprland.enable = false;
hyprlock.enable = false;
ghostty.enable = false;
vscode.enable = false;
zed.enable = false;
vesktop.enable = false;
qt = {
enable = true;
platform = "qtct";

3
modules/home/vesktop.nix Normal file
View File

@@ -0,0 +1,3 @@
_: {
programs.vesktop.enable = true;
}

View File

@@ -130,7 +130,7 @@ with lib;
};
"custom/startmenu" = {
tooltip = false;
format = " ";
format = " ";
# exec = "rofi -show drun";
on-click = "rofi -show drun";
};

View File

@@ -136,7 +136,7 @@ with lib;
};
"custom/startmenu" = {
tooltip = false;
format = " ";
format = " ";
# exec = "rofi -show drun";
on-click = "rofi -show drun";
};

View File

@@ -1,4 +1,4 @@
{ pkgs, ... }:
{ pkgs, config, ... }:
let
messengerIcon = pkgs.fetchurl {
url = "https://assets.stickpng.com/images/580b57fcd9996e24bc43c526.png";
@@ -20,6 +20,10 @@ let
url = "https://registry.npmmirror.com/@lobehub/icons-static-png/1.65.0/files/dark/claude-color.png";
sha256 = "sha256-wmYmbmT2/bR4JrnZJu2stjRZm//O5TB9EPE2NQWdGkQ=";
};
glanceIcon = pkgs.fetchurl {
url = "https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/glance.png";
sha256 = "sha256-xyFlmPpt+DABoGX5oBqj/aQVdxtmNflat9Jb2BE7SOY=";
};
in
{
xdg = {
@@ -28,8 +32,23 @@ in
mimeApps.enable = true;
portal = {
enable = true;
extraPortals = [ pkgs.xdg-desktop-portal-hyprland ];
configPackages = [ pkgs.hyprland ];
extraPortals = with pkgs; [
xdg-desktop-portal-hyprland
xdg-desktop-portal-gtk
kdePackages.xdg-desktop-portal-kde
];
configPackages = [ config.wayland.windowManager.hyprland.package ];
config = {
common.default = "*";
hyprland = {
default = [
"hyprland"
"gtk"
];
"org.freedesktop.impl.portal.FileChooser" = "kde";
"org.freedesktop.impl.portal.Print" = "kde";
};
};
};
desktopEntries = {
"messenger" = {
@@ -72,6 +91,14 @@ in
terminal = false;
type = "Application";
};
"glance" = {
name = "Glance";
genericName = "Glance";
exec = "chromium --profile-directory=Default --app=https://glance.garandplg.com/";
icon = "${glanceIcon}";
terminal = false;
type = "Application";
};
};
};
}

View File

@@ -1,124 +1,118 @@
{ pkgs, lib, ... }:
{ pkgs, ... }:
{
programs.zed-editor = {
enable = true;
package = pkgs.zed-editor;
installRemoteServer = true;
extensions = [
"nix"
"one-dark-pro-monokai-darker"
"toml"
"superhtml"
"dockerfile"
"docker-compose"
"git-firefly"
"vue"
"astro"
"docker-compose"
"nix"
"csv"
"rainbow-csv"
"vscode-icons"
"codebook"
"python-requirements"
"one-dark-pro-monokai-darker"
"hyprlang"
"json5"
"html-jinja"
"deputy"
"biome"
];
extraPackages = with pkgs; [ biome ];
userSettings = {
assistant = {
enabled = true;
version = "2";
default_open_ai_model = null;
### PROVIDER OPTIONS
### zed.dev models { claude-3-5-sonnet-latest } requires github connected
### anthropic models { claude-3-5-sonnet-latest claude-3-haiku-latest claude-3-opus-latest } requires API_KEY
### copilot_chat models { gpt-4o gpt-4 gpt-3.5-turbo o1-preview } requires github connected
agent = {
always_allow_tool_actions = true;
default_profile = "ask";
default_model = {
provider = "zed.dev";
model = "claude-3-5-sonnet-latest";
};
# inline_alternatives = [
# {
# provider = "copilot_chat";
# model = "gpt-3.5-turbo";
# }
# ];
};
node = {
path = lib.getExe pkgs.nodejs;
npm_path = lib.getExe' pkgs.nodejs "npm";
};
hour_format = "hour24";
auto_update = false;
terminal = {
alternate_scroll = "off";
blinking = "off";
copy_on_select = false;
dock = "bottom";
detect_venv = {
on = {
directories = [
".env"
"env"
".venv"
"venv"
];
activate_script = "default";
provider = "anthropic";
model = "claude-sonnet-4-latest";
};
};
# env = {
# TERM = "alacritty";
# };
font_family = "FiraCode Nerd Font";
font_features = null;
font_size = null;
line_height = "comfortable";
option_as_meta = false;
button = false;
shell = "system";
#{
# program = "zsh";
#};
toolbar = {
title = true;
telemetry = {
diagnostics = false;
metrics = false;
};
working_directory = "current_project_directory";
};
# lsp = {
# rust-analyzer = {
# binary = {
# path = lib.getExe pkgs.rust-analyzer;
# path_lookup = true;
# };
# };
# nix = {
# binary = {
# path_lookup = true;
# };
# };
# };
languages = {
"HTML" = {
"language_servers" = [
"vscode-html-language-server"
"superhtml"
];
"formatter" = {
"language_server" = {
"name" = "superhtml";
};
};
};
};
vim_mode = false;
load_direnv = "shell_hook";
base_keymap = "VSCode";
theme = {
mode = "system";
light = "One Dark Pro Monokai Darker Theme";
dark = "One Dark Pro Monokai Darker Theme";
};
show_whitespaces = "all";
icon_theme = "VSCode Icons (Dark)";
ui_font_size = 16;
buffer_font_size = 16;
buffer_font_size = 15;
theme = {
mode = "dark";
light = "One Light";
dark = "One Dark Pro Monokai Darker";
};
languages = {
Python = {
language_servers = [ "!basedpyright" ];
};
YAML = {
tab_size = 2;
};
JavaScript = {
formatter.language_server.name = "biome";
code_actions_on_format = {
"source.fixAll.biome" = true;
"source.organizeImports.biome" = true;
};
tab_size = 2;
};
TypeScript = {
formatter.language_server.name = "biome";
code_actions_on_format = {
"source.fixAll.biome" = true;
"source.organizeImports.biome" = true;
};
tab_size = 2;
};
Astro = {
formatter.language_server.name = "biome";
code_actions_on_format = {
"source.fixAll.biome" = true;
"source.organizeImports.biome" = true;
};
tab_size = 2;
};
"Vue.js" = {
formatter.language_server.name = "biome";
code_actions_on_format = {
"source.fixAll.biome" = true;
"source.organizeImports.biome" = true;
};
tab_size = 2;
};
JSON = {
formatter.language_server.name = "biome";
code_actions_on_format = {
"source.fixAll.biome" = true;
"source.organizeImports.biome" = true;
};
tab_size = 2;
};
JSONC = {
formatter.language_server.name = "biome";
code_actions_on_format = {
"source.fixAll.biome" = true;
"source.organizeImports.biome" = true;
};
tab_size = 2;
};
CSS = {
formatter.language_server.name = "biome";
code_actions_on_format = {
"source.fixAll.biome" = true;
"source.organizeImports.biome" = true;
};
tab_size = 2;
};
};
};
};
}

BIN
wallpapers/1346530.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 MiB