add restruct2

This commit is contained in:
cnst
2024-06-28 15:09:29 +02:00
parent 82a4545886
commit f06e9e9fad
19 changed files with 198 additions and 205 deletions

6
flake.lock generated
View File

@@ -27,11 +27,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1719491277, "lastModified": 1719536494,
"narHash": "sha256-eC3o+NXisjCOp2859tKN4gHrk5wkstMsqdrmWFkcagY=", "narHash": "sha256-WTBaxRyhV2EK7CYtqcZ+bBxur5cjKFqEPVKaO4NWaeY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "flake-firefox-nightly", "repo": "flake-firefox-nightly",
"rev": "6086714009c9771504f2355d665d4a543f359ab3", "rev": "3a1a6fc8a6451659057be488405db9e2098138db",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -27,18 +27,15 @@
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
# Home manager # Home manager
}; };
outputs = outputs = {
{
self, self,
nixpkgs, nixpkgs,
home-manager, home-manager,
systems, systems,
solaar, solaar,
... ...
}@inputs: } @ inputs: let
let
inherit (self) outputs; inherit (self) outputs;
lib = nixpkgs.lib // home-manager.lib; lib = nixpkgs.lib // home-manager.lib;
forEachSystem = f: lib.genAttrs (import systems) (system: f pkgsFor.${system}); forEachSystem = f: lib.genAttrs (import systems) (system: f pkgsFor.${system});
@@ -49,13 +46,11 @@
config.allowUnfree = true; config.allowUnfree = true;
} }
); );
in in {
{
inherit lib; inherit lib;
formatter = forEachSystem (pkgs: pkgs.nixpkgs-fmt); formatter = forEachSystem (pkgs: pkgs.alejandra);
nixosConfigurations = { nixosConfigurations = {
cnix = lib.nixosSystem { cnix = lib.nixosSystem {
modules = [ modules = [
./hosts/cnix ./hosts/cnix

View File

@@ -1,4 +1,3 @@
{ pkgs, ... }:
{ {
imports = [ imports = [
./git ./git
@@ -6,31 +5,4 @@
./shell/adam.nix ./shell/adam.nix
./appearance ./appearance
]; ];
home.packages = with pkgs; [
# Desktop
alacritty
wl-clipboard
keepassxc
ranger
webcord
xfce.thunar
xfce.thunar-volman
xfce.thunar-archive-plugin
gnome.file-roller
wireguard-tools
wpa_supplicant
ntfs3g
kdePackages.polkit-kde-agent-1
networkmanagerapplet
htop
btop
pamixer
qbittorrent
fastfetch
waybar
nwg-look
thefuck
calcurse
gnome.adwaita-icon-theme
];
} }

View File

@@ -1,4 +1,3 @@
{ pkgs, ... }:
{ {
imports = [ imports = [
./git ./git
@@ -6,32 +5,4 @@
./shell/cnst.nix ./shell/cnst.nix
./appearance ./appearance
]; ];
home.packages = with pkgs; [
# Desktop
alacritty
wl-clipboard
keepassxc
ranger
webcord
xfce.thunar
xfce.thunar-volman
xfce.thunar-archive-plugin
gnome.file-roller
wireguard-tools
wpa_supplicant
ntfs3g
kdePackages.polkit-kde-agent-1
networkmanagerapplet
htop
btop
pamixer
virt-manager
qbittorrent
fastfetch
waybar
nwg-look
thefuck
calcurse
gnome.adwaita-icon-theme
];
} }

View File

@@ -5,7 +5,7 @@
... ...
}: }:
{ {
imports = [ ../mako ]; imports = [ ../../extra/mako ];
xdg.portal = xdg.portal =
let let

View File

@@ -4,7 +4,6 @@
./zellij ./zellij
./firefox ./firefox
./neovim ./neovim
./mako
]; ];
home.packages = with pkgs; [ home.packages = with pkgs; [
# Desktop # Desktop

View File

@@ -2,7 +2,6 @@
{ {
imports = [ imports = [
./firefox ./firefox
./mako
./neovim ./neovim
./zellij ./zellij
]; ];

View File

@@ -1,7 +1,9 @@
{ pkgs, inputs, ... }: {
with pkgs; pkgs,
let inputs,
...
}:
with pkgs; let
tools = [ tools = [
fswatch # File watcher utility, replacing libuv.fs_event for neovim 10.0 fswatch # File watcher utility, replacing libuv.fs_event for neovim 10.0
fzf fzf
@@ -50,15 +52,16 @@ let
nix = [ nix = [
alejandra alejandra
nixd nixd
nixfmt-rfc-style nil
nixpkgs-fmt nixpkgs-fmt
statix statix
]; ];
python = [ python = [
pyright
black black
isort isort
python311Packages.jedi-language-server python312Packages.jedi-language-server
ruff ruff
ruff-lsp ruff-lsp
]; ];
@@ -79,6 +82,7 @@ let
deno deno
nodePackages.sql-formatter nodePackages.sql-formatter
nodePackages.typescript-language-server nodePackages.typescript-language-server
nodePackages.prettier
nodejs nodejs
prettierd # multi-language formatters prettierd # multi-language formatters
vscode-langservers-extracted vscode-langservers-extracted
@@ -87,9 +91,7 @@ let
extraPackages = extraPackages =
tools ++ c ++ gamedev ++ golang ++ lua ++ markup ++ nix ++ python ++ rust ++ shell ++ web; tools ++ c ++ gamedev ++ golang ++ lua ++ markup ++ nix ++ python ++ rust ++ shell ++ web;
in in {
{
# for quick development # for quick development
home.packages = rust; home.packages = rust;

View File

@@ -6,11 +6,9 @@
pkgs, pkgs,
system, system,
... ...
}: }: let
let
ifTheyExist = groups: builtins.filter (group: builtins.hasAttr group config.users.groups) groups; ifTheyExist = groups: builtins.filter (group: builtins.hasAttr group config.users.groups) groups;
in in {
{
users.users.adam = { users.users.adam = {
isNormalUser = true; isNormalUser = true;
shell = pkgs.zsh; shell = pkgs.zsh;
@@ -30,7 +28,7 @@ in
imports = [ imports = [
inputs.home-manager.nixosModules.home-manager inputs.home-manager.nixosModules.home-manager
../common ../core
../services/adampad.nix ../services/adampad.nix
../hardware/adampad.nix ../hardware/adampad.nix
../locale/adampad.nix ../locale/adampad.nix
@@ -38,11 +36,9 @@ in
]; ];
home-manager.users.adam = import ../../home/adam/home.nix; home-manager.users.adam = import ../../home/adam/home.nix;
nix = nix = let
let
flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs; flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs;
in in {
{
settings = { settings = {
auto-optimise-store = lib.mkDefault true; auto-optimise-store = lib.mkDefault true;
warn-dirty = false; warn-dirty = false;

View File

@@ -6,11 +6,9 @@
pkgs, pkgs,
system, system,
... ...
}: }: let
let
ifTheyExist = groups: builtins.filter (group: builtins.hasAttr group config.users.groups) groups; ifTheyExist = groups: builtins.filter (group: builtins.hasAttr group config.users.groups) groups;
in in {
{
users.users.cnst = { users.users.cnst = {
isNormalUser = true; isNormalUser = true;
shell = pkgs.zsh; shell = pkgs.zsh;
@@ -30,7 +28,7 @@ in
imports = [ imports = [
inputs.home-manager.nixosModules.home-manager inputs.home-manager.nixosModules.home-manager
../common ../core
../extra/steam ../extra/steam
../extra/nix-ld ../extra/nix-ld
../services/cnix.nix ../services/cnix.nix
@@ -40,11 +38,9 @@ in
]; ];
home-manager.users.cnst = import ../../home/cnst/home.nix; home-manager.users.cnst = import ../../home/cnst/home.nix;
nix = nix = let
let
flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs; flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs;
in in {
{
settings = { settings = {
auto-optimise-store = lib.mkDefault true; auto-optimise-store = lib.mkDefault true;
warn-dirty = false; warn-dirty = false;

View File

@@ -1,36 +0,0 @@
{ pkgs, ... }:
{
environment = {
systemPackages = [
# Dev
pkgs.pyright
pkgs.python3
pkgs.gcc
pkgs.go
pkgs.nodePackages_latest.npm
pkgs.nodePackages_latest.nodejs
pkgs.nodePackages.prettier
pkgs.nodePackages.prettier-plugin-toml
pkgs.lua-language-server
pkgs.stylua
pkgs.prettierd
pkgs.cargo
pkgs.hyprlang
pkgs.nixd
pkgs.nil
pkgs.black
pkgs.python312Packages.jedi-language-server
pkgs.isort
pkgs.bacon
pkgs.clang
pkgs.clang-tools
pkgs.alejandra
pkgs.nixpkgs-fmt
# Util
pkgs.python312Packages.pip
pkgs.tmux
pkgs.tmuxifier
];
};
}

14
hosts/core/cnix-pkgs.nix Normal file
View File

@@ -0,0 +1,14 @@
{pkgs, ...}: {
environment = {
systemPackages = [
# Dev
pkgs.fd
pkgs.python3
pkgs.hyprlang
# Util
pkgs.tmux
pkgs.tmuxifier
];
};
}

View File

@@ -1,5 +1,91 @@
{pkgs, ...}:
{ {
programs.nix-ld = { programs.nix-ld = {
enable = true; enable = true;
# Sets up all the libraries to load
libraries = with pkgs; [
stdenv.cc.cc
openssl
xorg.libXcomposite
xorg.libXtst
xorg.libXrandr
xorg.libXext
xorg.libX11
xorg.libXfixes
libGL
libva
xorg.libxcb
xorg.libXdamage
xorg.libxshmfence
xorg.libXxf86vm
libelf
glib
gtk3
bzip2
xorg.libXinerama
xorg.libXcursor
xorg.libXrender
xorg.libXScrnSaver
xorg.libXi
xorg.libSM
xorg.libICE
gnome2.GConf
nspr
nss
cups
libcap
SDL2
libusb1
dbus-glib
ffmpeg
libudev0-shim
xorg.libXt
xorg.libXmu
libogg
libvorbis
SDL
SDL2_image
glew110
libidn
tbb
flac
freeglut
libjpeg
libpng
libpng12
libsamplerate
libmikmod
libtheora
libtiff
pixman
speex
SDL_image
SDL_ttf
SDL_mixer
SDL2_ttf
SDL2_mixer
libappindicator-gtk2
libdbusmenu-gtk2
libindicator-gtk2
libcaca
libcanberra
libgcrypt
libvpx
librsvg
xorg.libXft
libvdpau
gnome2.pango
cairo
atk
gdk-pixbuf
fontconfig
freetype
dbus
alsaLib
expat
libdrm
mesa
libxkbcommon
];
}; };
} }

View File

@@ -17,7 +17,6 @@
keyutils keyutils
gamescope gamescope
mangohud mangohud
steam-run
]; ];
}; };
}; };