add nb config

This commit is contained in:
2023-08-20 14:14:14 +02:00
parent e1447458d7
commit e238280cfa
33 changed files with 938 additions and 724 deletions

View File

@@ -0,0 +1,214 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help).
{ config, pkgs, ... }:
{
nixpkgs.config.allowUnfree = true;
imports =
[ # Include the results of the hardware scan.
# ./modules/clevis.nix
./modules/sops.nix
./modules/nur.nix
./modules/sway/sway.nix
# ./modules/gnome.nix
./modules/nvim/default.nix
# ./modules/tuxedo.nix
./utils/modules/autoupgrade.nix
# ./pkgs/howdy/howdy-module.nix
# ./pkgs/howdy/ir-toggle-module.nix
# ./modules/howdy
./hardware-configuration.nix
];
nixpkgs.overlays = [ (import ./overlays/packages.nix) ];
nixpkgs.config.permittedInsecurePackages = [
"openssl-1.1.1v"
];
# security.sudo.wheelNeedsPassword = false;
# services.clevis.uuid = "7435d48f-f942-485b-9817-328ad3fc0b93";
# nixos cross building qemu
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
boot.supportedFilesystems = [ "ntfs" ];
boot.plymouth.enable = true;
boot.plymouth.theme = "breeze";
boot.kernelParams = ["quiet"];
# boot.loader.systemd-boot.netbootxyz.enable = true;
# boot.plymouth.themePackages = [ pkgs.nixos-bgrt-plymouth ];
# boot.plymouth.theme = "nixos-bgrt";
# allow hibernation
security.protectKernelImage = false;
sops.defaultSopsFile = ./secrets.yaml;
sops.age.keyFile = "/var/lib/sops-nix/key.txt";
sops.age.generateKey = true;
sops.secrets.epicenter_vpn_ca = {};
sops.secrets.epicenter_vpn_cert = {};
sops.secrets.epicenter_vpn_key = {};
sops.secrets.wg_private_key = {};
sops.secrets.wg_preshared_key = {};
sops.secrets.wg-cloonar-key = {};
virtualisation.docker.enable = true;
virtualisation.virtualbox.host = {
enable = true;
enableExtensionPack = true;
};
networking.hostName = "cl-nb-01"; # Define your hostname.
networking.resolvconf.enable = true;
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
networking.extraHosts = ''
10.25.0.25 archive.zeichnemit.at
# 10.25.0.25 epicenter.works en.epicenter.works
10.25.0.100 download.intra.epicenter.works
127.0.0.1 wohnservice.local mieterhilfe.local wohnpartner.local wohnberatung.local wienbautvor.local wienwohntbesser.local
127.0.0.1 wohnservice-wien.local mieterhilfe.local wohnpartner-wien.local wohnberatung-wien.local wienbautvor.local wienwohntbesser.local
127.0.0.1 diabetes.local
127.0.0.1 test.cloonar.com
'';
# Set your time zone.
time.timeZone = "Europe/Vienna";
console.keyMap = "de";
users.users.dominik = {
isNormalUser = true;
extraGroups = [ "wheel" "disk" "video" "audio" "mysql" "docker" "vboxusers" "networkmanager" "onepassword" "onepassword-cli" "dialout" ]; # Enable sudo for the user.
};
environment.systemPackages = with pkgs; [
bento
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
wget
docker-compose
drone-cli
wireguard-tools
libftdi1
];
environment.variables = {
TERMINAL_COMMAND = "alacritty";
};
services.blueman.enable = true;
services.printing.enable = true;
services.printing.drivers = [ pkgs.brlaser ];
services.mysql = {
enable = true;
package = pkgs.mariadb;
ensureUsers = [
{
name = "dominik";
ensurePermissions = {
"*.*" = "ALL PRIVILEGES";
};
}
];
};
services.postgresql = {
enable = true;
ensureUsers = [
{
name = "dominik";
ensurePermissions = {
"DATABASE \"zammad\"" = "ALL PRIVILEGES";
};
}
];
ensureDatabases = [ "zammad" ];
};
system.stateVersion = "22.11"; # Did you read the comment?
security.polkit.enable = true;
systemd = {
user.services.polkit-gnome-authentication-agent-1 = {
description = "polkit-gnome-authentication-agent-1";
wantedBy = [ "graphical-session.target" ];
wants = [ "graphical-session.target" ];
after = [ "graphical-session.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
Restart = "on-failure";
RestartSec = 1;
TimeoutStopSec = 10;
};
};
};
networking.firewall = {
allowedUDPPorts = [ 51820 ]; # Clients and peers can use the same port, see listenport
# if packets are still dropped, they will show up in dmesg
logReversePathDrops = true;
# wireguard trips rpfilter up
extraCommands = ''
ip46tables -t mangle -I nixos-fw-rpfilter -p udp -m udp --sport 51820 -j RETURN
ip46tables -t mangle -I nixos-fw-rpfilter -p udp -m udp --dport 51820 -j RETURN
'';
extraStopCommands = ''
ip46tables -t mangle -D nixos-fw-rpfilter -p udp -m udp --sport 51820 -j RETURN || true
ip46tables -t mangle -D nixos-fw-rpfilter -p udp -m udp --dport 51820 -j RETURN || true
'';
};
# networking.wireguard.interfaces = {
# wg0 = {
# # Determines the IP address and subnet of the client's end of the tunnel interface.
# ips = [ "10.42.98.201/32" ];
# listenPort = 51820; # to match firewall allowedUDPPorts (without this wg uses random port numbers)
#
# # Path to the private key file.
# #
# # Note: The private key can also be included inline via the privateKey option,
# # but this makes the private key world-readable; thus, using privateKeyFile is
# # recommended.
# privateKeyFile = config.sops.secrets.wg-cloonar-key.path;
#
# peers = [
# {
# publicKey = "TKQVDmBnf9av46kQxLQSBDhAeaK8r1zh8zpU64zuc1Q=";
# allowedIPs = [ "0.0.0.0/0" ];
# endpoint = "vpn.cloonar.com:51820"; # ToDo: route to endpoint not automatically configured https://wiki.archlinux.org/index.php/WireGuard#Loop_routing https://discourse.nixos.org/t/solved-minimal-firewall-setup-for-wireguard-client/7577
# persistentKeepalive = 25;
# }
# ];
# };
# };
# Facial recognition "Windows hello"
# services.ir-toggle.enable = true;
# services.howdy = {
# enable = true;
# device = "/dev/video2";
# };
nix = {
settings.auto-optimise-store = true;
# autoOptimiseStore = true;
gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 30d";
};
# Free up to 1GiB whenever there is less than 100MiB left.
extraOptions = ''
min-free = ${toString (100 * 1024 * 1024)}
max-free = ${toString (1024 * 1024 * 1024)}
'';
};
}

View File

@@ -0,0 +1,58 @@
# 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.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.kernelParams = [ "resume=/swap/swapfile" "resume_offset=533760" ];
boot.resumeDevice = "/dev/disk/by-uuid/92284909-c5dd-4e0f-ab22-64157c8175cb";
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/92284909-c5dd-4e0f-ab22-64157c8175cb";
fsType = "btrfs";
options = [ "subvol=root" ];
};
# boot.initrd.luks.devices."nixos-enc".device = "/dev/disk/by-uuid/7435d48f-f942-485b-9817-328ad3fc0b93";
fileSystems."/home" =
{ device = "/dev/disk/by-uuid/92284909-c5dd-4e0f-ab22-64157c8175cb";
fsType = "btrfs";
options = [ "subvol=home" ];
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/C281-E509";
fsType = "vfat";
};
fileSystems."/swap" =
{ device = "/dev/disk/by-uuid/92284909-c5dd-4e0f-ab22-64157c8175cb";
fsType = "btrfs";
options = [ "subvol=swap" ];
};
swapDevices = [{
device = "/swap/swapfile";
size = (1024 * 16);
}];
# 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.wlp52s0.useDHCP = lib.mkDefault true;
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@@ -4,7 +4,7 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
nodePackages.typescript-language-server nodePackages.typescript-language-server
lua-language-server sumneko-lua-language-server
nodePackages.intelephense nodePackages.intelephense
nodePackages.vscode-css-languageserver-bin nodePackages.vscode-css-languageserver-bin
nodePackages.yaml-language-server nodePackages.yaml-language-server

View File

@@ -0,0 +1,7 @@
{ pkgs, ... }:
{
environment.systemPackages = [
pkgs.apache-directory-studio
];
}

View File

@@ -11,7 +11,6 @@ let
in { in {
environment.systemPackages = [ environment.systemPackages = [
pkgs.signal-desktop pkgs.signal-desktop
pkgs.signal-cli
signalWorkDesktopItem signalWorkDesktopItem
]; ];
} }

View File

