Compare commits

..

No commits in common. "main" and "x" have entirely different histories.
main ... x

19 changed files with 518 additions and 410 deletions

View file

@ -30,13 +30,9 @@
time.timeZone = "Europe/Berlin";
services.openssh.enable = true;
networking.firewall.enable = true;
nixpkgs.config.permittedInsecurePackages = [
"openssl-1.0.2u"
"python3.10-kerberos-1.3.1"
];
nixpkgs.config.permittedInsecurePackages = [ "openssl-1.0.2u" ];
# removed for mobile working
# system.autoUpgrade.enable = true;

View file

@ -1,34 +1,24 @@
font:
normal:
family: CaskaydiaCove Nerd Font
size: 8
size: 12
draw_bold_text_with_bright_colors: true
colors:
primary:
background: '0xf8f8f8'
foreground: '0x2a2b33'
background: "0x19181A"
foreground: "0xFCFCFA"
normal:
black: '0x000000'
red: '0xde3d35'
green: '0x3e953a'
yellow: '0xd2b67b'
blue: '0x2f5af3'
magenta: '0xa00095'
cyan: '0x3e953a'
white: '0xbbbbbb'
bright:
black: '0x000000'
red: '0xde3d35'
green: '0x3e953a'
yellow: '0xd2b67b'
blue: '0x2f5af3'
magenta: '0xa00095'
cyan: '0x3e953a'
white: '0xffffff'
black: "0x19181A"
red: "0xcc6666"
green: "0xa9dc76"
yellow: "0xffd866"
cyan: "0x78dce8"
magenta: "0xFC9867"
blue: "0xAB9DF2"
white: "0xFCFCFA"
window:
dynamic_title: true

167
dotfiles/i3/config Normal file
View file

