add work laptop config :3
This commit is contained in:
parent
f59e56dee2
commit
f61ea95a50
15 changed files with 1150 additions and 1 deletions
18
flake.lock
18
flake.lock
|
@ -3726,7 +3726,8 @@
|
|||
"shadower": "shadower",
|
||||
"split-monitor-workspaces": "split-monitor-workspaces",
|
||||
"waybar": "waybar",
|
||||
"woomer": "woomer"
|
||||
"woomer": "woomer",
|
||||
"work-secrets": "work-secrets"
|
||||
}
|
||||
},
|
||||
"rust-analyzer-src": {
|
||||
|
@ -4172,6 +4173,21 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"work-secrets": {
|
||||
"locked": {
|
||||
"lastModified": 1724760596,
|
||||
"narHash": "sha256-aShwPabtTwQpX72V8dQ47a/mUfzH6z/WCg2aj0o2Az0=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "4faa5b4e7e09e6d68036dccc4f75c4aa4ad9fd49",
|
||||
"revCount": 5,
|
||||
"type": "git",
|
||||
"url": "ssh://jacekpoz/work/work-secrets"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "ssh://jacekpoz/work/work-secrets"
|
||||
}
|
||||
},
|
||||
"xdph": {
|
||||
"inputs": {
|
||||
"hyprland-protocols": "hyprland-protocols",
|
||||
|
|
|
@ -118,5 +118,7 @@
|
|||
};
|
||||
|
||||
nix-minecraft.url = "github:Infinidoge/nix-minecraft";
|
||||
|
||||
work-secrets.url = "git+ssh://jacekpoz/work/work-secrets";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -21,4 +21,6 @@ in {
|
|||
hape = createSystem ./hape;
|
||||
|
||||
chmura = createSystem ./chmura;
|
||||
|
||||
${inputs.work-secrets.hostname} = createSystem ./work;
|
||||
}
|
||||
|
|
194
hosts/work/configuration.nix
Normal file
194
hosts/work/configuration.nix
Normal file
|
@ -0,0 +1,194 @@
|
|||
{
|
||||
config,
|
||||
inputs,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (lib.meta) getExe;
|
||||
|
||||
inherit (config.poz.other.system) username;
|
||||
in {
|
||||
nixpkgs.config = {
|
||||
permittedInsecurePackages = [
|
||||
"olm-3.2.16"
|
||||
];
|
||||
allowUnfree = true;
|
||||
};
|
||||
|
||||
nix.settings = {
|
||||
max-jobs = 2;
|
||||
cores = 3;
|
||||
};
|
||||
|
||||
# swapDevices = [
|
||||
# {
|
||||
# device = "/var/lib/swapfile";
|
||||
# size = 48 * 1024;
|
||||
# }
|
||||
# ];
|
||||
|
||||
programs = {
|
||||
dconf.enable = true;
|
||||
kdeconnect.enable = true;
|
||||
noisetorch.enable = true;
|
||||
};
|
||||
|
||||
security.sudo.package = pkgs.sudo.override { withInsults = true; };
|
||||
|
||||
security.polkit.enable = true;
|
||||
|
||||
users.users.${username} = {
|
||||
extraGroups = [ "video" "docker" ];
|
||||
};
|
||||
|
||||
environment.sessionVariables = {
|
||||
CHROME_EXECUTABLE = getExe pkgs.ungoogled-chromium;
|
||||
};
|
||||
|
||||
hardware = {
|
||||
sensor.iio.enable = true;
|
||||
# ipu6 = {
|
||||
# enable = true;
|
||||
# platform = "ipu6";
|
||||
# };
|
||||
graphics = {
|
||||
enable = true;
|
||||
enable32Bit = true;
|
||||
extraPackages = with pkgs; [
|
||||
mesa
|
||||
libdrm
|
||||
libva
|
||||
vaapiVdpau
|
||||
libvdpau-va-gl
|
||||
];
|
||||
extraPackages32 = with pkgs; [
|
||||
driversi686Linux.mesa
|
||||
driversi686Linux.libvdpau-va-gl
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
pcscd.enable = true;
|
||||
|
||||
udisks2.enable = true;
|
||||
dbus.enable = true;
|
||||
|
||||
fwupd = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
ratbagd.enable = true;
|
||||
|
||||
# TODO build failure
|
||||
# fprintd = {
|
||||
# enable = true;
|
||||
# tod = {
|
||||
# enable = true;
|
||||
# driver = pkgs.libfprint-2-tod1-goodix;
|
||||
# };
|
||||
# };
|
||||
smartd.enable = true;
|
||||
flatpak.enable = true;
|
||||
};
|
||||
|
||||
services.journald = {
|
||||
extraConfig = ''
|
||||
SystemMaxUse=100M
|
||||
'';
|
||||
};
|
||||
|
||||
services.udev = {
|
||||
packages = with pkgs; [
|
||||
yubikey-personalization
|
||||
];
|
||||
};
|
||||
|
||||
networking.proxy = {
|
||||
inherit (inputs.work-secrets.proxy) default noProxy;
|
||||
};
|
||||
|
||||
services.xserver.videoDrivers = [ "displaylink" "modesetting" ];
|
||||
boot = {
|
||||
extraModulePackages = with config.boot.kernelPackages; [ evdi ];
|
||||
kernelModules = [ "evdi" ];
|
||||
};
|
||||
|
||||
# for vpn-slice
|
||||
environment.etc.hosts.mode = "0644";
|
||||
|
||||
poz = {
|
||||
other = {
|
||||
home-manager = {
|
||||
enable = true;
|
||||
enableDirenv = true;
|
||||
};
|
||||
networking = {
|
||||
enable = true;
|
||||
plugins = [ pkgs.networkmanager-openconnect ];
|
||||
};
|
||||
};
|
||||
programs = {
|
||||
agenix.enable = true;
|
||||
nh = let
|
||||
home = config.home-manager.users.${username}.home.homeDirectory;
|
||||
in {
|
||||
enable = true;
|
||||
flake = "${home}/niksos";
|
||||
};
|
||||
starship.enable = true;
|
||||
zsh = {
|
||||
enable = true;
|
||||
extraAliases = {
|
||||
u = "nh os switch -H ${inputs.work-secrets.hostname}";
|
||||
};
|
||||
profiling = false;
|
||||
};
|
||||
zoxide.enable = true;
|
||||
anyrun.enable = true;
|
||||
btop.enable = true;
|
||||
foot.enable = true;
|
||||
mpv.enable = true;
|
||||
neovim = {
|
||||
enable = true;
|
||||
enableLsp = true;
|
||||
};
|
||||
zathura.enable = true;
|
||||
hypr = {
|
||||
land = {
|
||||
enable = true;
|
||||
extraPlugins = [
|
||||
inputs.split-monitor-workspaces.packages.${pkgs.system}.split-monitor-workspaces
|
||||
];
|
||||
};
|
||||
lock.enable = true;
|
||||
idle.enable = true;
|
||||
};
|
||||
quickshell = {
|
||||
enable = true;
|
||||
enabledConfigs = [
|
||||
"powermenu"
|
||||
"poz"
|
||||
];
|
||||
};
|
||||
};
|
||||
services = {
|
||||
dunst.enable = true;
|
||||
greetd = {
|
||||
enable = true;
|
||||
greeter = "gtkgreet";
|
||||
launchOptions = [
|
||||
"Hyprland"
|
||||
"sway"
|
||||
"zsh"
|
||||
"reboot"
|
||||
"shutdown now"
|
||||
];
|
||||
};
|
||||
pipewire.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
system.stateVersion = "23.11";
|
||||
}
|
15
hosts/work/default.nix
Normal file
15
hosts/work/default.nix
Normal file
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
imports = [
|
||||
./quickshell
|
||||
./configuration.nix
|
||||
./firefox.nix
|
||||
./git.nix
|
||||
./hardware-configuration.nix
|
||||
./profile.nix
|
||||
./programs.nix
|
||||
./ssh.nix
|
||||
./system.nix
|
||||
./themes.nix
|
||||
./waybar.nix
|
||||
];
|
||||
}
|
51
hosts/work/firefox.nix
Normal file
51
hosts/work/firefox.nix
Normal file
|
@ -0,0 +1,51 @@
|
|||
{
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
poz.programs.firefox = {
|
||||
enable = true;
|
||||
defaultSearchEngine = "NotASearx";
|
||||
searchEngines = {
|
||||
"NotASearx" = {
|
||||
url = "https://search.notashelf.dev/search?q={searchTerms}";
|
||||
faviconUrl = "https://search.notashelf.dev/favicon.ico";
|
||||
aliases = [ "@sx" ];
|
||||
};
|
||||
"NixOS Packages" = {
|
||||
url = "https://search.nixos.org/packages?channel=unstable&query={searchTerms}";
|
||||
faviconPath = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
aliases = [ "@np" ];
|
||||
};
|
||||
"NixOS Options" = {
|
||||
url = "https://search.nixos.org/options?channel=unstable&query={searchTerms}";
|
||||
faviconPath = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
aliases = [ "@no" ];
|
||||
};
|
||||
"NixOS Wiki" = {
|
||||
url = "https://wiki.nixos.org/index.php?search={searchTerms}";
|
||||
faviconPath = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
aliases = [ "@nw" ];
|
||||
};
|
||||
"Home Manager Option Search" = {
|
||||
url = "https://mipmip.github.io/home-manager-option-search?query={searchTerms}";
|
||||
faviconPath = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
aliases = [ "@hm" ];
|
||||
};
|
||||
"Arch Wiki" = {
|
||||
url = "https://wiki.archlinux.org/index.php?search={searchTerms}";
|
||||
faviconUrl = "https://archlinux.org/favicon.ico";
|
||||
aliases = [ "@aw" ];
|
||||
};
|
||||
"Gentoo Wiki" = {
|
||||
url = "https://wiki.gentoo.org/index.php?search={searchTerms}";
|
||||
faviconUrl = "https://www.gentoo.org/favicon.ico";
|
||||
aliases = [ "@gw" ];
|
||||
};
|
||||
"Debian Wiki" = {
|
||||
url = "https://wiki.debian.org/FrontPage?action=fullsearch&value={searchTerms}";
|
||||
faviconUrl = "https://www.debian.org/favicon.ico";
|
||||
aliases = [ "@dw" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
21
hosts/work/git.nix
Normal file
21
hosts/work/git.nix
Normal file
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
poz.programs.git = {
|
||||
enable = true;
|
||||
inherit (inputs.work-secrets.git) userName userEmail signingKey;
|
||||
includes = [
|
||||
{
|
||||
condition = "hasconfig:remote.*.url:jacekpoz:*/**";
|
||||
contents = {
|
||||
user = {
|
||||
email = "jacekpoz@proton.me";
|
||||
name = "work";
|
||||
signingKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDmeOJA8S8P+Q8wgF57v8ygpVkj4qBp6iuclNGxeFv75";
|
||||
};
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
40
hosts/work/hardware-configuration.nix
Normal file
40
hosts/work/hardware-configuration.nix
Normal file
|
@ -0,0 +1,40 @@
|
|||
# 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" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/518e95d8-a0bc-4ef3-aa4c-5402250969e9";
|
||||
fsType = "btrfs";
|
||||
};
|
||||
|
||||
boot.initrd.luks.devices."cryptroot".device = "/dev/disk/by-uuid/155f63ba-cf08-49c5-bf53-12133cfc9694";
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/12CE-A600";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
24
hosts/work/profile.nix
Normal file
24
hosts/work/profile.nix
Normal file
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
imports = [
|
||||
../../options/boot/systemd-boot.nix
|
||||
../../options/common/binary-caches.nix
|
||||
../../options/common/dash.nix
|
||||
../../options/common/disable-nano.nix
|
||||
../../options/common/cpu/intel.nix
|
||||
../../options/common/disk.nix
|
||||
../../options/common/docs.nix
|
||||
../../options/common/kernel.nix
|
||||
../../options/common/nix.nix
|
||||
../../options/common/oomd.nix
|
||||
../../options/common/pin-registry.nix
|
||||
../../options/common/preserve-system.nix
|
||||
../../options/common/timezone.nix
|
||||
../../options/desktop/bluetooth.nix
|
||||
../../options/desktop/dev/malloc-perturb.nix
|
||||
../../options/desktop/fonts.nix
|
||||
../../options/desktop/suspend.nix
|
||||
../../options/desktop/v4l2.nix
|
||||
../../options/desktop/wayland.nix
|
||||
../../options/desktop/yubikey.nix
|
||||
];
|
||||
}
|
114
hosts/work/programs.nix
Normal file
114
hosts/work/programs.nix
Normal file
|
@ -0,0 +1,114 @@
|
|||
{
|
||||
config,
|
||||
inputs,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (config.poz.other.system) username;
|
||||
in {
|
||||
home-manager.users.${username} = {
|
||||
home.packages = let
|
||||
hyprcontrib = inputs.hyprcontrib.packages.${pkgs.system};
|
||||
shadower = inputs.shadower.packages.${pkgs.system};
|
||||
in with pkgs; [
|
||||
keepassxc
|
||||
eza
|
||||
ripgrep
|
||||
obs-studio
|
||||
ungoogled-chromium
|
||||
tor-browser-bundle-bin
|
||||
mullvad-browser
|
||||
thunderbird
|
||||
gimp
|
||||
helvum
|
||||
easyeffects
|
||||
libreoffice-fresh
|
||||
qbittorrent
|
||||
zellij
|
||||
libsForQt5.kdenlive
|
||||
trash-cli
|
||||
wl-clipboard
|
||||
xdg-utils
|
||||
hyprpicker
|
||||
hyprcontrib.hyprprop
|
||||
hyprcontrib.grimblast
|
||||
shadower.shadower
|
||||
pamixer
|
||||
brightnessctl
|
||||
dig
|
||||
imv
|
||||
pcmanfm
|
||||
xdg-ninja
|
||||
gnupg
|
||||
age
|
||||
rage
|
||||
fd
|
||||
udisks
|
||||
ffmpeg_6-full
|
||||
yt-dlp
|
||||
filelight
|
||||
asciinema
|
||||
asciinema-agg
|
||||
du-dust
|
||||
appimage-run
|
||||
file
|
||||
fastfetch
|
||||
uutils-coreutils
|
||||
alsa-utils
|
||||
imagemagick
|
||||
psmisc
|
||||
mesa-demos
|
||||
#aseprite-unfree
|
||||
jq
|
||||
fq
|
||||
progress
|
||||
parallel
|
||||
p7zip
|
||||
xxd
|
||||
mpc-cli
|
||||
playerctl
|
||||
xdg-user-dirs
|
||||
lshw
|
||||
tree
|
||||
ydotool
|
||||
exiv2
|
||||
krita
|
||||
config.boot.kernelPackages.cpupower
|
||||
config.boot.kernelPackages.perf
|
||||
usbutils
|
||||
kiwix
|
||||
inkscape
|
||||
gomuks
|
||||
ytfzf
|
||||
mat2
|
||||
simplex-chat-desktop
|
||||
libsixel
|
||||
lsix
|
||||
qmk
|
||||
wev
|
||||
solaar
|
||||
httpie
|
||||
mangohud
|
||||
nix-index
|
||||
xdg-ninja
|
||||
heaptrack
|
||||
magic-wormhole
|
||||
webcamoid
|
||||
fswebcam
|
||||
pciutils
|
||||
inxi
|
||||
pcsc-tools
|
||||
libnfc
|
||||
nix-tree
|
||||
duf
|
||||
bat
|
||||
hw-probe
|
||||
zed-editor
|
||||
delta
|
||||
scrcpy
|
||||
teams-for-linux
|
||||
openconnect
|
||||
vpn-slice
|
||||
];
|
||||
};
|
||||
}
|
12
hosts/work/quickshell/default.nix
Normal file
12
hosts/work/quickshell/default.nix
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
poz.programs.quickshell = {
|
||||
enable = true;
|
||||
enabledConfigs = [
|
||||
"powermenu"
|
||||
"poz"
|
||||
];
|
||||
extraConfigs = {
|
||||
# bar = ./bar;
|
||||
};
|
||||
};
|
||||
}
|
15
hosts/work/ssh.nix
Normal file
15
hosts/work/ssh.nix
Normal file
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
poz.services.ssh = {
|
||||
daemon.enable = false;
|
||||
agent = {
|
||||
enable = true;
|
||||
hostAliases = {
|
||||
jacekpoz = {
|
||||
hostName = "git.jacekpoz.pl";
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMmtUtuo1d1QT4w4SeefWQq7DYxPWqixf4wBE8usAYlY";
|
||||
user = "forgejo";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
37
hosts/work/system.nix
Normal file
37
hosts/work/system.nix
Normal file
|
@ -0,0 +1,37 @@
|
|||
{
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
poz.other = {
|
||||
system = {
|
||||
inherit (inputs.work-secrets) hostname username;
|
||||
platform = "x86_64-linux";
|
||||
};
|
||||
hardware.monitors = {
|
||||
eDP-1 = {
|
||||
resolution = { w = 1920; h = 1080; };
|
||||
refreshRate = 60;
|
||||
position = { x = 0; y = 0; };
|
||||
scale = 1.0;
|
||||
};
|
||||
# DVI-I-1 = {
|
||||
# resolution = { w = 1920; h = 1200; };
|
||||
# refreshRate = 60;
|
||||
# position = { x = 1920; y = 0; };
|
||||
# scale = 1.0;
|
||||
# };
|
||||
# DVI-I-2 = {
|
||||
# resolution = { w = 1920; h = 1200; };
|
||||
# refreshRate = 60;
|
||||
# position = { x = 1920 * 2; y = 0; };
|
||||
# scale = 1.0;
|
||||
# };
|
||||
DVI-I-1 = {
|
||||
resolution = { w = 2560; h = 1440; };
|
||||
refreshRate = 144;
|
||||
position = { x = 1920; y = 0; };
|
||||
scale = 1.0;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
31
hosts/work/themes.nix
Normal file
31
hosts/work/themes.nix
Normal file
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
poz.themes = {
|
||||
cursor = {
|
||||
enable = true;
|
||||
package = pkgs.bibata-cursors;
|
||||
name = "Bibata-Modern-Classic";
|
||||
size = 24;
|
||||
};
|
||||
gtk = {
|
||||
enable = true;
|
||||
package = pkgs.catppuccin-gtk;
|
||||
name = "catppuccin-mocha-green-standard+normal";
|
||||
variant = "mocha";
|
||||
accentColour = "green";
|
||||
iconTheme = {
|
||||
name = "Papirus-Dark";
|
||||
package = pkgs.catppuccin-papirus-folders;
|
||||
};
|
||||
};
|
||||
qt = {
|
||||
enable = true;
|
||||
package = pkgs.catppuccin-kde;
|
||||
name = "Catppuccin-Mocha-Dark";
|
||||
variant = "mocha";
|
||||
accentColour = "green";
|
||||
};
|
||||
};
|
||||
}
|
575
hosts/work/waybar.nix
Normal file
575
hosts/work/waybar.nix
Normal file
|
@ -0,0 +1,575 @@
|
|||
{
|
||||
config,
|
||||
inputs,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (config.poz.other.system) username;
|
||||
|
||||
inherit (lib.meta) getExe getExe';
|
||||
|
||||
iio-hyprland = getExe inputs.iio-hyprland.packages.${pkgs.system}.default;
|
||||
wpctl = getExe' pkgs.wireplumber "wpctl";
|
||||
brightnessctl = getExe pkgs.brightnessctl;
|
||||
inherit (inputs.hyprland.packages.${pkgs.system}) hyprland;
|
||||
hyprctl = getExe' hyprland "hyprctl";
|
||||
rg = getExe pkgs.ripgrep;
|
||||
wc = getExe' pkgs.coreutils-full "wc";
|
||||
kill = getExe' pkgs.util-linux "kill";
|
||||
pkill = getExe' pkgs.procps "pkill";
|
||||
pidof = getExe' pkgs.procps "pidof";
|
||||
asusctl = getExe' config.services.asusd.package "asusctl";
|
||||
sed = getExe pkgs.gnused;
|
||||
in {
|
||||
home-manager.users.${username} = {
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
package = inputs.waybar.packages.${pkgs.system}.waybar;
|
||||
settings.mainBar = {
|
||||
gtk-layer-shell = true;
|
||||
layer = "top";
|
||||
modules-left = [ "custom/launcher" "custom/xwayland" "custom/rot" "custom/wvkbd" "tray" "hyprland/workspaces" ];
|
||||
modules-center = [ "hyprland/window" ];
|
||||
modules-right = [ /*"custom/dnd"*/ "backlight" /*"cava"*/ /*"mpd"*/ "pulseaudio" "clock" "battery" "custom/power" ];
|
||||
|
||||
pulseaudio = {
|
||||
tooltip = false;
|
||||
scroll-step = "1";
|
||||
format = " {icon} {volume}%";
|
||||
format-muted = " {volume}%";
|
||||
format-icons = {
|
||||
default = ["" "" ""];
|
||||
};
|
||||
on-click = "${wpctl} set-mute @DEFAULT_AUDIO_SINK@ toggle";
|
||||
};
|
||||
"hyprland/workspaces" = {
|
||||
sort-by-name = true;
|
||||
sort-by-coordinates = false;
|
||||
on-click = "activate";
|
||||
#on-scroll = "~/Scripts/cycle_workspace.sh 1";
|
||||
active-only = false;
|
||||
format = "{icon}";
|
||||
format-icons = {
|
||||
"1" = "1";
|
||||
"2" = "2";
|
||||
"3" = "3";
|
||||
"4" = "4";
|
||||
"5" = "5";
|
||||
"6" = "6";
|
||||
"7" = "7";
|
||||
"8" = "8";
|
||||
"9" = "9";
|
||||
"10" = "10";
|
||||
"11" = "1";
|
||||
"12" = "2";
|
||||
"13" = "3";
|
||||
"14" = "4";
|
||||
"15" = "5";
|
||||
"16" = "6";
|
||||
"17" = "7";
|
||||
"18" = "8";
|
||||
"19" = "9";
|
||||
"20" = "10";
|
||||
"21" = "1";
|
||||
"22" = "2";
|
||||
"23" = "3";
|
||||
"24" = "4";
|
||||
"25" = "5";
|
||||
"26" = "6";
|
||||
"27" = "7";
|
||||
"28" = "8";
|
||||
"29" = "9";
|
||||
"30" = "10";
|
||||
};
|
||||
};
|
||||
network = {
|
||||
tooltip = false;
|
||||
format = "{ipaddr} {icon}";
|
||||
format-alt = "{icon}";
|
||||
format-icons = {
|
||||
wifi = [ "" ];
|
||||
ethernet = [ "" ];
|
||||
disconnected = [ "" ];
|
||||
};
|
||||
on-click-right = "foot -e nmtui";
|
||||
};
|
||||
backlight = {
|
||||
interval = 1;
|
||||
align = 0;
|
||||
rotate = 0;
|
||||
format = "{icon} {percent}%";
|
||||
format-icons = [ "" "" "" "" "" "" "" ];
|
||||
#on-scroll-up = "~/Scripts/bright.sh s +1%";
|
||||
#on-scroll-down = "~/Scripts/bright.sh s 1%-";
|
||||
on-scroll-up = "${brightnessctl} set +1%";
|
||||
on-scroll-down = "${brightnessctl} set 1%-";
|
||||
smooth-scrolling-threshold = 1;
|
||||
};
|
||||
battery = {
|
||||
interval = 1;
|
||||
states = {
|
||||
good = 75;
|
||||
warning = 30;
|
||||
critical = 20;
|
||||
};
|
||||
format = "{icon}{capacity}%";
|
||||
format-charging = "{icon}{capacity}% {power}";
|
||||
format-discharging = "{icon}{capacity}% {power}";
|
||||
format-icons = ["" "" "" "" "" "" "" "" "" "" ""];
|
||||
format-charging-icons = ["" "" "" "" "" "" "" "" "" "" ""];
|
||||
};
|
||||
tray = {
|
||||
icon-size = 18;
|
||||
spacing = 10;
|
||||
};
|
||||
clock = {
|
||||
interval = 1;
|
||||
format = " {:%H:%M:%S %d/%m/%Y}";
|
||||
format-alt = " {:%H:%M:%S}";
|
||||
tooltip-format = "<tt><small>{calendar}</small></tt>";
|
||||
calendar = {
|
||||
mode = "year";
|
||||
mode-mon-col = 3;
|
||||
weeks-pos = "right";
|
||||
on-scroll = 1;
|
||||
on-click-right = "mode";
|
||||
format = {
|
||||
months = "<span color='#EBDBB2'><b>{}</b></span>";
|
||||
days = "<span color='#B16286'><b>{}</b></span>";
|
||||
weeks = "<span color='#458588'><b>T{:%W}</b></span>";
|
||||
weekdays = "<span color='#D79921'><b>{}</b></span>";
|
||||
today = "<span color='#CC241D'><b><u>{}</u></b></span>";
|
||||
};
|
||||
actions = {
|
||||
on-click-right = "mode";
|
||||
on-click-forward = "tz_up";
|
||||
on-click-backward = "tz_down";
|
||||
on-scroll-up = "shift_up";
|
||||
on-scroll-down = "shift_down";
|
||||
};
|
||||
};
|
||||
};
|
||||
cpu = {
|
||||
interval = 1;
|
||||
format = " {}%";
|
||||
max-length = 10;
|
||||
};
|
||||
memory = {
|
||||
interval = 1;
|
||||
format = " {}%";
|
||||
max-length = 10;
|
||||
};
|
||||
"custom/launcher" = {
|
||||
format = " ";
|
||||
on-click = "~/.config/rofi/launchers/type-2/launcher.sh";
|
||||
on-click-right = "${pkill} rofi";
|
||||
};
|
||||
"custom/power" = {
|
||||
format = "";
|
||||
on-click = "quickshell -c powermenu";
|
||||
};
|
||||
"hyprland/window" = {
|
||||
format = "{}";
|
||||
separate-outputs = true;
|
||||
};
|
||||
gamemode = {
|
||||
format = "{glyph}";
|
||||
format-alt = "{glyph} {count}";
|
||||
glyph = "";
|
||||
hide-not-running = true;
|
||||
use-icon = true;
|
||||
icon-name = "input-gaming-symbolic";
|
||||
icon-spacing = 4;
|
||||
icon-size = 20;
|
||||
tooltip = true;
|
||||
tooltip-format = "Games running: {count}";
|
||||
};
|
||||
"custom/dnd" = {
|
||||
exec = "~/Scripts/waybar-dunst.sh";
|
||||
on-click = "~/Scripts/dnd.sh";
|
||||
restart-interval = 1;
|
||||
tooltip = false;
|
||||
};
|
||||
cava = {
|
||||
framerate = 165;
|
||||
autosens = 1;
|
||||
sensitivity = 100;
|
||||
bars = 14;
|
||||
lower_cutoff_freq = 50;
|
||||
higher_cutoff_freq = 10000;
|
||||
method = "pipewire";
|
||||
source = "auto";
|
||||
stereo = true;
|
||||
reverse = false;
|
||||
bar_delimiter = 0;
|
||||
monstercat = false;
|
||||
waves = false;
|
||||
noise_reduction = 0.77;
|
||||
input_delay = 2;
|
||||
format-icons = ["▁" "▂" "▃" "▄" "▅" "▆" "▇" "█" ];
|
||||
actions = {
|
||||
on-click-right = "mode";
|
||||
};
|
||||
};
|
||||
"custom/power_profile" = {
|
||||
exec = "${asusctl} profile -p | ${sed} s:'Active profile is'::";
|
||||
interval = 30;
|
||||
format = "{}";
|
||||
format-alt-click = "click-right";
|
||||
format-alt = "";
|
||||
on-click = "${asusctl} profile -n; ${pkill} -SIGRTMIN+8 waybar";
|
||||
signal = 8;
|
||||
};
|
||||
"custom/xwayland" = {
|
||||
exec = "${hyprctl} clients | ${rg} -e 'xwayland: [1]' | ${wc} -l";
|
||||
interval = 1;
|
||||
format = "X {}";
|
||||
};
|
||||
"custom/rot" = {
|
||||
exec = "${pidof} iio-hyprland > /dev/null; if [ $? -eq '0' ]; then echo -n ''; else echo -n ''; fi";
|
||||
interval = 1;
|
||||
on-click = "${pkill} iio-hyprland || ${iio-hyprland} & disown";
|
||||
format = " {}";
|
||||
};
|
||||
"custom/wvkbd" = {
|
||||
# RTMIN
|
||||
on-click = "${kill} -s 34 $(${pidof} wvkbd-mobintl)";
|
||||
format = "";
|
||||
};
|
||||
mpd = {
|
||||
format = " {artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S})";
|
||||
format-disconnected = " Disconnected";
|
||||
format-stopped = " Stopped";
|
||||
interval = 1;
|
||||
tooltip-format = "MPD (connected)";
|
||||
tooltip-format-disconnected = "MPD (disconnected)";
|
||||
on-click = "mpc toggle";
|
||||
};
|
||||
};
|
||||
style = ''
|
||||
@define-color base #1e1e2e;
|
||||
@define-color mantle #181825;
|
||||
@define-color crust #11111b;
|
||||
|
||||
@define-color text #cdd6f4;
|
||||
@define-color subtext0 #a6adc8;
|
||||
@define-color subtext1 #bac2de;
|
||||
|
||||
@define-color surface0 #313244;
|
||||
@define-color surface1 #45475a;
|
||||
@define-color surface2 #585b70;
|
||||
|
||||
@define-color overlay0 #6c7086;
|
||||
@define-color overlay1 #7f849c;
|
||||
@define-color overlay2 #9399b2;
|
||||
|
||||
@define-color blue #89b4fa;
|
||||
@define-color lavender #b4befe;
|
||||
@define-color sapphire #74c7ec;
|
||||
@define-color sky #89dceb;
|
||||
@define-color teal #94e2d5;
|
||||
@define-color green #a6e3a1;
|
||||
@define-color yellow #f9e2af;
|
||||
@define-color peach #fab387;
|
||||
@define-color maroon #eba0ac;
|
||||
@define-color red #f38ba8;
|
||||
@define-color mauve #cba6f7;
|
||||
@define-color pink #f5c2e7;
|
||||
@define-color flamingo #f2cdcd;
|
||||
@define-color rosewater #f5e0dc;
|
||||
|
||||
* {
|
||||
border-radius: 10px;
|
||||
font-family: Material Design Icons;
|
||||
font-size: 24px;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background-color: alpha(@base, 0.5);
|
||||
border-radius: 0px;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
#window {
|
||||
margin-top: 4px;
|
||||
margin-bottom: 4px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
background: @mantle;
|
||||
color: @teal;
|
||||
font-family: JetBrains Mono;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
border-radius: 15px;
|
||||
padding-top: 0px;
|
||||
padding-right: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 0px;
|
||||
margin-top: 6px;
|
||||
margin-right: 3px;
|
||||
margin-bottom: 6px;
|
||||
margin-left: 3px;
|
||||
background-color: @mantle;
|
||||
color: @text;
|
||||
min-width: 24px;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-right: 0px;
|
||||
padding-left: 0px;
|
||||
margin-top: 6px;
|
||||
margin-right: 3px;
|
||||
margin-bottom: 6px;
|
||||
margin-left: 3px;
|
||||
background-color: @blue;
|
||||
color: @mantle;
|
||||
min-width: 24px;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background: alpha(@mantle, 0.7);
|
||||
transition-property: background, min-width;
|
||||
transition-duration: 0.5s;
|
||||
transition-timing-function: ease;
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
background-color: @yellow;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background-color: @red;
|
||||
}
|
||||
|
||||
.modules-left > widget:first-child > #workspaces {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.modules-right > widget:first-child > #workspaces {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 0px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @peach;
|
||||
/*border-top-left-radius: 0;
|
||||
border-bottom-left-radius: 0;*/
|
||||
}
|
||||
|
||||
#cava {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
margin-right: 0px;
|
||||
padding-left: 10px;
|
||||
padding-right: 0px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @peach;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
|
||||
#battery {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @teal;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: @red;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.charging, #battery.plugged {
|
||||
background-color: @mantle;
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
background-color: @mantle;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @yellow;
|
||||
}
|
||||
#clock {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition-property: min-width;
|
||||
transition-duration: 0.5s;
|
||||
background: @mantle;
|
||||
color: @pink;
|
||||
}
|
||||
|
||||
#custom-power_profile {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @rosewater;
|
||||
}
|
||||
|
||||
#tray {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
}
|
||||
|
||||
#custom-launcher {
|
||||
font-size: 16px;
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 5px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @blue;
|
||||
}
|
||||
|
||||
#custom-power {
|
||||
font-size: 20px;
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
margin-right: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#custom-wallpaper {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
}
|
||||
|
||||
#custom-updates {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
}
|
||||
|
||||
#custom-media {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
}
|
||||
|
||||
#custom-dnd {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @flamingo;
|
||||
}
|
||||
|
||||
#custom-xwayland {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @green;
|
||||
}
|
||||
|
||||
#custom-rot {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @flamingo;
|
||||
}
|
||||
|
||||
#custom-wvkbd {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @blue;
|
||||
}
|
||||
|
||||
#mpd {
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
transition: none;
|
||||
background: @mantle;
|
||||
color: @green;
|
||||
}
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Reference in a new issue