@@ -0,0 +1,353 @@
# Oxide theme
#
# Author: Diki Ananta <diki1aap@gmail.com> Repository: https://github.com/dikiaap/dotfiles
# License: MIT
# i3 config file (v4)
# font for window titles and bar
font pango:Source Sans Pro 10
# use win key
set $mod Mod4
# use these keys for focus, movement, and resize directions
set $left h
set $down j
set $up k
set $right l
# define names for workspaces
set $ws1 "1: "
set $ws2 "2: "
set $ws3 "3: "
set $ws4 "4: "
set $ws5 "5: "
set $ws6 "6: "
set $ws7 "7: "
set $ws8 "8: "
set $ws9 "9: "
set $ws10 "10: "
# assign workspaces to primary monitor
workspace $ws1 output primary
workspace $ws2 output primary
workspace $ws3 output primary
workspace $ws4 output primary
workspace $ws5 output primary
workspace $ws6 output primary
workspace $ws7 output primary
workspace $ws8 output primary
workspace $ws9 output primary
# use $mod+Mouse to drag floating windows to their wanted position
floating_modifier $mod
# control focused window when follows the mouse movements
focus_follows_mouse no
# window border settings
default_border none
default_floating_border none
# hiding borders adjacent to the screen edges
hide_edge_borders none
# set popups during fullscreen mode
popup_during_fullscreen smart
# start a terminal
#bindsym $mod+Return workspace $ws1; exec --no-startup-id alacritty
# bindsym $mod+Return workspace $ws1; exec alacritty -t alacritty-sway
bindsym $mod+Return workspace $ws1; exec foot -T terminal-sway
# start a program launcher
# bindsym $mod+d exec --no-startup-id wofi -s /etc/wofi/style.css --show drun --lines 5 --columns 1 -t alacritty
# bindsym $mod+d exec alacritty --class=launcher -e env TERMINAL_COMMAND="alacritty -e" sway-launcher-desktop
bindsym $mod+d exec foot -a launcher -e env TERMINAL_COMMAND="foot -e" sway-launcher-desktop
#bindsym $mod+d exec --no-startup-id bemenu
#bindsym $mod+d exec --no-startup-id i3-dmenu-desktop --dmenu="dmenu -i -fn 'Source Sans Pro-10' -nb '#212121' -sb '#2b83a6' -sf '#ffffff'
#bindsym $mod+d exec --no-startup-id bemenu --dmenu="dmenu -i -fn 'Source Sans Pro-10' -nb '#212121' -sb '#2b83a6' -sf '#ffffff'
# start an explorer
bindsym $mod+e exec --no-startup-id pcmanfm
# switching window with win+tab
bindsym $mod+Tab exec --no-startup-id wofi -show window
# kill focused window
bindsym $mod+Shift+q kill
# change keyboard layout
bindsym $mod+i swaymsg input "*" us
bindsym $mod+Shift+i swaymsg input "*" de
# change focus
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# split in horizontal orientation
bindsym $mod+c split h
# split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+p layout toggle split
# toggle tiling / floating
# bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
# bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# focus the child container
bindsym $mod+Shift+a focus child
# move the currently focused window to the scratchpad
bindsym $mod+Shift+minus move scratchpad
# show the next scratchpad window or hide the focused scratchpad window
bindsym $mod+minus scratchpad show
# move focused floating window to the current position of the cursor
bindsym $mod+Shift+m move position mouse
# set a window to stick to the glass
bindsym $mod+Shift+s sticky toggle
# sticky preview for media
bindsym $mod+Shift+p fullscreen disable; floating enable; resize set 350 px 197 px; sticky enable; move window to position 1006 px 537 px
# shortcut to change window border
bindsym $mod+t border normal 0
bindsym $mod+y border pixel 1
bindsym $mod+u border none
# switch to workspace
bindcode $mod+10 workspace $ws1
bindcode $mod+11 workspace $ws2
bindcode $mod+12 workspace $ws3
bindcode $mod+13 workspace $ws4
bindcode $mod+14 workspace $ws5
bindcode $mod+15 workspace $ws6
bindcode $mod+16 workspace $ws7
bindcode $mod+17 workspace $ws8
bindcode $mod+18 workspace $ws9
bindcode $mod+19 workspace $ws10
# move focused container to workspace
bindcode $mod+Shift+10 move container to workspace $ws1
bindcode $mod+Shift+11 move container to workspace $ws2
bindcode $mod+Shift+12 move container to workspace $ws3
bindcode $mod+Shift+13 move container to workspace $ws4
bindcode $mod+Shift+14 move container to workspace $ws5
bindcode $mod+Shift+15 move container to workspace $ws6
bindcode $mod+Shift+16 move container to workspace $ws7
bindcode $mod+Shift+17 move container to workspace $ws8
bindcode $mod+Shift+18 move container to workspace $ws9
bindcode $mod+Shift+19 move container to workspace $ws10
# shortcut applications
bindsym $mod+F1 exec gkamus
bindsym $mod+F2 workspace $ws2; exec subl
bindsym $mod+F3 workspace $ws3; exec chromium-browser
bindsym $mod+F4 workspace $ws4; exec pcmanfm
bindsym $mod+F5 workspace $ws5; exec evince
bindsym $mod+F6 workspace $ws6; exec audacious
bindsym $mod+F7 workspace $ws7; exec gcolor2
bindsym $mod+F8 workspace $ws8; exec telegram
bindsym $mod+F9 workspace $ws9; exec go-for-it
bindsym Print exec --no-startup-id gnome-screenshot
bindcode $mod+9 exec swaylock --image ~/.wallpaper.jpg
bindsym Ctrl+Shift+Space exec 1password --quick-access
bindsym $mod+Space exec rofi-rbw --menu-keybindings ctrl+p:copy:password
# volume
bindsym XF86AudioLowerVolume exec amixer -q sset Master 5%- unmute
bindsym XF86AudioRaiseVolume exec amixer -q sset Master 5%+ unmute
bindsym XF86AudioMute exec amixer -q sset Master toggle
# touchpad
# bindsym XF86NotificationCenter exec swaymsg input type:touchpad events toggle enabled disabled
# set brightness logarithmically by factor 1.4
# .72 is just slightly bigger than 1 / 1.4
bindsym --locked XF86MonBrightnessUp exec light -S "$(light -G | awk '{ print int(($1 + .72) * 1.4) }')"
bindsym --locked XF86MonBrightnessDown exec light -S "$(light -G | awk '{ print int($1 / 1.4) }')"
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace
bindsym $mod+Shift+r restart
# manage i3 session
bindsym $mod+Shift+e exec swaynag --background f1fa8c --border ffb86c --border-bottom-size 0 --button-background ffb86c --button-text 282a36 -t warning -f "pango:Hack 9" -m "Do you really want to exit?" -B "  Exit " "swaymsg exit" -B "  Lock " "pkill swaynag && swaylock --image ~/.wallpaper.jpg" -B "  Reboot " "pkill swaynag && reboot" -B "  Shutdown " "pkill swaynag && shutdown -h now" -B " Suspend " "pkill swaynag && systemctl suspend"
# resize window
bindsym $mod+r mode "  "
mode "  " {
# pressing left and up will shrink the window's width and height
# pressing right and down will grow the window's width and height
bindsym $left resize shrink width 10 px or 10 ppt
bindsym $down resize grow height 10 px or 10 ppt
bindsym $up resize shrink height 10 px or 10 ppt
bindsym $right resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or win+r
bindsym Return mode "default"
bindsym $mod+r mode "default"
}
# set specific windows to floating mode
for_window [window_role="app"] floating enable
#for_window [window_role="pop-up"] floating enable
for_window [window_role="task_dialog"] floating enable
for_window [title="Preferences$"] floating enable
for_window [class="Gkamus"] floating enable
for_window [class="Go-for-it"] floating enable
for_window [class="Lightdm-gtk-greeter-settings"] floating enable
for_window [class="Lxappearance"] floating enable
for_window [class="Menu"] floating enable
for_window [class="Nm-connection-editor"] floating enable
for_window [class="Software-properties-gtk"] floating enable
for_window [app_id="launcher"] floating enable
# set specific windows to tabbed mode
#for_window [class="Rambox"]tabbed
#for_window [class="Signal"]tabbed
# assign program to workspace
assign [title="terminal-sway"] → $ws1
# assign [app_id="Alacritty" title="^(?!alacritty-sway)$"] → $ws2
assign [app_id="foot" title="^(?!terminal-sway)$"] → $ws2
assign [app_id="chromium"] → $ws3
assign [app_id="firefox"] → $ws3
assign [app_id="pcmanfm"] → $ws4
assign [app_id="libreoffice-calc"] → $ws5
assign [app_id="libreoffice-writer"] → $ws5
assign [class="vlc"] → $ws6
assign [class="Gimp"] → $ws7
assign [class="Signal"] → $ws8
assign [app_id="social"] → $ws8
assign [app_id="thunderbird"] → $ws8
assign [class="Lightdm-gtk-greeter-settings"] → $ws10
assign [class="Software-properties-gtk"] → $ws10
# class border backgr. text indicator child_border
client.focused #2b83a6 #2b83a6 #ffffff #dddddd #2b83a6
client.focused_inactive #212121 #212121 #86888c #292d2e #5a5a5a
client.unfocused #212121 #212121 #86888c #292d2e #5a5a5a
client.urgent #d64e4e #d64e4e #ffffff #d64e4e #d64e4e
client.placeholder #212121 #0c0c0c #ffffff #212121 #262626
client.background #212121
bar {
swaybar_command waybar
}
# gaps
smart_gaps on
gaps inner 12
gaps outer 0
# startup applications
exec /run/wrappers/bin/gnome-keyring-daemon --start --daemonize
exec dbus-sway-environment
exec configure-gtk
exec nm-applet --indicator
exec alacritty -t alacritty-sway
exec signal-desktop
exec firefox --name=social -P social
exec thunderbird
exec firefox
exec nextcloud
exec owncloud
exec swayidle \
before-sleep 'loginctl lock-session $XDG_SESSION_ID' \
lock 'swaylock --image ~/.wallpaper.jpg' \
timeout 180 'swaylock --screenshots --effect-blur 7x5' \
timeout 1800 'systemctl suspend'
exec dunst
#exec --no-startup-id swaybg -c "#000000" -m fill -i ~/.config/wallpaper/wot.jpg
# exec --no-startup-id gnome-keyring-daemon --start --components=pkcs11,secrets,ssh
exec 'sleep 2; swaymsg workspace $ws8; swaymsg layout tabbed'
# wallpaper
output eDP-1 bg ~/.wallpaper.jpg fill
output DP-4 bg ~/.wallpaper.jpg fill
output DP-5 bg ~/.wallpaper.jpg fill
input * xkb_layout "de"
input * xkb_variant "colemak,,typewriter"
input * xkb_options "grp:win_space_toggle"
input "MANUFACTURER1 Keyboard" xkb_model "pc101"
# notebook
set $laptop eDP-1
# bindswitch --reload --locked lid:on output $laptop disable
# bindswitch --reload lid:off output $laptop enable
# A lock command used in several places
set $lock_script swaylock
# A sleep command used in several places.
# We leave a bit of time for locking to happen before putting the system to sleep
set $sleep $lock_script && sleep 3 && systemctl suspend
# Triggers a short notification
set $notify dunstify --timeout 1500
# Set your laptop screen name
set $laptop_screen 'eDP-1'
# Clamshell mode or lock & sleep
# This is a if/else statement: [ outputs_count == 1 ] && true || false
bindswitch --locked lid:on exec '[ $(swaymsg -t get_outputs | grep name | wc -l) == 1 ] && ($sleep) || swaymsg output $laptop_screen disable'
#bindswitch --locked lid:on exec 'swaymsg output $laptop_screen disable'
bindswitch --locked lid:off output $laptop_screen enable
# disable xwayland
#xwayland disable
# Touchpad
input type:touchpad {
tap enabled
natural_scroll enabled
}

View File

@@ -15,14 +15,9 @@ let
in { in {
imports = [ imports = [
./config.nix
./wofi-styles.nix
./xdg-waybar-config.nix
./foot.nix
./social.nix ./social.nix
./signal-work.nix ./signal-work.nix
# ./thunderbird.nix ./thunderbird.nix
./parsec.nix ./parsec.nix
]; ];
@@ -51,7 +46,7 @@ in {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
alsaUtils alsaUtils
enlightenment.terminology alacritty
bitwarden bitwarden
chromium chromium
cryptomator cryptomator
@@ -83,7 +78,6 @@ in {
swayidle swayidle
swaylock swaylock
# thunderbird # thunderbird
thunderbirdPackages.thunderbird-115
tor-browser-bundle-bin tor-browser-bundle-bin
unzip unzip
vlc vlc
@@ -102,10 +96,10 @@ in {
# ]; # ];
# nixpkgs.config.allowBroken = true; # nixpkgs.config.allowBroken = true;
programs._1password-gui = { # programs._1password-gui = {
enable = true; # enable = true;
polkitPolicyOwners = [ "dominik" ]; # polkitPolicyOwners = [ "dominik" ];
}; # };
programs.light.enable = true; programs.light.enable = true;
@@ -129,4 +123,11 @@ in {
enable = true; enable = true;
wrapperFeatures.gtk = true; wrapperFeatures.gtk = true;
}; };
environment.etc = {
"sway/config".source = "/etc/nixos/modules/sway/sway.conf";
"wofi/style.css".source = "/etc/nixos/modules/sway/wofi.css";
"xdg/waybar/config".source = "/etc/nixos/modules/sway/waybar.conf";
"xdg/waybar/style.css".source = "/etc/nixos/modules/sway/waybar.css";
};
} }

View File

@@ -0,0 +1,40 @@
{ pkgs, ... }:
let
thunderbirdWorkDesktopItem = pkgs.makeDesktopItem {
name = "thunderbird-work";
desktopName = "Thunderbird Work";
icon = "thunderbird";
exec = "thunderbird -P Work";
};
thunderbirdCloonarDesktopItem = pkgs.makeDesktopItem {
name = "thunderbird-cloonar";
desktopName = "Thunderbird Cloonar";
icon = "thunderbird";
exec = "thunderbird -P Cloonar";
};
in
{
# nixpkgs.overlays = [
# (self: super:
# {
# thunderbird-bin-unwrapped = super.thunderbird-bin-unwrapped.overrideAttrs ( old: rec {
# version = "112.0b7";
# name = "thunderbird-bin";
# src = super.fetchurl {
# url = "https://download-installer.cdn.mozilla.net/pub/thunderbird/releases/${version}/linux-x86_64/en-US/thunderbird-${version}.tar.bz2";
# sha256 = "30d23df34834096a79261439d5ea6d78d44921f0218893f100596ee6296cd806";
# };
# });
# }
# )
# ];
environment.systemPackages = [
# (import ../../pkgs/thunderbird.nix)
pkgs.thunderbird
# pkgs.thunderbird-bin-unwrapped
thunderbirdWorkDesktopItem
thunderbirdCloonarDesktopItem
];
}

View File

@@ -0,0 +1,132 @@
// -*- mode: json -*-
{
"layer": "top",
"position": "top",
"modules-left": [
"sway/workspaces",
"custom/right-arrow-dark"
],
"modules-center": [
"custom/left-arrow-dark",
"clock#1",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"clock#2",
"custom/right-arrow-dark",
"custom/right-arrow-light",
"clock#3",
"custom/right-arrow-dark"
],
"modules-right": [
"custom/left-arrow-dark",
"network",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"pulseaudio",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"memory",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"cpu",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"battery",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"disk",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"tray"
],
"custom/left-arrow-dark": {
"format": "",
"tooltip": false
},
"custom/left-arrow-light": {
"format": "",
"tooltip": false
},
"custom/right-arrow-dark": {
"format": "",
"tooltip": false
},
"custom/right-arrow-light": {
"format": "",
"tooltip": false
},
"sway/workspaces": {
"disable-scroll": true,
"format": "{name}"
},
"clock#1": {
"format": "{:%a}",
"tooltip": false
},
"clock#2": {
"format": "{:%H:%M}",
"tooltip": false
},
"clock#3": {
"format": "{:%d.%m}",
"tooltip": false
},
"pulseaudio": {
"format": "{icon}{volume}%",
"format-muted": "ﱝ",
"format-icons": {
"phone": ["奄", "奔", "墳"],
"default": ["奄", "奔", "墳"]
},
"scroll-step": 5,
"on-click": "pavucontrol",
"tooltip": false
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
"format-wifi": "{essid} ({signalStrength}%) ",
"format-ethernet": "{ipaddr}/{cidr} ",
"tooltip-format": "{ifname} via {gwaddr} ",
"format-linked": "{ifname} (No IP) ",
"format-disconnected": "Disconnected ",
"format-alt": "{ifname}: {ipaddr}/{cidr}"
},
"memory": {
"interval": 5,
"format": "{}%"
},
"cpu": {
"interval": 5,
"format": "﬙{usage:2}%"
},
"battery": {
"states": {
"good": 95,
"warning": 30,
"critical": 15
},
"format": "{icon} {capacity}%",
"format-icons": [
"",
"",
"",
"",
""
]
},
"disk": {
"interval": 5,
"format": "{percentage_used:2}%",
"path": "/home/"
},
"tray": {
"icon-size": 20
}
}

View File

@@ -0,0 +1,79 @@
* {
font-size: 20px;
font-family: monospace;
}
window#waybar {
background: #282a36;
color: #f8f8f2;
}
#custom-right-arrow-dark,
#custom-left-arrow-dark {
color: #252525;
}
#custom-right-arrow-light,
#custom-left-arrow-light {
color: #282a36;
background: #252525;
}
#workspaces,
#clock.1,
#clock.2,
#clock.3,
#network,
#pulseaudio,
#memory,
#cpu,
#battery,
#disk,
#tray {
background: #252525;
}
#workspaces button {
padding: 0 2px;
color: #f8f8f2;
}
#workspaces button.focused {
color: #50fa7b;
}
#workspaces button:hover {
box-shadow: inherit;
text-shadow: inherit;
}
#workspaces button:hover {
background: #252525;
border: #252525;
padding: 0 3px;
}
#network {
color: #8be9fd;
}
#pulseaudio {
color: #6272a4;
}
#memory {
color: #f8f8f2;
}
#cpu {
color: #bd93f9;
}
#battery {
color: #f1fa8c;
}
#disk {
color: #ffb86c;
}
#clock,
#network,
#pulseaudio,
#memory,
#cpu,
#battery,
#disk {
padding: 0 10px;
}