@ -0,0 +1,167 @@
# config
set $mod Mod1
set $left h
set $down j
set $up k
set $right l
set $term alacritty
set $wallpaper /home/stefan/Downloads/bg.jpg
set $lock swaylock -t -i $wallpaper --scaling=fill
set $font CaskaydiaCove Nerd Font 10
set $menucolor --ff=#f8f8f2 --nf=#f8f8f2 --tf=#bd93f9 --hf=#bd93f9 --tb=#282a36 --fb=#282a36 --nb=#282a36 --hb=#282a36 --sb=#282a36
set $menu dmenu_run
#input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de
#input "0:0:TUXEDO_Keyboard" xkb_layout de
#
#output * bg $wallpaper fill
#output "BenQ Corporation BenQ SW2700 83H03922SL0" res --custom 2560x1440@60Hz
#output "Dell Inc. Dell U4919DW HZVZWP2" res 5120x1440
# user keybinds
bindsym $mod+Return exec $term
bindsym $mod+Shift+q kill
bindsym $mod+d exec $menu
floating_modifier $mod normal
bindsym $mod+Shift+c reload
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
bindsym $mod+o exec keepassxc
bindsym $mod+z exec $lock
bindsym $mod+Up exec light -A 5
bindsym $mod+Down exec light -U 5
bindsym $mod+c exec alacritty --class float -t pyCalc -e python
bindsym $mod+i exec alacritty --class float -t insect -e insect
bindsym $mod+Space exec swayr switch-to
bindsym $mod+n exec swayr switch-to-urgent-or-lru-window
bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png
#bindswitch --reload --locked lid:on output eDP-1 disable
#bindswitch --reload --locked lid:off output eDP-1 enable
# app rules
#for_window [app_id="org.keepassxc.KeePassXC"] floating enable
#for_window [title="Firefox — Sharing Indicator"] floating enable
#for_window [title="Picture-in-Picture"] floating enable
#for_window [title="pyCalc"] floating enable
#for_window [title="insect"] floating enable
# font
font $font
# colors
set $black #282a36
set $red #ff6188
set $cyan #78dce8
set $white #fcfcfa
set $yellow #f1fa8c
set $violet #bd93f9
set $black2 #323232
# border backgnd text indicator childborder
client.focused $violet $black $white $violet $violet
client.focused_inactive $black $black $white $black2 $black
client.unfocused $black $black $white $black2 $black
client.urgent $red $red $black $black2 $white
# movement
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
bindsym $mod+1 workspace 1
bindsym $mod+2 workspace 2
bindsym $mod+3 workspace 3
bindsym $mod+4 workspace 4
bindsym $mod+5 workspace 5
bindsym $mod+6 workspace 6
bindsym $mod+7 workspace 7
bindsym $mod+8 workspace 8
bindsym $mod+9 workspace 9
bindsym $mod+0 workspace 10
bindsym $mod+Shift+1 move container to workspace 1
bindsym $mod+Shift+2 move container to workspace 2
bindsym $mod+Shift+3 move container to workspace 3
bindsym $mod+Shift+4 move container to workspace 4
bindsym $mod+Shift+5 move container to workspace 5
bindsym $mod+Shift+6 move container to workspace 6
bindsym $mod+Shift+7 move container to workspace 7
bindsym $mod+Shift+8 move container to workspace 8
bindsym $mod+Shift+9 move container to workspace 9
bindsym $mod+Shift+0 move container to workspace 10
bindsym $mod+b splith
bindsym $mod+v splitv
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
bindsym $mod+f fullscreen
bindsym $mod+Shift+space floating toggle
bindsym $mod+space focus mode_toggle
bindsym $mod+a focus parent
bindsym $mod+Shift+minus move scratchpad
bindsym $mod+minus scratchpad show
mode "resize" {
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
mode "umlaut" {
bindsym s exec wtype ß
bindsym a exec wtype ä
bindsym o exec wtype ö
bindsym u exec wtype ü
bindsym Shift+a exec wtype Ä
bindsym Shift+o exec wtype Ö
bindsym Shift+u exec wtype Ü
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+u mode "umlaut"
bar {
font $font
position bottom
colors {
background $black
statusline $white
separator $violet
# border back text
focused_workspace $violet $violet $black
active_workspace $violet $violet $black
urgent_workspace $red $red $white
inactive_workspace $black $black $white
}
status_command i3status-rs /etc/sway/status.toml
}
set $gnome-schema org.gnome.desktop.interface
exec_always {
gsettings set $gnome-schema gtk-theme 'Dracula'
gsettings set $gnome-schema icon-theme 'Dracula'
gsettings set $gnome-schema cursor-theme 'Capitaine Cursors - White'
}
# autostarts
exec dunst
exec emacs --daemon
#exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1
exec systemctl --user import-environment DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR
exec bash -c '[ "$HOSTNAME" == sphere ] && cloudstation'
#exec swayrd
# pastebin
#exec wl-paste --primary -t text --watch clipman store
#bindsym $mod+p exec clipman pick -t "bemenu" --tool-args='-b --fn "$font" -l 10 $menucolor'

107
dotfiles/i3/status.toml Normal file
View file

@ -0,0 +1,107 @@
[theme]
name = "plain"
[theme.overrides]
idle_bg = "#282a36"
idle_fg = "#f8f8f2"
info_bg = "#282a36"
info_fg = "#f8f8f2"
good_bg = "#282a36"
good_fg = "#50fa7b"
warning_bg = "#282a36"
warning_fg = "#f1fa8c"
critical_bg = "#282a36"
critical_fg = "#ff5555"
separator_bg = "#282a36"
separator_fg = "#bd93f9"
separator = "|"
[icons]
name = "none"
[icons.overrides]
backlight_empty = ""
backlight_full = ""
backlight_partial1 = ""
backlight_partial2 = ""
backlight_partial3 = ""
bat = ""
bat_charging = ""
bat_discharging = ""
bat_empty = ""
bat_quarter = ""
bat_half = ""
bat_three_quarters = ""
bat_full = ""
cogs = "龍"
disk_drive = ""
headphones = "  "
memory_mem = ""
net_down = "DOWN"
net_up = "UP"
net_vpn = " "
net_wired = ""
net_wireless = " "
thermometer = "  "
time = ""
volume_empty = ""
volume_full = ""
volume_half = ""
volume_muted= " MUTE"
[[block]]
block = "net"
device = "wg"
hide_inactive = true
hide_missing = true
[[block]]
block = "net"
device = "wlo1"
hide_inactive = true
hide_missing = true
[[block]]
block = "custom"
command = '''echo " $(cat /sys/class/thermal/thermal_zone0/temp | head -c 2) °C"'''
[[block]]
block = "disk_space"
path = "/"
info_type = "available"
unit = "GB"
format = "{icon} {available}"
interval = 20
warning = 20.0
alert = 10.0
[[block]]
block = "memory"
display_type = "memory"
format_mem = "{mem_total_used_percents}"
icons_format = " {icon}"
clickable = false
[[block]]
block = "load"
interval = 1
format = "{1m}"
[[block]]
block = "sound"
driver = "pulseaudio"
[[block]]
block = "backlight"
[[block]]
block = "battery"
device = "BAT0"
interval = 10
format = "{percentage} ({time})"
full_format = "{percentage} ({time}) "
icons_format = " {icon} "
[[block]]
block = "time"
interval = 60
format = "%Y-%m-%d %H:%M"

View file

@ -1,47 +1,22 @@
# colors
set $black #000000
set $red #e75544
set $cyan #3c74f6
set $white #fafafa
set $yellow #908550
set $violet #a73ca6
#set $black2 #323232
set $white2 #f0f0f0
# config
set $mod Mod1
set $left h
set $down j
set $up k
set $right l
#set $term wezterm
set $term alacritty
set $wallpaper /home/stefan/wall.png
set $wallpaper /home/stefan/Downloads/bg.jpg
set $lock swaylock -t -i $wallpaper --scaling=fill
set $font CaskaydiaCove Nerd Font 10
set $menucolor -H 23 -b \
--tf=$white --tb=$cyan \
--ff=$black --fb=$white \
--cf=$cyan --cb=$white \
--nf=$black --nb=$white \
--af=$black --ab=$white2 \
--hf=$white --hb=$cyan \
--sf=$white --sb=$cyan
set $menu bemenu-run -p run $menucolor
set $otpmenu ykman oath accounts code -s "$(ykman oath accounts list | bemenu -i $menucolor)" | wl-copy
font $font
set $menucolor --ff=#f8f8f2 --nf=#f8f8f2 --tf=#bd93f9 --hf=#bd93f9 --tb=#282a36 --fb=#282a36 --nb=#282a36 --hb=#282a36 --sb=#282a36
set $menu bemenu-run -H 23 -b -p run $menucolor
input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de
input "0:0:TUXEDO_Keyboard" xkb_layout de
input 1130:35:HID_046a:0023 xkb_layout de
input "2362:628:PIXA3854:00_093A:0274_Touchpad" click_method clickfinger
output * bg $wallpaper fill
output "BenQ Corporation BenQ SW2700 83H03922SL0" res --custom 2560x1440@60Hz
output "BenQ Corporation BenQ SW2700 83H03922SL0" pos 1440 720
output "BNQ BenQ PD2705Q W4N00777019" pos 0 0
output "Dell Inc. Dell U4919DW HZVZWP2" res 5120x1440
output eDP-1 scale 1.25
# user keybinds
bindsym $mod+Return exec $term
@ -51,14 +26,13 @@ floating_modifier $mod normal
bindsym $mod+Shift+c reload
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
bindsym $mod+o exec keepassxc
bindsym $mod+Shift+o exec $otpmenu
bindsym $mod+z exec $lock
bindsym $mod+Up exec light -A 5
bindsym $mod+Down exec light -U 5
bindsym $mod+c exec alacritty --class float -t pyCalc -e python
bindsym $mod+i exec alacritty --class float -t insect -e insect
bindsym $mod+m exec swayr switch-to
bindsym $mod+n exec emacsclient -cn
bindsym $mod+Space exec swayr switch-to
bindsym $mod+n exec swayr switch-to-urgent-or-lru-window
bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png
bindswitch --reload --locked lid:on output eDP-1 disable
bindswitch --reload --locked lid:off output eDP-1 enable
@ -70,11 +44,23 @@ for_window [title="Picture-in-Picture"] floating enable
for_window [title="pyCalc"] floating enable
for_window [title="insect"] floating enable
# font
font $font
# colors
set $black #282a36
set $red #ff6188
set $cyan #78dce8
set $white #fcfcfa
set $yellow #f1fa8c
set $violet #bd93f9
set $black2 #323232
# border backgnd text indicator childborder
client.focused $cyan $white $black $violet $cyan
client.focused_inactive $white2 $white2 $black $white2 $white
client.unfocused $white2 $white2 $black $white2 $white
client.urgent $red $red $white $white2 $black
client.focused $violet $black $white $violet $violet
client.focused_inactive $black $black $white $black2 $black
client.unfocused $black $black $white $black2 $black
client.urgent $red $red $black $black2 $white
# movement
@ -148,38 +134,37 @@ bar {
font $font
position bottom
colors {
background $white
statusline $black
separator $cyan
background $black
statusline $white
separator $violet
# border back text
focused_workspace $cyan $cyan $white
active_workspace $cyan $cyan $white
urgent_workspace $red $red $black
inactive_workspace $white $white $black
focused_workspace $violet $violet $black
active_workspace $violet $violet $black
urgent_workspace $red $red $white
inactive_workspace $black $black $white
}
status_command i3status-rs /etc/sway/status.toml
}
set $gnome-schema org.gnome.desktop.interface
exec_always {
gsettings set $gnome-schema cursor-theme Adwaita
gsettings set $gnome-schema icon-theme 'capitaine-cursors-white'
gsettings set $gnome-schema cursor-theme 'capitaine-cursors-white'
gsettings set $gnome-schema gtk-theme 'Dracula'
gsettings set $gnome-schema icon-theme 'Dracula'
gsettings set $gnome-schema cursor-theme 'Capitaine Cursors - White'
}
# autostarts
exec swaync
exec mako --font "$font" \
--background-color=$black \
--border-color=$violet \
--text-color=$white
exec emacs --daemon
exec swayidle before-sleep "$lock"
exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1
exec systemctl --user import-environment DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR
exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP
exec bash -c '[ "$HOSTNAME" == sphere ] && cloudstation'
exec swayrd
exec xinput set-prop "PIXA3854:00 093A:0274 Touchpad" 365 1
# pastebin
exec wl-paste --primary -t text --watch clipman store

View file

@ -1,61 +1,64 @@
[theme]
theme = "plain"
name = "plain"
[theme.overrides]
idle_bg = "#fafafa"
idle_fg = "#000000"
info_bg = "#fafafa"
info_fg = "#000000"
good_bg = "#fafafa"
good_fg = "#000000"
warning_bg = "#fafafa"
warning_fg = "#908550"
critical_bg = "#fafafa"
critical_fg = "#e75544"
separator_bg = "#fafafa"
separator_fg = "#3c74f6"
idle_bg = "#282a36"
idle_fg = "#f8f8f2"
info_bg = "#282a36"
info_fg = "#f8f8f2"
good_bg = "#282a36"
good_fg = "#50fa7b"
warning_bg = "#282a36"
warning_fg = "#f1fa8c"
critical_bg = "#282a36"
critical_fg = "#ff5555"
separator_bg = "#282a36"
separator_fg = "#bd93f9"
separator = "|"
[icons]
icons = "none"
name = "none"
[icons.overrides]
backlight = [
"󰌶",
"󱩏",
"󱩒",
"󱩕",
"󰛨",
]
bat = [
"󱃍 ",
"󰁻",
"󰁾",
"󰂁",
"󰁹",
]
bat_charging = ""
cogs = ""
disk_drive = "󱛟"
headphones = "  "
memory_mem = "󰍛"
net_down = "󰅛"
net_up = "󰱓"
backlight_empty = ""
backlight_full = ""
backlight_partial1 = ""
backlight_partial2 = ""
backlight_partial3 = ""
bat = ""
bat_charging = ""
bat_discharging = ""
bat_empty = ""
bat_quarter = ""
bat_half = ""
bat_three_quarters = ""
bat_full = ""
cogs = "龍"
disk_drive = ""
headphones = "  "
memory_mem = ""
net_down = "DOWN"
net_up = "UP"
net_vpn = " "
net_wired = ""
net_wireless = " 󰖩"
thermometer = " 󰔏 "
time = "󰥔"
volume_muted = "󰖁 MUTE"
volume = [
"",
"󰕾",
"",
]
net_wireless = " "
thermometer = "  "
time = ""
volume_empty = ""
volume_full = ""
volume_half = ""
volume_muted= " MUTE"
[[block]]
block = "net"
device = "wlp166s0"
format = " $icon $ip$frequency "
device = "wg"
hide_inactive = true
hide_missing = true
[[block]]
block = "net"
device = "wlo1"
hide_inactive = true
hide_missing = true
[[block]]
block = "custom"
@ -65,19 +68,23 @@ command = '''echo " $(cat /sys/class/thermal/thermal_zone0/temp | head -c 2)
block = "disk_space"
path = "/"
info_type = "available"
format = " $icon $available "
unit = "GB"
format = "{icon} {available}"
interval = 20
warning = 20.0
alert = 10.0
[[block]]
block = "memory"
format = " $icon $mem_used/$mem_total "
display_type = "memory"
format_mem = "{mem_total_used_percents}"
icons_format = " {icon}"
clickable = false
[[block]]
block = "load"
interval = 1
format = " $icon $1m "
format = "{1m}"
[[block]]
block = "sound"
@ -88,23 +95,13 @@ block = "backlight"
[[block]]
block = "battery"
device = "BAT1"
device = "BAT0"
interval = 10
format = " $icon $percentage ($time) "
full_format = " $icon $percentage "
format = "{percentage} ({time})"
full_format = "{percentage} ({time}) "
icons_format = " {icon} "
[[block]]
block = "time"
interval = 60
format = " $timestamp.datetime(f:'%Y-%m-%d %H:%M') "
[[block]]
block = "notify"
driver = "swaync"
format = " $icon {($notification_count.eng(w:1)) |}"
[[block.click]]
button = "left"
action = "show"
[[block.click]]
button = "right"
action = "toggle_paused"
format = "%Y-%m-%d %H:%M"

View file

@ -1,39 +0,0 @@
local wezterm = require 'wezterm';
return {
audible_bell = "Disabled",
bold_brightens_ansi_colors = true,
color_scheme = "One Light (base16)",
enable_tab_bar = false,
enable_wayland = true,
font_size = 12,
font = wezterm.font("CaskaydiaCove Nerd Font"),
window_background_opacity = 0.97,
window_close_confirmation = 'NeverPrompt',
default_prog = { '/run/current-system/sw/bin/bash' },
keys = {
{
key = 'Escape',
mods = 'CTRL',
action = wezterm.action.QuickSelect,
},
},
window_padding = {
left = 0,
right = 0,
top = 0,
bottom = 0,
},
quick_select_patterns = {
'^([^ ]+) +(?:ClusterIP|Bound)',
'^([^ ]+) +(?:[0-9]+/[0-9]+)',
'^([^ ]+) +(?:[0-9]+ )',
'^([^ ]+) +(?:Opaque|kubernetes\\.io|helm\\.sh)',
'^([^ ]+) +(?:Active)',
'[^ ]+@[^ ]+.service',
'git push.*',
},
}

View file

@ -1,84 +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, ... }:
let
#nixkernel = import <nixos-kernel> {};
in
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "uas" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" "i915" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "workpool/nixos/root";
fsType = "zfs";
};
fileSystems."/home" =
{ device = "workpool/nixos/home";
fsType = "zfs";
};
fileSystems."/var/lib/docker" =
{ device = "workpool/nixos/docker";
fsType = "zfs";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/AA17-42AD";
fsType = "vfat";
};
swapDevices =
[ { device = "/dev/disk/by-uuid/18ae41eb-e32e-46a3-9e22-3395c37782df"; }
];
# 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.wlp166s0.useDHCP = lib.mkDefault true;
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
# custom
boot.loader.systemd-boot.enable = true;
networking.hostId = "f0000001";
networking.hostName = "sphere";
services.tlp.enable = true;
services.hardware.bolt.enable = true;
# framework hardware
#boot.kernelPackages = nixkernel.linuxPackages_5_19;
#boot.kernelPackages = pkgs.linuxPackages_latest;
boot.kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages;
boot.kernelParams = [
"mem_sleep_default=deep"
"nvme.noacpi=1"
"i915.enable_psr=1"
];
boot.blacklistedKernelModules = [ "hid-sensor-hub" ];
hardware.acpilight.enable = true;
services.xserver.dpi = 125;
environment.variables = {
VDPAU_DRIVER = lib.mkIf config.hardware.opengl.enable (lib.mkDefault "va_gl");
};
hardware.graphics.extraPackages = with pkgs; [
vaapiIntel
libvdpau-va-gl
intel-media-driver
];
services.tlp.settings = {
CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
CPU_ENERGY_PERF_POLICY_ON_BAT = "performance";
};
}

27
packages/helm2.nix Normal file
View file

@ -0,0 +1,27 @@
with import <nixpkgs> { };
stdenv.mkDerivation rec {
name = "helm2";
version = "2.14.3";
src = fetchurl {
url = "https://get.helm.sh/helm-v${version}-linux-amd64.tar.gz";
sha256 = "38614a665859c0f01c9c1d84fa9a5027364f936814d1e47839b05327e400bf55";
};
nativeBuildInputs = [ autoPatchelfHook ];
unpackPhase = ''
tar xvpzf $src
'';
installPhase = ''
install -m 755 -D linux-amd64/helm $out/bin/helm2
'';
meta = with lib; {
homepage = "https://helm.sh";
description = "helms depricated v2 verison";
platforms = platforms.linux;
maintainers = with maintainers; [ foosinn ];
};
}

View file

@ -1,40 +1,37 @@
{ lib, fetchFromGitHub, python311Packages, wrapQtAppsHook, pkgs }:
{ lib, fetchFromGitHub, python39Packages, wrapQtAppsHook }:
let
pname = "nagstamon";
version = "v3.12.0";
in python311Packages.buildPythonApplication rec {
version = "v3.8.0";
in python39Packages.buildPythonApplication rec {
inherit pname;
inherit version;
src = fetchFromGitHub {
owner = "HenriWahl";
repo = "Nagstamon";
rev = version;
sha256 = "sha256-SI0FPTqJquaVyl/gpp883eGLq7tZ6J0fqn0jp77M8GM=";
rev = "${version}";
sha256 = "0a8aqw44z58pabsgxlvndnmzzvc50wrb4g12yp6zgajn40b2l8pw";
};
doCheck = false;
nativeBuildInputs = [ wrapQtAppsHook ];
postFixup = ''
makeQtWrapper $out/bin/nagstamon.py $out/bin/nagstamon
wrapQtApp $out/bin/nagstamon.py
'';
propagatedBuildInputs = [
python311Packages.beautifulsoup4
python311Packages.configparser
python311Packages.dateutil
python311Packages.keyring
python311Packages.lxml
python311Packages.psutil
python311Packages.pyqt5_with_qtmultimedia
python311Packages.requests
python311Packages.requests-kerberos
python311Packages.setuptools
python311Packages.xlib
pkgs.libsForQt5.qt5.qtwayland
propagatedBuildInputs = with python39Packages; [
beautifulsoup4
configparser
dateutil
keyring
lxml
psutil
pyqt5_with_qtmultimedia
requests
setuptools
xlib
];
meta = with lib; {
@ -45,3 +42,4 @@ in python311Packages.buildPythonApplication rec {
inherit version;
};
}

View file

@ -98,7 +98,7 @@ neovim.override {
noremap <leader>ml :fzf_lsp_layout<cr>
let g:which_key_map.g = { 'name': '+git' }
noremap <leader>gs :call LazyGit<cr>
noremap <leader>gs :!lazygit
" lang specifics
let g:rustfmt_autosave = 1
@ -110,11 +110,10 @@ neovim.override {
airline
easymotion
editorconfig-vim
fzf-lsp-nvim
fzf-vim
fzfWrapper
fzf-vim
fzf-lsp-nvim
LanguageClient-neovim
lazygit-nvim
ncm2
nnn-vim
surround

View file

@ -1,6 +1,6 @@
{ pkgs, options, ... }:
let
let unstable = import <nixos-unstable> { };
in {
environment.systemPackages = with pkgs; [
cryptsetup
@ -9,20 +9,16 @@ in {
k9s
kind
kubectl
kubectx
kubeseal
nmap
pwgen
terraform
whois
ipcalc
argocd
kubernetes-helm
kustomize
pre-commit
terraform-ls
vault
unstable.argocd
unstable.kubernetes-helm
unstable.kustomize
unstable.terraform-ls
unstable.vault
docker-compose
fuse-overlayfs
@ -30,23 +26,13 @@ in {
virt-manager
(import ../packages/skaffold.nix)
(import ../packages/helm2.nix)
(import ../packages/certmanager.nix)
];
programs.bash.shellAliases = {
kx = "kubectx";
kns = "kubens";
};
virtualisation.docker = {
enable = true;
storageDriver = "zfs";
};
virtualisation.libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
};
};
virtualisation.libvirtd.enable = true;
}

View file

@ -49,7 +49,6 @@ in {
EDITOR = "nvim";
STARSHIP_CONFIG = "/etc/starship.toml";
HISTCONTROL = "ignoreboth";
NIXOS_OZONE_WL = "y";
};
};
@ -90,8 +89,6 @@ in {
alias ls="ls --color=auto"
alias vim="nvim"
alias k="kubectl"
alias n="nix-shell -p"
alias nu="nix-shell -I nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixos-unstable -p"
sink() {
VAULT_TOKEN=$(vault token lookup -format=json | jq -r .data.id) \
@ -141,12 +138,7 @@ in {
services.fwupd.enable = true;
services.resolved.enable = true;
services.lorri.enable = true;
systemd.user.services.lorri.serviceConfig = {
ProtectSystem = pkgs.lib.mkForce "full";
ProtectHome = pkgs.lib.mkForce false;
};
security.wrappers.gvfsd-nfs = {
source = "${pkgs.gnome.gvfs}/libexec/gvfsd-nfs";
@ -182,4 +174,5 @@ in {
LC_IDENTIFICATION = "de_DE.UTF-8";
};
};
}

View file

@ -1,4 +1,4 @@
#g Do not modify this file! It was generated by nixos-generate-config
# 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, ... }:
@ -7,12 +7,43 @@ let
colors = config.colors;
schema = pkgs.gsettings-desktop-schemas;
datadir = "${schema}/share/gsettings-schemas/${schema.name}";
unstable = import <nixos-unstable> { config.allowUnfree = true; };
in
{
programs.droidcam.enable = true;
services.autorandr.enable = true;
services.xserver = {
enable = true;
dpi = 96;
displayManager = {
sddm.enable = true;
defaultSession = "none+i3";
};
libinput = {
enable = true;
};
windowManager.i3 = {
enable = true;
extraPackages = with pkgs; [
autorandr
dmenu
dunst
feh
i3lock
i3status-rust
maim
xclip
];
};
};
programs.dconf.enable = true;
programs.sway = {
enable = true;
wrapperFeatures.gtk = true;
extraPackages = with pkgs; [
bemenu
brightnessctl
@ -25,15 +56,19 @@ in
slurp
swayidle
swaylock
swaynotificationcenter
swayr
wf-recorder
wofi
xwayland
];
extraSessionCommands = "";
};
xdg.portal.enable = true;
xdg.portal = {
enable = true;
gtkUsePortal = true;
extraPortals = with pkgs; [ xdg-desktop-portal-gtk xdg-desktop-portal-wlr ];
};
boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ];
colors = {
@ -51,6 +86,7 @@ in
environment = {
etc = {
"i3/config".source = ../dotfiles/i3/config;
"sway/config".source = ../dotfiles/sway/config;
"sway/status.toml".source = ../dotfiles/sway/status.toml;
"xdg/alacritty/alacritty.yml".text = ''
@ -86,19 +122,23 @@ in
key_bindings:
- { key: Escape, mods: Control, action: ToggleViMode }
'';
"wezterm.lua".source = ../dotfiles/wezterm.lua;
};
};
qt.platformTheme = "qt5ct";
programs.qt5ct.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
security.polkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
pulse.enable = true;
jack.enable = true;
config.pipewire = {
"context.properties" = { "default.clock.rate" = 48000; };
};
};
services.udev.packages = [
(pkgs.writeTextFile {
@ -109,11 +149,10 @@ in
destination = "/etc/udev/rules.d/80-uinput.rules";
})
];
services.ratbagd.enable = true;
fonts.enableDefaultPackages = true;
fonts.enableDefaultFonts = true;
fonts.fontconfig.antialias = true;
fonts.packages = with pkgs; [
fonts.fonts = with pkgs; [
corefonts
emacs-all-the-icons-fonts
fira-code
@ -155,10 +194,8 @@ in
libsForQt5.qtstyleplugins
lxappearance
numix-icon-theme
numix-cursor-theme
alacritty
gimp
imv
inkscape
keepassxc
@ -170,10 +207,8 @@ in
nodePackages.insect
pavucontrol
pcmanfm
pulseeffects-pw
qrencode
remmina
wezterm
uxplay
solaar
gdk-pixbuf
@ -181,7 +216,7 @@ in
clipman
wdisplays
wl-clipboard
xdg-utils
xdg_utils
xfce.thunar
xfce.thunar-volman
wtype
@ -202,7 +237,6 @@ in
export QT_QPA_PLATFORM=wayland-egl
export QT_WAYLAND_FORCE_DPI=96
export SDL_VIDEODRIVER=wayland
export WEZTERM_CONFIG_FILE=/etc/wezterm.lua
export XDG_CURRENT_DESKTOP=sway
export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS
export XDG_SESSION_TYPE=wayland
@ -225,14 +259,8 @@ in
services.printing.enable = true;
services.printing.drivers = [ pkgs.gutenprint ];
services.avahi = {
enable = true;
nssmdns4 = true;
publish = {
enable = true;
addresses = true;
workstation = true;
userServices = true;
};
};
services.avahi.enable = true;
services.avahi.nssmdns = true;
hardware.opengl = { enable = true; };
}

View file

@ -1,42 +1,40 @@
{ config, lib, buildPythonPackage, pkgs, fetchPypi,... }:
{ config, lib, pkgs, ... }:
let
unstable = import <nixos-unstable> { };
let unstable = import <nixos-unstable> { };
in {
services.emacs.package = pkgs.emacs29-pgtk;
environment.systemPackages = with pkgs; [
gnumake
go
go_1_17
rustup
shellcheck
unstable.golangci-lint
unstable.gopls
unstable.rust-analyzer
#unstable.esphome
(python311.withPackages
unstable.nodePackages.pyright
(python39.withPackages
(python-packages: with python-packages; [
black
diagrams
pymemcache
pyyaml
requests
ruff-lsp
])
)
]))
mariadb-client
musl
dbeaver-bin
emacs29-pgtk
dbeaver
emacs
gitAndTools.delta
lazygit
ltrace
parallel
sops
tig
unstable.bazel
openssl
pkg-config

View file

@ -1,6 +1,7 @@
{ config, lib, pkgs, ... }:
let
unstable = import <nixos-unstable> { config.allowUnfree = true; };
notcoal = pkgs.callPackage ../packages/notcoal { };
in {
environment.systemPackages = with pkgs; [
@ -10,7 +11,7 @@ in {
notmuch
notcoal
thunderbird
astroid
unstable.astroid
vdirsyncer
];
}

View file

@ -1,6 +1,6 @@
{ config, lib, pkgs, ... }:
let
let unstable = import <nixos-unstable> { config.allowUnfree = true; };
in {
networking.networkmanager.enable = true;
@ -9,6 +9,5 @@ in {
environment.systemPackages = with pkgs; [
networkmanagerapplet
networkmanager-vpnc
openconnect_openssl
];
}

View file

@ -1,6 +1,7 @@
{ config, lib, pkgs, ... }:
let
unstable = import <nixos-unstable> { };
openscad-ls = pkgs.callPackage ../packages/openscad-language-server.nix { };
in
{

View file

@ -3,29 +3,10 @@
let
unstable = import <nixos-unstable> { config.allowUnfree = true; };
cloudstation = pkgs.callPackage (import ../packages/cloudstation.nix) { };
nagstamon = pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) { };
myslack = pkgs.slack.overrideAttrs (oldAttrs: rec {
fixupPhase = ''
sed -i -e 's/,"WebRTCPipeWireCapturer"/,"LebRTCPipeWireCapturer"/' $out/lib/slack/resources/app.asar
rm $out/bin/slack
makeWrapper $out/lib/slack/slack $out/bin/slack \
--prefix XDG_DATA_DIRS : $GSETTINGS_SCHEMAS_PATH \
--suffix PATH : ${lib.makeBinPath [ pkgs.xdg-utils ]} \
--add-flags "--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations,WebRTCPipeWireCapturer"
'';
});
nagstamon =
pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) { };
in {
environment.variables = {
USE_GKE_GCLOUD_AUTH_PLUGIN = "True";
};
services.tailscale = {
enable = true;
package = unstable.tailscale;
};
security.pki.certificateFiles = [
../dotfiles/certs/NetzmarktCA.crt
../dotfiles/certs/vcenter.netzmarkt.lan.crt
@ -40,18 +21,8 @@ in {
172.20.0.2 grafana.kind
172.20.0.2 alert.kind
#192.168.2.111 hass.home.f2o.io
#192.168.2.111 sync.home.f2o.io
192.168.2.111 pl.home.f2o.io
#127.0.0.1 auth-dev.thobits.com
127.0.0.1 database
127.0.0.1 youtube.com
127.0.0.1 www.youtube.com
34.49.192.42 www.tbone.audio
34.49.192.42 jobs.thomann.de
'';
environment.systemPackages = with pkgs; [
@ -61,29 +32,17 @@ in {
# (import ../packages/vaultsink.nix) needs opensource verson
cloudstation
nagstamon
yubikey-manager
anydesk
chromium
nodejs
vscodium
drone-cli
go-jira
govc
ttyd
discord
(google-cloud-sdk.withExtraComponents [
google-cloud-sdk.components.gke-gcloud-auth-plugin
])
myslack
velero
unstable.discord
unstable.google-cloud-sdk
unstable.slack
unstable.velero
obs-studio
obs-studio-plugins.wlrobs
prusa-slicer
unstable.obs-studio
unstable.obs-studio-plugins.wlrobs
];
# yubikey support
services.udev.packages = [ pkgs.yubikey-personalization ];
services.pcscd.enable = true;
}