Compare commits

...

138 Commits

Author SHA1 Message Date
386c4d6561 submodules should use https 2026-01-21 17:44:50 -06:00
66171880bc submodules should use https 2026-01-21 17:43:55 -06:00
65430099bf submodules should use https 2026-01-21 17:40:57 -06:00
a65cfacb79 Revert "submodules should use https"
This reverts commit c6a21aee85.
2026-01-21 17:37:32 -06:00
c6a21aee85 submodules should use https 2026-01-21 17:30:50 -06:00
514e4864ca options 2026-01-21 16:30:18 -06:00
69d16e38a8 nix-on-droid only goes to 24.05 2026-01-21 12:24:27 -06:00
e86a839bd7 rename options 2026-01-21 09:42:51 -06:00
65f878b20d prepare android 2026-01-21 09:27:44 -06:00
b893475db6 prepare android 2026-01-21 09:22:22 -06:00
1ada91d5ef reorganize 2026-01-20 17:34:34 -06:00
42bf08084e reorganize and fix searxng 2026-01-20 17:30:56 -06:00
50d192c809 reorganize 2026-01-20 13:34:12 -06:00
c028bad2a6 fix portainer domain 2026-01-20 12:44:01 -06:00
9b218f88fa fix traefik docker 2026-01-20 12:34:45 -06:00
276823d2aa fix traefik docker 2026-01-20 11:53:31 -06:00
ab47a1ea52 fix traefik docker 2026-01-20 11:48:40 -06:00
4a7615b50c fix traefik docker 2026-01-20 11:40:43 -06:00
ea37cbe865 no error 2026-01-20 11:17:08 -06:00
8cc337ca0e no error 2026-01-20 11:16:46 -06:00
f99cb4f761 try docker provider for traefik 2026-01-20 11:15:55 -06:00
6abef03321 networking 2026-01-19 19:46:45 -06:00
f584fb2e32 networking 2026-01-19 19:40:29 -06:00
b7763031dd networking 2026-01-19 19:36:09 -06:00
761624c21c networking 2026-01-19 17:53:14 -06:00
43d87cb6b3 networking 2026-01-19 17:42:51 -06:00
be310b9ae7 docker network 2026-01-19 17:25:19 -06:00
39fb19f62e setup internal services 2026-01-19 16:06:23 -06:00
f7041607d7 try 2026-01-19 11:10:07 -06:00
6ef3081bd1 try 2026-01-19 10:46:19 -06:00
c69e8ed0ef help 2026-01-19 10:35:43 -06:00
9e3023c26b help 2026-01-19 10:33:23 -06:00
3a6c6673eb help 2026-01-19 10:08:09 -06:00
c6baa8fc5b try pihole network 2026-01-19 09:13:22 -06:00
9a89b1ee6a try pihole network 2026-01-19 09:10:54 -06:00
eda60a7fec try pihole network 2026-01-19 08:49:42 -06:00
e69f8348be try pihole network 2026-01-19 08:42:11 -06:00
23b4035da1 try pihole network 2026-01-19 01:09:51 -06:00
02427aca71 try netbird + pihole 2026-01-19 00:42:13 -06:00
03274e6e46 try netbird + pihole 2026-01-19 00:35:11 -06:00
bf994f7e13 try compartmental traefik 2026-01-18 23:59:14 -06:00
3696bab033 try compartmental traefik 2026-01-18 23:16:54 -06:00
ea2a03037a try compartmental traefik 2026-01-18 23:14:32 -06:00
0947941c11 dns trouble 2026-01-18 22:22:48 -06:00
c48ecab2bd dns trouble 2026-01-18 22:11:32 -06:00
55b1cae63b set pihole as sole dns 2026-01-18 21:34:28 -06:00
76a072d274 try pihole as sole dns 2026-01-18 19:41:19 -06:00
346907fce4 try pihole as sole dns 2026-01-18 18:58:59 -06:00
86810b6105 fix remote build 2026-01-18 18:27:02 -06:00
eba2b6e52f fix remote build 2026-01-18 18:23:45 -06:00
96e4476934 fix remote build 2026-01-18 18:22:40 -06:00
560f36b18e packages 2026-01-18 17:22:49 -06:00
0c9d45ad39 packages 2026-01-18 17:17:23 -06:00
e39eeac850 packages 2026-01-18 17:14:48 -06:00
46cc39c91f options 2026-01-18 17:11:03 -06:00
9f7b03679a options 2026-01-18 17:10:23 -06:00
96ab25c6ad move options 2026-01-18 17:08:05 -06:00
d530844886 docker ollama tune 2026-01-18 14:34:43 -06:00
8bb52d7df6 docker ollama tune 2026-01-18 14:31:50 -06:00
05d4280ad6 docker ollama debug 2026-01-18 14:17:46 -06:00
90b99dbf19 docker ollama debug 2026-01-18 14:13:22 -06:00
f96f7182c4 docker ollama debug 2026-01-18 14:08:35 -06:00
bd8b5f1327 docker perms 2026-01-18 13:40:15 -06:00
d13b59e7ac docker ollama 2026-01-18 13:34:23 -06:00
69b47de1fc docker pihole debug 2026-01-18 12:42:14 -06:00
06cb547197 docker pihole debug 2026-01-18 12:32:47 -06:00
f0ec952442 docker pihole enable 2026-01-18 12:23:46 -06:00
2fab28204d docker pihole 2026-01-18 12:21:50 -06:00
9b32b8a6db option 2026-01-18 11:01:24 -06:00
71e6fbcef4 spellcheck 2026-01-18 10:57:51 -06:00
1b140efc19 mkIf nonsense 2026-01-18 10:57:03 -06:00
8c21db0a08 try 2026-01-18 10:54:34 -06:00
d5a7657410 spellcheck 2026-01-18 10:47:22 -06:00
e5b8871d4e try docker 2026-01-18 10:45:33 -06:00
a6808a984e try 2026-01-17 10:24:00 -06:00
e5f6a4bc69 dns 2026-01-17 10:19:35 -06:00
eb857b8d03 timeout 2026-01-17 10:13:32 -06:00
712aaab720 spellcheck 2026-01-17 10:10:47 -06:00
778433b318 try networkd again 2026-01-17 10:08:11 -06:00
7440ef91b4 try preStart 2026-01-16 20:37:49 -06:00
265a526c8b try networkd 2026-01-16 19:15:29 -06:00
6cd5770452 pihole and dots 2026-01-16 18:33:53 -06:00
66d2dde112 try cname 2026-01-16 07:42:43 -06:00
7974a95659 pihole please 2026-01-15 23:37:22 -06:00
8b605d692f pihole please 2026-01-15 23:23:27 -06:00
b911a7931e pihole? 2026-01-15 23:16:49 -06:00
574b2c058b pihole? 2026-01-15 23:11:54 -06:00
f4f69a4a25 pihole? 2026-01-15 23:07:10 -06:00
640c5911f6 ollama env var 2026-01-15 21:20:53 -06:00
be74b8caaf test dns 2026-01-15 21:05:12 -06:00
be199acad3 rewrite colorPrefix 2026-01-15 19:45:55 -06:00
3335542d54 rewrite colorPrefix 2026-01-15 19:39:46 -06:00
e008cd4d89 don't use bs nameservers 2026-01-15 19:23:52 -06:00
4dbffa89c2 help 2026-01-15 19:16:24 -06:00
c89816839a help 2026-01-15 19:06:50 -06:00
b5b1e07f3a option 2026-01-15 18:53:34 -06:00
340ea873ce option 2026-01-15 18:51:43 -06:00
1fa30bdb94 option 2026-01-15 18:49:46 -06:00
f480a1f8c9 lots 2026-01-15 18:47:31 -06:00
fd3f3639bd try 2026-01-14 15:49:11 -06:00
be4f0c5e6b try 2026-01-14 15:28:25 -06:00
46f546a0e0 ssh key 2026-01-12 15:24:08 -06:00
22535fbbaf ollama gpu 2026-01-11 22:25:28 -06:00
10cf6bba46 fix homebox 2026-01-11 21:44:12 -06:00
f07c4ae0d3 fix homebox 2026-01-11 21:02:39 -06:00
c1f8c704b3 fix homebox 2026-01-11 20:43:00 -06:00
0aa7f459dd update machines 2026-01-11 20:32:16 -06:00
15dfb83bb7 propare homebox 2026-01-11 18:08:00 -06:00
6b8a9a2152 propare homebox 2026-01-11 17:45:06 -06:00
482f1b5912 propare homebox 2026-01-11 17:35:19 -06:00
78277afa8a propare homebox 2026-01-11 17:33:24 -06:00
680454c6b2 propare homebox 2026-01-11 17:32:04 -06:00
ec1a12e2a1 propare homebox 2026-01-11 17:24:24 -06:00
960af2d43b propare homebox 2026-01-11 17:19:52 -06:00
a7e636e7a2 propare homebox 2026-01-11 17:18:05 -06:00
099b8e40b2 prepare homebox 2026-01-11 17:15:15 -06:00
32bf3e0bc0 propare homebox 2026-01-11 17:14:29 -06:00
905de63f78 lock 2026-01-11 14:26:13 -06:00
c977f9d3a2 proper branch stuff 2026-01-11 14:24:50 -06:00
bc666ecab5 git tomfoolery 2026-01-11 14:23:31 -06:00
8e0d66eff5 fix file not found stuff? 2026-01-11 14:12:49 -06:00
c657f03912 update machines 2026-01-11 10:20:05 -06:00
2ec608c5ae update machines 2026-01-11 10:12:55 -06:00
6a3a44b2f0 add more opencode models 2026-01-10 23:23:33 -06:00
1c96a54c52 use instruct model for opencode 2026-01-10 21:23:53 -06:00
30d55ebb5a unfree problems 2026-01-10 19:06:55 -06:00
daf0ea1169 update ollama, add magic space, install opencode 2026-01-10 18:58:54 -06:00
bd20e9a29b fix pypr 2026-01-10 11:58:17 -06:00
f8d3994ad9 update hyprland window rules 2026-01-10 10:50:33 -06:00
3b376d7657 update laptop 2026-01-10 10:33:52 -06:00
082f0bdcc5 fix hyprrun 2026-01-10 10:09:29 -06:00
137e3753da no hypr errors 2026-01-10 09:09:03 -06:00
c012163715 fix syntax 2026-01-10 08:58:54 -06:00
be4b7c7d82 fix warning 2026-01-10 08:07:25 -06:00
6c88dcd775 fix warning 2026-01-10 08:02:07 -06:00
a1f0bf30cd stop warning? 2026-01-10 07:56:48 -06:00
873230cfe3 use an option that exists 2026-01-09 20:33:01 -06:00
1bf5944f11 include quickshell for option 2026-01-09 19:53:28 -06:00
151 changed files with 4065 additions and 1179 deletions