View File

@@ -0,0 +1,40 @@
window {
margin: 0px;
border: 1px solid #bd93f9;
background-color: #282a36;
}
#input {
margin: 5px;
border: none;
color: #f8f8f2;
background-color: #44475a;
}
#inner-box {
margin: 5px;
border: none;
background-color: #282a36;
}
#outer-box {
margin: 5px;
border: none;
background-color: #282a36;
}
#scroll {
margin: 0px;
border: none;
}
#text {
margin: 5px;
border: none;
color: #f8f8f2;
}
#entry:selected {
background-color: #44475a;
}

View File

@@ -0,0 +1 @@
../../utils

View File

@@ -1,342 +0,0 @@
{ config, pkgs, lib, ... }:
{
environment.etc = {
"sway/config".text = ''
# Oxide theme
#
# Author: Diki Ananta <diki1aap@gmail.com> Repository: https://github.com/dikiaap/dotfiles
# License: MIT
# i3 config file (v4)
# font for window titles and bar
font pango:Source Sans Pro 10
# use win key
set $mod Mod4
# use these keys for focus, movement, and resize directions
set $left h
set $down j
set $up k
set $right l
# define names for workspaces
set $ws1 "1: "
set $ws2 "2: "
set $ws3 "3: "
set $ws4 "4: "
set $ws5 "5: "
set $ws6 "6: "
set $ws7 "7: "
set $ws8 "8: "
set $ws9 "9: "
set $ws10 "10: "
# assign workspaces to primary monitor
workspace $ws1 output primary
workspace $ws2 output primary
workspace $ws3 output primary
workspace $ws4 output primary
workspace $ws5 output primary
workspace $ws6 output primary
workspace $ws7 output primary
workspace $ws8 output primary
workspace $ws9 output primary
# use $mod+Mouse to drag floating windows to their wanted position
floating_modifier $mod
# control focused window when follows the mouse movements
focus_follows_mouse no
# window border settings
default_border none
default_floating_border none
# hiding borders adjacent to the screen edges
hide_edge_borders none
# set popups during fullscreen mode
popup_during_fullscreen smart
# start a terminal
#bindsym $mod+Return workspace $ws1; exec --no-startup-id alacritty
bindsym $mod+Return workspace $ws1; exec foot -c /etc/xdg/foot/foot.ini -T terminal-sway
# start a program launcher
# bindsym $mod+d exec --no-startup-id wofi -s /etc/wofi/style.css --show drun --lines 5 --columns 1 -t alacritty
bindsym $mod+d exec foot -c /etc/xdg/foot/foot.ini -a launcher -e env TERMINAL_COMMAND="foot -e" sway-launcher-desktop
#bindsym $mod+d exec --no-startup-id bemenu
#bindsym $mod+d exec --no-startup-id i3-dmenu-desktop --dmenu="dmenu -i -fn 'Source Sans Pro-10' -nb '#212121' -sb '#2b83a6' -sf '#ffffff'
#bindsym $mod+d exec --no-startup-id bemenu --dmenu="dmenu -i -fn 'Source Sans Pro-10' -nb '#212121' -sb '#2b83a6' -sf '#ffffff'
# start an explorer
bindsym $mod+e exec --no-startup-id pcmanfm
# switching window with win+tab
bindsym $mod+Tab exec --no-startup-id wofi -show window
# kill focused window
bindsym $mod+Shift+q kill
# change keyboard layout
bindsym $mod+i swaymsg input "*" us
bindsym $mod+Shift+i swaymsg input "*" de
# change focus
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# split in horizontal orientation
bindsym $mod+c split h
# split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+p layout toggle split
# toggle tiling / floating
# bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
# bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# focus the child container
bindsym $mod+Shift+a focus child
# move the currently focused window to the scratchpad
bindsym $mod+Shift+minus move scratchpad
# show the next scratchpad window or hide the focused scratchpad window
bindsym $mod+minus scratchpad show
# move focused floating window to the current position of the cursor
bindsym $mod+Shift+m move position mouse
# set a window to stick to the glass
bindsym $mod+Shift+s sticky toggle
# sticky preview for media
bindsym $mod+Shift+p fullscreen disable; floating enable; resize set 350 px 197 px; sticky enable; move window to position 1006 px 537 px
# shortcut to change window border
bindsym $mod+t border normal 0
bindsym $mod+y border pixel 1
bindsym $mod+u border none
# switch to workspace
bindcode $mod+10 workspace $ws1
bindcode $mod+11 workspace $ws2
bindcode $mod+12 workspace $ws3
bindcode $mod+13 workspace $ws4
bindcode $mod+14 workspace $ws5
bindcode $mod+15 workspace $ws6
bindcode $mod+16 workspace $ws7
bindcode $mod+17 workspace $ws8
bindcode $mod+18 workspace $ws9
bindcode $mod+19 workspace $ws10
# move focused container to workspace
bindcode $mod+Shift+10 move container to workspace $ws1
bindcode $mod+Shift+11 move container to workspace $ws2
bindcode $mod+Shift+12 move container to workspace $ws3
bindcode $mod+Shift+13 move container to workspace $ws4
bindcode $mod+Shift+14 move container to workspace $ws5
bindcode $mod+Shift+15 move container to workspace $ws6
bindcode $mod+Shift+16 move container to workspace $ws7
bindcode $mod+Shift+17 move container to workspace $ws8
bindcode $mod+Shift+18 move container to workspace $ws9
bindcode $mod+Shift+19 move container to workspace $ws10
# shortcut applications
bindsym Print exec --no-startup-id gnome-screenshot
bindcode $mod+9 exec swaylock --image ~/.wallpaper.jpg
bindsym Ctrl+Shift+Space exec 1password --quick-access
bindsym $mod+Space exec rofi-rbw --menu-keybindings ctrl+p:copy:password
# volume
bindsym XF86AudioLowerVolume exec amixer -q sset Master 5%- unmute
bindsym XF86AudioRaiseVolume exec amixer -q sset Master 5%+ unmute
bindsym XF86AudioMute exec amixer -q sset Master toggle
# touchpad
# bindsym XF86NotificationCenter exec swaymsg input type:touchpad events toggle enabled disabled
# set brightness logarithmically by factor 1.4
# .72 is just slightly bigger than 1 / 1.4
bindsym --locked XF86MonBrightnessUp exec light -S "$(light -G | awk '{ print int(($1 + .72) * 1.4) }')"
bindsym --locked XF86MonBrightnessDown exec light -S "$(light -G | awk '{ print int($1 / 1.4) }')"
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace
bindsym $mod+Shift+r restart
# manage i3 session
bindsym $mod+Shift+e exec swaynag --background f1fa8c --border ffb86c --border-bottom-size 0 --button-background ffb86c --button-text 282a36 -t warning -f "pango:Hack 9" -m "Do you really want to exit?" -B " Exit " "swaymsg exit" -B " Lock " "pkill swaynag && swaylock --image ~/.wallpaper.jpg" -B " Reboot " "pkill swaynag && reboot" -B " Shutdown " "pkill swaynag && shutdown -h now" -B " Suspend " "pkill swaynag && systemctl suspend"
# resize window
bindsym $mod+r mode " "
mode " " {
# pressing left and up will shrink the window's width and height
# pressing right and down will grow the window's width and height
bindsym $left resize shrink width 10 px or 10 ppt
bindsym $down resize grow height 10 px or 10 ppt
bindsym $up resize shrink height 10 px or 10 ppt
bindsym $right resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or win+r
bindsym Return mode "default"
bindsym $mod+r mode "default"
}
# set specific windows to floating mode
for_window [window_role="app"] floating enable
#for_window [window_role="pop-up"] floating enable
for_window [window_role="task_dialog"] floating enable
for_window [title="Preferences$"] floating enable
for_window [class="Lightdm-gtk-greeter-settings"] floating enable
for_window [class="Lxappearance"] floating enable
for_window [class="Menu"] floating enable
for_window [class="Nm-connection-editor"] floating enable
for_window [class="Software-properties-gtk"] floating enable
for_window [app_id="launcher"] floating enable
# set specific windows to tabbed mode
#for_window [class="Signal"]tabbed
# assign program to workspace
assign [title="terminal-sway"] $ws1
assign [app_id="foot" title="^(?!terminal-sway)$"] $ws2
assign [app_id="chromium"] $ws3
assign [app_id="firefox"] $ws3
assign [app_id="pcmanfm"] $ws4
assign [app_id="libreoffice-calc"] $ws5
assign [app_id="libreoffice-writer"] $ws5
assign [class="vlc"] $ws6
assign [class="Gimp"] $ws7
assign [class="Signal"] $ws8
assign [app_id="social"] $ws8
assign [app_id="thunderbird"] $ws8
assign [class="Lightdm-gtk-greeter-settings"] $ws10
assign [class="Software-properties-gtk"] $ws10
# class border backgr. text indicator child_border
client.focused #2b83a6 #2b83a6 #ffffff #dddddd #2b83a6
client.focused_inactive #212121 #212121 #86888c #292d2e #5a5a5a
client.unfocused #212121 #212121 #86888c #292d2e #5a5a5a
client.urgent #d64e4e #d64e4e #ffffff #d64e4e #d64e4e
client.placeholder #212121 #0c0c0c #ffffff #212121 #262626
client.background #212121
bar {
swaybar_command waybar
}
# gaps
smart_gaps on
gaps inner 12
gaps outer 0
# startup applications
exec /run/wrappers/bin/gnome-keyring-daemon --start --daemonize
exec dbus-sway-environment
exec configure-gtk
exec nm-applet --indicator
exec foot -c /etc/xdg/foot/foot.ini -T terminal-sway
exec signal-desktop
exec firefox --name=social -P social
exec thunderbird
exec firefox
exec nextcloud
exec swayidle \
before-sleep 'loginctl lock-session $XDG_SESSION_ID' \
lock 'swaylock --image ~/.wallpaper.jpg' \
timeout 180 'swaylock --screenshots --effect-blur 7x5' \
timeout 1800 'systemctl suspend'
exec dunst
#exec --no-startup-id swaybg -c "#000000" -m fill -i ~/.config/wallpaper/wot.jpg
# exec --no-startup-id gnome-keyring-daemon --start --components=pkcs11,secrets,ssh
exec 'sleep 2; swaymsg workspace $ws8; swaymsg layout tabbed'
# wallpaper
output eDP-1 bg ~/.wallpaper.jpg fill
output DP-4 bg ~/.wallpaper.jpg fill
output DP-5 bg ~/.wallpaper.jpg fill
input * xkb_layout "de"
input * xkb_variant "colemak,,typewriter"
input * xkb_options "grp:win_space_toggle"
input "MANUFACTURER1 Keyboard" xkb_model "pc101"
# notebook
set $laptop eDP-1
# bindswitch lid:on output $laptop disable
# bindswitch lid:off output $laptop enable
# A lock command used in several places
set $lock_script swaylock --image ~/.wallpaper.jpg
# A sleep command used in several places.
# We leave a bit of time for locking to happen before putting the system to sleep
set $sleep $lock_script && sleep 3 && systemctl suspend
# Triggers a short notification
set $notify dunstify --timeout 1500
# Set your laptop screen name
set $laptop_screen 'eDP-1'
# Clamshell mode or lock & sleep
# This is a if/else statement: [ outputs_count == 1 ] && true || false
bindswitch --reload --locked lid:on exec '[ $(swaymsg -t get_outputs | grep name | wc -l) == 1 ] && ($sleep) || ($notify "Clamshell mode" "Laptop screen off" && swaymsg output $laptop_screen disable)'
bindswitch --reload --locked lid:off output $laptop_screen enable
# disable xwayland
#xwayland disable
# Touchpad
input type:touchpad {
tap enabled
natural_scroll enabled
}
'';
};
}

View File

@@ -1,63 +0,0 @@
{ config, pkgs, lib, ... }:
{
environment.systemPackages = with pkgs; [
foot
];
environment.etc = {
"xdg/foot/foot.ini".text = ''
[environment]
[bell]
[scrollback]
[url]
[cursor]
[mouse]
[colors]
# alpha=1.0
background=282a36
foreground=f8f8f2
## Normal/regular colors (color palette 0-7)
regular0=21222c # black
regular1=ff5555 # red
regular2=50fa7b # green
regular3=f1fa8c # yellow
regular4=bd93f9 # blue
regular5=ff79c6 # magenta
regular6=8be9fd # cyan
regular7=f8f8f2 # white
## Bright colors (color palette 8-15)
bright0=6272a4 # bright black
bright1=ff6e6e # bright red
bright2=69ff94 # bright green
bright3=ffffa5 # bright yellow
bright4=d6acff # bright blue
bright5=ff92df # bright magenta
bright6=a4ffff # bright cyan
bright7=ffffff # bright white
selection-foreground=ffffff
selection-background=44475a
urls=8be9fd
[csd]
[key-bindings]
[search-bindings]
[url-bindings]
[text-bindings]
[mouse-bindings]
'';
};
}

View File

@@ -1,39 +0,0 @@
{ pkgs, ... }:
let
thunderbirdWorkDesktopItem = pkgs.makeDesktopItem {
name = "thunderbird-work";
desktopName = "Thunderbird Work";
icon = "thunderbird";
exec = "thunderbird -P Work";
};
thunderbirdCloonarDesktopItem = pkgs.makeDesktopItem {
name = "thunderbird-cloonar";
desktopName = "Thunderbird Cloonar";
icon = "thunderbird";
exec = "thunderbird -P Cloonar";
};
in
{
nixpkgs.overlays = [
(self: super:
{
thunderbird-bin-unwrapped = super.thunderbird-bin-unwrapped.overrideAttrs ( old: rec {
version = "112.0b7";
name = "thunderbird-bin";
src = super.fetchurl {
url = "https://download-installer.cdn.mozilla.net/pub/thunderbird/releases/${version}/linux-x86_64/en-US/thunderbird-${version}.tar.bz2";
sha256 = "30d23df34834096a79261439d5ea6d78d44921f0218893f100596ee6296cd806";
};
});
}
)
];
environment.systemPackages = [
# (import ../../pkgs/thunderbird.nix)
pkgs.thunderbird-bin-unwrapped
thunderbirdWorkDesktopItem
thunderbirdCloonarDesktopItem
];
}

View File

@@ -1,46 +0,0 @@
{ config, pkgs, lib, ... }:
{
environment.etc = {
"wofi/style.css".text = ''
window {
margin: 0px;
border: 1px solid #bd93f9;
background-color: #282a36;
}
#input {
margin: 5px;
border: none;
color: #f8f8f2;
background-color: #44475a;
}
#inner-box {
margin: 5px;
border: none;
background-color: #282a36;
}
#outer-box {
margin: 5px;
border: none;
background-color: #282a36;
}
#scroll {
margin: 0px;
border: none;
}
#text {
margin: 5px;
border: none;
color: #f8f8f2;
}
#entry:selected {
background-color: #44475a;
}
'';
};
}

View File

@@ -1,220 +0,0 @@
{ config, pkgs, lib, ... }:
{
environment.etc = {
"xdg/waybar/config".text = ''
// -*- mode: json -*-
{
"layer": "top",
"position": "top",
"modules-left": [
"sway/workspaces",
"custom/right-arrow-dark"
],
"modules-center": [
"custom/left-arrow-dark",
"clock#1",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"clock#2",
"custom/right-arrow-dark",
"custom/right-arrow-light",
"clock#3",
"custom/right-arrow-dark"
],
"modules-right": [
"custom/left-arrow-dark",
"network",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"pulseaudio",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"memory",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"cpu",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"battery",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"disk",
"custom/left-arrow-light",
"custom/left-arrow-dark",
"tray"
],
"custom/left-arrow-dark": {
"format": "",
"tooltip": false
},
"custom/left-arrow-light": {
"format": "",
"tooltip": false
},
"custom/right-arrow-dark": {
"format": "",
"tooltip": false
},
"custom/right-arrow-light": {
"format": "",
"tooltip": false
},
"sway/workspaces": {
"disable-scroll": true,
"format": "{name}"
},
"clock#1": {
"format": "{:%a}",
"tooltip": false
},
"clock#2": {
"format": "{:%H:%M}",
"tooltip": false
},
"clock#3": {
"format": "{:%d.%m}",
"tooltip": false
},
"pulseaudio": {
"format": "{icon}{volume}%",
"format-muted": "",
"format-icons": {
"phone": ["", "奔", ""],
"default": ["", "奔", ""]
},
"scroll-step": 5,
"on-click": "pavucontrol",
"tooltip": false
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
"format-wifi": "{essid} ({signalStrength}%) ",
"format-ethernet": "{ipaddr}/{cidr} ",
"tooltip-format": "{ifname} via {gwaddr} ",
"format-linked": "{ifname} (No IP) ",
"format-disconnected": "Disconnected ",
"format-alt": "{ifname}: {ipaddr}/{cidr}"
},
"memory": {
"interval": 5,
"format": "{}%"
},
"cpu": {
"interval": 5,
"format": "{usage:2}%"
},
"battery": {
"states": {
"good": 95,
"warning": 30,
"critical": 15
},
"format": "{icon} {capacity}%",
"format-icons": [
"",
"",
"",
"",
""
]
},
"disk": {
"interval": 5,
"format": "{percentage_used:2}%",
"path": "/home/"
},
"tray": {
"icon-size": 20
}
}
'';
"xdg/waybar/style.css".text = ''
* {
font-size: 20px;
font-family: monospace;
}
window#waybar {
background: #282a36;
color: #f8f8f2;
}
#custom-right-arrow-dark,
#custom-left-arrow-dark {
color: #252525;
}
#custom-right-arrow-light,
#custom-left-arrow-light {
color: #282a36;
background: #252525;
}
#workspaces,
#clock.1,
#clock.2,
#clock.3,
#network,
#pulseaudio,
#memory,
#cpu,
#battery,
#disk,
#tray {
background: #252525;
}
#workspaces button {
padding: 0 2px;
color: #f8f8f2;
}
#workspaces button.focused {
color: #50fa7b;
}
#workspaces button:hover {
box-shadow: inherit;
text-shadow: inherit;
}
#workspaces button:hover {
background: #252525;
border: #252525;
padding: 0 3px;
}
#network {
color: #8be9fd;
}
#pulseaudio {
color: #6272a4;
}
#memory {
color: #f8f8f2;
}
#cpu {
color: #bd93f9;
}
#battery {
color: #f1fa8c;
}
#disk {
color: #ffb86c;
}
#clock,
#network,
#pulseaudio,
#memory,
#cpu,
#battery,
#disk {
padding: 0 10px;
}
'';
};
}