chore: run fmt

This commit is contained in:
installer
2025-02-06 18:25:39 +01:00
parent 9600761c92
commit 75281a05ea
20 changed files with 380 additions and 272 deletions
+53 -51
View File
@@ -14,59 +14,61 @@
}; };
}; };
outputs = { outputs =
self, {
nixpkgs, self,
disko, nixpkgs,
... disko,
}@inputs: let ...
system = "x86_64-linux"; }@inputs:
pkgs = nixpkgs.legacyPackages.${system}; let
in system = "x86_64-linux";
{ pkgs = nixpkgs.legacyPackages.${system};
nixosConfigurations = { in
arcueid = nixpkgs.lib.nixosSystem { {
specialArgs = { nixosConfigurations = {
inherit system; arcueid = nixpkgs.lib.nixosSystem {
inherit inputs; specialArgs = {
inherit system;
inherit inputs;
};
modules = [
./modules/nixos/cli-environment.nix
./modules/nixos/desktop-apps.nix
./modules/nixos/dev-environment.nix
./modules/nixos/fonts.nix
./modules/nixos/gaming.nix
./modules/nixos/window-manager.nix
./hosts/home/configuration.nix
inputs.stylix.nixosModules.stylix
inputs.home-manager.nixosModules.default
];
};
work-laptop = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs system; };
modules = [
./modules/nixos/cli-environment.nix
./modules/nixos/dev-environment.nix
./modules/nixos/fonts.nix
./modules/nixos/window-manager.nix
disko.nixosModules.disko
inputs.stylix.nixosModules.stylix
inputs.home-manager.nixosModules.default
./hosts/work/configuration.nix
./hosts/work/hardware-configuration.nix
];
}; };
modules = [
./modules/nixos/cli-environment.nix
./modules/nixos/desktop-apps.nix
./modules/nixos/dev-environment.nix
./modules/nixos/fonts.nix
./modules/nixos/gaming.nix
./modules/nixos/window-manager.nix
./hosts/home/configuration.nix
inputs.stylix.nixosModules.stylix
inputs.home-manager.nixosModules.default
];
}; };
work-laptop = nixpkgs.lib.nixosSystem { homeConfigurations = {
specialArgs = {inherit inputs system;}; "xmorel@work-laptop" = inputs.home-manager.lib.homeManagerConfiguration {
modules = [ pkgs = pkgs;
./modules/nixos/cli-environment.nix extraSpecialArgs = { inherit inputs; };
./modules/nixos/dev-environment.nix modules = [
./modules/nixos/fonts.nix ./hosts/work/home.nix
./modules/nixos/window-manager.nix ];
disko.nixosModules.disko };
inputs.stylix.nixosModules.stylix
inputs.home-manager.nixosModules.default
./hosts/work/configuration.nix
./hosts/work/hardware-configuration.nix
];
}; };
# homeManagerModules.default = ./modules/home-manager;
# nixosModules.default = ./modules/nixos;
}; };
homeConfigurations = {
"xmorel@work-laptop" = inputs.home-manager.lib.homeManagerConfiguration {
pkgs = pkgs;
extraSpecialArgs = {inherit inputs;};
modules = [
./hosts/work/home.nix
];
};
};
# homeManagerModules.default = ./modules/home-manager;
# nixosModules.default = ./modules/nixos;
};
} }
+46 -20
View File
@@ -1,11 +1,15 @@
{ config, pkgs, inputs, ... }: {
config,
pkgs,
inputs,
...
}:
{ {
imports = imports = [
[ ./hardware-configuration.nix
./hardware-configuration.nix inputs.home-manager.nixosModules.default
inputs.home-manager.nixosModules.default ];
];
# Bootloader. # Bootloader.
boot = { boot = {
@@ -22,19 +26,31 @@
fileSystems."/mnt/apps" = { fileSystems."/mnt/apps" = {
device = "/dev/disk/by-label/Apps"; device = "/dev/disk/by-label/Apps";
fsType = "ntfs-3g"; fsType = "ntfs-3g";
options = [ "rw" "uid=1000" ]; options = [
"rw"
"uid=1000"
];
}; };
fileSystems."/mnt/photos" = { fileSystems."/mnt/photos" = {
device = "/dev/disk/by-label/Photos"; device = "/dev/disk/by-label/Photos";
fsType = "ntfs-3g"; fsType = "ntfs-3g";
options = [ "rw" "uid=1000" ]; options = [
"rw"
"uid=1000"
];
}; };
fileSystems."/mnt/ext" = { fileSystems."/mnt/ext" = {
device = "/dev/disk/by-label/Externe"; device = "/dev/disk/by-label/Externe";
fsType = "ntfs-3g"; fsType = "ntfs-3g";
options = [ "auto" "nofail" "noatime" "rw" "uid=1000" ]; options = [
"auto"
"nofail"
"noatime"
"rw"
"uid=1000"
];
}; };
networking.hostName = "arcueid"; # Define your hostname. networking.hostName = "arcueid"; # Define your hostname.
@@ -42,13 +58,17 @@
nix = { nix = {
settings = { settings = {
auto-optimise-store = true; auto-optimise-store = true;
experimental-features = [ "nix-command" "flakes" ]; experimental-features = [
"nix-command"
"flakes"
];
}; };
gc = { gc = {
automatic = true; automatic = true;
dates = "weekly"; dates = "weekly";
options = "--delete-older-than 10d"; options = "--delete-older-than 10d";
}; };
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
}; };
time.timeZone = "Europe/Paris"; time.timeZone = "Europe/Paris";
@@ -78,13 +98,17 @@
security = { security = {
rtkit.enable = true; rtkit.enable = true;
sudo.extraRules = [{ sudo.extraRules = [
users = [ "yoru" ]; {
commands = [{ users = [ "yoru" ];
command = "ALL"; commands = [
options = [ "NOPASSWD" ]; {
}]; command = "ALL";
}]; options = [ "NOPASSWD" ];
}
];
}
];
}; };
services = { services = {
@@ -118,9 +142,11 @@
shell = pkgs.fish; shell = pkgs.fish;
isNormalUser = true; isNormalUser = true;
description = "Yoru"; description = "Yoru";
extraGroups = [ "networkmanager" "wheel" "scanner" "lp"]; extraGroups = [
packages = with pkgs; [ "networkmanager"
"wheel"
"scanner"
"lp"
]; ];
}; };
home-manager = { home-manager = {
+27 -12
View File
@@ -1,26 +1,41 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }: {
config,
lib,
pkgs,
modulesPath,
...
}:
{ {
imports = imports = [
[ (modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ "ehci_pci" "ahci" "xhci_pci" "firewire_ohci" "usb_storage" "usbhid" "sd_mod" "sr_mod" ]; boot.initrd.availableKernelModules = [
"ehci_pci"
"ahci"
"xhci_pci"
"firewire_ohci"
"usb_storage"
"usbhid"
"sd_mod"
"sr_mod"
];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ ]; boot.kernelModules = [ ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = fileSystems."/" = {
{ device = "/dev/disk/by-uuid/78a2cf35-4b53-4277-9742-f3077e7d5b32"; device = "/dev/disk/by-uuid/78a2cf35-4b53-4277-9742-f3077e7d5b32";
fsType = "ext4"; fsType = "ext4";
}; };
swapDevices = swapDevices = [
[ { device = "/dev/disk/by-uuid/59dd4af7-bb20-4b88-82fe-97010227bd06"; } { device = "/dev/disk/by-uuid/59dd4af7-bb20-4b88-82fe-97010227bd06"; }
]; ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # 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 # (the default) this is the recommended approach. When using systemd-networkd it's
+7 -1
View File
@@ -1,4 +1,10 @@
{ config, pkgs, lib, outputs, ... }: {
config,
pkgs,
lib,
outputs,
...
}:
{ {
home.username = "yoru"; home.username = "yoru";
+10 -5
View File
@@ -52,7 +52,10 @@
nix = { nix = {
settings = { settings = {
auto-optimise-store = true; auto-optimise-store = true;
experimental-features = [ "nix-command" "flakes" ]; experimental-features = [
"nix-command"
"flakes"
];
}; };
# gc = { # gc = {
# automatic = true; # automatic = true;
@@ -78,7 +81,11 @@
xmorel = { xmorel = {
shell = pkgs.fish; shell = pkgs.fish;
isNormalUser = true; isNormalUser = true;
extraGroups = [ "networkmanager" "wheel" "docker" ]; extraGroups = [
"networkmanager"
"wheel"
"docker"
];
initialPassword = "toto"; initialPassword = "toto";
openssh.authorizedKeys.keys = [ openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBd3US4tUcbWZQgcVOtZIcbHF5mHwzJzygrQuE/pGde6" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBd3US4tUcbWZQgcVOtZIcbHF5mHwzJzygrQuE/pGde6"
@@ -92,7 +99,7 @@
}; };
}; };
home-manager = { home-manager = {
extraSpecialArgs = {inherit inputs;}; extraSpecialArgs = { inherit inputs; };
users = { users = {
"xmorel" = import ./home.nix; "xmorel" = import ./home.nix;
}; };
@@ -128,8 +135,6 @@
}; };
}; };
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
system.stateVersion = "24.05"; system.stateVersion = "24.05";
} }
+2 -2
View File
@@ -1,4 +1,4 @@
{ lib, ...}: { lib, ... }:
{ {
disko.devices = { disko.devices = {
disk.main = { disk.main = {
@@ -20,7 +20,7 @@
type = "filesystem"; type = "filesystem";
format = "vfat"; format = "vfat";
mountpoint = "/boot"; mountpoint = "/boot";
mountOptions = ["umask=0077"]; mountOptions = [ "umask=0077" ];
}; };
}; };
root = { root = {
+14 -5
View File
@@ -1,14 +1,23 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }: {
config,
lib,
pkgs,
modulesPath,
...
}:
{ {
imports = imports = [
[ (modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" ]; boot.initrd.availableKernelModules = [
"nvme"
"xhci_pci"
];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
+7 -1
View File
@@ -1,4 +1,10 @@
{ config, pkgs, lib, outputs, ... }: {
config,
pkgs,
lib,
outputs,
...
}:
{ {
home.username = "xmorel"; home.username = "xmorel";
+2 -1
View File
@@ -3,7 +3,8 @@
lib, lib,
config, config,
... ...
}: { }:
{
options = { options = {
myHome.dotfiles.enable = lib.mkEnableOption "enables dotfiles"; myHome.dotfiles.enable = lib.mkEnableOption "enables dotfiles";
}; };
+15 -14
View File
@@ -2,9 +2,11 @@
lib, lib,
config, config,
... ...
}: let }:
let
cfg = config.myHome.helix; cfg = config.myHome.helix;
in { in
{
options = { options = {
myHome.helix.enable = lib.mkEnableOption "enables helix"; myHome.helix.enable = lib.mkEnableOption "enables helix";
}; };
@@ -24,21 +26,20 @@ in {
# cursor-line = "warning" # cursor-line = "warning"
}; };
# [[language]] # [[language]]
# name = "python" # name = "python"
# language-servers = ["pylsp"] # language-servers = ["pylsp"]
# [language-server.pylsp.config.pylsp] # [language-server.pylsp.config.pylsp]
# plugins.pyls_mypy.enabled = true # plugins.pyls_mypy.enabled = true
# plugins.pyls_mypy.live_mode = true # plugins.pyls_mypy.live_mode = true
# [[language]] # [[language]]
# name = "rust" # name = "rust"
# language-servers = ["rust-analyzer"] # language-servers = ["rust-analyzer"]
# [language-server.rust-analyzer.config]
# check.command = "clippy"
# [language-server.rust-analyzer.config]
# check.command = "clippy"
}; };
}; };
+4 -2
View File
@@ -2,9 +2,11 @@
lib, lib,
config, config,
... ...
}: let }:
let
cfg = config.myHome.kitty; cfg = config.myHome.kitty;
in { in
{
options = { options = {
myHome.kitty.enable = lib.mkEnableOption "enables kitty"; myHome.kitty.enable = lib.mkEnableOption "enables kitty";
}; };
+2 -1
View File
@@ -3,7 +3,8 @@
lib, lib,
config, config,
... ...
}: { }:
{
options = { options = {
myHome.shell.enable = lib.mkEnableOption "enables shell stuff"; myHome.shell.enable = lib.mkEnableOption "enables shell stuff";
}; };
+105 -103
View File
@@ -3,9 +3,11 @@
lib, lib,
config, config,
... ...
}: let }:
let
betterTransition = "all 0.3s cubic-bezier(.55,-0.68,.48,1.682)"; betterTransition = "all 0.3s cubic-bezier(.55,-0.68,.48,1.682)";
in { in
{
options = { options = {
myHome.waybar.enable = lib.mkEnableOption "enables waybar"; myHome.waybar.enable = lib.mkEnableOption "enables waybar";
}; };
@@ -56,15 +58,15 @@ in {
format = "{icon}"; format = "{icon}";
format-icons = { format-icons = {
"1" = ""; "1" = "";
"2" = ""; "2" = "";
"3" = ""; "3" = "";
"4" = ""; "4" = "";
"5" = ""; "5" = "";
"6" = ""; "6" = "";
"7" = ""; "7" = "";
"8" = ""; "8" = "";
"9" = ""; "9" = "";
"10" = ""; "10" = "";
}; };
on-scroll-up = "hyprctl dispatch workspace e+1"; on-scroll-up = "hyprctl dispatch workspace e+1";
on-scroll-down = "hyprctl dispatch workspace e-1"; on-scroll-down = "hyprctl dispatch workspace e-1";
@@ -195,98 +197,98 @@ in {
tooltip = false; tooltip = false;
}; };
} }
]; ];
style = '' style = ''
* { * {
font-family: JetBrainsMono Nerd Font Mono; font-family: JetBrainsMono Nerd Font Mono;
font-size: 16px; font-size: 16px;
border-radius: 0px; border-radius: 0px;
border: none; border: none;
min-height: 0px; min-height: 0px;
} }
window#waybar { window#waybar {
background: rgba(0,0,0,0); background: rgba(0,0,0,0);
} }
#workspaces { #workspaces {
color: #${config.stylix.base16Scheme.base00}; color: #${config.stylix.base16Scheme.base00};
background: #${config.stylix.base16Scheme.base01}; background: #${config.stylix.base16Scheme.base01};
margin: 4px 4px; margin: 4px 4px;
padding: 5px 5px; padding: 5px 5px;
border-radius: 16px; border-radius: 16px;
} }
#workspaces button { #workspaces button {
font-weight: bold; font-weight: bold;
padding: 0px 5px; padding: 0px 5px;
margin: 0px 3px; margin: 0px 3px;
border-radius: 16px; border-radius: 16px;
color: #${config.stylix.base16Scheme.base00}; color: #${config.stylix.base16Scheme.base00};
background: linear-gradient(45deg, #${config.stylix.base16Scheme.base08}, #${config.stylix.base16Scheme.base0D}); background: linear-gradient(45deg, #${config.stylix.base16Scheme.base08}, #${config.stylix.base16Scheme.base0D});
opacity: 0.5; opacity: 0.5;
transition: ${betterTransition}; transition: ${betterTransition};
} }
#workspaces button.active { #workspaces button.active {
font-weight: bold; font-weight: bold;
padding: 0px 5px; padding: 0px 5px;
margin: 0px 3px; margin: 0px 3px;
border-radius: 16px; border-radius: 16px;
color: #${config.stylix.base16Scheme.base00}; color: #${config.stylix.base16Scheme.base00};
background: linear-gradient(45deg, #${config.stylix.base16Scheme.base08}, #${config.stylix.base16Scheme.base0D}); background: linear-gradient(45deg, #${config.stylix.base16Scheme.base08}, #${config.stylix.base16Scheme.base0D});
transition: ${betterTransition}; transition: ${betterTransition};
opacity: 1.0; opacity: 1.0;
min-width: 40px; min-width: 40px;
} }
#workspaces button:hover { #workspaces button:hover {
font-weight: bold; font-weight: bold;
border-radius: 16px; border-radius: 16px;
color: #${config.stylix.base16Scheme.base00}; color: #${config.stylix.base16Scheme.base00};
background: linear-gradient(45deg, #${config.stylix.base16Scheme.base08}, #${config.stylix.base16Scheme.base0D}); background: linear-gradient(45deg, #${config.stylix.base16Scheme.base08}, #${config.stylix.base16Scheme.base0D});
opacity: 0.8; opacity: 0.8;
transition: ${betterTransition}; transition: ${betterTransition};
} }
tooltip { tooltip {
background: #${config.stylix.base16Scheme.base00}; background: #${config.stylix.base16Scheme.base00};
border: 1px solid #${config.stylix.base16Scheme.base08}; border: 1px solid #${config.stylix.base16Scheme.base08};
border-radius: 12px; border-radius: 12px;
} }
tooltip label { tooltip label {
color: #${config.stylix.base16Scheme.base08}; color: #${config.stylix.base16Scheme.base08};
} }
#window, #pulseaudio, #cpu, #memory, #idle_inhibitor { #window, #pulseaudio, #cpu, #memory, #idle_inhibitor {
font-weight: bold; font-weight: bold;
margin: 4px 0px; margin: 4px 0px;
margin-left: 7px; margin-left: 7px;
padding: 0px 18px; padding: 0px 18px;
background: #${config.stylix.base16Scheme.base04}; background: #${config.stylix.base16Scheme.base04};
color: #${config.stylix.base16Scheme.base00}; color: #${config.stylix.base16Scheme.base00};
border-radius: 24px 10px 24px 10px; border-radius: 24px 10px 24px 10px;
} }
#custom-startmenu { #custom-startmenu {
color: #${config.stylix.base16Scheme.base0B}; color: #${config.stylix.base16Scheme.base0B};
background: #${config.stylix.base16Scheme.base02}; background: #${config.stylix.base16Scheme.base02};
font-size: 28px; font-size: 28px;
margin: 0px; margin: 0px;
padding: 0px 30px 0px 15px; padding: 0px 30px 0px 15px;
border-radius: 0px 0px 40px 0px; border-radius: 0px 0px 40px 0px;
} }
#custom-hyprbindings, #network, #battery, #custom-hyprbindings, #network, #battery,
#custom-notification, #tray, #custom-exit { #custom-notification, #tray, #custom-exit {
font-weight: bold; font-weight: bold;
background: #${config.stylix.base16Scheme.base0F}; background: #${config.stylix.base16Scheme.base0F};
color: #${config.stylix.base16Scheme.base00}; color: #${config.stylix.base16Scheme.base00};
margin: 4px 0px; margin: 4px 0px;
margin-right: 7px; margin-right: 7px;
border-radius: 10px 24px 10px 24px; border-radius: 10px 24px 10px 24px;
padding: 0px 18px; padding: 0px 18px;
} }
#clock { #clock {
font-weight: bold; font-weight: bold;
color: #0D0E15; color: #0D0E15;
background: linear-gradient(90deg, #${config.stylix.base16Scheme.base0E}, #${config.stylix.base16Scheme.base0C}); background: linear-gradient(90deg, #${config.stylix.base16Scheme.base0E}, #${config.stylix.base16Scheme.base0C});
margin: 0px; margin: 0px;
padding: 0px 15px 0px 30px; padding: 0px 15px 0px 30px;
border-radius: 0px 0px 0px 40px; border-radius: 0px 0px 0px 40px;
} }
''; '';
}; };
}; };
} }
+10 -3
View File
@@ -1,10 +1,15 @@
{ pkgs, lib, config, ... }: {
pkgs,
lib,
config,
...
}:
with lib; with lib;
let let
cfg = config.services.cli-environment; cfg = config.services.cli-environment;
in in
{ {
imports = []; imports = [ ];
options.services.cli-environment = { options.services.cli-environment = {
enable = mkEnableOption "enable cli-environment"; enable = mkEnableOption "enable cli-environment";
@@ -25,10 +30,12 @@ in
bat bat
tree tree
imv imv
eza # ? eza # ?
appimage-run appimage-run
nh nh
openssl openssl
nixfmt-rfc-style
nil
]; ];
programs.fish.enable = true; programs.fish.enable = true;
}; };
+7 -2
View File
@@ -1,10 +1,15 @@
{ pkgs, lib, config, ... }: {
pkgs,
lib,
config,
...
}:
with lib; with lib;
let let
cfg = config.services.desktop-apps; cfg = config.services.desktop-apps;
in in
{ {
imports = []; imports = [ ];
options.services.desktop-apps = { options.services.desktop-apps = {
enable = mkEnableOption "enable desktop-apps"; enable = mkEnableOption "enable desktop-apps";
+7 -2
View File
@@ -1,10 +1,15 @@
{ pkgs, lib, config, ... }: {
pkgs,
lib,
config,
...
}:
with lib; with lib;
let let
cfg = config.services.dev-environment; cfg = config.services.dev-environment;
in in
{ {
imports = []; imports = [ ];
options.services.dev-environment = { options.services.dev-environment = {
enable = mkEnableOption "enable dev-environment"; enable = mkEnableOption "enable dev-environment";
+7 -2
View File
@@ -1,10 +1,15 @@
{ pkgs, lib, config, ... }: {
pkgs,
lib,
config,
...
}:
with lib; with lib;
let let
cfg = config.services.fonts; cfg = config.services.fonts;
in in
{ {
imports = []; imports = [ ];
options.services.fonts = { options.services.fonts = {
enable = mkEnableOption "enable fonts"; enable = mkEnableOption "enable fonts";
+7 -2
View File
@@ -1,10 +1,15 @@
{ pkgs, lib, config, ... }: {
pkgs,
lib,
config,
...
}:
with lib; with lib;
let let
cfg = config.services.gaming; cfg = config.services.gaming;
in in
{ {
imports = []; imports = [ ];
options.services.gaming = { options.services.gaming = {
enable = mkEnableOption "enable gaming"; enable = mkEnableOption "enable gaming";
+8 -3
View File
@@ -1,10 +1,15 @@
{ pkgs, lib, config, ... }: {
pkgs,
lib,
config,
...
}:
with lib; with lib;
let let
cfg = config.services.window-manager; cfg = config.services.window-manager;
in in
{ {
imports = []; imports = [ ];
options.services.window-manager = { options.services.window-manager = {
enable = mkEnableOption "enable window-manager"; enable = mkEnableOption "enable window-manager";
@@ -13,7 +18,7 @@ in
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.hyprland.enable = true; programs.hyprland.enable = true;
programs.hyprlock.enable = true; programs.hyprlock.enable = true;
security.pam.services.hyprlock = {}; security.pam.services.hyprlock = { };
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# wofi # wofi
dolphin dolphin
+9 -9
View File
@@ -1,15 +1,15 @@
{ pkgs }: { pkgs }:
pkgs.writeShellScriptBin "rainbow-border" '' pkgs.writeShellScriptBin "rainbow-border" ''
#!/bin/bash #!/bin/bash
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## # /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
# for rainbow borders animation # for rainbow borders animation
function random_hex() { function random_hex() {
random_hex=("0xff$(openssl rand -hex 3)") random_hex=("0xff$(openssl rand -hex 3)")
echo $random_hex echo $random_hex
} }
# rainbow colors only for active window # rainbow colors only for active window
hyprctl keyword general:col.active_border $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) 270deg hyprctl keyword general:col.active_border $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) 270deg
'' ''