removed other peeps

This commit is contained in:
Charlie Root 2024-04-29 22:18:58 +02:00
commit f1582a353b
31 changed files with 40 additions and 937 deletions

View file

@ -7,7 +7,6 @@
}; };
inputs = { inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-wayland.url = "github:nix-community/nixpkgs-wayland";
anyrun = { anyrun = {
url = "github:Kirottu/anyrun"; url = "github:Kirottu/anyrun";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";

View file

@ -3,7 +3,6 @@ let
inherit (inputs) self; inherit (inputs) self;
inherit (self) lib; inherit (self) lib;
in { in {
# Vali
mars = lib.nixosSystem { mars = lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = { inherit lib inputs self; }; 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
];
};
} }

View file

@ -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";
};
};
};
};
};
}

View file

@ -1,6 +0,0 @@
_: {
imports = [
./alacritty.nix
];
}

View file

@ -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

View file

@ -1,8 +0,0 @@
_: {
imports = [
../../../options/desktop/monitors.nix
./configuration.nix
./hardware-configuration.nix
# ./packages.nix
];
}

View file

@ -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;
}

View file

@ -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"];
}

View file

@ -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";
};
};
}

View file

@ -1,9 +0,0 @@
_: {
imports = [
../.
./programs.nix
./configuration.nix
./hardware-configuration.nix
./profile.nix
];
}

View file

@ -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;
}

View file

@ -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
];
}

View file

@ -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; [
];
};
}

View file

@ -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];
};
};
};
}

View file

@ -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;
};
};
}

View file

@ -1,9 +0,0 @@
_: {
imports = [
../.
./programs.nix
./configuration.nix
./hardware-configuration.nix
./profile.nix
];
}

View file

@ -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;
}

View file

@ -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
];
}

View file

@ -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
];
};
}

View file

@ -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
];
};
}

View file

@ -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;
};
};
}

View file

@ -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
];
}

View file

@ -23,20 +23,6 @@
security.sudo.package = pkgs.sudo.override { withInsults = true; }; security.sudo.package = pkgs.sudo.override { withInsults = true; };
security.polkit.enable = true; security.polkit.enable = true;
programs.kdeconnect.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 = { modules = {
other = { other = {
system = { system = {
@ -57,16 +43,12 @@
kitty.enable = true; kitty.enable = true;
awesome.enable = true; awesome.enable = true;
newsboat.enable = true; newsboat.enable = true;
emacs.enable = true;
#git = { #git = {
# enable = true; # enable = true;
# userName = "vali"; userEmail = "valentin@kaas.cc"; # userName = "vali"; userEmail = "valentin@kaas.cc";
# defaultBranch = "main"; # defaultBranch = "main";
#}; #};
starship.enable = false;
zsh = {
enable = true;
profiling = false;
};
fish.enable = true; fish.enable = true;
}; };
services = { services = {
@ -84,12 +66,12 @@
package = pkgs.gruvbox-gtk-theme; package = pkgs.gruvbox-gtk-theme;
name = "Gruvbox-Dark-BL"; name = "Gruvbox-Dark-BL";
iconTheme = { iconTheme = {
# name = "Papirus-Dark"; name = "Papirus-Dark";
# package = pkgs.catppuccin-papirus-folders; package = pkgs.catppuccin-papirus-folders;
}; };
}; };
qt = { qt = {
enable = false; enable = true;
package = pkgs.kde-gruvbox; package = pkgs.kde-gruvbox;
name = "Gruvbox"; name = "Gruvbox";
}; };

View file

@ -27,12 +27,12 @@ in {
"rustfmt" "rustfmt"
]) ])
ffmpeg-full ffmpeg-full
fftw fftw flameshot
flameshot
foot foot
gcc gcc
gdb gdb
gnumake gnumake
grc
grimblast grimblast
git git
httpie httpie
@ -98,5 +98,6 @@ in {
zapzap zapzap
zathura zathura
zip zip
zoxide
]; ];
} }

View file

@ -14,11 +14,6 @@ in {
description = "extra shell aliases"; description = "extra shell aliases";
default = {}; default = {};
}; };
profiling = mkOption {
type = types.bool;
description = "enable zsh profiling";
default = false;
};
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
@ -36,6 +31,12 @@ in {
enable = true; enable = true;
interactiveShellInit = "set fish_greeting"; interactiveShellInit = "set fish_greeting";
plugins = [ 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 = { shellAliases = {

View file

@ -14,8 +14,9 @@ _: {
./kitty.nix ./kitty.nix
./vivado.nix ./vivado.nix
./alacritty.nix ./alacritty.nix
./firefox.nix ./firefox.nix
./steam.nix ./steam.nix
./minecraft.nix ./minecraft.nix
./emacs.nix
]; ];
} }

17
modules/gui/emacs.nix Normal file
View 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;
};
};
};
}

View file

@ -47,20 +47,10 @@ in {
gtk = { gtk = {
enable = true; enable = true;
theme = { theme = {
inherit (cfg) name; inherit (cfg) name package;
package = cfg.package.override {
size = "standard";
accents = [ cfg.accentColour ];
inherit (cfg) variant;
tweaks = [ "normal" ];
};
}; };
iconTheme = { iconTheme = {
inherit (cfg.iconTheme) name; inherit (cfg.iconTheme) name package;
package = cfg.iconTheme.package.override {
accent = cfg.accentColour;
flavor = cfg.variant;
};
}; };
gtk2 = { gtk2 = {
configLocation = "${hmCfg.xdg.configHome}/gtk-2.0/gtkrc"; configLocation = "${hmCfg.xdg.configHome}/gtk-2.0/gtkrc";

View file

@ -33,16 +33,11 @@ in {
}; };
home-manager.users.${username} = { home-manager.users.${username} = {
# thanks raf :3 https://github.com/NotAShelf/nyx/blob/main/homes/notashelf/themes/qt.nix
qt = { qt = {
enable = true; enable = true;
platformTheme = "qtct"; platformTheme.name = "qtct";
style = { style = {
inherit (cfg) name; inherit (cfg) name package;
package = cfg.package.override {
flavour = [ cfg.variant ];
accents = [ cfg.accentColour ];
};
}; };
}; };

View file

@ -11,7 +11,7 @@
media_player = "mpv.desktop"; media_player = "mpv.desktop";
image_viewer = "imv.desktop"; image_viewer = "imv.desktop";
text_editor = "nvim.desktop"; text_editor = "nvim.desktop";
terminal = "alacritty.desktop"; terminal = "kitty.desktop";
in { in {
/* environment.sessionVariables = { /* environment.sessionVariables = {
@ -31,17 +31,11 @@ in {
XAUTHORITY = "\$XDG_RUNTIME_DIR/Xauthority"; 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 = { xdg.portal = {
enable = true; enable = true;
extraPortals = with pkgs; [ config = {
xdg-desktop-portal-gtk common.default = "gtk";
]; };
}; };
environment.sessionVariables = { environment.sessionVariables = {
TERMINAL = "${terminal}"; TERMINAL = "${terminal}";
@ -55,25 +49,6 @@ in {
init-module=${hmCfg.xdg.configHome}/npm/config/npm-init.js 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 = { xdg = {
cacheHome = "${hmCfg.home.homeDirectory}/.cache"; cacheHome = "${hmCfg.home.homeDirectory}/.cache";
configHome = "${hmCfg.home.homeDirectory}/.config"; configHome = "${hmCfg.home.homeDirectory}/.config";
@ -91,7 +66,6 @@ in {
"message/rfc822" = [ mail_client ]; "message/rfc822" = [ mail_client ];
"x-scheme-handler/mid" = [ mail_client ]; "x-scheme-handler/mid" = [ mail_client ];
"inode/directory" = [ file_manager ]; "inode/directory" = [ file_manager ];
"x-scheme-handler/heroic" = [ "heroic.desktop" ];
"audio/mp3" = [ media_player ]; "audio/mp3" = [ media_player ];
"audio/ogg" = [ media_player ]; "audio/ogg" = [ media_player ];
"audio/mpeg" = [ media_player ]; "audio/mpeg" = [ media_player ];