so many new stuff (nix and hyprland)
This commit is contained in:
parent
fc59006538
commit
2a4567daa3
14 changed files with 816 additions and 130 deletions
1
conf.yml
1
conf.yml
|
@ -16,6 +16,7 @@
|
||||||
~/.config/waybar:
|
~/.config/waybar:
|
||||||
~/.config/i3status-rust:
|
~/.config/i3status-rust:
|
||||||
~/.config/rofi:
|
~/.config/rofi:
|
||||||
|
~/.config/hypr:
|
||||||
~/.zshrc:
|
~/.zshrc:
|
||||||
~/.p10k.zsh:
|
~/.p10k.zsh:
|
||||||
|
|
||||||
|
|
188
configuration.nix
Normal file
188
configuration.nix
Normal file
|
@ -0,0 +1,188 @@
|
||||||
|
# Edit this configuration file to define what should be installed on
|
||||||
|
# your system. Help is available in the configuration.nix(5) man page, on
|
||||||
|
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
|
||||||
|
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
[ # Include the results of the hardware scan.
|
||||||
|
./hardware-configuration.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
# Use the systemd-boot EFI boot loader.
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
|
networking.hostName = "ytnix"; # Define your hostname.
|
||||||
|
# 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.
|
||||||
|
networking.wireless.iwd = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
Rank = {
|
||||||
|
BandModifier2_4GHz = 0.0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
networking.networkmanager.wifi.backend = "iwd";
|
||||||
|
|
||||||
|
# Set your time zone.
|
||||||
|
time.timeZone = "America/Toronto";
|
||||||
|
|
||||||
|
# Configure network proxy if necessary
|
||||||
|
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||||
|
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||||
|
|
||||||
|
# Select internationalisation properties.
|
||||||
|
# i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
# console = {
|
||||||
|
# font = "Lat2-Terminus16";
|
||||||
|
# keyMap = "us";
|
||||||
|
# useXkbConfig = true; # use xkb.options in tty.
|
||||||
|
# };
|
||||||
|
|
||||||
|
# Enable the X11 windowing system.
|
||||||
|
#services.xserver.enable = true;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Configure keymap in X11
|
||||||
|
# services.xserver.xkb.layout = "us";
|
||||||
|
# services.xserver.xkb.options = "eurosign:e,caps:escape";
|
||||||
|
|
||||||
|
# Enable CUPS to print documents.
|
||||||
|
# services.printing.enable = true;
|
||||||
|
|
||||||
|
# Enable sound.
|
||||||
|
# hardware.pulseaudio.enable = true;
|
||||||
|
# OR
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable touchpad support (enabled default in most desktopManager).
|
||||||
|
services.libinput.enable = true;
|
||||||
|
|
||||||
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
|
users.users.yt = {
|
||||||
|
isNormalUser = true;
|
||||||
|
extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user.
|
||||||
|
shell = pkgs.zsh;
|
||||||
|
packages = with pkgs; [
|
||||||
|
firefox
|
||||||
|
ungoogled-chromium
|
||||||
|
librewolf
|
||||||
|
bitwarden-desktop
|
||||||
|
bitwarden-cli
|
||||||
|
aerc
|
||||||
|
delta
|
||||||
|
fzf
|
||||||
|
zoxide
|
||||||
|
eza
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
# List packages installed in system profile. To search, run:
|
||||||
|
# $ nix search wget
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
tmux
|
||||||
|
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||||
|
wget
|
||||||
|
neovim
|
||||||
|
git
|
||||||
|
python3
|
||||||
|
grim
|
||||||
|
slurp
|
||||||
|
wl-clipboard
|
||||||
|
mako
|
||||||
|
tree
|
||||||
|
kitty
|
||||||
|
rofi-wayland
|
||||||
|
rofimoji
|
||||||
|
cliphist
|
||||||
|
borgbackup
|
||||||
|
jq
|
||||||
|
brightnessctl
|
||||||
|
alsa-utils
|
||||||
|
nixd
|
||||||
|
veracrypt
|
||||||
|
kdePackages.dolphin
|
||||||
|
bluetuith
|
||||||
|
libimobiledevice
|
||||||
|
];
|
||||||
|
|
||||||
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
|
# started in user sessions.
|
||||||
|
# programs.mtr.enable = true;
|
||||||
|
# programs.gnupg.agent = {
|
||||||
|
# enable = true;
|
||||||
|
# enableSSHSupport = true;
|
||||||
|
# };
|
||||||
|
|
||||||
|
# List services that you want to enable:
|
||||||
|
|
||||||
|
# Enable the OpenSSH daemon.
|
||||||
|
# services.openssh.enable = true;
|
||||||
|
|
||||||
|
# Open ports in the firewall.
|
||||||
|
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||||
|
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||||
|
# Or disable the firewall altogether.
|
||||||
|
# networking.firewall.enable = false;
|
||||||
|
|
||||||
|
# Copy the NixOS configuration file and link it from the resulting system
|
||||||
|
# (/run/current-system/configuration.nix). This is useful in case you
|
||||||
|
# accidentally delete configuration.nix.
|
||||||
|
# system.copySystemConfiguration = true;
|
||||||
|
|
||||||
|
# This option defines the first version of NixOS you have installed on this particular machine,
|
||||||
|
# and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
|
||||||
|
#
|
||||||
|
# Most users should NEVER change this value after the initial install, for any reason,
|
||||||
|
# even if you've upgraded your system to a new NixOS release.
|
||||||
|
#
|
||||||
|
# This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
|
||||||
|
# so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how
|
||||||
|
# to actually do that.
|
||||||
|
#
|
||||||
|
# This value being lower than the current NixOS release does NOT mean your system is
|
||||||
|
# out of date, out of support, or vulnerable.
|
||||||
|
#
|
||||||
|
# Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
|
||||||
|
# and migrated your data accordingly.
|
||||||
|
#
|
||||||
|
# For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
|
||||||
|
system.stateVersion = "24.05"; # Did you read the comment?
|
||||||
|
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
programs.sway = {
|
||||||
|
enable = true;
|
||||||
|
wrapperFeatures.gtk = true;
|
||||||
|
};
|
||||||
|
services.displayManager.defaultSession = "sway";
|
||||||
|
services.displayManager.sddm = {
|
||||||
|
enable = true;
|
||||||
|
wayland.enable = true;
|
||||||
|
};
|
||||||
|
programs.waybar.enable = true;
|
||||||
|
programs.zsh.enable = true;
|
||||||
|
security.sudo.wheelNeedsPassword = false;
|
||||||
|
|
||||||
|
fonts.packages = with pkgs; [
|
||||||
|
nerdfonts
|
||||||
|
];
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
|
hardware.bluetooth = {
|
||||||
|
enable = true;
|
||||||
|
powerOnBoot = true;
|
||||||
|
};
|
||||||
|
services.blueman.enable = true;
|
||||||
|
|
||||||
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
}
|
||||||
|
|
19
flake.nix
Normal file
19
flake.nix
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
description = "A very basic flake";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = { self, nixpkgs }:
|
||||||
|
let
|
||||||
|
lib = nixpkgs.lib;
|
||||||
|
in {
|
||||||
|
nixosConfigurations = {
|
||||||
|
ytnix = lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
modules = [ ./configuration.nix ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
54
hardware-configuration.nix
Normal file
54
hardware-configuration.nix
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
# 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" "ahci" "nvme" "usb_storage" "sd_mod" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/17870658-6118-46af-837f-70c9175e09c3";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=root" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
boot.initrd.luks.devices."cryptroot".device = "/dev/disk/by-uuid/c6098a16-c8a6-4a97-8648-6f46ca919d13";
|
||||||
|
|
||||||
|
fileSystems."/home" =
|
||||||
|
{ device = "/dev/disk/by-uuid/17870658-6118-46af-837f-70c9175e09c3";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=home" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/nix" =
|
||||||
|
{ device = "/dev/disk/by-uuid/17870658-6118-46af-837f-70c9175e09c3";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=nix" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/29B7-F46D";
|
||||||
|
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.enp1s0.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
209
hypr/hyprland.conf
Normal file
209
hypr/hyprland.conf
Normal file
|
@ -0,0 +1,209 @@
|
||||||
|
monitor=,preferred,auto,1
|
||||||
|
$terminal = kitty
|
||||||
|
$fileManager = dolphin
|
||||||
|
$menu = rofi -show drun
|
||||||
|
|
||||||
|
exec-once = nm-applet &
|
||||||
|
exec-once = waybar &
|
||||||
|
exec-once = mako &
|
||||||
|
|
||||||
|
env = XCURSOR_SIZE,24
|
||||||
|
env = HYPRCURSOR_SIZE,24
|
||||||
|
|
||||||
|
general {
|
||||||
|
gaps_in = 5
|
||||||
|
gaps_out = 5
|
||||||
|
border_size = 2
|
||||||
|
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||||
|
col.inactive_border = rgba(595959aa)
|
||||||
|
resize_on_border = false
|
||||||
|
allow_tearing = false
|
||||||
|
layout = master
|
||||||
|
}
|
||||||
|
|
||||||
|
decoration {
|
||||||
|
rounding = 5
|
||||||
|
|
||||||
|
active_opacity = 1.0
|
||||||
|
inactive_opacity = 1.0
|
||||||
|
|
||||||
|
shadow {
|
||||||
|
enabled = true
|
||||||
|
range = 4
|
||||||
|
render_power = 3
|
||||||
|
color = rgba(1a1a1aee)
|
||||||
|
}
|
||||||
|
|
||||||
|
blur {
|
||||||
|
enabled = true
|
||||||
|
size = 3
|
||||||
|
passes = 1
|
||||||
|
vibrancy = 0.1696
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
animations {
|
||||||
|
enabled = yes, please :)
|
||||||
|
|
||||||
|
bezier = easeOutQuint,0.23,1,0.32,1
|
||||||
|
bezier = easeInOutCubic,0.65,0.05,0.36,1
|
||||||
|
bezier = linear,0,0,1,1
|
||||||
|
bezier = almostLinear,0.5,0.5,0.75,1.0
|
||||||
|
bezier = quick,0.15,0,0.1,1
|
||||||
|
|
||||||
|
animation = global, 1, 10, default
|
||||||
|
animation = border, 1, 5.39, easeOutQuint
|
||||||
|
animation = windows, 1, 4.79, easeOutQuint
|
||||||
|
animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
|
||||||
|
animation = windowsOut, 1, 1.49, linear, popin 87%
|
||||||
|
animation = fadeIn, 1, 1.73, almostLinear
|
||||||
|
animation = fadeOut, 1, 1.46, almostLinear
|
||||||
|
animation = fade, 1, 3.03, quick
|
||||||
|
animation = layers, 1, 3.81, easeOutQuint
|
||||||
|
animation = layersIn, 1, 4, easeOutQuint, fade
|
||||||
|
animation = layersOut, 1, 1.5, linear, fade
|
||||||
|
animation = fadeLayersIn, 1, 1.79, almostLinear
|
||||||
|
animation = fadeLayersOut, 1, 1.39, almostLinear
|
||||||
|
animation = workspaces, 1, 1.94, almostLinear, fade
|
||||||
|
animation = workspacesIn, 1, 1.21, almostLinear, fade
|
||||||
|
animation = workspacesOut, 1, 1.94, almostLinear, fade
|
||||||
|
}
|
||||||
|
|
||||||
|
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
|
||||||
|
# "Smart gaps" / "No gaps when only"
|
||||||
|
# uncomment all if you wish to use that.
|
||||||
|
# workspace = w[tv1], gapsout:0, gapsin:0
|
||||||
|
# workspace = f[1], gapsout:0, gapsin:0
|
||||||
|
# windowrulev2 = bordersize 0, floating:0, onworkspace:w[tv1]
|
||||||
|
# windowrulev2 = rounding 0, floating:0, onworkspace:w[tv1]
|
||||||
|
# windowrulev2 = bordersize 0, floating:0, onworkspace:f[1]
|
||||||
|
# windowrulev2 = rounding 0, floating:0, onworkspace:f[1]
|
||||||
|
|
||||||
|
dwindle {
|
||||||
|
pseudotile = true
|
||||||
|
preserve_split = true
|
||||||
|
}
|
||||||
|
|
||||||
|
master {
|
||||||
|
new_status = slave
|
||||||
|
mfact = 0.5
|
||||||
|
}
|
||||||
|
|
||||||
|
misc {
|
||||||
|
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
|
||||||
|
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
input {
|
||||||
|
kb_layout = us
|
||||||
|
kb_variant =
|
||||||
|
kb_model =
|
||||||
|
kb_options = ctrl:nocaps
|
||||||
|
kb_rules =
|
||||||
|
numlock_by_default = true
|
||||||
|
|
||||||
|
follow_mouse = 1
|
||||||
|
|
||||||
|
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||||
|
|
||||||
|
touchpad {
|
||||||
|
natural_scroll = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
gestures {
|
||||||
|
workspace_swipe = false
|
||||||
|
}
|
||||||
|
|
||||||
|
###################
|
||||||
|
### KEYBINDINGS ###
|
||||||
|
###################
|
||||||
|
|
||||||
|
$mainMod = SUPER
|
||||||
|
$shiftMod = SUPER_SHIFT
|
||||||
|
$altMod = SUPER_ALT
|
||||||
|
$ctrlMod = SUPER_CTRL
|
||||||
|
|
||||||
|
bind = $mainMod, return, exec, $terminal
|
||||||
|
bind = $ctrlMod, Q, killactive,
|
||||||
|
bind = $shiftMod, E, exit,
|
||||||
|
bind = $mainMod, space, togglefloating,
|
||||||
|
bind = $mainMod, D, exec, $menu
|
||||||
|
bind = $mainMod, E, layoutmsg, swapwithmaster master
|
||||||
|
|
||||||
|
# apps
|
||||||
|
bind = $altMod, F, exec, $fileManager
|
||||||
|
bind = $altMod, B, exec, librewolf
|
||||||
|
bind = $mainMod, P, exec, bitwarden
|
||||||
|
|
||||||
|
# Move focus with mainMod + arrow keys
|
||||||
|
bind = $mainMod, H, movefocus, l
|
||||||
|
bind = $mainMod, L, movefocus, r
|
||||||
|
bind = $mainMod, K, movefocus, u
|
||||||
|
bind = $mainMod, J, movefocus, d
|
||||||
|
|
||||||
|
# Switch workspaces with mainMod + [0-9]
|
||||||
|
bind = $mainMod, 1, workspace, 1
|
||||||
|
bind = $mainMod, 2, workspace, 2
|
||||||
|
bind = $mainMod, 3, workspace, 3
|
||||||
|
bind = $mainMod, 4, workspace, 4
|
||||||
|
bind = $mainMod, 5, workspace, 5
|
||||||
|
bind = $mainMod, 6, workspace, 6
|
||||||
|
bind = $mainMod, 7, workspace, 7
|
||||||
|
bind = $mainMod, 8, workspace, 8
|
||||||
|
bind = $mainMod, 9, workspace, 9
|
||||||
|
bind = $mainMod, 0, workspace, 10
|
||||||
|
|
||||||
|
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||||
|
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||||
|
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||||
|
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||||
|
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||||
|
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||||
|
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||||
|
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||||
|
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||||
|
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||||
|
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||||
|
|
||||||
|
# Example special workspace (scratchpad)
|
||||||
|
bind = $mainMod, S, togglespecialworkspace, magic
|
||||||
|
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||||
|
|
||||||
|
# Scroll through existing workspaces with mainMod + scroll
|
||||||
|
bind = $mainMod, mouse_down, workspace, e+1
|
||||||
|
bind = $mainMod, mouse_up, workspace, e-1
|
||||||
|
|
||||||
|
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||||
|
bindm = $mainMod, mouse:272, movewindow
|
||||||
|
bindm = $mainMod, mouse:273, resizewindow
|
||||||
|
|
||||||
|
# Laptop multimedia keys for volume and LCD brightness
|
||||||
|
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 1%+
|
||||||
|
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-
|
||||||
|
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||||
|
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||||
|
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 1%+
|
||||||
|
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 1%-
|
||||||
|
|
||||||
|
##############################
|
||||||
|
### WINDOWS AND WORKSPACES ###
|
||||||
|
##############################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
|
||||||
|
|
||||||
|
# Example windowrule v1
|
||||||
|
# windowrule = float, ^(kitty)$
|
||||||
|
|
||||||
|
# Example windowrule v2
|
||||||
|
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
||||||
|
|
||||||
|
# Ignore maximize requests from apps. You'll probably like this.
|
||||||
|
windowrulev2 = suppressevent maximize, class:.*
|
||||||
|
|
||||||
|
# Fix some dragging issues with XWayland
|
||||||
|
windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
|
||||||
|
|
||||||
|
workspace = 2, on-created-empty:librewolf
|
|
@ -1,5 +1,5 @@
|
||||||
font_family Spleen 16x32
|
font_family RobotoMono Nerd Font
|
||||||
font_size 14
|
font_size 13
|
||||||
enable_audio_bell no
|
enable_audio_bell no
|
||||||
|
|
||||||
kitty_mod ctrl+shift
|
kitty_mod ctrl+shift
|
||||||
|
|
117
nix/configuration.nix
Normal file
117
nix/configuration.nix
Normal file
|
@ -0,0 +1,117 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
[
|
||||||
|
./hardware-configuration.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
|
networking.hostName = "ytnix";
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
# disable 2.4 GHz cause i have a shitty wireless card
|
||||||
|
# that interferes with bluetooth otherwise
|
||||||
|
networking.wireless.iwd = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
Rank = {
|
||||||
|
BandModifier2_4GHz = 0.0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
networking.networkmanager.wifi.backend = "iwd";
|
||||||
|
time.timeZone = "America/Toronto";
|
||||||
|
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.libinput.enable = true;
|
||||||
|
|
||||||
|
users.users.yt = {
|
||||||
|
isNormalUser = true;
|
||||||
|
extraGroups = [ "wheel" ];
|
||||||
|
shell = pkgs.zsh;
|
||||||
|
packages = with pkgs; [
|
||||||
|
firefox
|
||||||
|
ungoogled-chromium
|
||||||
|
librewolf
|
||||||
|
bitwarden-desktop
|
||||||
|
bitwarden-cli
|
||||||
|
aerc
|
||||||
|
delta
|
||||||
|
fzf
|
||||||
|
zoxide
|
||||||
|
eza
|
||||||
|
fastfetch
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
tmux
|
||||||
|
vim
|
||||||
|
wget
|
||||||
|
neovim
|
||||||
|
git
|
||||||
|
python3
|
||||||
|
grim
|
||||||
|
slurp
|
||||||
|
wl-clipboard
|
||||||
|
mako
|
||||||
|
tree
|
||||||
|
kitty
|
||||||
|
rofi-wayland
|
||||||
|
rofimoji
|
||||||
|
cliphist
|
||||||
|
borgbackup
|
||||||
|
jq
|
||||||
|
brightnessctl
|
||||||
|
alsa-utils
|
||||||
|
nixd
|
||||||
|
veracrypt
|
||||||
|
kdePackages.dolphin
|
||||||
|
bluetuith
|
||||||
|
libimobiledevice
|
||||||
|
networkmanagerapplet
|
||||||
|
];
|
||||||
|
|
||||||
|
system.stateVersion = "24.05";
|
||||||
|
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
programs.gnupg.agent.enable = true;
|
||||||
|
|
||||||
|
# programs.sway = {
|
||||||
|
# enable = true;
|
||||||
|
# wrapperFeatures.gtk = true;
|
||||||
|
# };
|
||||||
|
services.displayManager.defaultSession = "hyprland";
|
||||||
|
services.displayManager.sddm = {
|
||||||
|
enable = true;
|
||||||
|
wayland.enable = true;
|
||||||
|
};
|
||||||
|
programs.waybar.enable = true;
|
||||||
|
programs.zsh.enable = true;
|
||||||
|
security.sudo.wheelNeedsPassword = false;
|
||||||
|
|
||||||
|
fonts.packages = with pkgs; [
|
||||||
|
nerdfonts
|
||||||
|
];
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
|
hardware.bluetooth = {
|
||||||
|
enable = true;
|
||||||
|
powerOnBoot = true;
|
||||||
|
};
|
||||||
|
services.blueman.enable = true;
|
||||||
|
|
||||||
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
|
||||||
|
programs.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
# withUWSM = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
27
nix/flake.lock
generated
Normal file
27
nix/flake.lock
generated
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1732014248,
|
||||||
|
"narHash": "sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "23e89b7da85c3640bbc2173fe04f4bd114342367",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
19
nix/flake.nix
Normal file
19
nix/flake.nix
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
description = "A very basic flake";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = { self, nixpkgs }:
|
||||||
|
let
|
||||||
|
lib = nixpkgs.lib;
|
||||||
|
in {
|
||||||
|
nixosConfigurations = {
|
||||||
|
ytnix = lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
modules = [ ./configuration.nix ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
54
nix/hardware-configuration.nix
Normal file
54
nix/hardware-configuration.nix
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
# 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" "ahci" "nvme" "usb_storage" "sd_mod" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/17870658-6118-46af-837f-70c9175e09c3";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=root" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
boot.initrd.luks.devices."cryptroot".device = "/dev/disk/by-uuid/c6098a16-c8a6-4a97-8648-6f46ca919d13";
|
||||||
|
|
||||||
|
fileSystems."/home" =
|
||||||
|
{ device = "/dev/disk/by-uuid/17870658-6118-46af-837f-70c9175e09c3";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=home" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/nix" =
|
||||||
|
{ device = "/dev/disk/by-uuid/17870658-6118-46af-837f-70c9175e09c3";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=nix" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/29B7-F46D";
|
||||||
|
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.enp1s0.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
|
@ -155,4 +155,4 @@ configuration {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@theme "/usr/share/rofi/themes/gruvbox-dark.rasi"
|
@theme "/nix/store/nkjjc70cidfc3wbpas7kqr7agasma59c-rofi-1.7.5+wayland3/share/rofi/themes/gruvbox-dark.rasi"
|
||||||
|
|
|
@ -18,7 +18,7 @@ set $bg #000000
|
||||||
set $fg #ffffff
|
set $fg #ffffff
|
||||||
set $fgi #888888
|
set $fgi #888888
|
||||||
|
|
||||||
set $wallpaper $HOME/wallpapers/nasamute.png
|
set $wallpaper $HOME/wallpapers/animegirl.jpg
|
||||||
set $lock swaylock -f -i $wallpaper
|
set $lock swaylock -f -i $wallpaper
|
||||||
output * bg $wallpaper fill
|
output * bg $wallpaper fill
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ smart_borders on
|
||||||
focus_follows_mouse yes
|
focus_follows_mouse yes
|
||||||
|
|
||||||
bindsym $mod+Return exec $term
|
bindsym $mod+Return exec $term
|
||||||
bindsym $mod+q kill
|
bindsym $mod+Ctrl+q kill
|
||||||
bindsym $mod+d exec $menu
|
bindsym $mod+d exec $menu
|
||||||
bindsym $mod+Shift+c reload
|
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+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'
|
||||||
|
@ -42,7 +42,7 @@ bindsym $mod+$alt+f exec dolphin
|
||||||
bindsym $mod+$alt+p exec pomatez
|
bindsym $mod+$alt+p exec pomatez
|
||||||
bindsym $mod+$alt+e exec evolution
|
bindsym $mod+$alt+e exec evolution
|
||||||
bindsym $mod+$alt+c exec korganizer
|
bindsym $mod+$alt+c exec korganizer
|
||||||
bindsym $mod+p exec bitwarden-desktop
|
bindsym $mod+p exec bitwarden
|
||||||
|
|
||||||
bindsym $mod+$left focus left
|
bindsym $mod+$left focus left
|
||||||
bindsym $mod+$down focus down
|
bindsym $mod+$down focus down
|
||||||
|
|
114
waybar/config
114
waybar/config
|
@ -1,55 +1,85 @@
|
||||||
{
|
{
|
||||||
"modules-left": ["sway/workspaces", "sway/window", "sway/mode"],
|
"layer": "top", // Waybar on highest layer so tooltips go over windows
|
||||||
"modules-right": ["tray", "pulseaudio", "backlight", "network", "battery", "clock"],
|
"output": "eDP-1", // Set output to primary monitor
|
||||||
"clock": {
|
"height": 40, // Set height to avoid jumping due to active workspace indicator
|
||||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
|
|
||||||
"format": "{:%b %d(%H:%M) }"
|
"margin-left": 4,
|
||||||
|
"margin-right": 4,
|
||||||
|
"margin-top": 4,
|
||||||
|
"modules-left": ["hyprland/workspaces", "clock#time", "clock#date", "battery"], // Sets modules for the left of the bar
|
||||||
|
"modules-center": ["hyprland/window"], // Set modules for the center of the bar
|
||||||
|
"modules-right": ["tray", "temperature", "cpu", "memory", "wireplumber"], // Set modules for the right of the bar
|
||||||
|
"clock#time": {
|
||||||
|
"format": "<span color=\"#7aa2f7\"> </span>{:%H:%M:%S}",
|
||||||
|
"interval": 1,
|
||||||
|
},
|
||||||
|
"clock#date": {
|
||||||
|
"format": "<span color=\"#7aa2f7\"> </span>{:%d/%m/%Y}",
|
||||||
|
"tooltip-format": "<tt>{calendar}</tt>",
|
||||||
|
"interval": 360,
|
||||||
|
"calendar": {
|
||||||
|
"mode": "month",
|
||||||
|
"mode-mon-col": 4,
|
||||||
|
"weeks-pos": "right",
|
||||||
|
"on-scroll": 1,
|
||||||
|
"on-click-right": "mode",
|
||||||
|
"format": {
|
||||||
|
"months": "<span color='#c0caf5'><b>{}</b></span>",
|
||||||
|
"days": "<span color='#c0caf5'><b>{}</b></span>",
|
||||||
|
"weeks": "<span color='#7dcfff'><b>W{}</b></span>",
|
||||||
|
"weekdays": "<span color='#ff9e64'><b>{}</b></span>",
|
||||||
|
"today": "<span color='#f7768e'><b><u>{}</u></b></span>",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
"backlight": {
|
|
||||||
"format": "{percent}% {icon}",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", ""]
|
|
||||||
},
|
},
|
||||||
"battery": {
|
"battery": {
|
||||||
|
"interval": 60,
|
||||||
"states": {
|
"states": {
|
||||||
"warning": 30,
|
"warning": 40,
|
||||||
"critical": 15
|
"critical": 20,
|
||||||
},
|
},
|
||||||
"format": "{capacity}% {icon}",
|
"format": "{icon} {capacity}%",
|
||||||
"format-charging": "{capacity}% ",
|
"format-icons": [
|
||||||
"format-plugged": "{capacity}% ",
|
"<span color=\"#f7768e\"> </span>",
|
||||||
"format-alt": "{time} {icon}",
|
"<span color=\"#f7768e\"> </span>",
|
||||||
"format-icons": ["", "", "", "", ""]
|
"<span color=\"#7aa2f7\"> </span>",
|
||||||
|
"<span color=\"#7aa2f7\"> </span>",
|
||||||
|
"<span color=\"#7aa2f7\"> </span>",
|
||||||
|
],
|
||||||
|
"format-charging": "<span color=\"#e0af68\"></span> {capacity}%",
|
||||||
},
|
},
|
||||||
"pulseaudio": {
|
"cpu": {
|
||||||
"format": "{volume}% {icon} {format_source}",
|
"format": "<span color=\"#7aa2f7\"> </span>{usage}%",
|
||||||
"format-bluetooth": "{volume}% {icon} {format_source}",
|
"interval": 4,
|
||||||
"format-bluetooth-muted": " {icon} {format_source}",
|
|
||||||
"format-muted": " {format_source}",
|
|
||||||
"format-source": "{volume}% ",
|
|
||||||
"format-source-muted": "",
|
|
||||||
"format-icons": {
|
|
||||||
"headphone": "",
|
|
||||||
"hands-free": "",
|
|
||||||
"headset": "",
|
|
||||||
"phone": "",
|
|
||||||
"portable": "",
|
|
||||||
"car": "",
|
|
||||||
"default": ["", "", ""]
|
|
||||||
},
|
},
|
||||||
"on-click": "pavucontrol"
|
"memory": {
|
||||||
|
"format": "<span color=\"#7aa2f7\"> </span>{used}GiB",
|
||||||
|
"interval": 4,
|
||||||
},
|
},
|
||||||
"network": {
|
"temperature": {
|
||||||
"format": "{ifname}",
|
"hwmon-path": "/sys/class/hwmon/hwmon6/temp1_input",
|
||||||
"format-wifi": "Connected ",
|
"critical-threshold": 80,
|
||||||
"format-ethernet": "{ipaddr}/{cidr} ",
|
"format": "<span color=\"#7aa2f7\"> </span>{temperatureC}°C",
|
||||||
"format-disconnected": "Disconnected ", //An empty format will hide the module.
|
"format-critical": "<span color=\"#f7768e\"> </span>{temperatureC}°C",
|
||||||
"tooltip-format": "{ifname} via {gwaddr} ",
|
"interval": 4,
|
||||||
"tooltip-format-wifi": "{essid} ({signalStrength}%) ",
|
},
|
||||||
"tooltip-format-ethernet": "{ifname} ",
|
"wireplumber": {
|
||||||
"tooltip-format-disconnected": "Disconnected",
|
"scroll-step": 1, // %, can be a float
|
||||||
"max-length": 50
|
"format": "<span color=\"#7aa2f7\">{icon} </span>{volume}%",
|
||||||
|
"format-muted": "<span color=\"#f7768e\"> </span>Muted",
|
||||||
|
"format-icons": ["", "", ""],
|
||||||
|
"on-click": "pavucontrol",
|
||||||
|
"interval": 4,
|
||||||
|
},
|
||||||
|
"hyprland/window": {
|
||||||
|
"max-length": 64,
|
||||||
},
|
},
|
||||||
"tray": {
|
"tray": {
|
||||||
"spacing": 10
|
"icon-size": 22,
|
||||||
|
"spacing": 6,
|
||||||
|
},
|
||||||
|
"hyprland/workspaces": {
|
||||||
|
"disable-scroll": true,
|
||||||
|
"on-click": "activate",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
130
waybar/style.css
130
waybar/style.css
|
@ -1,102 +1,70 @@
|
||||||
* {
|
.module,
|
||||||
border: none;
|
#clock.date,
|
||||||
border-radius: 0;
|
#clock.time,
|
||||||
font-family: RobotoMono Nerd Font;
|
#workspaces button {
|
||||||
font-size: 14px;
|
background: transparent;
|
||||||
font-weight: 500;
|
padding: 0 10px;
|
||||||
|
font-family: SpaceMono Nerd Font;
|
||||||
|
font-weight: 900;
|
||||||
|
font-size: 13pt;
|
||||||
|
color: #c0caf5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* main waybar */
|
||||||
window#waybar {
|
window#waybar {
|
||||||
background-color: #282828;
|
background: rgba(26, 27, 38, 0.75);
|
||||||
color: #ebdbb2;
|
border: 2px solid #414868;
|
||||||
transition-property: background-color;
|
|
||||||
transition-duration: 0.5s;
|
|
||||||
border-bottom: solid 0px #3c3836;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
window#waybar.hidden {
|
/* when hovering over modules */
|
||||||
opacity: 0.2;
|
tooltip {
|
||||||
|
background: #1e1e2e;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces {
|
||||||
|
padding-right: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#workspaces button {
|
#workspaces button {
|
||||||
padding: 0 5px;
|
padding: 2px;
|
||||||
color: #ebdbb2;
|
|
||||||
border-radius: 5px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#clock {
|
||||||
|
padding-right: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Sets active workspace to have a solid line on the bottom */
|
||||||
|
#workspaces button.active {
|
||||||
|
border-bottom: 2px solid #7aa2f7;
|
||||||
|
border-radius: 0;
|
||||||
|
margin-top: 2px;
|
||||||
|
transition: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* More workspace stuff for highlighting on hover */
|
||||||
#workspaces button.focused {
|
#workspaces button.focused {
|
||||||
background-color: #ebdbb2;
|
color: #a6adc8;
|
||||||
color: #282828;
|
|
||||||
border-bottom: none;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#workspaces button.urgent {
|
#workspaces button.urgent {
|
||||||
background-color: #cc241d;
|
color: #f7768e;
|
||||||
}
|
}
|
||||||
|
|
||||||
widget > * {
|
#workspaces button:hover {
|
||||||
margin-top: 6px;
|
background: #11111b;
|
||||||
margin-bottom: 6px;
|
color: #cdd6f4;
|
||||||
}
|
}
|
||||||
|
|
||||||
.modules-left > widget > * {
|
/* Hide window module when not focused on window or empty workspace */
|
||||||
margin-left: 12px;
|
window#waybar.empty #window {
|
||||||
margin-right: 12px;
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
opacity: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.modules-left > widget:first-child > * {
|
/* Set up rounding to make these modules look like separate pills */
|
||||||
margin-left: 6px;
|
#tray {
|
||||||
}
|
margin-right: 4px;
|
||||||
|
|
||||||
.modules-left > widget:last-child > * {
|
|
||||||
margin-right: 18px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.modules-right > widget > * {
|
|
||||||
padding: 0 12px;
|
|
||||||
margin-left: 0;
|
|
||||||
margin-right: 0;
|
|
||||||
color: #282828;
|
|
||||||
background-color: #ebdbb2;
|
|
||||||
}
|
|
||||||
|
|
||||||
.modules-right > widget:first-child > * {
|
|
||||||
border-radius: 5px 0 0 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.modules-right > widget:last-child > * {
|
|
||||||
border-radius: 0 5px 5px 0;
|
|
||||||
margin-right: 6px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mode {
|
|
||||||
background: transparent;
|
|
||||||
color: #fb4934;
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes blink {
|
|
||||||
to {
|
|
||||||
color: #ebdbb2;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.critical:not(.charging) {
|
|
||||||
animation-name: blink;
|
|
||||||
animation-duration: 1s;
|
|
||||||
animation-timing-function: linear;
|
|
||||||
animation-iteration-count: infinite;
|
|
||||||
animation-direction: alternate;
|
|
||||||
}
|
|
||||||
|
|
||||||
label:focus {
|
|
||||||
background-color: #282828;
|
|
||||||
}
|
|
||||||
|
|
||||||
tooltip {
|
|
||||||
border-radius: 5px;
|
|
||||||
background: #504945;
|
|
||||||
}
|
|
||||||
|
|
||||||
tooltip label {
|
|
||||||
color: #ebdbb2;
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue