userconfig changes

This commit is contained in:
sascha.koenig 2025-08-28 07:41:04 +02:00
parent a1087f9522
commit d14d0b8a53
18 changed files with 228 additions and 25 deletions

View File

@ -103,10 +103,10 @@
inputs.disko.nixosModules.disko
];
};
AZ-LPT-100 = inputs.nixpkgs-unstable.lib.nixosSystem {
AZLT124-L = inputs.nixpkgs-unstable.lib.nixosSystem {
specialArgs = {inherit inputs outputs;};
modules = [
./hosts/AZ-LPT-100
./hosts/AZLT124-L
agenix.nixosModules.default
inputs.home-manager-unstable.nixosModules.home-manager
];

View File

@ -27,8 +27,10 @@
"application/pdf" = ["okularApplication_pdf.desktop"];
"application/md" = ["nvim.desktop"];
"application/text" = ["nvim.desktop"];
"x-scheme-handler/http" = ["io.github.zen_browser.zen"];
"x-scheme-handler/https" = ["io.github.zen_browser.zen"];
"x-scheme-handler/http" = ["vivaldi-stable.desktop"];
"x-scheme-handler/https" = ["vivaldi-stable.desktop"];
"text/html" = ["vivaldi-stable.desktop"];
"application/xhtml+xml" = ["vivaldi-stable.desktop"];
};
};
userDirs = {
@ -67,6 +69,11 @@
name = "Bibata-Modern-Ice";
size = 20;
};
services = {
cliphist = {
enable = true;
};
};
home.packages = with pkgs; [
appimage-run
@ -79,8 +86,10 @@
# eww
# firefox-devedition
file-roller
ksnip
hyprpaper-random
hyprpanel
launch-webapp
seahorse
sushi
# glib

View File

@ -1,4 +1,31 @@
{
home.file.".config/hypr/colors.conf".text = ''
$background = rgb(282A36)
$backgroundRaw = 282A36
$foreground = rgb(F8F8F2)
$foregroundRaw = F8F8F2
$selection = rgb(44475A)
$selectionRaw = 44475A
$comment = rgb(6272A4)
$commentRaw = 6272A4
$red = rgb(FF5555)
$redRaw = FF5555
$orange = rgb(FFB86C)
$orangeRaw = FFB86C
$yellow = rgb(F1FA8C)
$yellowRaw = F1FA8C
$green = rgb(50FA7B)
$greenRaw = 50FA7B
$purple = rgb(BD93F9)
$purpleRaw = BD93F9
$cyan = rgb(8BE9FD)
$cyanRaw = 8BE9FD
$pink = rgb(FF79C6)
$pinkRaw = FF79C6
$accent = $purple
$accentRaw = $purpleRaw
'';
wayland.windowManager.hyprland = {
settings = {
xwayland = {
@ -8,8 +35,8 @@
exec-once = [
"hyprpanel"
"hyprpaper"
"hyprpaper-random"
"hypridle"
"hyprpaper-random"
"wl-paste --type text --watch cliphist store" # Stores only text data
"wl-paste --type image --watch cliphist store" # Stores only image data "wl-paste -p -t text --watch clipman store -P --histpath=\"~/.local/share/clipman-primary.json\""
];
@ -39,7 +66,10 @@
gaps_out = 5;
border_size = 1;
"col.active_border" = "rgba(9742b5ee) rgba(9742b5ee) 45deg";
"col.inactive_border" = "rgba(595959aa)";
"col.inactive_border" = "rgba(44475aaa)";
"col.nogroup_border" = "rgba(282a36dd)";
"col.nogroup_border_active" = "rgb(bd93f9) rgb(44475a) 90deg";
no_border_on_floating = false;
layout = "dwindle";
};
@ -139,6 +169,7 @@
"noborder, initialTitle:.*streamlabs.com.*"
"noshadow, initialTitle:.*streamlabs.com.*"
"noblur, initialTitle:.*streamlabs.com.*"
"bordercolor rgb(ffffff),xwayland:1"
];
"$mainMod" = "SUPER";
@ -160,6 +191,7 @@
"$mainMod, F, fullscreen"
"$mainMod SHIFT, V, togglefloating"
"$mainMod, D, exec, rofi -show"
"$mainMod, C, exec, bash -c 'FILE=/tmp/screenshot_$(date +%s).png; grim -g \"$(slurp)\" \"$FILE\" && ksnip \"$FILE\"'"
"$mainMod, V, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy"
"$mainMod SHIFT, S, exec, bemoji"
"$mainMod, P, exec, rofi-pass"
@ -199,4 +231,98 @@
];
};
};
services.hypridle = {
enable = true;
settings = {
general = {
before_sleep_cmd = "loginctl lock-session";
after_sleep_cmd = "hyprctl dispatch dpms on";
inhibit_sleep = 3;
};
listener = [
{
timeout = 300; # 5 min
on-timeout = "loginctl lock-session";
}
{
timeout = 330; # 5.5 min
on-timeout = "hyprctl dispatch dpms off";
on-resume = "hyprctl dispatch dpms on";
}
];
};
};
programs.hyprlock = {
enable = true;
settings = {
source = "$HOME/.config/hypr/colors.conf";
"$font" = "JetBrainsMono Nerd Font";
"$base" = "$background";
"$text" = "$foreground";
"$textAlpha" = "$foregroundRaw";
"$accentAlpha" = "$accentRaw";
general = {
hide_cursor = true;
};
background = {
monitor = "";
path = "~/.hypr/wallpapers/wallhaven-lmmo8r_2560x1600.png";
blur_passes = 0;
color = "$base";
};
label = [
{
monitor = "";
text = "$TIME";
color = "$text";
font_size = 90;
font_family = "$font";
position = "30, 0";
halign = "left";
valign = "top";
}
{
monitor = "";
text = ''cmd[update:43200000] echo "$(date +"%A, %d %B %Y")"'';
color = "$text";
font_size = 25;
font_family = "$font";
position = "30, -150";
halign = "left";
valign = "top";
}
];
input-field = [
{
monitor = "";
size = "300, 60";
outline_thickness = 4;
dots_size = 0.2;
dots_spacing = 0.2;
dots_center = true;
outer_color = "$accent";
inner_color = "$background";
font_color = "$text";
fade_on_empty = false;
placeholder_text = ''<span foreground="##$textAlpha">󰌾 Logged in as <span foreground="##$accentAlpha">$USER</span></span>'';
hide_input = false;
check_color = "$accent";
fail_color = "$red";
fail_text = ''<i>$FAIL <b>($ATTEMPTS)</b></i>'';
capslock_color = "$yellow";
position = "0, -35";
halign = "center";
valign = "center";
}
];
};
};
}

View File

@ -17,19 +17,27 @@ in {
xdg.desktopEntries = {
teams = {
name = "Microsoft Teams";
exec = "vivaldi --app=https://teams.microsoft.com";
exec = "launch-webapp https://teams.microsoft.com";
comment = "Open Microsoft Teams as a Desktop App";
categories = ["Application" "Network" "Chat"];
terminal = false;
icon = icons.teams;
};
Outlook = {
outlook = {
name = "Microsoft Outlook";
exec = "vivaldi --app=https://outlook.office.com/mail/";
exec = "launch-webapp https://outlook.office.com/mail/";
comment = "Open Microsoft Outlook as a Desktop App";
categories = ["Application" "Network"];
terminal = false;
icon = icons.outlook;
};
basecamp = {
name = "Basecamp";
exec = "launch-webapp https://3.basecamp.com/5996442/";
comment = "Open Basecamp as a Desktop App";
categories = ["Application" "Network"];
terminal = false;
icon = "/home/sascha.koenig/.local/share/icons/basecamp-logo.png";
};
};
}

View File

@ -81,8 +81,12 @@ in {
"workspace 1,class:(com.obsproject.Studio)"
"workspace 3,class:dev.zed.Zed"
"workspace 5,opacity 1.0, class:(vivaldi-stable)"
"workspace 5,opacity 1.0, initialTitle:(3.basecamp.com_/5996442/)"
"tile, initialTitle:(3.basecamp.com_/5996442/)"
"workspace 6,opacity 1.0, initialTitle:(teams.microsoft.com_/)"
"tile, initialTitle:(teams.microsoft.com_/)"
"workspace 6,opacity 1.0, initialTitle:(outlook.office.com_/mail/)"
"tile, initialTitle:(outlook.office.com_/mail/)"
];
};
};

View File

@ -21,7 +21,10 @@
services.xserver.videoDrivers = ["amdgpu"];
security.polkit.enable = true;
security.pam.services.gdm.enableGnomeKeyring = true;
networking.hostName = "AZ-LPT-100";
networking = {
networkmanager.enable = true;
hostName = "AZLT124-L";
};
# Define your hostname.
# warp-terminal update fix
@ -31,8 +34,6 @@
# '';
# Pick only one of the below networking options.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
networking.networkmanager.enable =
true; # Easiest to use and most distros use this by default.
# Set your time zone.
time.timeZone = "Europe/Berlin";

View File

@ -44,7 +44,7 @@
home-manager = {
useUserPackages = true;
extraSpecialArgs = {inherit inputs outputs;};
users."sascha.koenig" = import ../../home/sascha.koenig/AZ-LPT-100.nix;
users."sascha.koenig" = import ../../home/sascha.koenig/AZLT124-L.nix;
};
# Configure nixpkgs to use unstable

View File

@ -5,8 +5,11 @@
}: {
environment.systemPackages = with pkgs; [
adcli # Helper library and tools for Active Directory client operations
realmd # Diagnostic command; Does not configure AD client on NixOS
samba # Standard Windows interoperability suite of programs for Linux and Unix
oddjob # Odd Job Daemon
samba4Full # Standard Windows interoperability suite of programs for Linux and Unix
sssd # System Security Services Daemon
krb5 # MIT Kerberos 5
realmd # DBus service for configuring Kerberos and other
];
#
@ -72,20 +75,15 @@
config_file_version = 2
services = nss, pam
[pam]
offline_credentials_expiration = 365
[domain/az-group]
override_shell = /run/current-system/sw/bin/zsh
krb5_store_password_if_offline = true
cache_credentials = true
account_cache_expiration = 365
entry_cache_timeout = 14400
krb5_store_password_if_offline = True
cache_credentials = True
krb5_realm = AZ-GROUP
realmd_tags = manages-system joined-with-samba
id_provider = ad
fallback_homedir = /home/%u
ad_domain = az-group
ad_domain = your_domain_lowercase
use_fully_qualified_names = false
ldap_id_mapping = false
auth_provider = ad
@ -96,4 +94,21 @@
'';
};
};
#
# Systemd
#
systemd = {
services.realmd = {
description = "Realm Discovery Service";
wantedBy = ["multi-user.target"];
after = ["network.target"];
serviceConfig = {
Type = "dbus";
BusName = "org.freedesktop.realmd";
ExecStart = "${pkgs.realmd}/libexec/realmd";
User = "root";
};
};
};
}

View File

@ -1,6 +1,7 @@
{pkgs, ...}: {
# Define your custom packages here
hyprpaper-random = pkgs.callPackage ./hyprpaper-random {};
launch-webapp = pkgs.callPackage ./launch-webapp {};
msty = pkgs.callPackage ./msty {};
msty-sidecar = pkgs.callPackage ./msty-sidecar {};
zellij-ps = pkgs.callPackage ./zellij-ps {};

View File

@ -0,0 +1,41 @@
{
lib,
stdenv,
writeShellScriptBin,
}: let
launcher = writeShellScriptBin "launch-webapp" ''
#!/usr/bin/env bash
browser=$(xdg-settings get default-web-browser)
case "$browser" in
google-chrome*) browser_bin="google-chrome" ;;
brave-browser*) browser_bin="brave-browser" ;;
microsoft-edge*) browser_bin="microsoft-edge" ;;
opera*) browser_bin="opera" ;;
vivaldi*) browser_bin="vivaldi" ;;
*) browser_bin="chromium" ;;
esac
exec_cmd="/etc/profiles/per-user/$USER/bin/$browser_bin"
exec setsid uwsm app -- "$exec_cmd" --app="$1" ''${@:2}
'';
in
stdenv.mkDerivation {
pname = "launch-webapp";
version = "0.1.0";
dontUnpack = true;
installPhase = ''
mkdir -p $out/bin
ln -s ${launcher}/bin/launch-webapp $out/bin/launch-webapp
'';
meta = with lib; {
description = "Launches a web app using your default browser in app mode.";
license = licenses.mit;
platforms = platforms.linux;
maintainers = [];
};
}

View File

@ -1,2 +0,0 @@
# Your custom nix-package
# ...