Refaktoryzacja struktury konfiguracji NixOS
- Usunięcie zbędnych parametrów wejściowych funkcji konfiguracyjnej - Przeniesienie ustawień do oddzielnych plików w katalogu `config/` - Uproszczenie struktury `config.nix` poprzez delegację ustawień do modułów - Zachowanie wcześniejszych importów modułów sprzętowych
This commit is contained in:
379
hosts/garand-laptop/config/nixpkgs.nix
Normal file
379
hosts/garand-laptop/config/nixpkgs.nix
Normal file
@@ -0,0 +1,379 @@
|
||||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
# Optimization settings and garbage collection automation
|
||||
nix = {
|
||||
settings = {
|
||||
auto-optimise-store = true;
|
||||
experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
substituters = ["https://hyprland.cachix.org"];
|
||||
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
dates = "weekly";
|
||||
options = "--delete-older-than 7d";
|
||||
};
|
||||
nixPath = ["nixpkgs=${inputs.nixpkgs}"];
|
||||
};
|
||||
|
||||
nixpkgs.config = {
|
||||
allowUnfree = true;
|
||||
pulseaudio = true;
|
||||
};
|
||||
|
||||
# Extra Portal Configuration
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
xdgOpenUsePortal = true;
|
||||
wlr.enable = true;
|
||||
extraPortals = [
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
pkgs.xdg-desktop-portal
|
||||
];
|
||||
configPackages = [
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
pkgs.xdg-desktop-portal-hyprland
|
||||
pkgs.xdg-desktop-portal
|
||||
];
|
||||
};
|
||||
|
||||
environment = {
|
||||
variables = {
|
||||
ZANEYOS_VERSION = "2.2";
|
||||
ZANEYOS = "true";
|
||||
};
|
||||
|
||||
systemPackages = with pkgs; [
|
||||
wget
|
||||
killall
|
||||
eza
|
||||
git
|
||||
cmatrix
|
||||
lolcat
|
||||
libvirt
|
||||
lxqt.lxqt-policykit
|
||||
lm_sensors
|
||||
unzip
|
||||
unrar
|
||||
libnotify
|
||||
v4l-utils
|
||||
ydotool
|
||||
duf
|
||||
ncdu
|
||||
wl-clipboard
|
||||
pciutils
|
||||
ffmpeg
|
||||
socat
|
||||
cowsay
|
||||
ripgrep
|
||||
lshw
|
||||
bat
|
||||
pkg-config
|
||||
meson
|
||||
hyprpicker
|
||||
ninja
|
||||
brightnessctl
|
||||
virt-viewer
|
||||
swappy
|
||||
appimage-run
|
||||
networkmanagerapplet
|
||||
yad
|
||||
inxi
|
||||
playerctl
|
||||
nh
|
||||
nixfmt-rfc-style
|
||||
discord
|
||||
libvirt
|
||||
swww
|
||||
grim
|
||||
slurp
|
||||
file-roller
|
||||
swaynotificationcenter
|
||||
imv
|
||||
mpv
|
||||
gimp
|
||||
pavucontrol
|
||||
tree
|
||||
greetd.tuigreet
|
||||
librewolf
|
||||
protonup
|
||||
plex-media-player
|
||||
plexamp
|
||||
bitwarden-desktop
|
||||
vlc
|
||||
nixd
|
||||
ungoogled-chromium
|
||||
slack
|
||||
alejandra
|
||||
tutanota-desktop
|
||||
ookla-speedtest
|
||||
rustdesk
|
||||
bun
|
||||
docker
|
||||
docker-compose
|
||||
docker-slim
|
||||
sl
|
||||
nodejs
|
||||
kdePackages.kdenlive
|
||||
galculator
|
||||
obs-studio
|
||||
thefuck
|
||||
cifs-utils
|
||||
libreoffice
|
||||
bastet
|
||||
nsnake
|
||||
exiftool
|
||||
python3
|
||||
figlet
|
||||
fortune
|
||||
wtf
|
||||
pipes
|
||||
cava
|
||||
wineWowPackages.waylandFull # wine64
|
||||
lazydocker
|
||||
lazygit
|
||||
lutris
|
||||
(vscode-with-extensions.override {
|
||||
vscode = vscodium;
|
||||
vscodeExtensions = with vscode-extensions;
|
||||
[
|
||||
batisteo.vscode-django
|
||||
bradlc.vscode-tailwindcss
|
||||
christian-kohler.npm-intellisense
|
||||
christian-kohler.path-intellisense
|
||||
continue.continue
|
||||
davidanson.vscode-markdownlint
|
||||
dbaeumer.vscode-eslint
|
||||
donjayamanne.githistory
|
||||
esbenp.prettier-vscode
|
||||
ethansk.restore-terminals
|
||||
formulahendry.auto-close-tag
|
||||
formulahendry.auto-rename-tag
|
||||
grapecity.gc-excelviewer
|
||||
gruntfuggly.todo-tree
|
||||
hediet.vscode-drawio
|
||||
jnoortheen.nix-ide
|
||||
mechatroner.rainbow-csv
|
||||
ms-azuretools.vscode-docker
|
||||
ms-python.debugpy
|
||||
ms-python.flake8
|
||||
ms-python.python
|
||||
ms-python.vscode-pylance
|
||||
njpwerner.autodocstring
|
||||
octref.vetur
|
||||
oderwat.indent-rainbow
|
||||
shd101wyy.markdown-preview-enhanced
|
||||
streetsidesoftware.code-spell-checker
|
||||
supermaven.supermaven
|
||||
tomoki1207.pdf
|
||||
visualstudioexptteam.intellicode-api-usage-examples
|
||||
visualstudioexptteam.vscodeintellicode
|
||||
vscode-icons-team.vscode-icons
|
||||
vue.volar
|
||||
wholroyd.jinja
|
||||
yoavbls.pretty-ts-errors
|
||||
]
|
||||
++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
|
||||
{
|
||||
name = "goto-alias";
|
||||
publisher = "antfu";
|
||||
version = "0.2.1";
|
||||
hash = "sha256-BJBJVG/zW2BW6K0UqQ4EE12VVIxW3g+z5CecZXRPIrM=";
|
||||
}
|
||||
{
|
||||
name = "vite";
|
||||
publisher = "antfu";
|
||||
version = "0.2.5";
|
||||
hash = "sha256-F3uaqoaLXLE7M8OPzNIIUSraTBeRMwtjxrbgQyMIyZE=";
|
||||
}
|
||||
{
|
||||
name = "django-html";
|
||||
publisher = "bibhasdn";
|
||||
version = "1.3.0";
|
||||
hash = "sha256-7xVJVcjmwl6917lqkTa0KFwMLkAvHkNT2wVML14gVCk=";
|
||||
}
|
||||
{
|
||||
name = "django";
|
||||
publisher = "bigonesystems";
|
||||
version = "1.0.2";
|
||||
hash = "sha256-UBmvaCiNQ84qpAObDWyFL18TVFBn0z/6SBDKWeAIzTc=";
|
||||
}
|
||||
{
|
||||
name = "align-imports";
|
||||
publisher = "danielcanada";
|
||||
version = "0.1.0";
|
||||
hash = "sha256-Aj87mxOGer24O24/4/bGQqgLpgoBvfwOCKQyJ8NLplU=";
|
||||
}
|
||||
{
|
||||
name = "python-environment-manager";
|
||||
publisher = "donjayamanne";
|
||||
version = "1.2.7";
|
||||
hash = "sha256-w3csu6rJm/Z6invC/TR7tx6Aq5DD77VM62nem8/QMlg=";
|
||||
}
|
||||
{
|
||||
name = "python-extension-pack";
|
||||
publisher = "donjayamanne";
|
||||
version = "1.7.0";
|
||||
hash = "sha256-ewOw6nMVzNSYddLcCBGKVNvllztFwhEtncE2RFeFcOc=";
|
||||
}
|
||||
{
|
||||
name = "one-dark-pro-monokai-darker";
|
||||
publisher = "eserozvataf";
|
||||
version = "1.1.0";
|
||||
hash = "sha256-jUjBiy0CD7jw2WBMvM3h8bEC2ySEuj7532dC3v9lpyI=";
|
||||
}
|
||||
{
|
||||
name = "imports-sorter";
|
||||
publisher = "glhrmoura";
|
||||
version = "0.1.6";
|
||||
hash = "sha256-M+SWEJAwn8wPJJ+abi2mN0ziK7P6Sjt0iRAKSyTWvkg=";
|
||||
}
|
||||
{
|
||||
name = "bootstrap-intellisense";
|
||||
publisher = "hossaini";
|
||||
version = "2.0.2";
|
||||
hash = "sha256-io6mPkF19EYo1tVTnd87EWX1mH9zAz0Zzks6v5XN3UE=";
|
||||
}
|
||||
{
|
||||
name = "tab-indent-space-align";
|
||||
publisher = "j-zeppenfeld";
|
||||
version = "0.0.3";
|
||||
hash = "sha256-+WEdYJOVWW7YumfzLkvZmrnpUiC85oLsG1BKMwL1NHc=";
|
||||
}
|
||||
{
|
||||
name = "bun-lockb";
|
||||
publisher = "jaaxxx";
|
||||
version = "0.0.7";
|
||||
hash = "sha256-CkdH/luVTFycRn4Td6ovFnEQep+tVEIXsyUjhfJwfN4=";
|
||||
}
|
||||
{
|
||||
name = "search-node-modules";
|
||||
publisher = "jasonnutter";
|
||||
version = "1.3.0";
|
||||
hash = "sha256-X2CkCVF46McnXDlASlRHKixlAzR+hU4ys8A8JsbpfYI=";
|
||||
}
|
||||
{
|
||||
name = "polacode-2019";
|
||||
publisher = "jeff-hykin";
|
||||
version = "0.6.1";
|
||||
hash = "sha256-SbfsD28gaVHAmJskUuc1Q8kA47jrVa3OO5Ur7ULk3jI=";
|
||||
}
|
||||
{
|
||||
name = "vsc-python-indent";
|
||||
publisher = "kevinrose";
|
||||
version = "1.19.0";
|
||||
hash = "sha256-gX0L416RXIQ9S4kFguEJJ7u4GSo7WbpifXmL/mWCU08=";
|
||||
}
|
||||
{
|
||||
name = "json-to-ts";
|
||||
publisher = "mariusalchimavicius";
|
||||
version = "1.8.0";
|
||||
hash = "sha256-WoSycVtUAkVXv7BDuh+jFbnaU1IdVLvVjOYuIuUp79M=";
|
||||
}
|
||||
{
|
||||
name = "inline-fold";
|
||||
publisher = "moalamri";
|
||||
version = "0.2.6";
|
||||
hash = "sha256-VPEp4gtXH787iK0RxjfciIZO1cjkYacjNELzjzcs/FI=";
|
||||
}
|
||||
{
|
||||
name = "vscode-language-pack-pl";
|
||||
publisher = "ms-ceintl";
|
||||
version = "1.97.2025020509";
|
||||
hash = "sha256-D2x745VgarYs6vRo6Eiyx7Zy4FHmFfF01xddbWlLmjM=";
|
||||
}
|
||||
{
|
||||
name = "mdc";
|
||||
publisher = "nuxt";
|
||||
version = "0.2.0";
|
||||
hash = "sha256-M/29ZDg1sva9msGgRe6xqpCYDpW6X/BqKxmiJhzeVXQ=";
|
||||
}
|
||||
{
|
||||
name = "nuxt-vscode-extentions";
|
||||
publisher = "nuxtr";
|
||||
version = "0.0.7";
|
||||
hash = "sha256-LMShrm9fQHr0M8yXHSziq4NZWfK+n1azc5bjiM972O0=";
|
||||
}
|
||||
{
|
||||
name = "nuxtr-vscode";
|
||||
publisher = "nuxtr";
|
||||
version = "0.2.16";
|
||||
hash = "sha256-DVoq8zdlJ2ch8PCG34f1PRkILym9XdclUHQ9s2B5OME=";
|
||||
}
|
||||
{
|
||||
name = "bun-vscode";
|
||||
publisher = "oven";
|
||||
version = "0.0.26";
|
||||
hash = "sha256-klMkKAorWJj2o015FWbQQfpmYe4JM0UOM+WVh+YPtI4=";
|
||||
}
|
||||
{
|
||||
name = "csv-to-table";
|
||||
publisher = "phplasma";
|
||||
version = "1.4.1";
|
||||
hash = "sha256-npe7cQ4lAZr8HCyQSJmVsCDUJcOhGhL6y1QtUtqUY50=";
|
||||
}
|
||||
{
|
||||
name = "nuxt-snippets";
|
||||
publisher = "praburangki";
|
||||
version = "1.8.0";
|
||||
hash = "sha256-qrWrrDO/Ie/mdygw18C0mrPzNQzZLsd+fapUyTVhc14=";
|
||||
}
|
||||
{
|
||||
name = "bash-debug";
|
||||
publisher = "rogalmic";
|
||||
version = "0.3.9";
|
||||
hash = "sha256-f8FUZCvz/PonqQP9RCNbyQLZPnN5Oce0Eezm/hD19Fg=";
|
||||
}
|
||||
{
|
||||
name = "vs-code-prettier-eslint";
|
||||
publisher = "rvest";
|
||||
version = "6.0.0";
|
||||
hash = "sha256-PogNeKhIlcGxUKrW5gHvFhNluUelWDGHCdg5K+xGXJY=";
|
||||
}
|
||||
{
|
||||
name = "vscode-preview-docs";
|
||||
publisher = "selemondev";
|
||||
version = "0.1.7";
|
||||
hash = "sha256-Q9bEIb2m6cqHtdVjOaNivfYvbc5/VVdabM2NVTwBOFA=";
|
||||
}
|
||||
{
|
||||
name = "svg-preview";
|
||||
publisher = "simonsiefke";
|
||||
version = "2.8.3";
|
||||
hash = "sha256-hIVe1MmkyuHoDa56ZQUsSAGMlKWABoQ0FBOfgZZDbCw=";
|
||||
}
|
||||
{
|
||||
name = "autoimport";
|
||||
publisher = "steoates";
|
||||
version = "1.5.4";
|
||||
hash = "sha256-7iIwJJsoNbtTopc+BQ+195aSCLqdNAaGtMoxShyhBWY=";
|
||||
}
|
||||
{
|
||||
name = "code-spell-checker-polish";
|
||||
publisher = "streetsidesoftware";
|
||||
version = "2.1.3";
|
||||
hash = "sha256-MZeTvK9dO4Kj6hK+afJPWGmnKBtlLrrnoqtUd5s2te0=";
|
||||
}
|
||||
{
|
||||
name = "vscode-pets";
|
||||
publisher = "tonybaloney";
|
||||
version = "1.30.0";
|
||||
hash = "sha256-RxOA6xQ29JuB0NzEqMDkF9W1U+AsvgAOzGbtIUw0WyM=";
|
||||
}
|
||||
{
|
||||
name = "explorer";
|
||||
publisher = "vitest";
|
||||
version = "1.12.1";
|
||||
hash = "sha256-WG2/MWxU/XhSOjXuBoyszpD/HFb8mfrt525povSEES4=";
|
||||
}
|
||||
];
|
||||
})
|
||||
];
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user