modularity
This commit is contained in:
parent
cbf62dabcc
commit
b8c0d1a4fb
12 changed files with 111 additions and 96 deletions
12
hive.nix
12
hive.nix
|
@ -1,16 +1,22 @@
|
|||
{
|
||||
let
|
||||
mods = import ./modules;
|
||||
users = import ./users;
|
||||
in {
|
||||
meta.nixpkgs = <nixpkgs>;
|
||||
meta.specialArgs = {
|
||||
inherit mods users;
|
||||
};
|
||||
defaults = { pkgs, ... }: {
|
||||
imports = [
|
||||
(import <home-manager/nixos>)
|
||||
./modules
|
||||
];
|
||||
boot.tmp.useTmpfs = true;
|
||||
};
|
||||
kat-probook = { name, nodes, ... }: {
|
||||
imports = [
|
||||
./machines/kat-probook/configuration.nix
|
||||
./users/home_manager.nix
|
||||
users.root
|
||||
users.catvayor
|
||||
];
|
||||
deployment.allowLocalDeployment = true;
|
||||
networking.hostName = name;
|
||||
|
|
|
@ -27,25 +27,6 @@
|
|||
|
||||
# security.polkit.enable = true;
|
||||
# programs.light.enable = true;
|
||||
nixpkgs.config.pulseaudio = true;
|
||||
programs.wshowkeys.enable = true;
|
||||
programs.sway.enable = true;
|
||||
services.dbus.packages = with pkgs; [ dconf ];
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
extraPortals = with pkgs; [
|
||||
xdg-desktop-portal-wlr
|
||||
xdg-desktop-portal-gtk
|
||||
];
|
||||
};
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
services.gvfs.enable = true;
|
||||
programs.thunar.enable = true;
|
||||
programs.thunar.plugins = with pkgs.xfce; [
|
||||
thunar-volman
|
||||
thunar-archive-plugin
|
||||
thunar-media-tags-plugin
|
||||
];
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
|
@ -72,16 +53,6 @@
|
|||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
programs.zsh.enable = true;
|
||||
users.users.catvayor = {
|
||||
shell = pkgs.zsh;
|
||||
isNormalUser = true;
|
||||
extraGroups = [ "wheel" "usb" "networkmanager" "video" "audio" ];
|
||||
packages = with pkgs; [
|
||||
firefox
|
||||
tree
|
||||
];
|
||||
};
|
||||
users.users.root.shell = pkgs.zsh;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
wget
|
||||
|
@ -91,6 +62,7 @@
|
|||
btop
|
||||
ranger
|
||||
colmena
|
||||
tree
|
||||
];
|
||||
fonts.packages = with pkgs; [
|
||||
fira-code-nerdfont
|
||||
|
@ -105,20 +77,6 @@
|
|||
enableSSHSupport = true;
|
||||
};
|
||||
|
||||
# programs.neovim = {
|
||||
# enable = true;
|
||||
# vimAlias = true;
|
||||
# viAlias = true;
|
||||
# defaultEditor = true;
|
||||
# configure = {
|
||||
# customRC = builtins.readFile ./nvim/cfg.vim;
|
||||
# };
|
||||
# };
|
||||
home-manager.users.root = {
|
||||
home.stateVersion = "23.11";
|
||||
imports = [ "${mods}/neovim" "${mods}/zsh.nix" ];
|
||||
};
|
||||
|
||||
services.syncthing = {
|
||||
enable = true;
|
||||
systemService = true;
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
{ ... }: {
|
||||
config._module.args = { mods = ./.; };
|
||||
{
|
||||
desktop-sway = import ./desktop/sway.nix;
|
||||
neovim = ./neovim;
|
||||
zsh = ./zsh.nix;
|
||||
}
|
||||
|
|
|
@ -1,13 +1,19 @@
|
|||
{ config, pkgs, lib, mods, ... }:
|
||||
{
|
||||
imports = [
|
||||
(import <home-manager/nixos>)
|
||||
global = { config, pkgs, lib, mods, ... }:
|
||||
{
|
||||
programs.wshowkeys.enable = true;
|
||||
programs.sway.enable = true;
|
||||
services.dbus.packages = with pkgs; [ dconf ];
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
extraPortals = with pkgs; [
|
||||
xdg-desktop-portal-wlr
|
||||
xdg-desktop-portal-gtk
|
||||
];
|
||||
home-manager.users.catvayor = {
|
||||
home.stateVersion = "23.11";
|
||||
|
||||
imports = [ "${mods}/neovim" "${mods}/zsh.nix" ];
|
||||
|
||||
};
|
||||
};
|
||||
home = { config, pkgs, lib, mods, ... }:
|
||||
{
|
||||
xdg.configFile."sway/config".onChange = lib.mkForce "";
|
||||
|
||||
home.sessionVariables = {
|
||||
|
@ -21,46 +27,13 @@
|
|||
XDG_CURRENT_DESKTOP = "sway";
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
wl-clipboard
|
||||
firefox
|
||||
pavucontrol
|
||||
libnotify
|
||||
zathura
|
||||
|
||||
discord
|
||||
signal-desktop
|
||||
mattermost-desktop
|
||||
keepassxc
|
||||
];
|
||||
|
||||
programs.thunderbird.enable = true;
|
||||
programs.thunderbird.profiles = {};
|
||||
programs.waybar.enable = true;
|
||||
home.file.".config/waybar" = { source = "${mods}/waybar"; recursive = true; };
|
||||
programs.alacritty = { enable = true; settings = lib.importTOML "${mods}/alacritty.toml"; };
|
||||
services.mako = {
|
||||
enable = true;
|
||||
width = 400;
|
||||
height = 200;
|
||||
maxVisible = 5;
|
||||
backgroundColor = "#8C3586";
|
||||
textColor = "#F4F40E";
|
||||
borderColor = "#F4F40E";
|
||||
defaultTimeout = 5000;
|
||||
};
|
||||
|
||||
gtk = {
|
||||
enable = true;
|
||||
theme = { package = pkgs.arc-theme; name = "Arc-Dark"; };
|
||||
iconTheme = { package = pkgs.arc-icon-theme; name = "Arc"; };
|
||||
cursorTheme = { package = pkgs.breeze-hacked-cursor-theme; name = "Breeze_Hacked"; };
|
||||
};
|
||||
home.pointerCursor = { package = pkgs.breeze-hacked-cursor-theme; name = "Breeze_Hacked"; };
|
||||
xdg.enable = true;
|
||||
home.file.".config/waybar" = { source = ./waybar; recursive = true; };
|
||||
|
||||
services.swayidle =
|
||||
let lockwall = pkgs.runCommand "lock_wall.jpg" {} ''${pkgs.ffmpeg}/bin/ffmpeg -i ${"${mods}/wall.jpg"} -filter_complex 'gblur=sigma=3' $out -y'';
|
||||
let lockwall = pkgs.runCommand "lock_wall.jpg" {} ''
|
||||
${pkgs.ffmpeg}/bin/ffmpeg -i ${./wall.jpg} -filter_complex 'gblur=sigma=3' $out -y
|
||||
'';
|
||||
in {
|
||||
enable = true;
|
||||
timeouts = [
|
||||
|
@ -75,6 +48,7 @@
|
|||
{ event = "lock"; command = "${pkgs.swaylock}/bin/swaylock -f -i ${lockwall}"; }
|
||||
];
|
||||
};
|
||||
|
||||
wayland.windowManager.sway = {
|
||||
enable = true;
|
||||
xwayland = true;
|
||||
|
@ -87,7 +61,7 @@
|
|||
let menuCmd = "${pkgs.wofi}/bin/wofi --show drun -i | xargs swaymsg exec --";
|
||||
exitMd = ''Exit Mode:| (l)Log out | (r)Reboot | (p)Poweroff'';
|
||||
weechatCmd = pkgs.writeShellScript "weechat.sh" ''
|
||||
nix-shell -p python3 python311Packages.dbus-python python311Packages.notify2 --run 'python ${"${mods}/weenotify.py"} -s' > /dev/null &
|
||||
nix-shell -p python3 python311Packages.dbus-python python311Packages.notify2 --run 'python ${./weenotify.py} -s' > /dev/null &
|
||||
while true; do
|
||||
ssh -R 5431:localhost:5431 weecat@watcher.kat -t screen -xaA -S weechat
|
||||
sleep 1
|
||||
|
@ -123,7 +97,7 @@
|
|||
command = "waybar";
|
||||
mode = "hide";
|
||||
}];
|
||||
output."*".bg = "${"${mods}/wall.jpg"} fill";
|
||||
output."*".bg = "${./wall.jpg} fill";
|
||||
seat."*"."hide_cursor" = "5000";
|
||||
focus.wrapping = "yes";
|
||||
window.titlebar = false;
|
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
63
users/catvayor.nix
Normal file
63
users/catvayor.nix
Normal file
|
@ -0,0 +1,63 @@
|
|||
{ config, pkgs, lib, mods, ... }:
|
||||
{
|
||||
imports = [ mods.desktop-sway.global ];
|
||||
users.users.catvayor = {
|
||||
shell = pkgs.zsh;
|
||||
isNormalUser = true;
|
||||
extraGroups = [ "wheel" "usb" "networkmanager" "video" "audio" ];
|
||||
packages = with pkgs; [
|
||||
tree
|
||||
];
|
||||
};
|
||||
|
||||
nixpkgs.config.pulseaudio = true;
|
||||
services.gvfs.enable = true;
|
||||
programs.thunar.enable = true;
|
||||
programs.thunar.plugins = with pkgs.xfce; [
|
||||
thunar-volman
|
||||
thunar-archive-plugin
|
||||
thunar-media-tags-plugin
|
||||
];
|
||||
|
||||
home-manager.users.catvayor = {
|
||||
home.stateVersion = "23.11";
|
||||
|
||||
imports = [ mods.neovim mods.zsh mods.desktop-sway.home ];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
wl-clipboard
|
||||
firefox
|
||||
pavucontrol
|
||||
libnotify
|
||||
zathura
|
||||
|
||||
discord
|
||||
signal-desktop
|
||||
mattermost-desktop
|
||||
keepassxc
|
||||
];
|
||||
|
||||
programs.alacritty = { enable = true; settings = lib.importTOML ./cat-alacritty.toml; };
|
||||
programs.thunderbird.enable = true;
|
||||
programs.thunderbird.profiles = {};
|
||||
services.mako = {
|
||||
enable = true;
|
||||
width = 400;
|
||||
height = 200;
|
||||
maxVisible = 5;
|
||||
backgroundColor = "#8C3586";
|
||||
textColor = "#F4F40E";
|
||||
borderColor = "#F4F40E";
|
||||
defaultTimeout = 5000;
|
||||
};
|
||||
|
||||
gtk = {
|
||||
enable = true;
|
||||
theme = { package = pkgs.arc-theme; name = "Arc-Dark"; };
|
||||
iconTheme = { package = pkgs.arc-icon-theme; name = "Arc"; };
|
||||
cursorTheme = { package = pkgs.breeze-hacked-cursor-theme; name = "Breeze_Hacked"; };
|
||||
};
|
||||
home.pointerCursor = { package = pkgs.breeze-hacked-cursor-theme; name = "Breeze_Hacked"; };
|
||||
xdg.enable = true;
|
||||
};
|
||||
}
|
4
users/default.nix
Normal file
4
users/default.nix
Normal file
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
catvayor = ./catvayor.nix;
|
||||
root = ./root.nix;
|
||||
}
|
8
users/root.nix
Normal file
8
users/root.nix
Normal file
|
@ -0,0 +1,8 @@
|
|||
{ config, lib, pkgs, mods, ... }:
|
||||
{
|
||||
users.users.root.shell = pkgs.zsh;
|
||||
home-manager.users.root = {
|
||||
home.stateVersion = "23.11";
|
||||
imports = [ mods.neovim mods.zsh ];
|
||||
};
|
||||
}
|
Loading…
Reference in a new issue