14
.gitmodules vendored
View File

@@ -1,9 +1,9 @@
[submodule "machines/laptop"]
path = machines/laptop
url = ssh://gitea@gitea.esotericbytes.com/Blunkall-Technologies/laptop
[submodule "machines/android"]
path = machines/android
url = ssh://gitea@gitea.esotericbytes.com/Blunkall-Technologies/android
[submodule "machines/homebox"]
path = machines/homebox
url = ssh://gitea@gitea.esotericbytes.com/Blunkall-Technologies/homebox
url = https://gitea.esotericbytes.com/Blunkall-Technologies/homebox
[submodule "machines/laptop"]
path = machines/laptop
url = https://gitea.esotericbytes.com/Blunkall-Technologies/laptop
[submodule "machines/android"]
path = machines/android
url = https://gitea.esotericbytes.com/Blunkall-Technologies/android

View File

@@ -3,28 +3,6 @@ keys:
- &laptop age1yqgyp2uxz4lzrc9f9ka0mfjl5fr6ahf8nf24nlmran2wulg6fpvq9hyp9q
- &android age12pnf36uqesjmy3e0lythfnpwam3zg5mv8m936fc4jphy4ces2fdqwn0s74
creation_rules:
- path_regex: homebox/secrets.yaml$
key_groups:
- age:
- *homebox
- path_regex: laptop/secrets.yaml$
key_groups:
- age:
- *laptop
- path_regex: pi4/secrets.yaml$
key_groups:
- age:
- *laptop
- path_regex: live/secrets.yaml$
key_groups:
- age:
- *laptop
- path_regex: nathan/secrets.yaml$
key_groups:
- age:
- *laptop
- *homebox
- *android
- path_regex: system/secrets.yaml$
key_groups:
- age:

44
flake.lock generated
View File

@@ -61,11 +61,11 @@
},
"locked": {
"dir": "pkgs/firefox-addons",
"lastModified": 1767585814,
"narHash": "sha256-7iodv57Ppq05AHVKnS9/IdhhgBYTVpTDZmz2u2enr/E=",
"lastModified": 1768150501,
"narHash": "sha256-601j0FWA9UzEaDF3xj+12n94bkuVF/zkpLIOt6EfRK0=",
"owner": "rycee",
"repo": "nur-expressions",
"rev": "66bfeb87deb83ca2f9fa2045704b72de52c6433a",
"rev": "1b848102f204ce846360009d193ea6d0280c814a",
"type": "gitlab"
},
"original": {
@@ -212,11 +212,11 @@
]
},
"locked": {
"lastModified": 1767619900,
"narHash": "sha256-KpoCBPvwHz3gAQtIUkohE2InRBFK3r0/FM6z5SPWfvM=",
"lastModified": 1767910483,
"narHash": "sha256-MOU5YdVu4DVwuT5ztXgQpPuRRBjSjUGIdUzOQr9iQOY=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "6bd04da47cfb48dfd15eabf08364b78ad894f5b2",
"rev": "82fb7dedaad83e5e279127a38ef410bcfac6d77c",
"type": "github"
},
"original": {
@@ -301,11 +301,11 @@
"xdph": "xdph"
},
"locked": {
"lastModified": 1767654014,
"narHash": "sha256-1RG4xtr1FOX7mtSGBR9BcCsTrlRkXbygPaCSFNdT3bs=",
"lastModified": 1768144432,
"narHash": "sha256-lLV0egdN9VF6BjhG6GVEVMviFuM05XCv35YNsfLzS9w=",
"ref": "refs/heads/main",
"rev": "9817553c664b0b7f6776671383a6368c74ee8dee",
"revCount": 6789,
"rev": "fbf421df889ceff3bac08a9f4b9493def5eecc4d",
"revCount": 6805,
"submodules": true,
"type": "git",
"url": "https://github.com/hyprwm/Hyprland"
@@ -584,11 +584,11 @@
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1767147099,
"narHash": "sha256-395ehjdAtaqCbKmx+PhKAqnkYLvTtAzq2qzFG9qaGDw=",
"lastModified": 1767838769,
"narHash": "sha256-KCLU6SUU80tEBKIVZsBrSjRYX6kn1eVIYI3fEEqOp24=",
"owner": "Infinidoge",
"repo": "nix-minecraft",
"rev": "01f571579edd64433f97c4294137fbc366deef4b",
"rev": "4da21f019f6443f513f16af7f220ba4db1cdfc04",
"type": "github"
},
"original": {
@@ -630,11 +630,11 @@
},
"nixpkgs-us": {
"locked": {
"lastModified": 1767379071,
"narHash": "sha256-EgE0pxsrW9jp9YFMkHL9JMXxcqi/OoumPJYwf+Okucw=",
"lastModified": 1767892417,
"narHash": "sha256-dhhvQY67aboBk8b0/u0XB6vwHdgbROZT3fJAjyNh5Ww=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "fb7944c166a3b630f177938e478f0378e64ce108",
"rev": "3497aa5c9457a9d88d71fa93a4a8368816fbeeba",
"type": "github"
},
"original": {
@@ -662,11 +662,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1767480499,
"narHash": "sha256-8IQQUorUGiSmFaPnLSo2+T+rjHtiNWc+OAzeHck7N48=",
"lastModified": 1768028080,
"narHash": "sha256-50aDK+8eLvsLK39TzQhKNq50/HcXyP4hyxOYoPoVxjo=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "30a3c519afcf3f99e2c6df3b359aec5692054d92",
"rev": "d03088749a110d52a4739348f39a63f84bb0be14",
"type": "github"
},
"original": {
@@ -816,11 +816,11 @@
]
},
"locked": {
"lastModified": 1767499857,
"narHash": "sha256-0zUU/PW09d6oBaR8x8vMHcAhg1MOvo3CwoXgHijzzNE=",
"lastModified": 1768104471,
"narHash": "sha256-HdnXWQsA1EI27IJlaENUEEug58trUrh6+MT0cFiDHmY=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "ecc41505948ec2ab0325f14c9862a4329c2b4190",
"rev": "94f9cbd20f680ebb2ad6cdf39da97cbcfaedf004",
"type": "github"
},
"original": {

View File

@@ -34,12 +34,14 @@
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
nixvim.url = "git+https://gitea.esotericbytes.com/Blunkall-Technologies/Moirai";
self.submodules = true;
};
outputs = { self, nixpkgs, home-manager, ... } @ inputs: {
profiles = let
dir = builtins.readDir ./system/profiles;
dir = builtins.readDir ./profiles;
filtered = builtins.filter (x: dir.${x} == "directory") (builtins.attrNames dir);
in (builtins.listToAttrs
(builtins.map
@@ -49,14 +51,14 @@
value = { ... }: {
imports = [
./system
./system/profiles/${name}
./profiles/${name}
];
};
})) filtered)
);
homes = let
dir = builtins.readDir ./system/users;
dir = builtins.readDir ./homes;
filtered = builtins.filter (x: dir.${x} == "directory") (builtins.attrNames dir);
in (builtins.listToAttrs
(builtins.map
@@ -65,7 +67,7 @@
value = { ... } @ exputs: {
imports = [
(./system/users/${name}/home-manager (inputs // exputs))
(./homes/${name}/home-manager (inputs // exputs))
];
};
})) filtered)
@@ -180,5 +182,27 @@
default = self.templates.nixos;
};
nixosConfigurations = let
dir = builtins.readDir ./machines;
filtered = builtins.filter (x: dir.${x} == "directory" && x != "android") (builtins.attrNames dir);
in (builtins.listToAttrs
(builtins.map
(name: ({
inherit name;
value = nixpkgs.lib.nixosSystem {
specialArgs = inputs;
modules = [
{ sysconfig.host = name; }
./machines/${name}
self.profiles.${name}
];
};
})) filtered)
);
};
}

View File

@@ -4,10 +4,10 @@
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
home-manager = {
url = "github:nix-community/home-manager/release-25.05";
url = "github:nix-community/home-manager/release-25.11";
inputs.nixpkgs.follows = "nixpkgs";
};

View File

@@ -0,0 +1,11 @@
keys:
- &homebox age1640eg0pnmkruc89m5xguz0m8fek44fl4tzez6qwuzlz6kmapqewsp8esxd
- &laptop age1yqgyp2uxz4lzrc9f9ka0mfjl5fr6ahf8nf24nlmran2wulg6fpvq9hyp9q
- &android age12pnf36uqesjmy3e0lythfnpwam3zg5mv8m936fc4jphy4ces2fdqwn0s74
creation_rules:
- path_regex: ^secrets.yaml$
key_groups:
- age:
- *laptop
- *homebox
- *android

View File

@@ -1,11 +1,13 @@
{ config, lib, pkgs, inputs, ... }: {
imports = [
./programs
./services
./packages
./dotfiles
];
imports = let
dir = builtins.readDir ./.;
in (builtins.map (x: ./${x}) (builtins.filter
(file: (dir.${file} == "directory"))
(builtins.attrNames dir)
)) ++ [
inputs.sops.homeManagerModules.sops
];
options.homeconfig = with lib; {
@@ -60,7 +62,7 @@
size = 16;
};
gtk = lib.mkIf config.homeconfig.graphical {
gtk = lib.mkIf (config.homeconfig.graphical && config.homeconfig.hyprland.enable) {
enable = true;
theme.name = "Tokyonight-Dark";
theme.package = pkgs.tokyonight-gtk-theme;

View File

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

Before

Width:  |  Height:  |  Size: 1.0 MiB

After

Width:  |  Height:  |  Size: 1.0 MiB

View File

Before

Width:  |  Height:  |  Size: 1007 KiB

After

Width:  |  Height:  |  Size: 1007 KiB

View File

Before

Width:  |  Height:  |  Size: 110 MiB

After

Width:  |  Height:  |  Size: 110 MiB

View File

Before

Width:  |  Height:  |  Size: 191 KiB

After

Width:  |  Height:  |  Size: 191 KiB

View File

Before

Width:  |  Height:  |  Size: 874 KiB

After

Width:  |  Height:  |  Size: 874 KiB

View File

Before

Width:  |  Height:  |  Size: 1.5 MiB

After

Width:  |  Height:  |  Size: 1.5 MiB

View File

Before

Width:  |  Height:  |  Size: 48 MiB

After

Width:  |  Height:  |  Size: 48 MiB

View File

Before

Width:  |  Height:  |  Size: 203 MiB

After

Width:  |  Height:  |  Size: 203 MiB

View File

Before

Width:  |  Height:  |  Size: 670 KiB

After

Width:  |  Height:  |  Size: 670 KiB

View File

Before

Width:  |  Height:  |  Size: 273 KiB

After

Width:  |  Height:  |  Size: 273 KiB

View File

Before

Width:  |  Height:  |  Size: 140 MiB

After

Width:  |  Height:  |  Size: 140 MiB

View File

Before

Width:  |  Height:  |  Size: 3.1 MiB

After

Width:  |  Height:  |  Size: 3.1 MiB

View File

Before

Width:  |  Height:  |  Size: 2.8 MiB

After

Width:  |  Height:  |  Size: 2.8 MiB

View File

Before

Width:  |  Height:  |  Size: 36 MiB

After

Width:  |  Height:  |  Size: 36 MiB

View File

@@ -11,6 +11,8 @@
$font = Monospace
source = ~/.cache/wal/colors-hypr.conf
general {
hide_cursor = false
}
@@ -45,9 +47,9 @@ input-field {
outline_thickness = 3
inner_color = rgba(0, 0, 0, 0.0) # no fill
outer_color = rgba(33ccffee) rgba(00ff99ee) 45deg
check_color = rgba(00ff99ee) rgba(ff6633ee) 120deg
fail_color = rgba(ff6633ee) rgba(ff0066ee) 40deg
outer_color = $color1 $color5 100deg
check_color = $color2 $color6 120deg
fail_color = $color3 $color7 40deg
font_color = rgb(143, 143, 143)
fade_on_empty = false

View File

@@ -107,7 +107,7 @@ ecosystem {
# Binds
$mainMod = ALT
bind = $mainMod SHIFT, E, exec, hyprrun colorPrefix kitty
bind = $mainMod SHIFT, E, exec, colorPrefix hyprrun kitty
bind = $mainMod, B, exec, hyprrun firefox
@@ -122,7 +122,7 @@ bind = $mainMod, Q, killactive,
bind = $mainMod, F, exec, hyprrun thunar
bind = $mainMod SHIFT, F, fullscreen
bind = $mainMod SHIFT, semicolon, exec, hyprrun colorPrefix kitty -e lf
bind = $mainMod SHIFT, semicolon, exec, colorPrefix hyprrun kitty -e lf
bind = $mainMod, Insert, exec, hyprrun libreoffice
@@ -130,7 +130,7 @@ bind = $mainMod, V, togglefloating,
bind = $mainMod SHIFT, V, exec, hyprrun vlc
bind = , Menu, exec, hyprrun rofi -show drun
bind = , Menu, exec, rofi -show drun -show-icons -run-command 'hyprrun {cmd}'
bind = $mainMod, Menu, exec, hyprrun hyprpanel -q; hyprrun hyprpanel
@@ -144,7 +144,7 @@ bind = $mainMod, M, exec, hyprrun spotify
bind = $mainMod SHIFT, M, exec, hyprrun firefox soundcloud.com/you/library
bind = $mainMod CTRL, M, exec, hyprrun colorPrefix kitty -e ncmpcpp -s browser
bind = $mainMod CTRL, M, exec, colorPrefix hyprrun kitty -e ncmpcpp -s browser
bind = $mainMod, XF86AudioPlay, exec, hyprrun mpc load casual
@@ -257,22 +257,22 @@ bind = $mainMod SHIFT, D, movewindow, r
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod SHIFT, mouse:272, resizewindow
$scratchpadsize = size 60% 80%
$scratchpadsize = size (monitor_w*0.6) (monitor_h*0.8)
$kitty = class:^(scratchpad-kitty)$
windowrulev2 = float, $kitty
windowrulev2 = $scratchpadsize, $kitty
windowrulev2 = workspace special silent, $kitty
$kitty = ^(scratchpad-kitty)$
windowrule = float on, match:class $kitty
windowrule = $scratchpadsize, match:class $kitty
windowrule = workspace special silent, match:class $kitty
$lf = class:^(scratchpad-lf)$
windowrulev2 = float, $lf
windowrulev2 = $scratchpadsize, $lf
windowrulev2 = workspace special silent, $lf
$lf = ^(scratchpad-lf)$
windowrule = float on, match:class $lf
windowrule = $scratchpadsize, match:class $lf
windowrule = workspace special silent, match:class $lf
$cal = class:^(scratchpad-cal)$
windowrulev2 = float, $cal
windowrulev2 = $scratchpadsize, $cal
windowrulev2 = workspace special silent, $cal
$cal = ^(scratchpad-cal)$
windowrule = float on, match:class $cal
windowrule = $scratchpadsize, match:class $cal
windowrule = workspace special silent, match:class $cal
bind = $mainMod, semicolon, exec, pypr toggle lf
bind = $mainMod, E, exec, pypr toggle kitty

View File

@@ -5,7 +5,7 @@
[scratchpads.lf]
animation = "fromTop"
command = "hyprrun kitty --class scratchpad-lf lf ~"
command = "kitty --class scratchpad-lf lf ~"
lazy = true
class = "scratchpad-lf"
margin = 100
@@ -14,7 +14,7 @@
[scratchpads.kitty]
animation = "fromBottom"
command = "hyprrun kitty --class scratchpad-kitty"
command = "kitty --class scratchpad-kitty"
class = "scratchpad-kitty"
lazy = true
margin = 100
@@ -23,7 +23,7 @@
[scratchpads.calendar]
animation = "fromTop"
command = "hyprrun kitty --class scratchpad-cal -e calcurse"
command = "kitty --class scratchpad-cal -e calcurse"
class = "scratchpad-cal"
lazy = true
margin = 100

View File

@@ -0,0 +1,112 @@
#:schema https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json
version = 2
final_space = true
console_title_template = '{{{{ .Shell }}}} in {{{{ .Folder }}}}'
[[blocks]]
type = 'prompt'
alignment = 'left'
newline = true
[[blocks.segments]]
type = 'os'
style = 'diamond'
trailing_diamond = ''
background = 'p:c1'
foreground = 'p:c12'
template = ' {{{{ .Icon }}}} '
[[blocks.segments]]
type = 'session'
style = 'diamond'
trailing_diamond = ''
background = 'p:c2'
foreground = 'p:c14'
template = '{{{{ .UserName }}}}@{{{{ .HostName }}}}'
[[blocks.segments]]
type = 'path'
style = 'diamond'
trailing_diamond = ''
background = 'p:c4'
foreground = 'p:c13'
template = '{{{{ .Path }}}}'
[blocks.segments.properties]
style = 'full'
[[blocks]]
type = 'prompt'
overflow = 'hidden'
alignment = 'right'
[[blocks.segments]]
type = 'executiontime'
style = 'diamond'
leading_diamond = ''
background = 'p:c4'
foreground = 'p:c13'
template = '{{{{ .FormattedMs }}}}'
[[blocks.segments]]
type = 'time'
style = 'diamond'
leading_diamond = ''
background = 'p:c2'
foreground = 'p:c14'
[[blocks.segments]]
type = 'shell'
style = 'diamond'
leading_diamond = ''
background = 'p:c1'
foreground = 'p:c12'
[[blocks]]
type = 'prompt'
alignment = 'left'
newline = true
[[blocks.segments]]
type = 'text'
style = 'plain'
background = 'transparent'
foreground_templates = [
"{{{{ if gt .Code 0 }}}}p:c13{{{{end}}}}",
"{{{{ if eq .Code 0 }}}}p:c14{{{{end}}}}",
]
template = "{{{{ if gt .Code 0 }}}}!❭ {{{{else}}}}❭ {{{{end}}}}"
[transient_prompt]
foreground_templates = [
"{{{{ if gt .Code 0 }}}}p:c13{{{{end}}}}",
"{{{{ if eq .Code 0 }}}}p:c14{{{{end}}}}",
]
background = 'transparent'
template = "{{{{ if gt .Code 0 }}}}!❭ {{{{else}}}}❭ {{{{end}}}}"
[secondary_prompt]
background = 'transparent'
forground = 'p:c14'
template = "❭❭ "
[palette]
c0 = "{color0}"
c1 = "{color1}"
c2 = "{color2}"
c3 = "{color3}"
c4 = "{color4}"
c5 = "{color5}"
c6 = "{color6}"
c7 = "{color7}"
c8 = "{color8}"
c9 = "{color9}"
c10 = "{color10}"
c11 = "{color11}"
c12 = "{color12}"
c13 = "{color13}"
c14 = "{color14}"
c15 = "{color15}"

View File

@@ -0,0 +1,119 @@
{ config, lib, pkgs, inputs, ... }: let
system = "x86_64-linux";
pkgs-us = import inputs.nixpkgs-us {
inherit system;
config.allowUnfree = true;
};
in {
imports = [
./scripts
];
options.homeconfig.minimal = with lib; options.mkOption {
type = with types; bool;
default = false;
};
config = with lib; mkMerge [
{
home.packages = with pkgs; [
kjv
openssh
sops
dig
toybox
btop
zip
unzip
rsync
curl
(python313.withPackages (ps: with ps; [
gpustat
numpy
matplotlib
scipy
pandas
pyaudio
pyusb
debugpy
requests
]))
];
}
(mkIf config.homeconfig.graphical {
home.packages = with pkgs; [
grim
slurp
xfce.thunar
wl-clipboard
blueberry
];
})
(mkIf (!config.homeconfig.minimal) {
home.packages = with pkgs; [
cava
android-tools
neovim-remote
zulu
fastfetch
ncmpcpp
playerctl
mpc
ffmpeg
];
})
(mkIf (!config.homeconfig.minimal && config.homeconfig.graphical) {
nixpkgs.config = {
allowUnfree = true;
};
home.packages = with pkgs; [
handbrake
quickemu
bottles
pkgs-us.runapp
brightnessctl
libdbusmenu-gtk3
lmms
#unfree {
geogebra
spotify
discord
#}
rustdesk-flutter
mpv
vlc
pavucontrol
rpi-imager
tigervnc
keepassxc
#3D modeling/printing
blender
freecad-wayland
cura-appimage
#productivity
libreoffice
#games
prismlauncher
];
})
];
}

View File

@@ -1,4 +1,13 @@
{ config, lib, pkgs, ... }: {
{ config, lib, pkgs, inputs, ... }: let
system = "x86_64-linux";
pkgs-us = import inputs.nixpkgs-us {
inherit system;
config.allowUnfree = true;
};
in {
options = {
homeconfig.scripts.enable = lib.options.mkOption {
@@ -7,7 +16,25 @@
};
};
config = lib.mkIf config.homeconfig.scripts.enable {
config = lib.mkMerge [
(lib.mkIf (config.homeconfig.hyprland.enable && config.homeconfig.scripts.enable) {
home.packages = [
(pkgs.writeShellScriptBin "hyprrun" ''
${pkgs-us.runapp}/bin/runapp ''$@
#uwsm app -- ''$@
'')
];
})
(lib.mkIf (!config.homeconfig.hyprland.enable && config.homeconfig.scripts.enable) {
home.packages = [
(pkgs.writeShellScriptBin "hyprrun" ''
eval "''$@"
'')
];
})
(lib.mkIf config.homeconfig.scripts.enable {
home.packages = [
#scripts
@@ -68,14 +95,14 @@
'')
(pkgs.writeShellScriptBin "colorPrefix" ''
eval "$@" &
sleep 0.4
${pkgs.pywalfox-native}/bin/pywalfox update &
pidof kitty && pkill -USR1 kitty
pidof cava && pkill -USR1 cava
pidof firefox > /dev/null && ${pkgs.pywalfox-native}/bin/pywalfox update &
pidof kitty > /dev/null && pkill -USR1 kitty
pidof cava > /dev/null && pkill -USR1 cava
for i in ''$(ls /run/user/1000 | grep nvim); do
${pkgs.neovim-remote}/bin/nvr -s --servername /run/user/1000/''$i --remote-send '<cmd>colorscheme pywal<CR>';
done
eval "''$@"
'')
(pkgs.writeShellScriptBin "onSystemStart" ''
@@ -102,6 +129,7 @@
'')
];
};
})
];
}

View File

@@ -0,0 +1,19 @@
{ config, lib, pkgs, inputs, ... }: {
imports = let
dir = builtins.readDir ./.;
in builtins.map (x: ./${x}) (builtins.filter
(file: (dir.${file} == "directory"))
(builtins.attrNames dir)
);
config = {
home.packages = lib.mkIf (!config.homeconfig.wal.enable) [
inputs.nixvim.packages.${pkgs.stdenv.hostPlatform.system}.default
];
home.sessionVariables.EDITOR = "nvim";
};
}

View File

@@ -49,7 +49,7 @@
];
};
extensions.packages = with inputs.firefox-addons.packages.${pkgs.system}; [
extensions.packages = with inputs.firefox-addons.packages.${pkgs.stdenv.hostPlatform.system}; [
ublock-origin
keepassxc-browser
pywalfox

View File

@@ -8,7 +8,7 @@
config = lib.mkIf config.homeconfig.wal.enable {
home.packages = with pkgs; [
inputs.nixvim.packages.${pkgs.system}.pywal
inputs.nixvim.packages.${pkgs.stdenv.hostPlatform.system}.pywal
pywal16
imagemagick

View File

@@ -6,12 +6,16 @@
programs.zsh = {
initContent = if config.homeconfig.wal.enable then (lib.mkBefore ''
cat ${config.home.homeDirectory}/.cache/wal/sequences
eval "$(oh-my-posh init zsh --config ${config.home.homeDirectory}/.cache/wal/ohmyposh.toml)"
'') else (lib.mkBefore ''
eval "$(oh-my-posh init zsh --config ${config.home.homeDirectory}/.config/ohmyposh/ohmyposh.toml)"
'');
initContent = with lib; mkMerge [
(mkIf config.homeconfig.wal.enable (mkBefore ''
cat ${config.home.homeDirectory}/.cache/wal/sequences
eval "$(oh-my-posh init zsh --config ${config.home.homeDirectory}/.cache/wal/ohmyposh.toml)"
''))
(mkIf (!config.homeconfig.wal.enable) (mkBefore ''
eval "$(oh-my-posh init zsh --config ${config.home.homeDirectory}/.config/ohmyposh/ohmyposh.toml)"
''))
];
};

View File

@@ -2,7 +2,7 @@
options.homeconfig.opencode.enable = with lib; mkOption {
type = with types; bool;
default = false;
default = true;
};
config = lib.mkIf config.homeconfig.opencode.enable {
@@ -12,7 +12,7 @@
settings = {
theme = "system";
model = "";
model = "ollama-local/llama3.2";
provider = {
ollama-local = {
@@ -24,6 +24,8 @@
models = {
"ministral-3:8b".name = "Ministral 3 8B";
"llama3.2".name = "Llama 3.2";
"qwen3:8b".name = "Qwen 3";
};
};

View File

@@ -17,6 +17,7 @@
controlPath = "~/.ssh/master-%r@%n:%p";
controlPersist = "no";
};
enableDefaultConfig = false;
};

View File

@@ -1,9 +1,13 @@
{ config, lib, pkgs, ... }: {
{ lib, ... }: {
programs.zsh = {
enable = true;
initContent = lib.mkOrder 1200 ''
bindkey ' ' magic-space
'';
enableCompletion = true;
autosuggestion.enable = true;
@@ -21,11 +25,6 @@
python = "python3.13";
python3 = "python3.13";
hyprrun = with lib; mkMerge [
(mkIf config.programs.hyprland.withUWSM "uwsm app --")
(mkIf (!config.programs.hyprland.withUWSM) ";")
];
};
history = {

View File

@@ -0,0 +1,9 @@
{ ... }: {
imports = let
dir = builtins.readDir ./.;
in builtins.map (x: ./${x}) (builtins.filter
(file: (dir.${file} == "directory"))
(builtins.attrNames dir)
);
}

View File

@@ -1,11 +1,11 @@
{ ... }:
{ lib, ... }:
{
config = {
homeconfig = {
graphical = false;
minimal = false;
graphical = lib.mkDefault false;
minimal = lib.mkDefault false;
};
};
}

View File

@@ -0,0 +1,120 @@
{ config, pkgs, lib, disko, sops-nix, home-manager, ... }:
{
imports =
[
disko.nixosModules.default
sops-nix.nixosModules.sops
home-manager.nixosModules.default
];
config = {
boot = {
kernelPackages = pkgs.linuxKernel.packages.linux_6_18;
loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
binfmt.emulatedSystems = lib.mkIf config.sysconfig.remoteBuildHost [ "aarch64-linux" ];
};
systemd.settings.Manager.DefaultLimitNOFILE = 2048;
programs.zsh.enable = true;
environment.shells = with pkgs; [ zsh bashInteractive ];
nixpkgs.config.allowUnfree = true;
networking = {
nameservers = lib.mkDefault [ "1.1.1.1" "1.0.0.1" ];
networkmanager = {
enable = true;
dns = "none";
};
useDHCP = false;
dhcpcd.enable = false;
nftables = {};
nat = {
enable = true;
internalInterfaces = [ "ve-.+" ];
externalInterface = "wlp7s0"; # wifi
#externalInterface = "enp6s0"; # ethernet
};
};
sysconfig = {
remoteBuildHost = true;
graphical = false;
services = {
sddm.enable = false;
openssh.enable = true;
pipewire.enable = true;
netbird.enable = true;
ollama.enable = false;
wyoming = {
enable = true;
piper = false;
openwakeword = true;
faster-whisper = true;
};
};
programs = {
hyprland.enable = false;
hyprpanel.enable = false;
steam.enable = false;
};
docker = {
enable = true;
portainer.enable = true;
pihole.enable = true;
ollama.enable = true;
searxng.enable = true;
};
containers = {
traefik.enable = true;
jellyfin.enable = true;
"esotericbytes.com".enable = true;
nextcloud.enable = true;
ntfy.enable = false;
gitea.enable = true;
n8n.enable = true;
keycloak.enable = true;
netbird.enable = true;
openwebui.enable = true;
wyoming = {
enable = false;
piper = false;
openwakeword = true;
faster-whisper = true;
};
rustdesk.enable = false; #broken
code-server.enable = false;
novnc.enable = false;
minecraft.enable = true;
sandbox.enable = false;
};
};
fonts.packages = with pkgs; [ nerd-fonts.fira-code ];
};
}

View File

@@ -63,15 +63,11 @@
};
virtualization = {
containers = {
wyoming = {
enable = mkDefault false;
};
homeassistant = {
enable = mkDefault false;
};
};
};
@@ -105,8 +101,16 @@
programs.zsh.enable = true;
networking = {
nameservers = [ "1.1.1.1" "1.0.0.1" ];
networkmanager.enable = true;
nameservers = [
"1.1.1.1"
"1.0.0.1"
];
networkmanager = {
enable = true;
dns = "none";
};
useDHCP = false;
dhcpcd.enable = false;
};

Some files were not shown because too many files have changed in this diff Show More