hosts/modularization
This commit is contained in:
parent
71e22f65bb
commit
5e4b53d885
16 changed files with 260 additions and 352 deletions
|
|
@ -5,5 +5,6 @@
|
|||
./hyprland.nix
|
||||
./spicetify.nix
|
||||
./browsers/zen.nix
|
||||
./vscode.nix
|
||||
];
|
||||
}
|
||||
|
|
|
|||
15
modules/home-manager/desktop/vscode.nix
Normal file
15
modules/home-manager/desktop/vscode.nix
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
profiles.default.extensions = with pkgs.vscode-extensions; [
|
||||
pkgs.vscode-extensions.kamadorueda.alejandra
|
||||
pkgs.vscode-extensions.jnoortheen.nix-ide
|
||||
];
|
||||
profiles.tulg.userSettings = {
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -7,57 +7,13 @@
|
|||
imports = [
|
||||
./cli/default.nix
|
||||
./desktop/default.nix
|
||||
./pkgs.nix
|
||||
];
|
||||
# Home Manager settings
|
||||
nix.nixPath = ["nixpkgs=${inputs.nixpkgs}"];
|
||||
home.username = "tulg";
|
||||
home.homeDirectory = "/home/tulg";
|
||||
home.stateVersion = "25.05";
|
||||
home.packages = with pkgs; [
|
||||
quickshell
|
||||
networkmanagerapplet
|
||||
inputs.noctalia.packages.${pkgs.system}.default
|
||||
wdisplays
|
||||
nwg-look
|
||||
restic
|
||||
rose-pine-gtk-theme
|
||||
alejandra
|
||||
prismlauncher
|
||||
arc-theme
|
||||
cliphist
|
||||
swappy
|
||||
mpv
|
||||
pkgs.looking-glass-client
|
||||
tmux
|
||||
fastfetch
|
||||
btop
|
||||
pavucontrol
|
||||
wl-clipboard
|
||||
hyprcursor
|
||||
parsec-bin
|
||||
file-roller
|
||||
hyprpaper
|
||||
hyprpolkitagent
|
||||
pkgs.nixd
|
||||
swww
|
||||
grim
|
||||
slurp
|
||||
inxi
|
||||
waybar
|
||||
wofi
|
||||
mako
|
||||
feh
|
||||
kitty
|
||||
];
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
profiles.default.extensions = with pkgs.vscode-extensions; [
|
||||
pkgs.vscode-extensions.kamadorueda.alejandra
|
||||
pkgs.vscode-extensions.jnoortheen.nix-ide
|
||||
];
|
||||
profiles.tulg.userSettings = {
|
||||
};
|
||||
};
|
||||
|
||||
programs.vesktop.enable = true;
|
||||
}
|
||||
|
|
|
|||
42
modules/home-manager/pkgs.nix
Normal file
42
modules/home-manager/pkgs.nix
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
{
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
home.packages = with pkgs; [
|
||||
quickshell
|
||||
networkmanagerapplet
|
||||
inputs.noctalia.packages.${pkgs.system}.default
|
||||
wdisplays
|
||||
nwg-look
|
||||
restic
|
||||
rose-pine-gtk-theme
|
||||
alejandra
|
||||
prismlauncher
|
||||
arc-theme
|
||||
cliphist
|
||||
swappy
|
||||
mpv
|
||||
pkgs.looking-glass-client
|
||||
tmux
|
||||
fastfetch
|
||||
btop
|
||||
pavucontrol
|
||||
wl-clipboard
|
||||
hyprcursor
|
||||
parsec-bin
|
||||
file-roller
|
||||
hyprpaper
|
||||
hyprpolkitagent
|
||||
pkgs.nixd
|
||||
swww
|
||||
grim
|
||||
slurp
|
||||
inxi
|
||||
waybar
|
||||
wofi
|
||||
mako
|
||||
feh
|
||||
kitty
|
||||
];
|
||||
}
|
||||
12
modules/nixos/common.nix
Normal file
12
modules/nixos/common.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{pkgs, ...}: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
git
|
||||
rose-pine-gtk-theme
|
||||
virtiofsd
|
||||
linux-pam
|
||||
lm_sensors
|
||||
];
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||
time.timeZone = "Europe/Istanbul";
|
||||
}
|
||||
26
modules/nixos/fonts.nix
Normal file
26
modules/nixos/fonts.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
{pkgs, ...}: {
|
||||
fonts = {
|
||||
packages = with pkgs; [
|
||||
noto-fonts
|
||||
noto-fonts-cjk-sans
|
||||
#noto-fonts-emoji
|
||||
nerd-fonts.symbols-only
|
||||
liberation_ttf
|
||||
font-awesome
|
||||
fira
|
||||
fira-sans
|
||||
fira-code
|
||||
fira-code-symbols
|
||||
];
|
||||
|
||||
enableDefaultPackages = true;
|
||||
fontconfig = {
|
||||
enable = true;
|
||||
defaultFonts = {
|
||||
sansSerif = ["Fira Sans Regular"];
|
||||
serif = ["Fira Sans Regular"];
|
||||
monospace = ["Fira Mono Regular"];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
24
modules/nixos/networking/bluetooth.nix
Normal file
24
modules/nixos/networking/bluetooth.nix
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
hardware.bluetooth = {
|
||||
enable = true;
|
||||
powerOnBoot = true;
|
||||
settings = {
|
||||
General = {
|
||||
# Shows battery charge of connected devices on supported
|
||||
# Bluetooth adapters. Defaults to 'false'.
|
||||
Experimental = true;
|
||||
# When enabled other devices can connect faster to us, however
|
||||
# the tradeoff is increased power consumption. Defaults to
|
||||
# 'false'.
|
||||
FastConnectable = true;
|
||||
};
|
||||
Policy = {
|
||||
# Enable all controllers when they are found. This includes
|
||||
# adapters present on start as well as adapters that are plugged
|
||||
# in later on. Defaults to 'true'.
|
||||
AutoEnable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
services.blueman.enable = true;
|
||||
}
|
||||
13
modules/nixos/networking/default.nix
Normal file
13
modules/nixos/networking/default.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./bluetooth.nix
|
||||
./ssh.nix
|
||||
./zapret.nix
|
||||
];
|
||||
}
|
||||
15
modules/nixos/networking/ssh.nix
Normal file
15
modules/nixos/networking/ssh.nix
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
users.users."root".openssh.authorizedKeys.keys = [
|
||||
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDIefprdYz4gFgBqGlrkycWcTYxFttQHRjDQmREtQTiGyqK1gQiB4z4Cbiayt7Emq224sbaobQPlNSyhlBCSo/Wf0bmZMz8NwNdwhFSkDnyD6LPaHg8fv9FXnWW0wBMl4oSD2wfGbMQBrecjgHXfJ64UiHyyhDllDDtWGgoY75wwfWHzX/NiGaEi0LHCQ8dsgp7H+BhssTkJPZbv6BJcA34yfb6dISjvW2S/QGKMwgYr9ArfGLUTWPbj+EbL7Bf9VsTFe9nP+FnYqEu4+oBIbY2heXWA+FCi0zxmMY4oYJxT5cJi1nffVOxboKLm4kIT93gv1WdcDiQDVdy5sJ1q0gJyiRt1HfJW4l8jn36VJ0FvdGmRliOTzSfeER0gbIsOcxeArHRV3ff/CoSocnSs0To5vFKgjlGwhdE8sJsqILgZnIoKwVvOXuDOz/RhbdBPpVsG7upk7bLJtLv9P5h0h/gUIWA1iktaYBSDL0UofjSrfNhZH6M0P+soIuooanSlVGivTlASw1pd+gjvebbc9ksvGZVqPQT0XegIvZkwfu8moERZUqv/xhNcyWTEGfFKoeHt5ub8Ac0LOe9Ak6N+p8xDjTdkmUgte5J/CNL1JL3JA/iqocAo+VvmIbPatbrOwUNcROOS3WeFg8MfNrbDyYCVNbZWAyM6wwfLB2fIUB2jw== tulg@highcommand" # content of authorized_keys file
|
||||
];
|
||||
users.users."tulg".openssh.authorizedKeys.keys = [
|
||||
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDIefprdYz4gFgBqGlrkycWcTYxFttQHRjDQmREtQTiGyqK1gQiB4z4Cbiayt7Emq224sbaobQPlNSyhlBCSo/Wf0bmZMz8NwNdwhFSkDnyD6LPaHg8fv9FXnWW0wBMl4oSD2wfGbMQBrecjgHXfJ64UiHyyhDllDDtWGgoY75wwfWHzX/NiGaEi0LHCQ8dsgp7H+BhssTkJPZbv6BJcA34yfb6dISjvW2S/QGKMwgYr9ArfGLUTWPbj+EbL7Bf9VsTFe9nP+FnYqEu4+oBIbY2heXWA+FCi0zxmMY4oYJxT5cJi1nffVOxboKLm4kIT93gv1WdcDiQDVdy5sJ1q0gJyiRt1HfJW4l8jn36VJ0FvdGmRliOTzSfeER0gbIsOcxeArHRV3ff/CoSocnSs0To5vFKgjlGwhdE8sJsqILgZnIoKwVvOXuDOz/RhbdBPpVsG7upk7bLJtLv9P5h0h/gUIWA1iktaYBSDL0UofjSrfNhZH6M0P+soIuooanSlVGivTlASw1pd+gjvebbc9ksvGZVqPQT0XegIvZkwfu8moERZUqv/xhNcyWTEGfFKoeHt5ub8Ac0LOe9Ak6N+p8xDjTdkmUgte5J/CNL1JL3JA/iqocAo+VvmIbPatbrOwUNcROOS3WeFg8MfNrbDyYCVNbZWAyM6wwfLB2fIUB2jw== tulg@highcommand" # content of authorized_keys file
|
||||
];
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
settings = {
|
||||
PasswordAuthentication = true;
|
||||
PermitRootLogin = "yes";
|
||||
};
|
||||
};
|
||||
}
|
||||
51
modules/nixos/networking/zapret.nix
Normal file
51
modules/nixos/networking/zapret.nix
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
{
|
||||
services.dnscrypt-proxy = {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
listen_addresses = [
|
||||
"127.0.0.1:53"
|
||||
"[::1]:53"
|
||||
];
|
||||
|
||||
ignore_system_dns = true;
|
||||
|
||||
bootstrap_resolvers = [
|
||||
"9.9.9.9:53"
|
||||
"149.112.112.112:53"
|
||||
"1.1.1.1:53"
|
||||
];
|
||||
|
||||
fallback_resolvers = [
|
||||
"9.9.9.9:53"
|
||||
"1.1.1.1:53"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
systemd.services.zapret = {
|
||||
after = ["network-online.target"];
|
||||
wants = ["network-online.target"];
|
||||
};
|
||||
|
||||
services.zapret = {
|
||||
enable = true;
|
||||
|
||||
params = [
|
||||
"--dpi-desync=fake"
|
||||
"--dpi-desync-ttl=8"
|
||||
];
|
||||
};
|
||||
|
||||
networking = {
|
||||
networkmanager = {
|
||||
enable = true;
|
||||
dns = "none";
|
||||
};
|
||||
|
||||
nameservers = [
|
||||
"127.0.0.1"
|
||||
"::1"
|
||||
];
|
||||
};
|
||||
}
|
||||
12
modules/nixos/services.nix
Normal file
12
modules/nixos/services.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{pkgs, ...}: {
|
||||
services.gvfs.enable = true; # Mount, trash, and other functionalities
|
||||
services.tumbler.enable = true; # Thumbnail support for images
|
||||
programs.thunar.enable = true;
|
||||
programs.xfconf.enable = true;
|
||||
services.displayManager.ly.enable = true;
|
||||
|
||||
programs.thunar.plugins = with pkgs.xfce; [
|
||||
thunar-archive-plugin
|
||||
thunar-volman
|
||||
];
|
||||
}
|
||||
12
modules/nixos/users/tulg.nix
Normal file
12
modules/nixos/users/tulg.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
users.users.tulg = {
|
||||
isNormalUser = true;
|
||||
description = "Tulga";
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
"libvirtd"
|
||||
"kvm"
|
||||
];
|
||||
};
|
||||
}
|
||||
11
modules/nixos/virtualization/default.nix
Normal file
11
modules/nixos/virtualization/default.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./qemu.nix
|
||||
];
|
||||
}
|
||||
9
modules/nixos/virtualization/qemu.nix
Normal file
9
modules/nixos/virtualization/qemu.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
programs.virt-manager.enable = true;
|
||||
virtualisation.libvirtd = {
|
||||
enable = true;
|
||||
qemu.runAsRoot = false;
|
||||
onBoot = "ignore";
|
||||
onShutdown = "shutdown";
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue