removed other peeps
This commit is contained in:
parent
45218c192d
commit
f1582a353b
31 changed files with 40 additions and 937 deletions
|
@ -7,7 +7,6 @@
|
|||
};
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
nixpkgs-wayland.url = "github:nix-community/nixpkgs-wayland";
|
||||
anyrun = {
|
||||
url = "github:Kirottu/anyrun";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
|
|
@ -3,7 +3,6 @@ let
|
|||
inherit (inputs) self;
|
||||
inherit (self) lib;
|
||||
in {
|
||||
# Vali
|
||||
mars = lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
specialArgs = { inherit lib inputs self; };
|
||||
|
@ -15,38 +14,4 @@ in {
|
|||
];
|
||||
};
|
||||
|
||||
# Lars
|
||||
dyonisos = lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
specialArgs = { inherit lib inputs self; };
|
||||
modules = [
|
||||
./lars/dyonisos
|
||||
../modules
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
inputs.agenix.nixosModules.default
|
||||
];
|
||||
};
|
||||
|
||||
kronos = lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
specialArgs = { inherit lib inputs self; };
|
||||
modules = [
|
||||
./lars/kronos
|
||||
../modules
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
inputs.agenix.nixosModules.default
|
||||
];
|
||||
};
|
||||
|
||||
flocke = lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
specialArgs = { inherit lib inputs self; };
|
||||
modules = [
|
||||
../overlay.nix # TODO: move this somewhere else
|
||||
./dragyx/flocke
|
||||
../modules
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
inputs.agenix.nixosModules.default
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,91 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
username = config.modules.other.system.username;
|
||||
in
|
||||
{
|
||||
home-manager.users.${username} = {
|
||||
programs = {
|
||||
alacritty = {
|
||||
enable = true;
|
||||
};
|
||||
alacritty.settings = {
|
||||
shell = {
|
||||
program = "zsh";
|
||||
};
|
||||
font.normal.family = "JetBrainsMono Nerd Font";
|
||||
font.bold.family = "JetBrainsMono Nerd Font";
|
||||
font.italic.family = "JetBrainsMono Nerd Font";
|
||||
font.bold_italic.family = "JetBrainsMono Nerd Font";
|
||||
window.opacity = 0.8;
|
||||
# TODO: maybe use a different way to manage the theme
|
||||
colors = {
|
||||
primary = {
|
||||
background = "#282a36";
|
||||
foreground = "#f8f8f2";
|
||||
bright_foreground = "#ffffff";
|
||||
};
|
||||
cursor = {
|
||||
text = "CellBackground";
|
||||
cursor = "CellForeground";
|
||||
};
|
||||
vi_mode_cursor = {
|
||||
text = "CellBackground";
|
||||
cursor = "CellForeground";
|
||||
};
|
||||
search = {
|
||||
matches = {
|
||||
foreground = "#44475a";
|
||||
background = "#50fa7b";
|
||||
};
|
||||
focused_match = {
|
||||
foreground = "#44475a";
|
||||
background = "#ffb86c";
|
||||
};
|
||||
};
|
||||
footer_bar = {
|
||||
background = "#282a36";
|
||||
foreground = "#f8f8f2";
|
||||
};
|
||||
hints = {
|
||||
start = {
|
||||
foreground = "#282a36";
|
||||
background = "#f1fa8c";
|
||||
};
|
||||
end = {
|
||||
foreground = "#f1fa8c";
|
||||
background = "#282a36";
|
||||
};
|
||||
};
|
||||
line_indicator = {
|
||||
foreground = "None";
|
||||
background = "None";
|
||||
};
|
||||
selection = {
|
||||
text = "CellForeground";
|
||||
background = "#44475a";
|
||||
};
|
||||
normal = {
|
||||
black = "#21222c";
|
||||
red = "#ff5555";
|
||||
green = "#50fa7b";
|
||||
yellow = "#f1fa8c";
|
||||
blue = "#bd93f9";
|
||||
magenta = "#ff79c6";
|
||||
cyan = "#8be9fd";
|
||||
white = "#f8f8f2";
|
||||
};
|
||||
bright = {
|
||||
black = "#6272a4";
|
||||
red = "#ff6e6e";
|
||||
green = "#69ff94";
|
||||
yellow = "#ffffa5";
|
||||
blue = "#d6acff";
|
||||
magenta = "#ff92df";
|
||||
cyan = "#a4ffff";
|
||||
white = "#ffffff";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
_: {
|
||||
imports = [
|
||||
./alacritty.nix
|
||||
];
|
||||
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
_: {
|
||||
imports = [
|
||||
./configuration.nix
|
||||
./packages.nix
|
||||
./hyprland.nix
|
||||
./waybar.nix
|
||||
./theming
|
||||
./cli
|
||||
];
|
||||
|
||||
|
||||
}
|
Binary file not shown.
Before Width: | Height: | Size: 2.2 MiB |
|
@ -1,8 +0,0 @@
|
|||
_: {
|
||||
imports = [
|
||||
../../../options/desktop/monitors.nix
|
||||
./configuration.nix
|
||||
./hardware-configuration.nix
|
||||
# ./packages.nix
|
||||
];
|
||||
}
|
|
@ -1,35 +0,0 @@
|
|||
{ 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;
|
||||
}
|
|
@ -1,146 +0,0 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./hyprland.nix
|
||||
./programs.nix
|
||||
# ./xwayland.nix
|
||||
];
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
time.timeZone = "Europe/Zurich";
|
||||
security.sudo.package = pkgs.sudo.override { withInsults = true; };
|
||||
security.polkit.enable = true;
|
||||
programs.kdeconnect.enable = true;
|
||||
modules = {
|
||||
other = {
|
||||
system = {
|
||||
gitPath = "/home/lars/nichts";
|
||||
};
|
||||
home-manager = {
|
||||
enable = true;
|
||||
enableDirenv = true;
|
||||
};
|
||||
};
|
||||
|
||||
waybar.enable = true;
|
||||
|
||||
programs = {
|
||||
vesktop.enable = true;
|
||||
btop.enable = true;
|
||||
mpv.enable = true;
|
||||
yazi.enable = true;
|
||||
|
||||
zsh = {
|
||||
enable = true;
|
||||
profiling = false;
|
||||
extraAliases = {
|
||||
cls = "clear";
|
||||
Hyprland = "dbus-run-session Hyprland";
|
||||
y = "yazi";
|
||||
};
|
||||
ohmyzsh = {
|
||||
enable = true;
|
||||
theme = "fino-time";
|
||||
};
|
||||
};
|
||||
|
||||
git = {
|
||||
enable = true;
|
||||
userName = "LarsZauberer";
|
||||
userEmail = "wasser.ian@gmail.com";
|
||||
defaultBranch = "main";
|
||||
};
|
||||
|
||||
firefox = {
|
||||
enable = true;
|
||||
extensions = {
|
||||
"support@lastpass.com" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/file/4246455/lastpass_password_manager-4.127.0.1.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
"newtaboverride@agenedia.com" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/file/4231522/new_tab_override-16.0.0.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
"keepassxc-browser@keepassxc.org" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/file/4257616/keepassxc_browser-1.9.0.3.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
"{7be2ba16-0f1e-4d93-9ebc-5164397477a9}" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/file/3756025/videospeed-0.6.3.3.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
alacritty = {
|
||||
enable = true;
|
||||
catppuccin = true;
|
||||
};
|
||||
|
||||
neovim = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
pipewire.enable = true;
|
||||
};
|
||||
|
||||
themes = {
|
||||
cursor = {
|
||||
enable = false;
|
||||
package = pkgs.bibata-cursors;
|
||||
name = "Bibata-Modern-Classic";
|
||||
size = 24;
|
||||
};
|
||||
gtk = {
|
||||
enable = true;
|
||||
package = pkgs.catppuccin-gtk;
|
||||
name = "Catppuccin-Mocha-Standard-Green-Dark";
|
||||
variant = "mocha";
|
||||
accentColour = "green";
|
||||
iconTheme = {
|
||||
name = "Papirus-Dark";
|
||||
package = pkgs.catppuccin-papirus-folders;
|
||||
};
|
||||
};
|
||||
qt = {
|
||||
enable = true;
|
||||
package = pkgs.catppuccin-kde;
|
||||
name = "Catppuccin-Mocha-Dark";
|
||||
variant = "mocha";
|
||||
accentColour = "green";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
console.keyMap = "sg";
|
||||
|
||||
# services.flatpak.enable = true;
|
||||
services = {
|
||||
twingate.enable = true;
|
||||
pcscd.enable = true;
|
||||
};
|
||||
|
||||
security.pam.yubico = {
|
||||
enable = true;
|
||||
debug = false;
|
||||
mode = "challenge-response";
|
||||
id = [ "28067815" "28067816" ];
|
||||
};
|
||||
|
||||
programs = {
|
||||
java = {
|
||||
enable = true;
|
||||
package = pkgs.jdk21_headless;
|
||||
};
|
||||
};
|
||||
|
||||
# SSH AGENT
|
||||
programs.ssh.startAgent = true;
|
||||
services.gnome3.gnome-keyring.enable = false;
|
||||
|
||||
system.stateVersion = "23.11";
|
||||
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
{
|
||||
modules = {
|
||||
other = {
|
||||
system = {
|
||||
hostname = "dyonisos";
|
||||
username = "lars";
|
||||
};
|
||||
};
|
||||
hyprland = {
|
||||
enable = true;
|
||||
monitor = [",preferred,auto,2"];
|
||||
wallpaper = "wallpaper/wave.jpg";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
_: {
|
||||
imports = [
|
||||
../.
|
||||
./programs.nix
|
||||
./configuration.nix
|
||||
./hardware-configuration.nix
|
||||
./profile.nix
|
||||
];
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ 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 = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/bca69c91-6f66-4b21-b90e-15b4bc21a405";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/8683-FD07";
|
||||
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.enp1s0f0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
_: {
|
||||
imports = [
|
||||
../../../options/boot/grub-boot.nix
|
||||
../../../options/desktop/fonts.nix
|
||||
../../../options/common/networking.nix
|
||||
../../../options/common/pin-registry.nix
|
||||
../../../options/common/preserve-system.nix
|
||||
../../../options/common/bluetooth.nix
|
||||
];
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
let
|
||||
username = config.modules.other.system.username;
|
||||
in {
|
||||
home-manager.users.${username} = {
|
||||
home.packages = let
|
||||
fenix = inputs.fenix.packages.${pkgs.system};
|
||||
|
||||
in with pkgs; [
|
||||
];
|
||||
};
|
||||
}
|
|
@ -1,159 +0,0 @@
|
|||
{ config, lib, inputs, pkgs, ... }:
|
||||
with lib; let
|
||||
username = config.modules.other.system.username;
|
||||
cfg = config.modules.hyprland;
|
||||
gitPath = config.modules.other.system.gitPath;
|
||||
in {
|
||||
imports = [
|
||||
./waybar.nix
|
||||
];
|
||||
|
||||
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);
|
||||
};
|
||||
extra = mkOption {
|
||||
description = "any extra configuration to add to the hyprland config file";
|
||||
default = {};
|
||||
type = types.attrs;
|
||||
};
|
||||
wallpaper = mkOption {
|
||||
description = "wallpaper relative from assets";
|
||||
default = "";
|
||||
type = types.str;
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.sessionVariables = mkIf cfg.nvidia.enable {
|
||||
LIBVA_DRIVER_NAME = "nvidia";
|
||||
XDG_SESSION_TYPE = "wayland";
|
||||
GBM_BACKEND = "nvidia-drm";
|
||||
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
|
||||
WLR_NO_HARDWARE_CURSORS = "1";
|
||||
SDL_VIDEODRIVER = "wayland";
|
||||
_JAVA_AWT_WM_NONREPARENTING = "1";
|
||||
CLUTTER_BACKEND = "wayland";
|
||||
WLR_RENDERER = "vulkan";
|
||||
XDG_CURRENT_DESKTOP = "Hyprland";
|
||||
XDG_SESSION_DESKTOP = "Hyprland";
|
||||
GTK_USE_PORTAL = "1";
|
||||
NIXOS_XDG_OPEN_USE_PORTAL = "1";
|
||||
NIXOS_OZONE_WL = "1";
|
||||
};
|
||||
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
xwayland.enable = true;
|
||||
};
|
||||
|
||||
xdg.portal.wlr.enable = true;
|
||||
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
||||
xdg.portal.config.common.default = "gtk";
|
||||
|
||||
xdg.portal.lxqt.enable = false;
|
||||
systemd.user.services.xdg-desktop-portal-gnome.enable = false;
|
||||
|
||||
home-manager.users.${username} = {
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
settings = lib.mkMerge [{
|
||||
# Monitor config
|
||||
monitor = cfg.monitor;
|
||||
|
||||
"$mod" = "SUPER";
|
||||
|
||||
input = {
|
||||
kb_layout = "ch";
|
||||
};
|
||||
|
||||
bezier = [
|
||||
"wind, 0.05, 0.9, 0.1, 1.05"
|
||||
"winIn, 0.1, 1.1, 0.1, 1.1"
|
||||
"winOut, 0.3, -0.3, 0, 1"
|
||||
"liner, 1, 1, 1, 1"
|
||||
];
|
||||
|
||||
animation = [
|
||||
"windows, 1, 6, wind, slide"
|
||||
"windowsIn, 1, 6, winIn, slide"
|
||||
"windowsOut, 1, 5, winOut, slide"
|
||||
"windowsMove, 1, 5, wind, slide"
|
||||
"border, 1, 1, liner"
|
||||
"borderangle, 1, 30, liner, loop"
|
||||
"fade, 1, 10, default"
|
||||
"workspaces, 1, 5, wind"
|
||||
];
|
||||
|
||||
exec-once = [
|
||||
"waybar"
|
||||
"swww init & swww img ${gitPath}/${cfg.wallpaper}"
|
||||
"keepassxc"
|
||||
"nextcloud"
|
||||
# "element-desktop --ozone-platform=wayland --enable-features=UseOzonePlatform --enable-features=WaylandWindowDecorations --enable-features=WebRTCPipeWireCpaturer --disable-gpu"
|
||||
];
|
||||
|
||||
bind = [
|
||||
"$mod, Q, killactive"
|
||||
"$mod, return, exec, alacritty"
|
||||
"$mod SHIFT, return, exec, firefox"
|
||||
"$mod SHIFT, m, exit"
|
||||
", F11, exec, pamixer -d 2"
|
||||
", F12, exec, pamixer -i 2"
|
||||
"$mod, d, exec, wofi --show drun"
|
||||
|
||||
# Application
|
||||
"$mod SHIFT, c, exec, code --enable-features=UseOzonePlatform --ozone-platform=wayland --disable-gpu"
|
||||
"$mod, o, exec, obsidian --ozone-platform=wayland --enable-features=UseOzonePlatform --enable-features=WaylandWindowDecorations --enable-features=WebRTCPipeWireCpaturer --disable-gpu"
|
||||
"$mod SHIFT, D, exec, webcord --ozone-platform=wayland --enable-features=UseOzonePlatform --enable-features=WaylandWindowDecorations --enable-features=WebRTCPipeWireCpaturer --disable-gpu"
|
||||
"$mod SHIFT, L, exec, element-desktop --ozone-platform=wayland --enable-features=UseOzonePlatform --enable-features=WaylandWindowDecorations --enable-features=WebRTCPipeWireCpaturer --disable-gpu"
|
||||
"$mod, v, exec, vivaldi --ozone-platform=wayland --enable-features=UseOzonePlatform --enable-features=WaylandWindowDecorations --enable-features=WebRTCPipeWireCpaturer --disable-gpu"
|
||||
|
||||
# Monitor management
|
||||
"$mod SHIFT, k, movecurrentworkspacetomonitor, DP-2"
|
||||
"$mod SHIFT, j, movecurrentworkspacetomonitor, DP-1"
|
||||
|
||||
# Window Management
|
||||
"$mod, left, movefocus, l"
|
||||
"$mod, right, movefocus, r"
|
||||
"$mod, up, movefocus, u"
|
||||
"$mod, down, movefocus, d"
|
||||
"$mod, F, fullscreen"
|
||||
|
||||
# Special Workspaces
|
||||
"$mod SHIFT, F, movetoworkspacesilent, special"
|
||||
"$mod, s, togglespecialworkspace,"
|
||||
|
||||
# Screenshot
|
||||
"$mod SHIFT, s, exec, grim -g \"$(slurp -d)\" - | wl-copy"
|
||||
|
||||
]
|
||||
++ (
|
||||
builtins.concatLists (builtins.genList (
|
||||
x: let
|
||||
ws = let
|
||||
c = (x + 1) / 10;
|
||||
in
|
||||
builtins.toString (x+1-(c * 10));
|
||||
in [
|
||||
"$mod, ${ws}, workspace, ${toString (x+1)}"
|
||||
"$mod SHIFT, ${ws}, movetoworkspace, ${toString(x + 1)}"
|
||||
]
|
||||
)
|
||||
10)
|
||||
);
|
||||
# Mouse movement
|
||||
bindm = [
|
||||
"$mod, mouse:272, movewindow"
|
||||
"$mod, mouse:273, resizewindow"
|
||||
];
|
||||
} cfg.extra];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
|
@ -1,52 +0,0 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
{
|
||||
modules = {
|
||||
other = {
|
||||
system = {
|
||||
hostname = "kronos";
|
||||
username = "lars";
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
alacritty = {
|
||||
opacity = 0.8;
|
||||
blur = true;
|
||||
};
|
||||
|
||||
steam = {
|
||||
enable = true;
|
||||
gamescope = true;
|
||||
};
|
||||
|
||||
minecraft = {
|
||||
enable = true;
|
||||
wayland = true;
|
||||
};
|
||||
};
|
||||
|
||||
hyprland = {
|
||||
enable = true;
|
||||
nvidia.enable = true;
|
||||
monitor = [
|
||||
"DP-2,2560x1440@144,0x0,1"
|
||||
"DP-1,1920x1080@60,2560x0,1"
|
||||
];
|
||||
extra = {
|
||||
exec-once = [
|
||||
"hyprctl dispatch moveworkspacetomonitor 1 DP-2"
|
||||
];
|
||||
};
|
||||
wallpaper = "wallpaper/wave.jpg";
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
flatpak.enable = true;
|
||||
getty.autologinUser = "lars";
|
||||
openssh = {
|
||||
enable = true;
|
||||
passwordAuthentication = false;
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
_: {
|
||||
imports = [
|
||||
../.
|
||||
./programs.nix
|
||||
./configuration.nix
|
||||
./hardware-configuration.nix
|
||||
./profile.nix
|
||||
];
|
||||
}
|
|
@ -1,39 +0,0 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/4d68fd1c-bfcf-44b8-b9a2-c27be0a4f4c3";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/0461-D6B4";
|
||||
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.enp6s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp7s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp5s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
_: {
|
||||
imports = [
|
||||
../../../options/boot/grub-boot.nix
|
||||
../../../options/desktop/fonts.nix
|
||||
../../../options/common/networking.nix
|
||||
../../../options/common/gpu/nvidia_wayland.nix
|
||||
../../../options/common/pin-registry.nix
|
||||
../../../options/common/preserve-system.nix
|
||||
../../../options/common/bluetooth.nix
|
||||
];
|
||||
}
|
|
@ -1,29 +0,0 @@
|
|||
{ config, lib, pkgs, inputs, ... }:
|
||||
let
|
||||
username = config.modules.other.system.username;
|
||||
newer_egl-wayland = self: super: {
|
||||
egl-wayland = super.xwayland.overrideAttrs (prev: {
|
||||
# version = "23.2.6-HEAD";
|
||||
src = pkgs.fetchFromGitHab {
|
||||
# domain = "gitlab.freedesktop.org";
|
||||
owner = "NVIDIA";
|
||||
repo = "egl-wayland";
|
||||
rev = "067e43d0d4af82e4ea3fdc8ce476e6a24f69956f";
|
||||
sha256 = "93DzgA8nXVodDvllCOIuTtOYWpUdXwzPIGpi2SUSNqo=";
|
||||
};
|
||||
});
|
||||
};
|
||||
in
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
egl-wayland
|
||||
];
|
||||
home-manager.users.${username} = {
|
||||
home.packages = let
|
||||
fenix = inputs.fenix.packages.${pkgs.system};
|
||||
|
||||
in with pkgs; [
|
||||
teamspeak_client
|
||||
];
|
||||
};
|
||||
}
|
|
@ -1,72 +0,0 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
let
|
||||
username = config.modules.other.system.username;
|
||||
in {
|
||||
home-manager.users.${username} = {
|
||||
home.packages = let
|
||||
fenix = inputs.fenix.packages.${pkgs.system};
|
||||
|
||||
in with pkgs; [
|
||||
neofetch
|
||||
git
|
||||
trash-cli
|
||||
element-desktop
|
||||
steam
|
||||
libreoffice-fresh
|
||||
ventoy-full
|
||||
lazygit
|
||||
obsidian
|
||||
neofetch
|
||||
zip
|
||||
vlc
|
||||
zathura
|
||||
unzip
|
||||
gcc
|
||||
bibata-cursors
|
||||
networkmanagerapplet
|
||||
xclip
|
||||
pamixer
|
||||
pcmanfm
|
||||
ffmpeg_6-full
|
||||
(fenix.complete.withComponents [
|
||||
"cargo"
|
||||
"clippy"
|
||||
"rust-src"
|
||||
"rustc"
|
||||
"rustfmt"
|
||||
])
|
||||
polkit
|
||||
fastfetch
|
||||
alsa-utils
|
||||
gdb
|
||||
tree
|
||||
smartmontools
|
||||
python3
|
||||
rustdesk
|
||||
tmux
|
||||
kitty
|
||||
nextcloud-client
|
||||
vscode
|
||||
grim
|
||||
slurp
|
||||
wl-clipboard
|
||||
pavucontrol
|
||||
wofi
|
||||
dolphin
|
||||
xdg-utils # xdg-mime script
|
||||
webcord
|
||||
element-desktop
|
||||
swww
|
||||
toipe
|
||||
keepassxc
|
||||
yubikey-personalization-gui
|
||||
yubikey-personalization
|
||||
yubioath-flutter
|
||||
fzf
|
||||
tldr
|
||||
feh
|
||||
wine
|
||||
eclipses.eclipse-java
|
||||
];
|
||||
};
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
{ config, lib, inputs, pkgs, ... }:
|
||||
with lib; let
|
||||
username = config.modules.other.system.username;
|
||||
cfg = config.modules.waybar;
|
||||
in {
|
||||
options.modules.waybar = {
|
||||
enable = mkEnableOption "hyprland";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home-manager.users.${username} = {
|
||||
programs.waybar.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,53 +0,0 @@
|
|||
{ inputs, outputs, lib, pkgs, pkg-config, ... }:
|
||||
|
||||
let
|
||||
newer_xwayland = self: super: {
|
||||
xwayland = super.xwayland.overrideAttrs (prev: {
|
||||
version = "23.2.6-HEAD";
|
||||
src = pkgs.fetchFromGitLab {
|
||||
domain = "gitlab.freedesktop.org";
|
||||
owner = "xorg";
|
||||
repo = "xserver";
|
||||
rev = "43f47e8e6597f06cf2082514c10a71965fa6d3c8";
|
||||
sha256 = "93DzgA8nXVodDvllCOIuTtOYWpUdXwzPIGpi2SUSNqo=";
|
||||
|
||||
};
|
||||
mesonFlags = [
|
||||
# (lib.mesonBool "xwayland_eglstream" true)
|
||||
(lib.mesonBool "xcsecurity" true)
|
||||
# (lib.mesonOption "default_font_path" defaultFontPath)
|
||||
# (lib.mesonOption "xkb_bin_dir" "${xkbcomp}/bin")
|
||||
# (lib.mesonOption "xkb_dir" "${xkeyboard_config}/etc/X11/xkb")
|
||||
# (lib.mesonOption "xkb_output_dir" "${placeholder "out"}/share/X11/xkb/compiled")
|
||||
# (lib.mesonBool "libunwind" withLibunwind)
|
||||
];
|
||||
});
|
||||
};
|
||||
|
||||
newer_xorgproto = self: super: {
|
||||
xorg.xorgproto = super.xorg.xorgproto.overrideAttrs (prev: {
|
||||
pname = "xorgproto";
|
||||
version = "2023.2";
|
||||
builder = ./builder.sh;
|
||||
src = pkgs.fetchurl {
|
||||
url = "mirror://xorg/individual/proto/xorgproto-2023.2.tar.xz";
|
||||
sha256 = "0b4c27aq25w1fccks49p020avf9jzh75kaq5qwnww51bp1yvq7xn";
|
||||
};
|
||||
hardeningDisable = [ "bindnow" "relro" ];
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [ pkg-config pkgs.python3 ];
|
||||
buildInputs = [ pkgs.libXt ];
|
||||
# passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
|
||||
meta = {
|
||||
pkgConfigModules = [ "applewmproto" "bigreqsproto" "compositeproto" "damageproto" "dmxproto" "dpmsproto" "dri2proto" "dri3proto" "evieproto" "fixesproto" "fontcacheproto" "fontsproto" "glproto" "inputproto" "kbproto" "lg3dproto" "presentproto" "printproto" "randrproto" "recordproto" "renderproto" "resourceproto" "scrnsaverproto" "trapproto" "videoproto" "windowswmproto" "xcalibrateproto" "xcmiscproto" "xextproto" "xf86bigfontproto" "xf86dgaproto" "xf86driproto" "xf86miscproto" "xf86rushproto" "xf86vidmodeproto" "xineramaproto" "xproto" "xproxymngproto" "xwaylandproto" ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
});
|
||||
};
|
||||
in
|
||||
{
|
||||
nixpkgs.overlays = [
|
||||
newer_xwayland
|
||||
newer_xorgproto
|
||||
];
|
||||
}
|
|
@ -23,20 +23,6 @@
|
|||
security.sudo.package = pkgs.sudo.override { withInsults = true; };
|
||||
security.polkit.enable = true;
|
||||
programs.kdeconnect.enable = true;
|
||||
programs.neovim.defaultEditor = true;
|
||||
programs.adb.enable = true;
|
||||
services.mpd = {
|
||||
enable = true;
|
||||
musicDirectory = "/home/vali/Nextcloud/Media/Music/";
|
||||
startWhenNeeded = true;
|
||||
extraConfig = ''
|
||||
audio_output {
|
||||
type "pipewire"
|
||||
name "My PipeWire Output"
|
||||
}
|
||||
'';
|
||||
};
|
||||
|
||||
modules = {
|
||||
other = {
|
||||
system = {
|
||||
|
@ -57,16 +43,12 @@
|
|||
kitty.enable = true;
|
||||
awesome.enable = true;
|
||||
newsboat.enable = true;
|
||||
emacs.enable = true;
|
||||
#git = {
|
||||
# enable = true;
|
||||
# userName = "vali"; userEmail = "valentin@kaas.cc";
|
||||
# defaultBranch = "main";
|
||||
#};
|
||||
starship.enable = false;
|
||||
zsh = {
|
||||
enable = true;
|
||||
profiling = false;
|
||||
};
|
||||
fish.enable = true;
|
||||
};
|
||||
services = {
|
||||
|
@ -84,12 +66,12 @@
|
|||
package = pkgs.gruvbox-gtk-theme;
|
||||
name = "Gruvbox-Dark-BL";
|
||||
iconTheme = {
|
||||
# name = "Papirus-Dark";
|
||||
# package = pkgs.catppuccin-papirus-folders;
|
||||
name = "Papirus-Dark";
|
||||
package = pkgs.catppuccin-papirus-folders;
|
||||
};
|
||||
};
|
||||
qt = {
|
||||
enable = false;
|
||||
enable = true;
|
||||
package = pkgs.kde-gruvbox;
|
||||
name = "Gruvbox";
|
||||
};
|
||||
|
|
|
@ -27,12 +27,12 @@ in {
|
|||
"rustfmt"
|
||||
])
|
||||
ffmpeg-full
|
||||
fftw
|
||||
flameshot
|
||||
fftw flameshot
|
||||
foot
|
||||
gcc
|
||||
gdb
|
||||
gnumake
|
||||
grc
|
||||
grimblast
|
||||
git
|
||||
httpie
|
||||
|
@ -98,5 +98,6 @@ in {
|
|||
zapzap
|
||||
zathura
|
||||
zip
|
||||
zoxide
|
||||
];
|
||||
}
|
||||
|
|
|
@ -14,11 +14,6 @@ in {
|
|||
description = "extra shell aliases";
|
||||
default = {};
|
||||
};
|
||||
profiling = mkOption {
|
||||
type = types.bool;
|
||||
description = "enable zsh profiling";
|
||||
default = false;
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
@ -36,6 +31,12 @@ in {
|
|||
enable = true;
|
||||
interactiveShellInit = "set fish_greeting";
|
||||
plugins = [
|
||||
{ name = "grc"; src = pkgs.fishPlugins.grc.src; }
|
||||
{ name = "z"; src = pkgs.fishPlugins.z.src; }
|
||||
{ name = "sponge"; src = pkgs.fishPlugins.sponge.src; }
|
||||
{ name = "done"; src = pkgs.fishPlugins.done.src; }
|
||||
{ name = "colored_man_pages"; src = pkgs.fishPlugins.colored-man-pages.src; }
|
||||
{ name = "tide"; src = pkgs.fishPlugins.tide.src; }
|
||||
];
|
||||
shellAliases = {
|
||||
|
||||
|
|
|
@ -14,8 +14,9 @@ _: {
|
|||
./kitty.nix
|
||||
./vivado.nix
|
||||
./alacritty.nix
|
||||
./firefox.nix
|
||||
./firefox.nix
|
||||
./steam.nix
|
||||
./minecraft.nix
|
||||
./emacs.nix
|
||||
];
|
||||
}
|
||||
|
|
17
modules/gui/emacs.nix
Normal file
17
modules/gui/emacs.nix
Normal file
|
@ -0,0 +1,17 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
with lib; let
|
||||
cfg = config.modules.programs.emacs;
|
||||
username = config.modules.other.system.username;
|
||||
in {
|
||||
options.modules.programs.emacs.enable = mkEnableOption "emacs";
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home-manager.users.${username} = {
|
||||
programs.emacs = {
|
||||
enable = true;
|
||||
package = pkgs.emacs;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
|
@ -47,20 +47,10 @@ in {
|
|||
gtk = {
|
||||
enable = true;
|
||||
theme = {
|
||||
inherit (cfg) name;
|
||||
package = cfg.package.override {
|
||||
size = "standard";
|
||||
accents = [ cfg.accentColour ];
|
||||
inherit (cfg) variant;
|
||||
tweaks = [ "normal" ];
|
||||
};
|
||||
inherit (cfg) name package;
|
||||
};
|
||||
iconTheme = {
|
||||
inherit (cfg.iconTheme) name;
|
||||
package = cfg.iconTheme.package.override {
|
||||
accent = cfg.accentColour;
|
||||
flavor = cfg.variant;
|
||||
};
|
||||
inherit (cfg.iconTheme) name package;
|
||||
};
|
||||
gtk2 = {
|
||||
configLocation = "${hmCfg.xdg.configHome}/gtk-2.0/gtkrc";
|
||||
|
|
|
@ -33,16 +33,11 @@ in {
|
|||
};
|
||||
|
||||
home-manager.users.${username} = {
|
||||
# thanks raf :3 https://github.com/NotAShelf/nyx/blob/main/homes/notashelf/themes/qt.nix
|
||||
qt = {
|
||||
enable = true;
|
||||
platformTheme = "qtct";
|
||||
platformTheme.name = "qtct";
|
||||
style = {
|
||||
inherit (cfg) name;
|
||||
package = cfg.package.override {
|
||||
flavour = [ cfg.variant ];
|
||||
accents = [ cfg.accentColour ];
|
||||
};
|
||||
inherit (cfg) name package;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
media_player = "mpv.desktop";
|
||||
image_viewer = "imv.desktop";
|
||||
text_editor = "nvim.desktop";
|
||||
terminal = "alacritty.desktop";
|
||||
terminal = "kitty.desktop";
|
||||
in {
|
||||
|
||||
/* environment.sessionVariables = {
|
||||
|
@ -31,17 +31,11 @@ in {
|
|||
XAUTHORITY = "\$XDG_RUNTIME_DIR/Xauthority";
|
||||
};
|
||||
*/
|
||||
modules.programs.zsh.extraAliases = {
|
||||
gdb = "gdb -n -x ${hmCfg.xdg.configHome}/gdb/init";
|
||||
pidgin = "pidgin --config=${hmCfg.xdg.dataHome}/purple";
|
||||
svn = "svn --config-dir ${hmCfg.xdg.configHome}/subversion";
|
||||
wget = "wget --hsts-file=\"${hmCfg.xdg.dataHome}/wget-hsts\"";
|
||||
};
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
extraPortals = with pkgs; [
|
||||
xdg-desktop-portal-gtk
|
||||
];
|
||||
config = {
|
||||
common.default = "gtk";
|
||||
};
|
||||
};
|
||||
environment.sessionVariables = {
|
||||
TERMINAL = "${terminal}";
|
||||
|
@ -55,25 +49,6 @@ in {
|
|||
init-module=${hmCfg.xdg.configHome}/npm/config/npm-init.js
|
||||
'';
|
||||
|
||||
xdg.configFile."python/pythonrc".text = ''
|
||||
import os
|
||||
import atexit
|
||||
import readline
|
||||
|
||||
history = os.path.join(os.environ['XDG_CACHE_HOME'], 'python_history')
|
||||
try:
|
||||
readline.read_history_file(history)
|
||||
except OSError:
|
||||
pass
|
||||
|
||||
def write_history():
|
||||
try:
|
||||
readline.write_history_file(history)
|
||||
except OSError:
|
||||
pass
|
||||
|
||||
atexit.register(write_history)
|
||||
'';
|
||||
xdg = {
|
||||
cacheHome = "${hmCfg.home.homeDirectory}/.cache";
|
||||
configHome = "${hmCfg.home.homeDirectory}/.config";
|
||||
|
@ -91,7 +66,6 @@ in {
|
|||
"message/rfc822" = [ mail_client ];
|
||||
"x-scheme-handler/mid" = [ mail_client ];
|
||||
"inode/directory" = [ file_manager ];
|
||||
"x-scheme-handler/heroic" = [ "heroic.desktop" ];
|
||||
"audio/mp3" = [ media_player ];
|
||||
"audio/ogg" = [ media_player ];
|
||||
"audio/mpeg" = [ media_player ];
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue