Merge pull request 'flake-parts' (#1) from flake-parts into main
Reviewed-on: #1
This commit is contained in:
commit
409b6948c3
60 changed files with 1045 additions and 1126 deletions
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
result
|
||||||
|
|
@ -1,127 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
|
|
||||||
{
|
|
||||||
services.logind.settings.Login.LidSwitch = "suspend-then-hibernate";
|
|
||||||
systemd.sleep.settings.Sleep = {
|
|
||||||
HibernateDelaySec = "1h";
|
|
||||||
SuspendState = "mem";
|
|
||||||
};
|
|
||||||
boot.resumeDevice = "/dev/disk/by-label/swap";
|
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
|
||||||
boot.loader.limine = {
|
|
||||||
enable = true;
|
|
||||||
extraEntries = lib.mkIf (config.networking.hostName == "nerv") ''
|
|
||||||
/Windows 11
|
|
||||||
protocol: efi_boot_entry
|
|
||||||
entry: Windows Boot Manager
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
|
||||||
networking.networkmanager.enable = true;
|
|
||||||
time.timeZone = "Europe/Berlin";
|
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
|
||||||
i18n.extraLocaleSettings = {
|
|
||||||
LC_ADDRESS = "de_DE.UTF-8";
|
|
||||||
LC_IDENTIFICATION = "de_DE.UTF-8";
|
|
||||||
LC_MEASUREMENT = "de_DE.UTF-8";
|
|
||||||
LC_MONETARY = "de_DE.UTF-8";
|
|
||||||
LC_NAME = "de_DE.UTF-8";
|
|
||||||
LC_NUMERIC = "de_DE.UTF-8";
|
|
||||||
LC_PAPER = "de_DE.UTF-8";
|
|
||||||
LC_TELEPHONE = "de_DE.UTF-8";
|
|
||||||
LC_TIME = "de_DE.UTF-8";
|
|
||||||
};
|
|
||||||
security = {
|
|
||||||
rtkit.enable = true;
|
|
||||||
polkit.enable = true; # polkit
|
|
||||||
polkit.enablePkexecWrapper = true;
|
|
||||||
};
|
|
||||||
users.users."lucy" = {
|
|
||||||
isNormalUser = true;
|
|
||||||
description = "lucy";
|
|
||||||
shell = pkgs.zsh;
|
|
||||||
extraGroups = [
|
|
||||||
"networkmanager"
|
|
||||||
"wheel"
|
|
||||||
];
|
|
||||||
packages = with pkgs; [
|
|
||||||
stow
|
|
||||||
ufetch
|
|
||||||
rbw
|
|
||||||
emacs-pgtk
|
|
||||||
tinty
|
|
||||||
pinentry-gnome3
|
|
||||||
git
|
|
||||||
nixd
|
|
||||||
nixfmt
|
|
||||||
xournalpp
|
|
||||||
rnote
|
|
||||||
btop
|
|
||||||
chromium
|
|
||||||
fuzzel
|
|
||||||
quickshell
|
|
||||||
wl-clipboard
|
|
||||||
adw-gtk3
|
|
||||||
papirus-icon-theme
|
|
||||||
apple-cursor
|
|
||||||
polkit_gnome
|
|
||||||
xwayland-satellite
|
|
||||||
nemo
|
|
||||||
libwacom
|
|
||||||
devenv
|
|
||||||
kdePackages.qt6ct
|
|
||||||
gcc
|
|
||||||
clang-tools
|
|
||||||
clang
|
|
||||||
gdb
|
|
||||||
gnumake
|
|
||||||
libreoffice-stable
|
|
||||||
ripgrep
|
|
||||||
jq
|
|
||||||
nmgui
|
|
||||||
kdePackages.qtdeclarative
|
|
||||||
ghostty
|
|
||||||
rnote
|
|
||||||
gsettings-desktop-schemas
|
|
||||||
glib
|
|
||||||
];
|
|
||||||
};
|
|
||||||
environment.sessionVariables = {
|
|
||||||
XCURSOR_THEME = "macOS";
|
|
||||||
XCURSOR_SIZE = "24";
|
|
||||||
QT_QPA_PLATFORMTHEME = "qt6ct";
|
|
||||||
|
|
||||||
};
|
|
||||||
fonts.packages = with pkgs; [
|
|
||||||
jetbrains-mono
|
|
||||||
nerd-fonts.jetbrains-mono
|
|
||||||
noto-fonts
|
|
||||||
noto-fonts-cjk-sans
|
|
||||||
noto-fonts-color-emoji
|
|
||||||
inter
|
|
||||||
];
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
|
||||||
nixpkgs.overlays = [
|
|
||||||
(final: prev: {
|
|
||||||
inherit (prev.lixPackageSets.stable)
|
|
||||||
nixpkgs-review
|
|
||||||
nix-eval-jobs
|
|
||||||
nix-fast-build
|
|
||||||
colmena
|
|
||||||
;
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
nix.package = pkgs.lixPackageSets.stable.lix;
|
|
||||||
nix.settings.experimental-features = [
|
|
||||||
"nix-command"
|
|
||||||
"flakes"
|
|
||||||
];
|
|
||||||
system.stateVersion = "26.05"; # Did you read the comment?
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -1,104 +0,0 @@
|
||||||
;; -*- lexical-binding: t; -*-
|
|
||||||
(setq make-backup-files nil)
|
|
||||||
|
|
||||||
(add-to-list 'default-frame-alist '(font . "JetBrainsMono Nerd Font Mono-14"))
|
|
||||||
|
|
||||||
(require 'package)
|
|
||||||
(add-to-list 'package-archives
|
|
||||||
'("melpa-snapshots"
|
|
||||||
.
|
|
||||||
"https://snapshots.melpa.org/packages/")
|
|
||||||
t)
|
|
||||||
;; load current selected tinty theme
|
|
||||||
(use-package base16-theme :ensure t)
|
|
||||||
(load-theme
|
|
||||||
(intern
|
|
||||||
(string-trim
|
|
||||||
(shell-command-to-string
|
|
||||||
"tinty current -d /home/lucy/.local/share/tinted-theming/tinty/")))
|
|
||||||
t)
|
|
||||||
|
|
||||||
|
|
||||||
;; add packages
|
|
||||||
(use-package org-view-mode :ensure t)
|
|
||||||
(use-package envrc :ensure t)
|
|
||||||
|
|
||||||
(use-package nix-mode :ensure t)
|
|
||||||
(use-package
|
|
||||||
eldoc-box
|
|
||||||
:ensure t
|
|
||||||
:hook (eglot-managed-mode . eldoc-box-hover-mode)
|
|
||||||
)
|
|
||||||
(use-package
|
|
||||||
elisp-autofmt
|
|
||||||
:ensure t
|
|
||||||
:commands (elisp-autofmt-buffer elisp-autofmt-mode)
|
|
||||||
:hook (emacs-lisp-mode . elisp-autofmt-mode)
|
|
||||||
:config)
|
|
||||||
(use-package portage-modes :ensure t)
|
|
||||||
(use-package
|
|
||||||
corfu
|
|
||||||
:ensure t
|
|
||||||
:init
|
|
||||||
(setq
|
|
||||||
corfu-auto t
|
|
||||||
corfu-auto-prefix 1
|
|
||||||
corfu-auto-delay 0.2)
|
|
||||||
(global-corfu-mode))
|
|
||||||
|
|
||||||
(setq tab-always-indent 'complete)
|
|
||||||
(use-package
|
|
||||||
cape
|
|
||||||
:ensure t
|
|
||||||
:bind ("C-c p" . cape-prefix-map) ;; Alternative key: M-<tab>, M-p, M-+
|
|
||||||
:init (add-hook 'completion-at-point-functions #'cape-file))
|
|
||||||
(setq corfu-auto-prefix 2)
|
|
||||||
(use-package qml-mode :ensure t)
|
|
||||||
(use-package lua-mode :ensure t)
|
|
||||||
(use-package elcord :ensure t :init (elcord-mode))
|
|
||||||
|
|
||||||
(add-to-list
|
|
||||||
'display-buffer-alist
|
|
||||||
'("\\*compilation\\*" (display-buffer-reuse-window
|
|
||||||
display-buffer-below-selected)
|
|
||||||
(window-height . 0.3)))
|
|
||||||
|
|
||||||
|
|
||||||
;; remove useless shit and set default opts
|
|
||||||
(setq org-hide-emphasis-markers t)
|
|
||||||
(setq ring-bell-function 'ignore)
|
|
||||||
(menu-bar-mode -1)
|
|
||||||
(tool-bar-mode -1)
|
|
||||||
(setq display-line-numbers-type 'relative)
|
|
||||||
(global-display-line-numbers-mode +1)
|
|
||||||
(global-tab-line-mode 1)
|
|
||||||
(scroll-bar-mode -1)
|
|
||||||
(setq inhibit-splash-screen 1)
|
|
||||||
(setq custom-file "~/.emacs.d/custom.el")
|
|
||||||
(load custom-file 'noerror)
|
|
||||||
|
|
||||||
|
|
||||||
;; lsp shit
|
|
||||||
(add-hook 'nix-mode-hook #'eglot-ensure)
|
|
||||||
(add-hook 'c-mode-hook #'eglot-ensure)
|
|
||||||
(add-hook 'qml-mode-hook #'eglot-ensure)
|
|
||||||
(with-eval-after-load 'eglot
|
|
||||||
(add-to-list 'eglot-server-programs '(nix-mode . ("nixd")))
|
|
||||||
(add-to-list 'eglot-server-programs '(qml-mode . ("qmlls"))))
|
|
||||||
|
|
||||||
;; keybindings
|
|
||||||
(keymap-global-set "C-c f" 'eglot-format)
|
|
||||||
(keymap-global-set "C-c t" 'term)
|
|
||||||
(keymap-global-set "C-c c" 'compile)
|
|
||||||
(keymap-global-set "C-c k b" 'kill-current-buffer)
|
|
||||||
(keymap-global-set "C-c k w" 'kill-buffer-and-window)
|
|
||||||
(keymap-global-set "C-c v" 'org-view-mode)
|
|
||||||
(windmove-default-keybindings)
|
|
||||||
;; replace dashes with bullets in org mode
|
|
||||||
(font-lock-add-keywords 'org-mode
|
|
||||||
'(("^ +\\([-*]\\) "
|
|
||||||
(0 (prog1 () (compose-region (match-beginning 1) (match-end 1) "•"))))))
|
|
||||||
|
|
||||||
(setq org-view-prettify-credentials nil)
|
|
||||||
(setq org-view-hide-keywords nil)
|
|
||||||
(envrc-global-mode)
|
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
include = ~/.local/share/tinted-theming/tinty/tinted-terminal-themes-foot-file.ini
|
|
||||||
pad = 15x15
|
|
||||||
font = JetBrainsMono Nerd Font:size=12
|
|
||||||
[colors-dark]
|
|
||||||
alpha = 1.0
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
[main]
|
|
||||||
include = ~/.local/share/tinted-theming/tinty/tinted-fuzzel-build-file
|
|
||||||
font = Roboto:size=14
|
|
||||||
dpi-aware = no
|
|
||||||
|
|
||||||
[border]
|
|
||||||
width = 2
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
||||||
quit-after-last-window-closed = false
|
|
||||||
theme = "tinted-theming"
|
|
||||||
font-family = "JetBrainsMono Nerd Font"
|
|
||||||
font-size = 14
|
|
||||||
window-padding-x = 15
|
|
||||||
window-padding-y = 15
|
|
||||||
shell-integration = none
|
|
||||||
confirm-close-surface = false
|
|
||||||
|
|
@ -1,47 +0,0 @@
|
||||||
# vim: ft=ghostty
|
|
||||||
# Gruvbox dark, hard theme for Ghostty
|
|
||||||
# Scheme Author: Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox)
|
|
||||||
# Scheme System: base16
|
|
||||||
# Template Author: Tinted Terminal (https://github.com/tinted-theming/tinted-terminal)
|
|
||||||
|
|
||||||
# Color palette
|
|
||||||
palette = 0=#1d2021
|
|
||||||
palette = 1=#fb4934
|
|
||||||
palette = 2=#b8bb26
|
|
||||||
palette = 3=#fabd2f
|
|
||||||
palette = 4=#83a598
|
|
||||||
palette = 5=#d3869b
|
|
||||||
palette = 6=#8ec07c
|
|
||||||
palette = 7=#d5c4a1
|
|
||||||
palette = 8=#665c54
|
|
||||||
palette = 9=#fb4934
|
|
||||||
palette = 10=#b8bb26
|
|
||||||
palette = 11=#fabd2f
|
|
||||||
palette = 12=#83a598
|
|
||||||
palette = 13=#d3869b
|
|
||||||
palette = 14=#8ec07c
|
|
||||||
palette = 15=#fbf1c7
|
|
||||||
palette = 16=#fe8019
|
|
||||||
palette = 17=#d65d0e
|
|
||||||
palette = 18=#3c3836
|
|
||||||
palette = 19=#504945
|
|
||||||
palette = 20=#bdae93
|
|
||||||
palette = 21=#ebdbb2
|
|
||||||
|
|
||||||
# Foreground & background colors
|
|
||||||
background = #1d2021
|
|
||||||
foreground = #d5c4a1
|
|
||||||
cursor-color = #d5c4a1
|
|
||||||
selection-background = #d5c4a1
|
|
||||||
selection-foreground = #504945
|
|
||||||
search-background = #fabd2f
|
|
||||||
search-foreground = #3c3836
|
|
||||||
search-selected-background = #fe8019
|
|
||||||
search-selected-foreground = #3c3836
|
|
||||||
|
|
||||||
# Set `macos-icon = custom-style` in your main configuration file to enable theming of the app icon.
|
|
||||||
#
|
|
||||||
# Set the ghost color to the lightest foreground:
|
|
||||||
macos-icon-ghost-color = #fbf1c7
|
|
||||||
# Replace the official icon's blue background with the designated bright blue color:
|
|
||||||
macos-icon-screen-color = #83a598
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
[Settings]
|
|
||||||
gtk-theme-name=adw-gtk3-dark
|
|
||||||
gtk-icon-theme-name=Papirus-Dark
|
|
||||||
gtk-font-name=Adwaita Sans 11
|
|
||||||
gtk-cursor-theme-name=Adwaita
|
|
||||||
gtk-cursor-theme-size=24
|
|
||||||
gtk-application-prefer-dark-theme=1
|
|
||||||
|
|
@ -1,156 +0,0 @@
|
||||||
prefer-no-csd
|
|
||||||
hotkey-overlay {
|
|
||||||
skip-at-startup
|
|
||||||
}
|
|
||||||
|
|
||||||
environment {
|
|
||||||
GTK_THEME "adw-gtk3-dark"
|
|
||||||
XDG_CURRENT_DESKTOP "niri"
|
|
||||||
XDG_SESSION_TYPE "wayland"
|
|
||||||
XDG_SESSION_DESKTOP "niri"
|
|
||||||
QT_QPA_PLATFORM "wayland;xcb"
|
|
||||||
OZONE_PLATFORM "wayland"
|
|
||||||
ELECTRON_OZONE_PLATFORM_HINT "auto"
|
|
||||||
}
|
|
||||||
cursor {
|
|
||||||
xcursor-size 24
|
|
||||||
xcursor-theme "macOS"
|
|
||||||
}
|
|
||||||
input {
|
|
||||||
keyboard {
|
|
||||||
xkb {
|
|
||||||
layout "eu"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
touchpad {
|
|
||||||
tap
|
|
||||||
natural-scroll
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
mouse {
|
|
||||||
accel-speed -0.4
|
|
||||||
accel-profile "flat"
|
|
||||||
}
|
|
||||||
focus-follows-mouse max-scroll-amount="20%"
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
output "PNP(BNQ) BenQ EX2710Q K6R04023019" {
|
|
||||||
mode "2560x1440@165.002"
|
|
||||||
scale 1
|
|
||||||
transform "normal"
|
|
||||||
position x=1920 y=0
|
|
||||||
}
|
|
||||||
output "Dell Inc. DELL P2317H 9KFDW6C533DB" {
|
|
||||||
position x=0 y=0
|
|
||||||
}
|
|
||||||
|
|
||||||
output "eDP-1" {
|
|
||||||
scale 1
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
layout {
|
|
||||||
gaps 16
|
|
||||||
center-focused-column "never"
|
|
||||||
default-column-width { proportion 0.6; }
|
|
||||||
focus-ring {
|
|
||||||
off
|
|
||||||
}
|
|
||||||
border {
|
|
||||||
width 2
|
|
||||||
active-color "#ffc87f"
|
|
||||||
inactive-color "#505050"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
spawn-at-startup "qs"
|
|
||||||
screenshot-path null
|
|
||||||
animations {}
|
|
||||||
window-rule {
|
|
||||||
geometry-corner-radius 16
|
|
||||||
clip-to-geometry true
|
|
||||||
}
|
|
||||||
|
|
||||||
binds {
|
|
||||||
Mod+return { spawn "foot"; }
|
|
||||||
Mod+space { spawn "fuzzel"; }
|
|
||||||
Mod+e { spawn "nautilus"; }
|
|
||||||
Alt+MouseRight { }
|
|
||||||
|
|
||||||
XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; }
|
|
||||||
XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; }
|
|
||||||
XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; }
|
|
||||||
XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; }
|
|
||||||
|
|
||||||
XF86AudioPlay allow-when-locked=true { spawn-sh "playerctl play-pause"; }
|
|
||||||
XF86AudioStop allow-when-locked=true { spawn-sh "playerctl stop"; }
|
|
||||||
XF86AudioPrev allow-when-locked=true { spawn-sh "playerctl previous"; }
|
|
||||||
XF86AudioNext allow-when-locked=true { spawn-sh "playerctl next"; }
|
|
||||||
|
|
||||||
XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; }
|
|
||||||
XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; }
|
|
||||||
|
|
||||||
Mod+O repeat=false { toggle-overview; }
|
|
||||||
Mod+Q repeat=false { close-window; }
|
|
||||||
|
|
||||||
Mod+Left { focus-column-left; }
|
|
||||||
Mod+Down { focus-window-down; }
|
|
||||||
Mod+Up { focus-window-up; }
|
|
||||||
Mod+Right { focus-column-right; }
|
|
||||||
Mod+H { focus-column-left; }
|
|
||||||
Mod+J { focus-window-down; }
|
|
||||||
Mod+K { focus-window-up; }
|
|
||||||
Mod+L { focus-column-right; }
|
|
||||||
Mod+Ctrl+Left { move-column-left; }
|
|
||||||
Mod+Ctrl+Down { move-window-down; }
|
|
||||||
Mod+Ctrl+Up { move-window-up; }
|
|
||||||
Mod+Ctrl+Right { move-column-right; }
|
|
||||||
Mod+Ctrl+H { move-column-left; }
|
|
||||||
Mod+Ctrl+J { move-window-down; }
|
|
||||||
Mod+Ctrl+K { move-window-up; }
|
|
||||||
mod+ctrl+l { move-column-right; }
|
|
||||||
|
|
||||||
Mod+comma { focus-monitor-left; }
|
|
||||||
Mod+period { focus-monitor-right; }
|
|
||||||
|
|
||||||
Mod+Shift+comma { move-column-to-monitor-left; }
|
|
||||||
Mod+Shift+period { move-column-to-monitor-right; }
|
|
||||||
|
|
||||||
|
|
||||||
Mod+Shift+WheelScrollDown { focus-column-right; }
|
|
||||||
Mod+Shift+WheelScrollUp { focus-column-left; }
|
|
||||||
Mod+1 { focus-workspace 1; }
|
|
||||||
Mod+2 { focus-workspace 2; }
|
|
||||||
Mod+3 { focus-workspace 3; }
|
|
||||||
Mod+4 { focus-workspace 4; }
|
|
||||||
Mod+5 { focus-workspace 5; }
|
|
||||||
Mod+6 { focus-workspace 6; }
|
|
||||||
Mod+7 { focus-workspace 7; }
|
|
||||||
Mod+8 { focus-workspace 8; }
|
|
||||||
Mod+9 { focus-workspace 9; }
|
|
||||||
Mod+Shift+1 { move-column-to-workspace 1; }
|
|
||||||
Mod+Shift+2 { move-column-to-workspace 2; }
|
|
||||||
Mod+Shift+3 { move-column-to-workspace 3; }
|
|
||||||
Mod+Shift+4 { move-column-to-workspace 4; }
|
|
||||||
Mod+Shift+5 { move-column-to-workspace 5; }
|
|
||||||
Mod+Shift+6 { move-column-to-workspace 6; }
|
|
||||||
Mod+Shift+7 { move-column-to-workspace 7; }
|
|
||||||
Mod+Shift+8 { move-column-to-workspace 8; }
|
|
||||||
Mod+Shift+9 { move-column-to-workspace 9; }
|
|
||||||
|
|
||||||
Mod+BracketLeft { consume-or-expel-window-left; }
|
|
||||||
Mod+BracketRight { consume-or-expel-window-right; }
|
|
||||||
Mod+F { maximize-column; }
|
|
||||||
|
|
||||||
Mod+Minus { set-column-width "-10%"; }
|
|
||||||
Mod+Equal { set-column-width "+10%"; }
|
|
||||||
|
|
||||||
Mod+V { toggle-window-floating; }
|
|
||||||
Mod+Shift+S { screenshot; }
|
|
||||||
Alt+Shift+S { screenshot-screen; }
|
|
||||||
Alt+Ctrl+S { screenshot-window; }
|
|
||||||
Mod+Shift+q { quit; }
|
|
||||||
}
|
|
||||||
include "~/.local/share/tinted-theming/tinty/tinted-niri-themes-file.kdl"
|
|
||||||
|
|
@ -1,155 +0,0 @@
|
||||||
prefer-no-csd
|
|
||||||
hotkey-overlay {
|
|
||||||
skip-at-startup
|
|
||||||
}
|
|
||||||
|
|
||||||
environment {
|
|
||||||
GTK_THEME "adw-gtk3-dark"
|
|
||||||
XDG_CURRENT_DESKTOP "niri"
|
|
||||||
XDG_SESSION_TYPE "wayland"
|
|
||||||
XDG_SESSION_DESKTOP "niri"
|
|
||||||
QT_QPA_PLATFORM "wayland;xcb"
|
|
||||||
OZONE_PLATFORM "wayland"
|
|
||||||
ELECTRON_OZONE_PLATFORM_HINT "auto"
|
|
||||||
}
|
|
||||||
cursor {
|
|
||||||
xcursor-size 24
|
|
||||||
xcursor-theme "macOS"
|
|
||||||
}
|
|
||||||
input {
|
|
||||||
keyboard {
|
|
||||||
xkb {
|
|
||||||
layout "eu"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
touchpad {
|
|
||||||
tap
|
|
||||||
natural-scroll
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
mouse {
|
|
||||||
accel-speed -0.4
|
|
||||||
accel-profile "flat"
|
|
||||||
}
|
|
||||||
focus-follows-mouse max-scroll-amount="20%"
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
output "PNP(BNQ) BenQ EX2710Q K6R04023019" {
|
|
||||||
mode "2560x1440@165.002"
|
|
||||||
scale 1
|
|
||||||
transform "normal"
|
|
||||||
position x=1920 y=0
|
|
||||||
}
|
|
||||||
output "Dell Inc. DELL P2317H 9KFDW6C533DB" {
|
|
||||||
position x=0 y=0
|
|
||||||
}
|
|
||||||
|
|
||||||
output "eDP-1" {
|
|
||||||
scale 1
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
layout {
|
|
||||||
gaps 16
|
|
||||||
center-focused-column "never"
|
|
||||||
default-column-width { proportion 0.6; }
|
|
||||||
focus-ring {
|
|
||||||
off
|
|
||||||
}
|
|
||||||
border {
|
|
||||||
width 2
|
|
||||||
active-color "#ffc87f"
|
|
||||||
inactive-color "#505050"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
spawn-at-startup "qs"
|
|
||||||
screenshot-path null
|
|
||||||
animations {}
|
|
||||||
window-rule {
|
|
||||||
geometry-corner-radius 16
|
|
||||||
clip-to-geometry true
|
|
||||||
}
|
|
||||||
|
|
||||||
binds {
|
|
||||||
Mod+return { spawn-sh "ghostty +new-window"; }
|
|
||||||
Mod+space { spawn "fuzzel"; }
|
|
||||||
Mod+e { spawn "nautilus"; }
|
|
||||||
|
|
||||||
XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; }
|
|
||||||
XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; }
|
|
||||||
XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; }
|
|
||||||
XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; }
|
|
||||||
|
|
||||||
XF86AudioPlay allow-when-locked=true { spawn-sh "playerctl play-pause"; }
|
|
||||||
XF86AudioStop allow-when-locked=true { spawn-sh "playerctl stop"; }
|
|
||||||
XF86AudioPrev allow-when-locked=true { spawn-sh "playerctl previous"; }
|
|
||||||
XF86AudioNext allow-when-locked=true { spawn-sh "playerctl next"; }
|
|
||||||
|
|
||||||
XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; }
|
|
||||||
XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; }
|
|
||||||
|
|
||||||
Mod+O repeat=false { toggle-overview; }
|
|
||||||
Mod+Q repeat=false { close-window; }
|
|
||||||
|
|
||||||
Mod+Left { focus-column-left; }
|
|
||||||
Mod+Down { focus-window-down; }
|
|
||||||
Mod+Up { focus-window-up; }
|
|
||||||
Mod+Right { focus-column-right; }
|
|
||||||
Mod+H { focus-column-left; }
|
|
||||||
Mod+J { focus-window-down; }
|
|
||||||
Mod+K { focus-window-up; }
|
|
||||||
Mod+L { focus-column-right; }
|
|
||||||
Mod+Ctrl+Left { move-column-left; }
|
|
||||||
Mod+Ctrl+Down { move-window-down; }
|
|
||||||
Mod+Ctrl+Up { move-window-up; }
|
|
||||||
Mod+Ctrl+Right { move-column-right; }
|
|
||||||
Mod+Ctrl+H { move-column-left; }
|
|
||||||
Mod+Ctrl+J { move-window-down; }
|
|
||||||
Mod+Ctrl+K { move-window-up; }
|
|
||||||
mod+ctrl+l { move-column-right; }
|
|
||||||
|
|
||||||
Mod+comma { focus-monitor-left; }
|
|
||||||
Mod+period { focus-monitor-right; }
|
|
||||||
|
|
||||||
Mod+Shift+comma { move-column-to-monitor-left; }
|
|
||||||
Mod+Shift+period { move-column-to-monitor-right; }
|
|
||||||
|
|
||||||
|
|
||||||
Mod+Shift+WheelScrollDown { focus-column-right; }
|
|
||||||
Mod+Shift+WheelScrollUp { focus-column-left; }
|
|
||||||
Mod+1 { focus-workspace 1; }
|
|
||||||
Mod+2 { focus-workspace 2; }
|
|
||||||
Mod+3 { focus-workspace 3; }
|
|
||||||
Mod+4 { focus-workspace 4; }
|
|
||||||
Mod+5 { focus-workspace 5; }
|
|
||||||
Mod+6 { focus-workspace 6; }
|
|
||||||
Mod+7 { focus-workspace 7; }
|
|
||||||
Mod+8 { focus-workspace 8; }
|
|
||||||
Mod+9 { focus-workspace 9; }
|
|
||||||
Mod+Shift+1 { move-column-to-workspace 1; }
|
|
||||||
Mod+Shift+2 { move-column-to-workspace 2; }
|
|
||||||
Mod+Shift+3 { move-column-to-workspace 3; }
|
|
||||||
Mod+Shift+4 { move-column-to-workspace 4; }
|
|
||||||
Mod+Shift+5 { move-column-to-workspace 5; }
|
|
||||||
Mod+Shift+6 { move-column-to-workspace 6; }
|
|
||||||
Mod+Shift+7 { move-column-to-workspace 7; }
|
|
||||||
Mod+Shift+8 { move-column-to-workspace 8; }
|
|
||||||
Mod+Shift+9 { move-column-to-workspace 9; }
|
|
||||||
|
|
||||||
Mod+BracketLeft { consume-or-expel-window-left; }
|
|
||||||
Mod+BracketRight { consume-or-expel-window-right; }
|
|
||||||
Mod+F { maximize-column; }
|
|
||||||
|
|
||||||
Mod+Minus { set-column-width "-10%"; }
|
|
||||||
Mod+Equal { set-column-width "+10%"; }
|
|
||||||
|
|
||||||
Mod+V { toggle-window-floating; }
|
|
||||||
Mod+Shift+S { screenshot; }
|
|
||||||
Alt+Shift+S { screenshot-screen; }
|
|
||||||
Alt+Ctrl+S { screenshot-window; }
|
|
||||||
Mod+Shift+q { quit; }
|
|
||||||
}
|
|
||||||
include "~/.local/share/tinted-theming/tinty/tinted-niri-themes-file.kdl"
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
[ColorScheme]
|
|
||||||
# Active: text, bg, window text, button, mid, dark, text, bright text, text, base, window, shadow, highlight, highlighted text, link, visited link, etc.
|
|
||||||
active_colors=#cdd6f4, #1e1e2e, #cdd6f4, #181825, #181825, #181825, #cdd6f4, #b4befe, #cdd6f4, #1e1e2e, #1e1e2e, #181825, #89b4fa, #1e1e2e, #89b4fa, #cba6f7, #181825, #1e1e2e, #181825, #cdd6f4, #181825
|
|
||||||
|
|
||||||
# Inactive
|
|
||||||
inactive_colors=#45475a, #181825, #cdd6f4, #181825, #181825, #181825, #45475a, #b4befe, #45475a, #1e1e2e, #1e1e2e, #181825, #45475a, #1e1e2e, #89b4fa, #cba6f7, #181825, #1e1e2e, #181825, #45475a, #181825
|
|
||||||
|
|
||||||
# Disabled
|
|
||||||
disabled_colors=#45475a, #181825, #cdd6f4, #181825, #181825, #181825, #45475a, #b4befe, #45475a, #1e1e2e, #1e1e2e, #181825, #45475a, #1e1e2e, #89b4fa, #cba6f7, #181825, #1e1e2e, #181825, #45475a, #181825
|
|
||||||
|
|
@ -1,32 +0,0 @@
|
||||||
[Appearance]
|
|
||||||
color_scheme_path=/home/lucy/.config/qt6ct/colors/tinted.conf
|
|
||||||
custom_palette=true
|
|
||||||
icon_theme=Papirus-Dark
|
|
||||||
standard_dialogs=default
|
|
||||||
style=Fusion
|
|
||||||
|
|
||||||
[Fonts]
|
|
||||||
fixed="Liberation Sans,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1,,0,0"
|
|
||||||
general="Liberation Sans,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1,,0,0"
|
|
||||||
|
|
||||||
[Interface]
|
|
||||||
activate_item_on_single_click=1
|
|
||||||
buttonbox_layout=0
|
|
||||||
cursor_flash_time=1000
|
|
||||||
dialog_buttons_have_icons=1
|
|
||||||
double_click_interval=400
|
|
||||||
gui_effects=@Invalid()
|
|
||||||
keyboard_scheme=2
|
|
||||||
menus_have_icons=true
|
|
||||||
show_shortcuts_in_context_menus=true
|
|
||||||
stylesheets=@Invalid()
|
|
||||||
toolbutton_style=4
|
|
||||||
underline_shortcut=1
|
|
||||||
wheel_scroll_lines=3
|
|
||||||
|
|
||||||
[SettingsWindow]
|
|
||||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x4_\0\0\x4W\0\0\0\0\0\0\0\0\0\0\x4_\0\0\x4W\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\x4_\0\0\x4W)
|
|
||||||
|
|
||||||
[Troubleshooting]
|
|
||||||
force_raster_widgets=1
|
|
||||||
ignored_applications=@Invalid()
|
|
||||||
|
|
@ -1,52 +0,0 @@
|
||||||
[[items]]
|
|
||||||
path = "https://git.lucy.rip/lucy/tinted-qtct"
|
|
||||||
name = "tinted-qt"
|
|
||||||
themes-dir = "build"
|
|
||||||
hook = "cp %f ~/.config/qt6ct/colors/tinted.conf"
|
|
||||||
|
|
||||||
[[items]]
|
|
||||||
path = "https://git.lucy.rip/lucy/tinted-gtk"
|
|
||||||
name = "tinted-gtk"
|
|
||||||
themes-dir = "build"
|
|
||||||
hook = """
|
|
||||||
cp %f ~/.config/gtk-3.0/gtk.css; cp %f ~/.config/gtk-4.0/gtk.css
|
|
||||||
systemctl --user restart polkit-gnome.service
|
|
||||||
"""
|
|
||||||
|
|
||||||
[[items]]
|
|
||||||
path = "https://github.com/tinted-theming/tinted-terminal"
|
|
||||||
name = "tinted-terminal"
|
|
||||||
themes-dir = "themes/ghostty" # Directory name of terminal theme you want to use
|
|
||||||
supported-systems = ["base16", "base24"]
|
|
||||||
hook = """
|
|
||||||
mkdir -p ~/.config/ghostty/themes
|
|
||||||
command cp %f ~/.config/ghostty/themes/tinted-theming
|
|
||||||
systemctl --user reload app-com.mitchellh.ghostty.service
|
|
||||||
"""
|
|
||||||
|
|
||||||
[[items]]
|
|
||||||
path = "https://git.lucy.rip/lucy/tinted-mangowc/"
|
|
||||||
name = "tinted-mangowc"
|
|
||||||
themes-dir = "build"
|
|
||||||
hook = "mmsg dispatch reload_config"
|
|
||||||
|
|
||||||
[[items]]
|
|
||||||
path = "https://git.lucy.rip/lucy/tinted-fuzzel.git"
|
|
||||||
name = "tinted-fuzzel"
|
|
||||||
themes-dir = "build"
|
|
||||||
|
|
||||||
[[items]]
|
|
||||||
path = "https://git.lucy.rip/lucy/tinted-discord.git"
|
|
||||||
name = "tinted-discord"
|
|
||||||
themes-dir = "build"
|
|
||||||
hook = "cp %f ~/.config/vesktop/settings/quickCss.css"
|
|
||||||
|
|
||||||
[[items]]
|
|
||||||
path = "https://git.lucy.rip/lucy/tinted-chromium.git"
|
|
||||||
name = "tinted-chromium"
|
|
||||||
themes-dir = "build"
|
|
||||||
|
|
||||||
[[items]]
|
|
||||||
path = "https://git.lucy.rip/lucy/tinted-niri.git"
|
|
||||||
name = "tinted-niri"
|
|
||||||
themes-dir = "themes"
|
|
||||||
386
flake.lock
generated
Executable file → Normal file
386
flake.lock
generated
Executable file → Normal file
|
|
@ -20,7 +20,185 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"base16": {
|
||||||
|
"inputs": {
|
||||||
|
"fromYaml": "fromYaml"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1755819240,
|
||||||
|
"narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=",
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "base16.nix",
|
||||||
|
"rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "base16.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-fish": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1765809053,
|
||||||
|
"narHash": "sha256-XCUQLoLfBJ8saWms2HCIj4NEN+xNsWBlU1NrEPcQG4s=",
|
||||||
|
"owner": "tomyun",
|
||||||
|
"repo": "base16-fish",
|
||||||
|
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tomyun",
|
||||||
|
"repo": "base16-fish",
|
||||||
|
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-helix": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1776754714,
|
||||||
|
"narHash": "sha256-E3OAK27smtATTmX45uoTSRsVD+Y+ZiVVfgM/tjpbtYg=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-helix",
|
||||||
|
"rev": "4d508123037e7851ad36ebf7d9c48b0e9e1eb581",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-helix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-vim": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1732806396,
|
||||||
|
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-vim",
|
||||||
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-vim",
|
||||||
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"firefox-gnome-theme": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1783570805,
|
||||||
|
"narHash": "sha256-ptl5aRlCv9/uRSv2u8Hq8UFVFeZ6Q/bT049bpqNgc3w=",
|
||||||
|
"owner": "rafaelmardojai",
|
||||||
|
"repo": "firefox-gnome-theme",
|
||||||
|
"rev": "5602ed62d638142c1ab31dccd01dfbfb28841225",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "rafaelmardojai",
|
||||||
|
"repo": "firefox-gnome-theme",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1790898470,
|
||||||
|
"narHash": "sha256-zTwuwezD0w3hpga6a6P8emidzAZFyWqlNeRBlpWOOl8=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "024633cd702b10285db5cb19b40ad48d2399ba60",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1782949081,
|
||||||
|
"narHash": "sha256-vp6Y/Grm98ESt6ceOkWiHWyZRDV3J1RID4w+6NWK9yA=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "17c9d6cdfc60c64f4ee8d306f9bc0b4ccb51481e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"fromYaml": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1731966426,
|
||||||
|
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "fromYaml",
|
||||||
|
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "fromYaml",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"gnome-shell": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"host": "gitlab.gnome.org",
|
||||||
|
"lastModified": 1776175984,
|
||||||
|
"narHash": "sha256-RJFlFW8GiMei6oqUGrMkGEvVqOH8U7Q8abc1yK4VKD8=",
|
||||||
|
"owner": "GNOME",
|
||||||
|
"repo": "gnome-shell",
|
||||||
|
"rev": "e0fdc4c13250e9a9b8ea9594c83925274f4a5dca",
|
||||||
|
"type": "gitlab"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"host": "gitlab.gnome.org",
|
||||||
|
"owner": "GNOME",
|
||||||
|
"ref": "50.1",
|
||||||
|
"repo": "gnome-shell",
|
||||||
|
"type": "gitlab"
|
||||||
|
}
|
||||||
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1792098797,
|
||||||
|
"narHash": "sha256-u4DIIZgznEGzByxXrxWCXK19VcMtTBmi/M9gZ7Jk9bM=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "640725978b99076e18e069f6e7d2959124584f8f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"home-manager_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixcord",
|
"nixcord",
|
||||||
|
|
@ -42,6 +220,21 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"import-tree": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1788467110,
|
||||||
|
"narHash": "sha256-ljEMTXP/rH0tOvDzc9gzwww6KcHRPRnEHzd9lK48V7s=",
|
||||||
|
"owner": "vic",
|
||||||
|
"repo": "import-tree",
|
||||||
|
"rev": "eb1b52eaecc57f7c136d07ae8a93e724dfecac46",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "vic",
|
||||||
|
"repo": "import-tree",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nix-darwin": {
|
"nix-darwin": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -84,24 +277,9 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nix-maid": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1790770868,
|
|
||||||
"narHash": "sha256-9OEVMURNKXNBqXxlCXmJ0jv0QHR8CR7A0n7pJKRbOik=",
|
|
||||||
"ref": "refs/heads/master",
|
|
||||||
"rev": "13d29cdde641216c0bb7ee8ec3229f865c7dc51a",
|
|
||||||
"revCount": 134,
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://codeberg.org/viperML/nix-maid"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://codeberg.org/viperML/nix-maid"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixcord": {
|
"nixcord": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager_2",
|
||||||
"nix-darwin": "nix-darwin",
|
"nix-darwin": "nix-darwin",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
|
|
@ -111,11 +289,11 @@
|
||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1791789228,
|
"lastModified": 1792277718,
|
||||||
"narHash": "sha256-H4oPz8lX2fHV4FOhxp9txUT/GVC/QB5mypkAkUhW31o=",
|
"narHash": "sha256-Nv32eZ+x7qr/yKofkemv1O2ImnXkUpFQgq71u6c6Wi8=",
|
||||||
"owner": "4evy",
|
"owner": "4evy",
|
||||||
"repo": "nixcord",
|
"repo": "nixcord",
|
||||||
"rev": "58298812834393c79a6c1b78d5b68e3a301a0ec1",
|
"rev": "f4f803048d4bb6bc296fc4bdbd8620ff63fe100f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -126,15 +304,15 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1791594108,
|
"lastModified": 1792094642,
|
||||||
"narHash": "sha256-XK4KceonkwD8LuMAt/vNrz982mXJM5jeHAxMwsUXXAQ=",
|
"narHash": "sha256-zp8ToDMnqZcu4o4IH9pdwXFXGp7yLm/M0dEnNWnyd7I=",
|
||||||
"owner": "NixOS",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "6510408d147d8c5e6d76043e899e9251756f6a75",
|
"rev": "fe13242281a67641c0102cdb1087f0ebe586c7df",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "nixos",
|
||||||
"ref": "nixos-unstable",
|
"ref": "nixos-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
|
|
@ -153,6 +331,21 @@
|
||||||
"url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.zst"
|
"url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.zst"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs-lib": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1790477367,
|
||||||
|
"narHash": "sha256-oujbxmVKDhci2E4EM3KyAbRUgp5/IsCoiA/LfEF7OOk=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs.lib",
|
||||||
|
"rev": "f7cd230690d9fc982d06129f9189b101fddcfa3b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs.lib",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs-packages": {
|
"nixpkgs-packages": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1791130267,
|
"lastModified": 1791130267,
|
||||||
|
|
@ -166,13 +359,154 @@
|
||||||
"url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.zst"
|
"url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.zst"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nur": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": [
|
||||||
|
"stylix",
|
||||||
|
"flake-parts"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1785549842,
|
||||||
|
"narHash": "sha256-DCwBZmGsySF7oKGTRgEv2HvpxVXkHT+38VhTM76k0B4=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"rev": "a9f987b57594e845e3e5cdd423b9a70846d70308",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"agenix": "agenix",
|
"agenix": "agenix",
|
||||||
|
"flake-parts": "flake-parts",
|
||||||
|
"home-manager": "home-manager",
|
||||||
|
"import-tree": "import-tree",
|
||||||
"nix-easyroam": "nix-easyroam",
|
"nix-easyroam": "nix-easyroam",
|
||||||
"nix-maid": "nix-maid",
|
|
||||||
"nixcord": "nixcord",
|
"nixcord": "nixcord",
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs",
|
||||||
|
"stylix": "stylix"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"stylix": {
|
||||||
|
"inputs": {
|
||||||
|
"base16": "base16",
|
||||||
|
"base16-fish": "base16-fish",
|
||||||
|
"base16-helix": "base16-helix",
|
||||||
|
"base16-vim": "base16-vim",
|
||||||
|
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||||
|
"flake-parts": "flake-parts_2",
|
||||||
|
"gnome-shell": "gnome-shell",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nur": "nur",
|
||||||
|
"systems": "systems",
|
||||||
|
"tinted-kitty": "tinted-kitty",
|
||||||
|
"tinted-schemes": "tinted-schemes",
|
||||||
|
"tinted-tmux": "tinted-tmux",
|
||||||
|
"tinted-zed": "tinted-zed"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1791574276,
|
||||||
|
"narHash": "sha256-UMnLnZ3JlA7UTBNNNx1rNsXYoPP/cirXLCKGiQ/yDx8=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "stylix",
|
||||||
|
"rev": "2856c4c6a845b9bec98828ef197abe176e4806bb",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "stylix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1774449309,
|
||||||
|
"narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "c29398b59d2048c4ab79345812849c9bd15e9150",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"ref": "future-26.11",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-kitty": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1735730497,
|
||||||
|
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-kitty",
|
||||||
|
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-kitty",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-schemes": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1785153830,
|
||||||
|
"narHash": "sha256-fNdfCTeCXU3tZG3TMincd+u68qBHQgCr2Ljr/M1mWP0=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "schemes",
|
||||||
|
"rev": "9bd28ed313560db3c5b605c63bc4e309e78e3fc8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "schemes",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-tmux": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1785031658,
|
||||||
|
"narHash": "sha256-mZp9O2LjzdMzlqQF3l3fjqsuPBzXy+1qTfBEUGjTlpk=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-tmux",
|
||||||
|
"rev": "5d2c67f61ea7af36f16865ab6d541cdba41dc257",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-tmux",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-zed": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1785030526,
|
||||||
|
"narHash": "sha256-klZf8UviewRkxuu74Bhbq6tqy7oxebQC7UVRWbbtQxU=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-zed",
|
||||||
|
"rev": "16f5a8adf4a6b1310d0a61ab172de963e8f76a02",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-zed",
|
||||||
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"treefmt-nix": {
|
"treefmt-nix": {
|
||||||
|
|
|
||||||
69
flake.nix
Executable file → Normal file
69
flake.nix
Executable file → Normal file
|
|
@ -1,9 +1,9 @@
|
||||||
{
|
{
|
||||||
description = "A very basic flake";
|
description = "lucy's nix config";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
nix-maid.url = "git+https://codeberg.org/viperML/nix-maid";
|
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||||
|
import-tree.url = "github:vic/import-tree";
|
||||||
nix-easyroam = {
|
nix-easyroam = {
|
||||||
url = "github:0x5a4/nix-easyroam";
|
url = "github:0x5a4/nix-easyroam";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
@ -16,52 +16,19 @@
|
||||||
url = "github:ryantm/agenix";
|
url = "github:ryantm/agenix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
};
|
home-manager = {
|
||||||
|
url = "github:nix-community/home-manager";
|
||||||
outputs =
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
{
|
|
||||||
self,
|
|
||||||
nixpkgs,
|
|
||||||
nixcord,
|
|
||||||
nix-maid,
|
|
||||||
agenix,
|
|
||||||
nix-easyroam,
|
|
||||||
}@inputs:
|
|
||||||
let
|
|
||||||
mods = [
|
|
||||||
nix-maid.nixosModules.default
|
|
||||||
nixcord.nixosModules.nixcord
|
|
||||||
agenix.nixosModules.default
|
|
||||||
nix-easyroam.nixosModules.nix-easyroam
|
|
||||||
./configuration.nix
|
|
||||||
./modules/maid
|
|
||||||
./modules/default.nix
|
|
||||||
./secrets/age.nix
|
|
||||||
];
|
|
||||||
in
|
|
||||||
{
|
|
||||||
nixosConfigurations.nerv = nixpkgs.lib.nixosSystem {
|
|
||||||
specialArgs = { inherit inputs; };
|
|
||||||
system = "x86_64-linux";
|
|
||||||
modules = [
|
|
||||||
({ config, ... }: {
|
|
||||||
imports = [ ./hosts/desktop/hardware-configuration.nix ];
|
|
||||||
networking.hostName = "nerv";
|
|
||||||
})
|
|
||||||
]
|
|
||||||
++ mods;
|
|
||||||
};
|
|
||||||
|
|
||||||
nixosConfigurations.seele = nixpkgs.lib.nixosSystem {
|
|
||||||
specialArgs = { inherit inputs; };
|
|
||||||
system = "x86_64-linux";
|
|
||||||
modules = [
|
|
||||||
({ config, ... }: {
|
|
||||||
imports = [ ./hosts/laptop/hardware-configuration.nix ];
|
|
||||||
networking.hostName = "seele";
|
|
||||||
})
|
|
||||||
]
|
|
||||||
++ mods;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
stylix = {
|
||||||
|
url = "github:nix-community/stylix";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } {
|
||||||
|
imports = [
|
||||||
|
inputs.home-manager.flakeModules.home-manager
|
||||||
|
(inputs.import-tree ./modules)
|
||||||
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,33 +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" "usbhid" "usb_storage" "sd_mod" ];
|
|
||||||
boot.initrd.kernelModules = [ ];
|
|
||||||
boot.kernelModules = [ "kvm-amd" ];
|
|
||||||
boot.extraModulePackages = [ ];
|
|
||||||
|
|
||||||
fileSystems."/" =
|
|
||||||
{ device = "/dev/disk/by-uuid/48badf37-8adb-48d0-b861-fbf71cbaddd7";
|
|
||||||
fsType = "xfs";
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/boot" =
|
|
||||||
{ device = "/dev/disk/by-uuid/DC66-ACA6";
|
|
||||||
fsType = "vfat";
|
|
||||||
options = [ "fmask=0077" "dmask=0077" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices =
|
|
||||||
[ { device = "/dev/disk/by-uuid/3b0e79c9-e3d8-4b58-99b4-63c98309ac85"; }
|
|
||||||
];
|
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
|
||||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
|
||||||
}
|
|
||||||
|
|
@ -1,33 +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 = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" "sdhci_pci" ];
|
|
||||||
boot.initrd.kernelModules = [ ];
|
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
|
||||||
boot.extraModulePackages = [ ];
|
|
||||||
|
|
||||||
fileSystems."/" =
|
|
||||||
{ device = "/dev/disk/by-uuid/629196f0-60e9-476e-b294-0d22fd7279c4";
|
|
||||||
fsType = "xfs";
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/boot" =
|
|
||||||
{ device = "/dev/disk/by-uuid/2474-C1E6";
|
|
||||||
fsType = "vfat";
|
|
||||||
options = [ "fmask=0077" "dmask=0077" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices =
|
|
||||||
[ { device = "/dev/disk/by-uuid/166d1fb4-527f-4fda-a6bf-85aad4a4f917"; }
|
|
||||||
];
|
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
|
||||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
|
||||||
}
|
|
||||||
47
modules/default.nix
Executable file → Normal file
47
modules/default.nix
Executable file → Normal file
|
|
@ -1,7 +1,46 @@
|
||||||
{
|
{
|
||||||
imports = [
|
self,
|
||||||
./programs
|
inputs,
|
||||||
./services
|
...
|
||||||
./hardware
|
}:
|
||||||
|
let
|
||||||
|
mods = with self.nixosModules; [
|
||||||
|
agenix
|
||||||
|
base_services
|
||||||
|
boot
|
||||||
|
core
|
||||||
|
easyroam
|
||||||
|
myStylix
|
||||||
|
packages
|
||||||
|
pipewire
|
||||||
|
programs
|
||||||
|
stylixTargets
|
||||||
|
stylix_fonts
|
||||||
|
tlp
|
||||||
|
user
|
||||||
|
zsh
|
||||||
|
/etc/nixos/hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
in
|
||||||
|
{
|
||||||
|
flake.nixosConfigurations.nerv = inputs.nixpkgs.lib.nixosSystem {
|
||||||
|
modules =
|
||||||
|
with self.nixosModules;
|
||||||
|
[
|
||||||
|
{
|
||||||
|
config.dualBoot = true;
|
||||||
|
config.networking.hostName = "nerv";
|
||||||
|
}
|
||||||
|
]
|
||||||
|
++ mods;
|
||||||
|
};
|
||||||
|
flake.nixosConfigurations.seele = inputs.nixpkgs.lib.nixosSystem {
|
||||||
|
modules = [
|
||||||
|
{
|
||||||
|
config.networking.hostName = "seele";
|
||||||
|
}
|
||||||
|
]
|
||||||
|
++ mods;
|
||||||
|
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
{
|
|
||||||
hardware.bluetooth = {
|
|
||||||
enable = true;
|
|
||||||
powerOnBoot = false;
|
|
||||||
input.General.ClassicBondedOnly = false;
|
|
||||||
settings = {
|
|
||||||
General = {
|
|
||||||
Experimental = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
./nvidia.nix
|
|
||||||
./bluetooth.nix
|
|
||||||
];
|
|
||||||
hardware.graphics.enable = true;
|
|
||||||
}
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
{ lib, config, ... }: {
|
|
||||||
hardware.nvidia = lib.mkIf (config.networking.hostName == "nerv") {
|
|
||||||
modesetting.enable = true;
|
|
||||||
open = true;
|
|
||||||
package = config.boot.kernelPackages.nvidiaPackages.new_feature;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
106
modules/home/programs/emacs.nix
Normal file
106
modules/home/programs/emacs.nix
Normal file
|
|
@ -0,0 +1,106 @@
|
||||||
|
{ ... }: {
|
||||||
|
|
||||||
|
flake.homeModules.emacs = { pkgs, ... }: {
|
||||||
|
programs.emacs = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.emacs-pgtk;
|
||||||
|
extraConfig = ''
|
||||||
|
;; -*- lexical-binding: t; -*-
|
||||||
|
(setq make-backup-files nil)
|
||||||
|
|
||||||
|
(add-to-list 'default-frame-alist '(font . "JetBrainsMono Nerd Font Mono-14"))
|
||||||
|
|
||||||
|
(require 'package)
|
||||||
|
(add-to-list 'package-archives
|
||||||
|
'("melpa-snapshots"
|
||||||
|
.
|
||||||
|
"https://snapshots.melpa.org/packages/")
|
||||||
|
t)
|
||||||
|
;; add packages
|
||||||
|
(use-package org-view-mode :ensure t)
|
||||||
|
(use-package envrc :ensure t)
|
||||||
|
|
||||||
|
(use-package nix-mode :ensure t)
|
||||||
|
(use-package
|
||||||
|
eldoc-box
|
||||||
|
:ensure t
|
||||||
|
:hook (eglot-managed-mode . eldoc-box-hover-mode)
|
||||||
|
)
|
||||||
|
(use-package
|
||||||
|
elisp-autofmt
|
||||||
|
:ensure t
|
||||||
|
:commands (elisp-autofmt-buffer elisp-autofmt-mode)
|
||||||
|
:hook (emacs-lisp-mode . elisp-autofmt-mode)
|
||||||
|
:config)
|
||||||
|
(use-package portage-modes :ensure t)
|
||||||
|
(use-package
|
||||||
|
corfu
|
||||||
|
:ensure t
|
||||||
|
:init
|
||||||
|
(setq
|
||||||
|
corfu-auto t
|
||||||
|
corfu-auto-prefix 1
|
||||||
|
corfu-auto-delay 0.2)
|
||||||
|
(global-corfu-mode))
|
||||||
|
|
||||||
|
(setq tab-always-indent 'complete)
|
||||||
|
(use-package
|
||||||
|
cape
|
||||||
|
:ensure t
|
||||||
|
:bind ("C-c p" . cape-prefix-map) ;; Alternative key: M-<tab>, M-p, M-+
|
||||||
|
:init (add-hook 'completion-at-point-functions #'cape-file))
|
||||||
|
(setq corfu-auto-prefix 2)
|
||||||
|
(use-package qml-mode :ensure t)
|
||||||
|
(use-package lua-mode :ensure t)
|
||||||
|
(use-package elcord :ensure t :init (elcord-mode))
|
||||||
|
|
||||||
|
(add-to-list
|
||||||
|
'display-buffer-alist
|
||||||
|
'("\\*compilation\\*" (display-buffer-reuse-window
|
||||||
|
display-buffer-below-selected)
|
||||||
|
(window-height . 0.3)))
|
||||||
|
|
||||||
|
|
||||||
|
;; remove useless shit and set default opts
|
||||||
|
(setq org-hide-emphasis-markers t)
|
||||||
|
(setq ring-bell-function 'ignore)
|
||||||
|
(menu-bar-mode -1)
|
||||||
|
(tool-bar-mode -1)
|
||||||
|
(setq display-line-numbers-type 'relative)
|
||||||
|
(global-display-line-numbers-mode +1)
|
||||||
|
(global-tab-line-mode 1)
|
||||||
|
(scroll-bar-mode -1)
|
||||||
|
(setq inhibit-splash-screen 1)
|
||||||
|
(setq custom-file "~/.emacs.d/custom.el")
|
||||||
|
(load custom-file 'noerror)
|
||||||
|
|
||||||
|
|
||||||
|
;; lsp shit
|
||||||
|
(add-hook 'nix-mode-hook #'eglot-ensure)
|
||||||
|
(add-hook 'c-mode-hook #'eglot-ensure)
|
||||||
|
(add-hook 'qml-mode-hook #'eglot-ensure)
|
||||||
|
(with-eval-after-load 'eglot
|
||||||
|
(add-to-list 'eglot-server-programs '(nix-mode . ("nixd")))
|
||||||
|
(add-to-list 'eglot-server-programs '(qml-mode . ("qmlls"))))
|
||||||
|
|
||||||
|
;; keybindings
|
||||||
|
(keymap-global-set "C-c f" 'eglot-format)
|
||||||
|
(keymap-global-set "C-c t" 'term)
|
||||||
|
(keymap-global-set "C-c c" 'compile)
|
||||||
|
(keymap-global-set "C-c k b" 'kill-current-buffer)
|
||||||
|
(keymap-global-set "C-c k w" 'kill-buffer-and-window)
|
||||||
|
(keymap-global-set "C-c v" 'org-view-mode)
|
||||||
|
(windmove-default-keybindings)
|
||||||
|
;; replace dashes with bullets in org mode
|
||||||
|
(font-lock-add-keywords 'org-mode
|
||||||
|
'(("^ +\\([-*]\\) "
|
||||||
|
(0 (prog1 () (compose-region (match-beginning 1) (match-end 1) "•"))))))
|
||||||
|
|
||||||
|
(setq org-view-prettify-credentials nil)
|
||||||
|
(setq org-view-hide-keywords nil)
|
||||||
|
(envrc-global-mode)
|
||||||
|
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
12
modules/home/programs/fuzzel.nix
Normal file
12
modules/home/programs/fuzzel.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{...}: {
|
||||||
|
flake.homeModules.fuzzel = {
|
||||||
|
programs.fuzzel = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
main = {
|
||||||
|
dpi_aware = "no";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
15
modules/home/programs/ghostty.nix
Normal file
15
modules/home/programs/ghostty.nix
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.homeModules.ghostty = {
|
||||||
|
programs.ghostty = {
|
||||||
|
enable = true;
|
||||||
|
enableZshIntegration = true;
|
||||||
|
systemd.enable = true;
|
||||||
|
settings = {
|
||||||
|
quit-after-last-window-closed = false;
|
||||||
|
window-padding-x = 15;
|
||||||
|
window-padding-y = 15;
|
||||||
|
confirm-close-surface = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
11
modules/home/programs/git.nix
Normal file
11
modules/home/programs/git.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.homeModules.git = {
|
||||||
|
programs.git = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
user.name = "lucy";
|
||||||
|
user.email = "lucykaufmann@protonmail.com";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
163
modules/home/programs/niri.nix
Normal file
163
modules/home/programs/niri.nix
Normal file
|
|
@ -0,0 +1,163 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.homeModules.niri = {
|
||||||
|
wayland.windowManager.niri = {
|
||||||
|
enable = true;
|
||||||
|
extraConfig = ''
|
||||||
|
prefer-no-csd
|
||||||
|
hotkey-overlay {
|
||||||
|
skip-at-startup
|
||||||
|
}
|
||||||
|
|
||||||
|
environment {
|
||||||
|
GTK_THEME "adw-gtk3-dark"
|
||||||
|
XDG_CURRENT_DESKTOP "niri"
|
||||||
|
XDG_SESSION_TYPE "wayland"
|
||||||
|
XDG_SESSION_DESKTOP "niri"
|
||||||
|
QT_QPA_PLATFORM "wayland;xcb"
|
||||||
|
OZONE_PLATFORM "wayland"
|
||||||
|
ELECTRON_OZONE_PLATFORM_HINT "auto"
|
||||||
|
}
|
||||||
|
cursor {
|
||||||
|
xcursor-size 24
|
||||||
|
xcursor-theme "macOS"
|
||||||
|
}
|
||||||
|
input {
|
||||||
|
keyboard {
|
||||||
|
xkb {
|
||||||
|
layout "eu"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
touchpad {
|
||||||
|
tap
|
||||||
|
natural-scroll
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
mouse {
|
||||||
|
accel-speed -0.4
|
||||||
|
accel-profile "flat"
|
||||||
|
}
|
||||||
|
focus-follows-mouse max-scroll-amount="20%"
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
output "PNP(BNQ) BenQ EX2710Q K6R04023019" {
|
||||||
|
mode "2560x1440@165.002"
|
||||||
|
scale 1
|
||||||
|
transform "normal"
|
||||||
|
position x=1920 y=0
|
||||||
|
}
|
||||||
|
output "Dell Inc. DELL P2317H 9KFDW6C533DB" {
|
||||||
|
position x=0 y=0
|
||||||
|
}
|
||||||
|
|
||||||
|
output "eDP-1" {
|
||||||
|
scale 1
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
layout {
|
||||||
|
gaps 16
|
||||||
|
center-focused-column "never"
|
||||||
|
default-column-width { proportion 0.6; }
|
||||||
|
focus-ring {
|
||||||
|
off
|
||||||
|
}
|
||||||
|
border {
|
||||||
|
width 2
|
||||||
|
active-color "#ffc87f"
|
||||||
|
inactive-color "#505050"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
spawn-at-startup "qs"
|
||||||
|
screenshot-path null
|
||||||
|
animations {}
|
||||||
|
window-rule {
|
||||||
|
geometry-corner-radius 16
|
||||||
|
clip-to-geometry true
|
||||||
|
}
|
||||||
|
|
||||||
|
binds {
|
||||||
|
Mod+return { spawn-sh "ghostty +new-window"; }
|
||||||
|
Mod+space { spawn "fuzzel"; }
|
||||||
|
Mod+e { spawn "nautilus"; }
|
||||||
|
|
||||||
|
XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; }
|
||||||
|
XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; }
|
||||||
|
XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; }
|
||||||
|
XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; }
|
||||||
|
|
||||||
|
XF86AudioPlay allow-when-locked=true { spawn-sh "playerctl play-pause"; }
|
||||||
|
XF86AudioStop allow-when-locked=true { spawn-sh "playerctl stop"; }
|
||||||
|
XF86AudioPrev allow-when-locked=true { spawn-sh "playerctl previous"; }
|
||||||
|
XF86AudioNext allow-when-locked=true { spawn-sh "playerctl next"; }
|
||||||
|
|
||||||
|
XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; }
|
||||||
|
XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; }
|
||||||
|
|
||||||
|
Mod+O repeat=false { toggle-overview; }
|
||||||
|
Mod+Q repeat=false { close-window; }
|
||||||
|
|
||||||
|
Mod+Left { focus-column-left; }
|
||||||
|
Mod+Down { focus-window-down; }
|
||||||
|
Mod+Up { focus-window-up; }
|
||||||
|
Mod+Right { focus-column-right; }
|
||||||
|
Mod+H { focus-column-left; }
|
||||||
|
Mod+J { focus-window-down; }
|
||||||
|
Mod+K { focus-window-up; }
|
||||||
|
Mod+L { focus-column-right; }
|
||||||
|
Mod+Ctrl+Left { move-column-left; }
|
||||||
|
Mod+Ctrl+Down { move-window-down; }
|
||||||
|
Mod+Ctrl+Up { move-window-up; }
|
||||||
|
Mod+Ctrl+Right { move-column-right; }
|
||||||
|
Mod+Ctrl+H { move-column-left; }
|
||||||
|
Mod+Ctrl+J { move-window-down; }
|
||||||
|
Mod+Ctrl+K { move-window-up; }
|
||||||
|
mod+ctrl+l { move-column-right; }
|
||||||
|
|
||||||
|
Mod+comma { focus-monitor-left; }
|
||||||
|
Mod+period { focus-monitor-right; }
|
||||||
|
|
||||||
|
Mod+Shift+comma { move-column-to-monitor-left; }
|
||||||
|
Mod+Shift+period { move-column-to-monitor-right; }
|
||||||
|
|
||||||
|
|
||||||
|
Mod+Shift+WheelScrollDown { focus-column-right; }
|
||||||
|
Mod+Shift+WheelScrollUp { focus-column-left; }
|
||||||
|
Mod+1 { focus-workspace 1; }
|
||||||
|
Mod+2 { focus-workspace 2; }
|
||||||
|
Mod+3 { focus-workspace 3; }
|
||||||
|
Mod+4 { focus-workspace 4; }
|
||||||
|
Mod+5 { focus-workspace 5; }
|
||||||
|
Mod+6 { focus-workspace 6; }
|
||||||
|
Mod+7 { focus-workspace 7; }
|
||||||
|
Mod+8 { focus-workspace 8; }
|
||||||
|
Mod+9 { focus-workspace 9; }
|
||||||
|
Mod+Shift+1 { move-column-to-workspace 1; }
|
||||||
|
Mod+Shift+2 { move-column-to-workspace 2; }
|
||||||
|
Mod+Shift+3 { move-column-to-workspace 3; }
|
||||||
|
Mod+Shift+4 { move-column-to-workspace 4; }
|
||||||
|
Mod+Shift+5 { move-column-to-workspace 5; }
|
||||||
|
Mod+Shift+6 { move-column-to-workspace 6; }
|
||||||
|
Mod+Shift+7 { move-column-to-workspace 7; }
|
||||||
|
Mod+Shift+8 { move-column-to-workspace 8; }
|
||||||
|
Mod+Shift+9 { move-column-to-workspace 9; }
|
||||||
|
|
||||||
|
Mod+BracketLeft { consume-or-expel-window-left; }
|
||||||
|
Mod+BracketRight { consume-or-expel-window-right; }
|
||||||
|
Mod+F { maximize-column; }
|
||||||
|
|
||||||
|
Mod+Minus { set-column-width "-10%"; }
|
||||||
|
Mod+Equal { set-column-width "+10%"; }
|
||||||
|
|
||||||
|
Mod+V { toggle-window-floating; }
|
||||||
|
Mod+Shift+S { screenshot; }
|
||||||
|
Alt+Shift+S { screenshot-screen; }
|
||||||
|
Alt+Ctrl+S { screenshot-window; }
|
||||||
|
Mod+Shift+q { quit; }
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
14
modules/home/programs/nixcord.nix
Normal file
14
modules/home/programs/nixcord.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
{ inputs, ... }: {
|
||||||
|
flake.homeModules.nixcord = {
|
||||||
|
imports = [ inputs.nixcord.homeModules.nixcord ];
|
||||||
|
programs.nixcord = {
|
||||||
|
enable = true;
|
||||||
|
discord.enable = false;
|
||||||
|
vesktop.enable = true;
|
||||||
|
config.plugins = {
|
||||||
|
messageLogger.enable = true;
|
||||||
|
messageClickActions.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
11
modules/home/stylix/targets.nix
Normal file
11
modules/home/stylix/targets.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{inputs, ...}: {
|
||||||
|
flake.homeModules.homeStylix = {
|
||||||
|
stylix.targets = {
|
||||||
|
ghostty.enable = true;
|
||||||
|
fuzzel.enable = true;
|
||||||
|
gtk.enable = true;
|
||||||
|
emacs.enable = true;
|
||||||
|
nixcord.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
./maid.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
@ -1,32 +0,0 @@
|
||||||
{
|
|
||||||
file.home = {
|
|
||||||
emacs = {
|
|
||||||
target = ".emacs.d/init.el";
|
|
||||||
source = "{{home}}/nixos/dotfiles/emacs/init.el";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
file.xdg_config.foot = {
|
|
||||||
target = "foot/foot.ini";
|
|
||||||
source = "{{home}}/nixos/dotfiles/foot/foot.ini";
|
|
||||||
};
|
|
||||||
file.xdg_config.fuzzel = {
|
|
||||||
target = "fuzzel/fuzzel.ini";
|
|
||||||
source = "{{home}}/nixos/dotfiles/fuzzel/fuzzel.ini";
|
|
||||||
};
|
|
||||||
file.xdg_config.niri = {
|
|
||||||
target = "niri/config.kdl";
|
|
||||||
source = "{{home}}/nixos/dotfiles/niri/config.kdl";
|
|
||||||
};
|
|
||||||
file.xdg_config.tinty = {
|
|
||||||
target = "tinted-theming/tinty/config.toml";
|
|
||||||
source = "{{home}}/nixos/dotfiles/tinted-theming/tinty/config.toml";
|
|
||||||
};
|
|
||||||
file.xdg_config.gtk-3 = {
|
|
||||||
target = "gtk-3.0/settings.ini";
|
|
||||||
source = "{{home}}/nixos/dotfiles/gtk/settings.ini";
|
|
||||||
};
|
|
||||||
file.xdg_config.gtk-4 = {
|
|
||||||
target = "gtk-4.0/settings.ini";
|
|
||||||
source = "{{home}}/nixos/dotfiles/gtk/settings.ini";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,22 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
file.xdg_config.ghostty = {
|
|
||||||
text = ''
|
|
||||||
quit-after-last-window-closed = false
|
|
||||||
theme = "tinted-theming"
|
|
||||||
font-family = "JetBrainsMono Nerd Font"
|
|
||||||
font-size = 14
|
|
||||||
window-padding-x = 15
|
|
||||||
window-padding-y = 15
|
|
||||||
shell-integration = none
|
|
||||||
confirm-close-surface = false
|
|
||||||
'';
|
|
||||||
target = "ghostty/config.ghostty";
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -1,55 +0,0 @@
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
users.users.lucy.maid = { config, ... }: {
|
|
||||||
imports = [
|
|
||||||
./ghostty.nix
|
|
||||||
./dots.nix
|
|
||||||
];
|
|
||||||
gsettings.settings = {
|
|
||||||
org.gnome.desktop.interface = {
|
|
||||||
color-scheme = "prefer-dark";
|
|
||||||
gtk-theme = "adw-gtk3";
|
|
||||||
cursor-theme = "macOS";
|
|
||||||
icon-theme = "Papirus";
|
|
||||||
cursor-size = 24;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
systemd.services."app-com.mitchellh.ghostty" = {
|
|
||||||
description = "Ghostty";
|
|
||||||
enableDefaultPath = false;
|
|
||||||
after = [
|
|
||||||
"graphical-session.target"
|
|
||||||
"dbus.socket"
|
|
||||||
];
|
|
||||||
requires = [ "dbus.socket" ];
|
|
||||||
wantedBy = [ config.maid.systemdGraphicalTarget ];
|
|
||||||
reloadIfChanged = true;
|
|
||||||
serviceConfig = {
|
|
||||||
Type = "notify";
|
|
||||||
ExecReload = "${pkgs.coreutils}/bin/kill -USR2 $MAINPID";
|
|
||||||
BusName = "com.mitchellh.ghostty";
|
|
||||||
ExecStart = "${pkgs.ghostty}/bin/ghostty --gtk-single-instance=true --initial-window=false";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
systemd.services.polkit-gnome = {
|
|
||||||
wantedBy = [ config.maid.systemdGraphicalTarget ];
|
|
||||||
unitConfig = {
|
|
||||||
Description = "polkit-gnome authentication agent";
|
|
||||||
PartOf = [ config.maid.systemdGraphicalTarget ];
|
|
||||||
After = [ config.maid.systemdGraphicalTarget ];
|
|
||||||
};
|
|
||||||
serviceConfig = {
|
|
||||||
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
|
||||||
Restart = "on-failure";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
10
modules/parts.nix
Normal file
10
modules/parts.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
config = {
|
||||||
|
systems = [
|
||||||
|
"x86_64-linux"
|
||||||
|
"x86_64-darwin"
|
||||||
|
"aarch64-linux"
|
||||||
|
"aarch64-darwin"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
{
|
|
||||||
programs.chromium = {
|
|
||||||
enable = true;
|
|
||||||
extensions = [
|
|
||||||
"nngceckbapebfimnlniiiahkandclblb" # bitwarden
|
|
||||||
"ddkjiahejlhfcafbddmgiahcphecmpfh" # ublock origin lite
|
|
||||||
];
|
|
||||||
};
|
|
||||||
environment.etc = {
|
|
||||||
"chromium" = {
|
|
||||||
enable = true;
|
|
||||||
mode = "symlink";
|
|
||||||
source = "/home/lucy/.local/share/tinted-theming/tinty/tinted-chromium-build-file.json";
|
|
||||||
target = "chromium/policies/managed/theme.json";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,10 +0,0 @@
|
||||||
{ config, pkgs, ... }: {
|
|
||||||
programs.niri.enable = true;
|
|
||||||
programs.steam.enable = true;
|
|
||||||
programs.direnv.enable = true;
|
|
||||||
imports = [
|
|
||||||
./zsh.nix
|
|
||||||
./nixcord.nix
|
|
||||||
./chromium.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
{ config, inputs, ... }: {
|
|
||||||
programs.nixcord = {
|
|
||||||
enable = true;
|
|
||||||
user = "lucy";
|
|
||||||
discord.enable = false;
|
|
||||||
vesktop.enable = true;
|
|
||||||
config.useQuickCss = true;
|
|
||||||
config.plugins = {
|
|
||||||
messageLogger.enable = true;
|
|
||||||
messageClickActions.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
{
|
|
||||||
programs.zsh = {
|
|
||||||
enable = true;
|
|
||||||
enableCompletion = true;
|
|
||||||
autosuggestions.enable = true;
|
|
||||||
syntaxHighlighting.enable = true;
|
|
||||||
ohMyZsh = {
|
|
||||||
enable = true;
|
|
||||||
theme = "gentoo";
|
|
||||||
};
|
|
||||||
shellInit = ''
|
|
||||||
export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/rbw/ssh-agent-socket"
|
|
||||||
eval "$(devenv hook zsh)"
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
system.userActivationScripts.zshrc = "touch .zshrc";
|
|
||||||
}
|
|
||||||
|
|
@ -1,23 +0,0 @@
|
||||||
{ config, pkgs, lib, ... }: {
|
|
||||||
imports = [
|
|
||||||
./tlp.nix
|
|
||||||
./easyroam.nix
|
|
||||||
./syncthing.nix
|
|
||||||
./pipewire.nix
|
|
||||||
];
|
|
||||||
services = {
|
|
||||||
xserver.videoDrivers = lib.mkIf (config.networking.hostName == "nerv") [ "nvidia" ];
|
|
||||||
blueman.enable = true;
|
|
||||||
printing.enable = true;
|
|
||||||
emacs.enable = false;
|
|
||||||
xserver.xkb = {
|
|
||||||
layout = "eu";
|
|
||||||
variant = "";
|
|
||||||
};
|
|
||||||
upower.enable = true;
|
|
||||||
displayManager.gdm.enable = true;
|
|
||||||
udisks2.enable = true;
|
|
||||||
gvfs.enable = true;
|
|
||||||
gnome.gnome-keyring.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,11 +0,0 @@
|
||||||
{ config, ... }: {
|
|
||||||
services.easyroam = {
|
|
||||||
enable = true;
|
|
||||||
pkcsFile = config.age.secrets.easyroam.path;
|
|
||||||
networkmanager.enable = true;
|
|
||||||
};
|
|
||||||
systemd.services.wpa_supplicant = {
|
|
||||||
wants = [ "easyroam-cert-setup.service" ];
|
|
||||||
after = [ "easyroam-cert-setup.service" ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
services.pipewire = {
|
|
||||||
enable = true;
|
|
||||||
alsa.enable = true;
|
|
||||||
alsa.support32Bit = true;
|
|
||||||
pulse.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,16 +0,0 @@
|
||||||
{
|
|
||||||
services.syncthing = {
|
|
||||||
user = "lucy";
|
|
||||||
dataDir = "/home/lucy/sync";
|
|
||||||
configDir = "/home/lucy/.config/syncthing";
|
|
||||||
enable = true;
|
|
||||||
openDefaultPorts = true;
|
|
||||||
settings = {
|
|
||||||
devices = {
|
|
||||||
"cyberia" = {
|
|
||||||
id = "5SW5N7Z-BGTZD37-5ELRQVE-PBRK3O5-M4CGYLZ-R3KCVVS-AM5QD2G-WTQYKA7";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
{
|
|
||||||
services.tlp = {
|
|
||||||
enable = true;
|
|
||||||
pd.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
0
secrets/agenix-rules.nix → modules/system/agenix/_agenix-rules.nix
Executable file → Normal file
0
secrets/agenix-rules.nix → modules/system/agenix/_agenix-rules.nix
Executable file → Normal file
14
modules/system/agenix/agenix.nix
Normal file
14
modules/system/agenix/agenix.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
{inputs, ... }: {
|
||||||
|
flake.nixosModules.agenix = {config, ...}: {
|
||||||
|
imports = [
|
||||||
|
inputs.agenix.nixosModules.default
|
||||||
|
];
|
||||||
|
age = {
|
||||||
|
enable = true;
|
||||||
|
identityPaths = [ "/var/lib/misc/key.age" ];
|
||||||
|
secrets = {
|
||||||
|
easyroam.file = ./easyroam.age;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
0
secrets/easyroam.age → modules/system/agenix/easyroam.age
Executable file → Normal file
0
secrets/easyroam.age → modules/system/agenix/easyroam.age
Executable file → Normal file
22
modules/system/core/boot.nix
Normal file
22
modules/system/core/boot.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
{ lib, config, ... }: {
|
||||||
|
flake.nixosModules.boot = { config, ... }: {
|
||||||
|
options = {
|
||||||
|
dualBoot = lib.mkOption {
|
||||||
|
type = lib.types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "wether to enable windows boot entry to limine or not";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
config.boot.loader = {
|
||||||
|
efi.canTouchEfiVariables = true;
|
||||||
|
limine = {
|
||||||
|
enable = true;
|
||||||
|
extraEntries = lib.mkIf config.dualBoot ''
|
||||||
|
/Windows 11
|
||||||
|
protocol: efi_boot_entry
|
||||||
|
entry: Windows Boot Manager
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
37
modules/system/core/core.nix
Normal file
37
modules/system/core/core.nix
Normal file
|
|
@ -0,0 +1,37 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.core = {
|
||||||
|
hardware.bluetooth = {
|
||||||
|
enable = true;
|
||||||
|
powerOnBoot = false;
|
||||||
|
input.General.ClassicBondedOnly = false;
|
||||||
|
settings = {
|
||||||
|
General = {
|
||||||
|
Experimental = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
time.timeZone = "Europe/Berlin";
|
||||||
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
i18n.extraLocaleSettings = {
|
||||||
|
LC_ADDRESS = "de_DE.UTF-8";
|
||||||
|
LC_IDENTIFICATION = "de_DE.UTF-8";
|
||||||
|
LC_MEASUREMENT = "de_DE.UTF-8";
|
||||||
|
LC_MONETARY = "de_DE.UTF-8";
|
||||||
|
LC_NAME = "de_DE.UTF-8";
|
||||||
|
LC_NUMERIC = "de_DE.UTF-8";
|
||||||
|
LC_PAPER = "de_DE.UTF-8";
|
||||||
|
LC_TELEPHONE = "de_DE.UTF-8";
|
||||||
|
LC_TIME = "de_DE.UTF-8";
|
||||||
|
};
|
||||||
|
security = {
|
||||||
|
rtkit.enable = true;
|
||||||
|
polkit.enable = true; # polkit
|
||||||
|
polkit.enablePkexecWrapper = true;
|
||||||
|
};
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
nix.settings.experimental-features = [
|
||||||
|
"nix-command"
|
||||||
|
"flakes"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
47
modules/system/core/packages.nix
Normal file
47
modules/system/core/packages.nix
Normal file
|
|
@ -0,0 +1,47 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.packages = { pkgs, ... }: {
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
programs.niri.enable = true;
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
stow
|
||||||
|
ufetch
|
||||||
|
rbw
|
||||||
|
pinentry-gnome3
|
||||||
|
nixd
|
||||||
|
nixfmt
|
||||||
|
xournalpp
|
||||||
|
rnote
|
||||||
|
btop
|
||||||
|
chromium
|
||||||
|
quickshell
|
||||||
|
wl-clipboard
|
||||||
|
adw-gtk3
|
||||||
|
polkit_gnome
|
||||||
|
xwayland-satellite
|
||||||
|
nemo
|
||||||
|
libwacom
|
||||||
|
devenv
|
||||||
|
kdePackages.qt6ct
|
||||||
|
gcc
|
||||||
|
clang-tools
|
||||||
|
clang
|
||||||
|
gdb
|
||||||
|
gnumake
|
||||||
|
libreoffice
|
||||||
|
ripgrep
|
||||||
|
jq
|
||||||
|
nmgui
|
||||||
|
kdePackages.qtdeclarative
|
||||||
|
gsettings-desktop-schemas
|
||||||
|
glib
|
||||||
|
];
|
||||||
|
fonts.packages = with pkgs; [
|
||||||
|
jetbrains-mono
|
||||||
|
nerd-fonts.jetbrains-mono
|
||||||
|
noto-fonts
|
||||||
|
noto-fonts-cjk-sans
|
||||||
|
noto-fonts-color-emoji
|
||||||
|
inter
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
34
modules/system/core/user.nix
Normal file
34
modules/system/core/user.nix
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
{ inputs, self, ... }: {
|
||||||
|
flake.nixosModules.user = { pkgs, ... }: {
|
||||||
|
imports = [
|
||||||
|
inputs.home-manager.nixosModules.home-manager
|
||||||
|
];
|
||||||
|
users.users."lucy" = {
|
||||||
|
shell = pkgs.zsh;
|
||||||
|
isNormalUser = true;
|
||||||
|
description = "lucy";
|
||||||
|
extraGroups = [
|
||||||
|
"networkmanager"
|
||||||
|
"wheel"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.extraSpecialArgs = { inherit inputs; };
|
||||||
|
home-manager.users.lucy = {
|
||||||
|
home.username = "lucy";
|
||||||
|
home.homeDirectory = "/home/lucy";
|
||||||
|
home.stateVersion = "25.11";
|
||||||
|
|
||||||
|
};
|
||||||
|
home-manager.sharedModules = with self.homeModules; [
|
||||||
|
nixcord
|
||||||
|
ghostty
|
||||||
|
niri
|
||||||
|
emacs
|
||||||
|
git
|
||||||
|
homeStylix
|
||||||
|
fuzzel
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
7
modules/system/programs/default.nix
Normal file
7
modules/system/programs/default.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.programs = {
|
||||||
|
programs.niri.enable = true;
|
||||||
|
programs.steam.enable = true;
|
||||||
|
programs.direnv.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
19
modules/system/programs/zsh.nix
Normal file
19
modules/system/programs/zsh.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.zsh = {
|
||||||
|
programs.zsh = {
|
||||||
|
enable = true;
|
||||||
|
enableCompletion = true;
|
||||||
|
autosuggestions.enable = true;
|
||||||
|
syntaxHighlighting.enable = true;
|
||||||
|
ohMyZsh = {
|
||||||
|
enable = true;
|
||||||
|
theme = "gentoo";
|
||||||
|
};
|
||||||
|
shellInit = ''
|
||||||
|
export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/rbw/ssh-agent-socket"
|
||||||
|
eval "$(devenv hook zsh)"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
system.userActivationScripts.zshrc = "touch .zshrc";
|
||||||
|
};
|
||||||
|
}
|
||||||
6
modules/system/services/base.nix
Normal file
6
modules/system/services/base.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.base_services = {
|
||||||
|
services.upower.enable = true;
|
||||||
|
services.blueman.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
16
modules/system/services/easyroam.nix
Normal file
16
modules/system/services/easyroam.nix
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
{ inputs, ... }: {
|
||||||
|
flake.nixosModules.easyroam = { config, ... }: {
|
||||||
|
imports = [
|
||||||
|
inputs.nix-easyroam.nixosModules.nix-easyroam
|
||||||
|
];
|
||||||
|
services.easyroam = {
|
||||||
|
enable = true;
|
||||||
|
pkcsFile = config.age.secrets.easyroam.path;
|
||||||
|
networkmanager.enable = true;
|
||||||
|
};
|
||||||
|
systemd.services.wpa_supplicant = {
|
||||||
|
wants = [ "easyroam-cert-setup.service" ];
|
||||||
|
after = [ "easyroam-cert-setup.service" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
modules/system/services/pipewire.nix
Normal file
10
modules/system/services/pipewire.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.pipewire = {
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
8
modules/system/services/tlp.nix
Normal file
8
modules/system/services/tlp.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.tlp = {
|
||||||
|
services.tlp = {
|
||||||
|
enable = true;
|
||||||
|
pd.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
22
modules/system/stylix/default.nix
Normal file
22
modules/system/stylix/default.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
{ inputs, ... }: {
|
||||||
|
flake.nixosModules.myStylix = { pkgs, ... }: {
|
||||||
|
imports = [
|
||||||
|
inputs.stylix.nixosModules.stylix
|
||||||
|
];
|
||||||
|
stylix = {
|
||||||
|
enable = true;
|
||||||
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
|
||||||
|
cursor = {
|
||||||
|
name = "macOS";
|
||||||
|
package = pkgs.apple-cursor;
|
||||||
|
size = 24;
|
||||||
|
};
|
||||||
|
icons = {
|
||||||
|
enable = true;
|
||||||
|
dark = "Papirus-Dark";
|
||||||
|
light = "Papirus-Light";
|
||||||
|
package = pkgs.papirus-icon-theme;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
25
modules/system/stylix/fonts.nix
Normal file
25
modules/system/stylix/fonts.nix
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.stylix_fonts = { pkgs, config, ... }: {
|
||||||
|
stylix.fonts = {
|
||||||
|
serif = {
|
||||||
|
package = config.stylix.fonts.monospace.package;
|
||||||
|
name = config.stylix.fonts.monospace.name;
|
||||||
|
};
|
||||||
|
|
||||||
|
sansSerif = {
|
||||||
|
package = config.stylix.fonts.monospace.package;
|
||||||
|
name = config.stylix.fonts.monospace.name;
|
||||||
|
};
|
||||||
|
|
||||||
|
monospace = {
|
||||||
|
package = pkgs.iosevka;
|
||||||
|
name = "Iosevka";
|
||||||
|
};
|
||||||
|
|
||||||
|
emoji = {
|
||||||
|
package = pkgs.noto-fonts-color-emoji;
|
||||||
|
name = "Noto Color Emoji";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
14
modules/system/stylix/targets.nix
Normal file
14
modules/system/stylix/targets.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
{ inputs, ... }: {
|
||||||
|
flake.nixosModules.stylixTargets = {
|
||||||
|
stylix.autoEnable = false;
|
||||||
|
stylix.targets = {
|
||||||
|
gtk.enable = true;
|
||||||
|
chromium.enable = true;
|
||||||
|
console.enable = true;
|
||||||
|
font-packages.enable = true;
|
||||||
|
fontconfig.enable = true;
|
||||||
|
limine.enable = true;
|
||||||
|
limine.image.enable = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
BIN
modules/system/stylix/wallpaper.png
Normal file
BIN
modules/system/stylix/wallpaper.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3 MiB |
|
|
@ -1,9 +0,0 @@
|
||||||
{
|
|
||||||
age = {
|
|
||||||
enable = true;
|
|
||||||
identityPaths = [ "/var/lib/misc/key.age" ];
|
|
||||||
secrets = {
|
|
||||||
easyroam.file = ./easyroam.age;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Loading…
Reference in a new issue