fixed merge conflicts
This commit is contained in:
commit
62d0e0591b
49 changed files with 814 additions and 92 deletions
|
@ -37,4 +37,15 @@ in {
|
|||
inputs.agenix.nixosModules.default
|
||||
];
|
||||
};
|
||||
|
||||
flocke = lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
specialArgs = { inherit lib inputs self; };
|
||||
modules = [
|
||||
./dragyx/flocke
|
||||
../modules
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
inputs.agenix.nixosModules.default
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
65
hosts/dragyx/common/packages.nix
Normal file
65
hosts/dragyx/common/packages.nix
Normal file
|
@ -0,0 +1,65 @@
|
|||
# which default packages to use for the system
|
||||
{ inputs, outputs, profile-config, pkgs, ...}:
|
||||
|
||||
let
|
||||
python-packages = ps: with ps; [
|
||||
pandas
|
||||
numpy
|
||||
opencv4
|
||||
ipython
|
||||
];
|
||||
in
|
||||
{
|
||||
# List packages installed in system profile. To search, run:
|
||||
# $ nix search wget
|
||||
environment.systemPackages = with pkgs; [
|
||||
(python3.withPackages python-packages)
|
||||
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||
neovim
|
||||
eza # exa is unmaintained
|
||||
hwinfo
|
||||
zsh
|
||||
git
|
||||
broot
|
||||
unzip
|
||||
rsync
|
||||
# neofetch
|
||||
# fastfetch has the option to set a timeout for
|
||||
# for each module, which makes it dramatically faster
|
||||
# as counting the number of packages takes over 800 (!!!) ms,
|
||||
# which makes it very unpleasant to use as default thing
|
||||
# to display when starting a terminal
|
||||
fastfetch
|
||||
alacritty
|
||||
wget
|
||||
gnumake
|
||||
zoxide
|
||||
python3
|
||||
nodejs
|
||||
gcc
|
||||
cargo
|
||||
rustc
|
||||
rust-analyzer
|
||||
clippy
|
||||
lsof
|
||||
htop
|
||||
okular
|
||||
smartmontools
|
||||
networkmanager
|
||||
pkg-config
|
||||
sof-firmware # audio
|
||||
nix-index
|
||||
# --------- optional
|
||||
gnome.eog
|
||||
sherlock
|
||||
xfce.thunar
|
||||
|
||||
plocate
|
||||
alsa-utils
|
||||
|
||||
# partition management
|
||||
parted
|
||||
gnufdisk
|
||||
lapce
|
||||
];
|
||||
}
|
166
hosts/dragyx/flocke/configuration.nix
Normal file
166
hosts/dragyx/flocke/configuration.nix
Normal file
|
@ -0,0 +1,166 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../../../options/common/pin-registry.nix
|
||||
../../../options/common/preserve-system.nix
|
||||
../../../options/desktop/fonts.nix
|
||||
./packages.nix
|
||||
];
|
||||
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
time.timeZone = "Europe/Zurich";
|
||||
security.sudo.package = pkgs.sudo.override { withInsults = true; };
|
||||
|
||||
services.displayManager = {
|
||||
sessionPackages = [ pkgs.hyprland ]; # pkgs.gnome.gnome-session.sessions ];
|
||||
defaultSession = "hyprland";
|
||||
sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
hardware.bluetooth.enable = true;
|
||||
hardware.bluetooth.powerOnBoot = true;
|
||||
|
||||
hardware.opengl.driSupport = true;
|
||||
hardware.opengl.driSupport32Bit = true;
|
||||
hardware.opengl.enable = true;
|
||||
|
||||
services.logrotate.checkConfig = false;
|
||||
|
||||
networking.hostName = "flocke"; # Define your hostname.
|
||||
networking.hostId = "adf23c31";
|
||||
networking.interfaces.wlp1s0.useDHCP = true;
|
||||
networking.networkmanager.enable = true;
|
||||
environment.systemPackages = with pkgs; [ networkmanager ]; # cli tool for managing connections
|
||||
|
||||
boot = {
|
||||
kernelParams = [ ];
|
||||
initrd.supportedFilesystems = [ "ext4" ];
|
||||
supportedFilesystems = [ "ext4" ];
|
||||
loader = {
|
||||
efi.efiSysMountPoint = "/boot";
|
||||
efi.canTouchEfiVariables = true;
|
||||
grub = {
|
||||
enable = true;
|
||||
device = "nodev";
|
||||
efiSupport = true;
|
||||
enableCryptodisk = true;
|
||||
};
|
||||
};
|
||||
initrd.luks.devices = {
|
||||
cryptroot = {
|
||||
device = "/dev/disk/by-uuid/ec5ff3a1-9b39-4ba5-aa0f-19e898b4f6e8";
|
||||
preLVM = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# see https://nixos.wiki/wiki/AMD_GPU
|
||||
services.xserver.videoDrivers = [ "amdgpu" ];
|
||||
systemd.tmpfiles.rules = [
|
||||
"L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}"
|
||||
];
|
||||
hardware.opengl.extraPackages = with pkgs; [
|
||||
rocmPackages.clr.icd
|
||||
];
|
||||
|
||||
services.power-profiles-daemon.enable = false;
|
||||
|
||||
# stock nixos power management
|
||||
powerManagement.enable = true;
|
||||
|
||||
services.tlp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
CPU_SCALING_GOVERNOR_ON_AC = "performance";
|
||||
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
|
||||
|
||||
CPU_ENERGY_PERF_POLICY_ON_BAT = "power";
|
||||
CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
|
||||
|
||||
CPU_MIN_PERF_ON_AC = 0;
|
||||
CPU_MAX_PERF_ON_AC = 100;
|
||||
CPU_MIN_PERF_ON_BAT = 0;
|
||||
CPU_MAX_PERF_ON_BAT = 20;
|
||||
|
||||
#Optional helps save long term battery health
|
||||
START_CHARGE_THRESH_BAT0 = 40; # 40 and bellow it starts to charge
|
||||
STOP_CHARGE_THRESH_BAT0 = 85; # 80 and above it stops charging
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
swapDevices = [ {
|
||||
device = "/var/lib/swapfile";
|
||||
size = 32*1024;
|
||||
} ];
|
||||
|
||||
|
||||
# be nice to your ssds
|
||||
services.fstrim.enable = true;
|
||||
# services.xserver.enable = pkgs.lib.mkForce false;
|
||||
|
||||
security.polkit.enable = true;
|
||||
|
||||
modules = {
|
||||
other = {
|
||||
system = rec {
|
||||
hostname = "flocke";
|
||||
username = "dragyx";
|
||||
gitPath = "/home/${username}/repos/nichts";
|
||||
monitors = [
|
||||
{
|
||||
name = "LaptopMain";
|
||||
device = "eDP-1";
|
||||
resolution = {
|
||||
x = 2256;
|
||||
y = 1504;
|
||||
};
|
||||
scale = 1.175;
|
||||
refresh_rate = 60;
|
||||
}
|
||||
];
|
||||
};
|
||||
home-manager = {
|
||||
enable = true;
|
||||
enableDirenv = true;
|
||||
};
|
||||
};
|
||||
programs = {
|
||||
vesktop.enable = true;
|
||||
btop.enable = true;
|
||||
mpv.enable = true;
|
||||
schizofox.enable = true;
|
||||
obs.enable = true;
|
||||
# neovim.enable = true;
|
||||
git = {
|
||||
enable = true;
|
||||
userName = "Dragyx";
|
||||
userEmail = "66752602+Dragyx@users.noreply.github.com";
|
||||
defaultBranch = "main";
|
||||
};
|
||||
starship.enable = true;
|
||||
zsh = {
|
||||
enable = true;
|
||||
profiling = false;
|
||||
};
|
||||
# badneovim.enable = true;
|
||||
};
|
||||
services = {
|
||||
pipewire.enable = true;
|
||||
};
|
||||
WM.hyprland.enable = true;
|
||||
};
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "21.11"; # Did you read the comment?
|
||||
}
|
8
hosts/dragyx/flocke/default.nix
Normal file
8
hosts/dragyx/flocke/default.nix
Normal file
|
@ -0,0 +1,8 @@
|
|||
_: {
|
||||
imports = [
|
||||
../../../options/desktop/monitors.nix
|
||||
./configuration.nix
|
||||
./hardware-configuration.nix
|
||||
# ./packages.nix
|
||||
];
|
||||
}
|
35
hosts/dragyx/flocke/hardware-configuration.nix
Normal file
35
hosts/dragyx/flocke/hardware-configuration.nix
Normal file
|
@ -0,0 +1,35 @@
|
|||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ "amdgpu" ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/2aaba0f2-e8dc-4583-a81e-2d35cc238e79";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/9D34-36F8";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
56
hosts/dragyx/flocke/packages.nix
Normal file
56
hosts/dragyx/flocke/packages.nix
Normal file
|
@ -0,0 +1,56 @@
|
|||
# which default packages to use for the system
|
||||
{ inputs, outputs, profile-config, pkgs, ...}:
|
||||
|
||||
let
|
||||
python-packages = ps: with ps; [
|
||||
pandas
|
||||
numpy
|
||||
opencv4
|
||||
ipython
|
||||
];
|
||||
in
|
||||
{
|
||||
|
||||
imports = [
|
||||
../common/packages.nix
|
||||
];
|
||||
# List packages installed in system profile. To search, run:
|
||||
# $ nix search wget
|
||||
environment.systemPackages = with pkgs; [
|
||||
|
||||
# security audits
|
||||
lynis
|
||||
element-desktop
|
||||
jetbrains.idea-community
|
||||
baobab
|
||||
amdvlk
|
||||
texlive.combined.scheme-full
|
||||
android-tools
|
||||
signal-desktop
|
||||
nextcloud-client
|
||||
# etcher
|
||||
vlc
|
||||
audacity
|
||||
thunderbird
|
||||
eclipses.eclipse-java
|
||||
openjdk
|
||||
firefox
|
||||
# pkgs.nordvpn # nur.repos.LuisChDev.nordvpn
|
||||
material-icons
|
||||
material-design-icons
|
||||
libreoffice
|
||||
gimp
|
||||
spotify
|
||||
okular
|
||||
# minecraft
|
||||
prismlauncher-unwrapped
|
||||
glfw-wayland-minecraft
|
||||
glxinfo
|
||||
# window manager
|
||||
flameshot
|
||||
feh
|
||||
# Animeeeeee!
|
||||
ani-cli # The stable version is very outdated
|
||||
];
|
||||
|
||||
}
|
|
@ -5,7 +5,7 @@
|
|||
security.sudo.package = pkgs.sudo.override { withInsults = true; };
|
||||
security.polkit.enable = true;
|
||||
programs.kdeconnect.enable = true;
|
||||
myOptions = {
|
||||
modules = {
|
||||
other = {
|
||||
system = {
|
||||
gitPath = "/home/lars/nichts";
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
{
|
||||
myOptions = {
|
||||
modules = {
|
||||
other = {
|
||||
system = {
|
||||
hostname = "dyonisos";
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
let
|
||||
username = config.myOptions.other.system.username;
|
||||
username = config.modules.other.system.username;
|
||||
in {
|
||||
home-manager.users.${username} = {
|
||||
home.packages = let
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
{ config, lib, inputs, pkgs, ... }:
|
||||
with lib; let
|
||||
username = config.myOptions.other.system.username;
|
||||
cfg = config.myOptions.hyprland;
|
||||
username = config.modules.other.system.username;
|
||||
cfg = config.modules.hyprland;
|
||||
in {
|
||||
options.myOptions.hyprland.nvidia.enable = mkEnableOption "nvidia";
|
||||
options.myOptions.hyprland = {
|
||||
options.modules.hyprland.nvidia.enable = mkEnableOption "nvidia";
|
||||
options.modules.hyprland = {
|
||||
enable = mkEnableOption "hyprland";
|
||||
monitor = mkOption {
|
||||
description = "hyprland monitor config";
|
||||
default = ",preferred,auto,1";
|
||||
type = types.listof(types.str);
|
||||
type = types.listOf(types.str);
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -41,6 +41,9 @@ in {
|
|||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
settings = {
|
||||
# Monitor config
|
||||
monitor = cfg.monitor;
|
||||
|
||||
"$mod" = "SUPER";
|
||||
|
||||
input = {
|
||||
|
@ -51,6 +54,10 @@ in {
|
|||
"$mod, Q, killactive"
|
||||
"$mod, return, exec, alacritty"
|
||||
"$mod SHIFT, return, exec, firefox"
|
||||
"$mod SHIFT, m, exit"
|
||||
|
||||
# Application
|
||||
"$mod SHIFT, c, exec, code --enable-features=UseOzonePlatform --ozone-platform=wayland --disable-gpu"
|
||||
|
||||
# Monitor management
|
||||
"$mod SHIFT, k, movecurrentworkspacetomonitor, DP-2"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
{
|
||||
myOptions = {
|
||||
modules = {
|
||||
other = {
|
||||
system = {
|
||||
hostname = "kronos";
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
let
|
||||
username = config.myOptions.other.system.username;
|
||||
username = config.modules.other.system.username;
|
||||
in {
|
||||
home-manager.users.${username} = {
|
||||
home.packages = let
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
let
|
||||
username = config.myOptions.other.system.username;
|
||||
username = config.modules.other.system.username;
|
||||
in {
|
||||
home-manager.users.${username} = {
|
||||
home.packages = let
|
||||
|
@ -48,6 +48,8 @@ in {
|
|||
tmux
|
||||
firefox
|
||||
kitty
|
||||
nextcloud-client
|
||||
vscode
|
||||
grim
|
||||
slurp
|
||||
wl-clipboard
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{ pkgs, lib, config, ... }:
|
||||
with lib; let
|
||||
cfg = config.myOptions.programs.awesome;
|
||||
cfg = config.modules.programs.awesome;
|
||||
in {
|
||||
options.myOptions.programs.awesome.enable = mkEnableOption "awesome";
|
||||
options.modules.programs.awesome.enable = mkEnableOption "awesome";
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
services.xserver = {
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
}
|
||||
'';
|
||||
};
|
||||
myOptions = {
|
||||
modules = {
|
||||
other = {
|
||||
system = {
|
||||
hostname = "mars";
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
with lib; let
|
||||
|
||||
cfg = config.myOptions.programs.hypr.land;
|
||||
username = config.myOptions.other.system.username;
|
||||
cfg = config.modules.programs.hypr.land;
|
||||
username = config.modules.other.system.username;
|
||||
hmCfg = config.home-manager.users.${username};
|
||||
|
||||
smwPresent = elem inputs.split-monitor-workspaces.packages.${pkgs.system}.split-monitor-workspaces cfg.extraPlugins;
|
||||
|
@ -13,7 +13,7 @@ with lib; let
|
|||
inherit (inputs.hyprland.packages.${pkgs.system}) hyprland;
|
||||
inherit (inputs.hyprlock.packages.${pkgs.system}) hyprlock;
|
||||
in {
|
||||
options.myOptions.programs.hypr.land = {
|
||||
options.modules.programs.hypr.land = {
|
||||
enable = mkEnableOption "huperland";
|
||||
startupSound = mkOption {
|
||||
type = with types; nullOr path;
|
||||
|
@ -359,7 +359,7 @@ in {
|
|||
"[workspace special:rog silent;tile] ${config.services.asusd.package}/bin/rog-control-center")
|
||||
"[workspace special:keepassxc silent;tile] ${pkgs.keepassxc}/bin/keepassxc"
|
||||
|
||||
(if config.myOptions.programs.foot.server then "sleep 0.5 && ${pkgs.systemd}/bin/systemctl --user restart foot.service" else ";")
|
||||
(if config.modules.programs.foot.server then "sleep 0.5 && ${pkgs.systemd}/bin/systemctl --user restart foot.service" else ";")
|
||||
|
||||
"${hyprland}/bin/hyprctl setcursor Bibata-Modern-Classic 24"
|
||||
|
||||
|
|
|
@ -5,12 +5,12 @@
|
|||
pkgs,
|
||||
...
|
||||
}: with lib; let
|
||||
cfg = config.myOptions.programs.hypr.lock;
|
||||
username = config.myOptions.other.system.username;
|
||||
cfg = config.modules.programs.hypr.lock;
|
||||
username = config.modules.other.system.username;
|
||||
|
||||
text_color = "rgba(eae0e4FF)";
|
||||
in {
|
||||
options.myOptions.programs.hypr.lock = {
|
||||
options.modules.programs.hypr.lock = {
|
||||
enable = mkEnableOption "hiper zamek";
|
||||
extraSettings = mkOption {
|
||||
type = types.attrs;
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{ pkgs, lib, config, callPackage, ... }:
|
||||
with lib; let
|
||||
cfg = config.myOptions.programs.i3;
|
||||
username = config.myOptions.other.system.username;
|
||||
cfg = config.modules.programs.i3;
|
||||
in {
|
||||
options.myOptions.programs.i3.enable = mkEnableOption "i3";
|
||||
options.modules.programs.i3.enable = mkEnableOption "i3";
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home-manager.users.${username}.xdg.configFile."i3/config".source = ./config;
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
let
|
||||
fenix = inputs.fenix.packages.${pkgs.system};
|
||||
username = config.modules.other.system.username;
|
||||
in {
|
||||
environment.systemPackages = with pkgs; [
|
||||
alacritty
|
||||
|
|
78
hosts/vali/mars/temp
Normal file
78
hosts/vali/mars/temp
Normal file
|
@ -0,0 +1,78 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
let
|
||||
username = config.myOptions.other.system.username;
|
||||
in {
|
||||
home-manager.users.${username} = {
|
||||
home.packages = let
|
||||
fenix = inputs.fenix.packages.${pkgs.system};
|
||||
|
||||
in with pkgs; [
|
||||
alacritty
|
||||
alsa-utils
|
||||
asciinema
|
||||
betterbird
|
||||
bibata-cursors
|
||||
dig
|
||||
easyeffects
|
||||
element-desktop
|
||||
eza
|
||||
fastfetch
|
||||
(fenix.complete.withComponents [
|
||||
"cargo"
|
||||
"clippy"
|
||||
"rust-src"
|
||||
"rustc"
|
||||
"rustfmt"
|
||||
])
|
||||
ffmpeg_6-full
|
||||
flameshot
|
||||
foot
|
||||
gcc
|
||||
gdb
|
||||
grimblast
|
||||
git
|
||||
httpie
|
||||
imagemagick
|
||||
keepassxc
|
||||
krita
|
||||
lazygit
|
||||
libreoffice-fresh
|
||||
neofetch
|
||||
neovim
|
||||
networkmanagerapplet
|
||||
nextcloud-client
|
||||
pamixer
|
||||
pavucontrol
|
||||
pcmanfm
|
||||
pfetch
|
||||
playerctl
|
||||
polkit
|
||||
python3
|
||||
qbittorrent
|
||||
ripgrep
|
||||
rustdesk
|
||||
rofi
|
||||
scc
|
||||
sherlock
|
||||
signal-desktop-beta
|
||||
smartmontools
|
||||
st
|
||||
steam
|
||||
strawberry.strawberry-wrapped
|
||||
telegram-desktop
|
||||
texliveFull
|
||||
thunderbird
|
||||
tor-browser-bundle-bin
|
||||
trash-cli
|
||||
tree
|
||||
unzip
|
||||
ventoy-full
|
||||
vesktop
|
||||
vlc
|
||||
xclip
|
||||
yt-dlp
|
||||
zathura
|
||||
zip
|
||||
];
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue