Merge branch 'desktop' into laptop
This commit is contained in:
		
						commit
						32e7c9f472
					
				
					 29 changed files with 1511 additions and 372 deletions
				
			
		
							
								
								
									
										12
									
								
								flake.lock
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										12
									
								
								flake.lock
									
										
									
										generated
									
									
									
								
							|  | @ -7,11 +7,11 @@ | |||
|         ] | ||||
|       }, | ||||
|       "locked": { | ||||
|         "lastModified": 1717316182, | ||||
|         "narHash": "sha256-Xi0EpZcu39N0eW7apLjFfUOR9y80toyjYizez7J1wMI=", | ||||
|         "lastModified": 1719827439, | ||||
|         "narHash": "sha256-tneHOIv1lEavZ0vQ+rgz67LPNCgOZVByYki3OkSshFU=", | ||||
|         "owner": "nix-community", | ||||
|         "repo": "home-manager", | ||||
|         "rev": "9b53a10f4c91892f5af87cf55d08fba59ca086af", | ||||
|         "rev": "59ce796b2563e19821361abbe2067c3bb4143a7d", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|  | @ -22,11 +22,11 @@ | |||
|     }, | ||||
|     "nixpkgs": { | ||||
|       "locked": { | ||||
|         "lastModified": 1717196966, | ||||
|         "narHash": "sha256-yZKhxVIKd2lsbOqYd5iDoUIwsRZFqE87smE2Vzf6Ck0=", | ||||
|         "lastModified": 1719848872, | ||||
|         "narHash": "sha256-H3+EC5cYuq+gQW8y0lSrrDZfH71LB4DAf+TDFyvwCNA=", | ||||
|         "owner": "nixos", | ||||
|         "repo": "nixpkgs", | ||||
|         "rev": "57610d2f8f0937f39dbd72251e9614b1561942d8", | ||||
|         "rev": "00d80d13810dbfea8ab4ed1009b09100cca86ba8", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|  |  | |||
							
								
								
									
										16
									
								
								flake.nix
									
										
									
									
									
								
							
							
						
						
									
										16
									
								
								flake.nix
									
										
									
									
									
								
							|  | @ -10,9 +10,17 @@ | |||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   outputs = { self, home-manager, nixpkgs, ... }@inputs: | ||||
|     let system = "x86_64-linux"; | ||||
|     in { | ||||
|   outputs = | ||||
|     { | ||||
|       self, | ||||
|       home-manager, | ||||
|       nixpkgs, | ||||
|       ... | ||||
|     }@inputs: | ||||
|     let | ||||
|       system = "x86_64-linux"; | ||||
|     in | ||||
|     { | ||||
|       nixosConfigurations."nixos" = | ||||
|         let | ||||
|           specialArgs = inputs; | ||||
|  | @ -31,6 +39,6 @@ | |||
|         in | ||||
|         nixpkgs.lib.nixosSystem { inherit system specialArgs modules; }; | ||||
| 
 | ||||
|       formatter."${system}" = nixpkgs.legacyPackages.${system}.nixpkgs-fmt; | ||||
|       formatter."${system}" = nixpkgs.legacyPackages.${system}.nixfmt-rfc-style; | ||||
|     }; | ||||
| } | ||||
|  |  | |||
|  | @ -7,6 +7,7 @@ | |||
| 
 | ||||
|   # Import configurations for better modularity. | ||||
|   imports = [ | ||||
|     ./programs/emacs | ||||
|     ./programs/fish | ||||
|     ./programs/git.nix | ||||
|     ./programs/hyprland | ||||
|  | @ -46,7 +47,6 @@ | |||
|     EDITOR = "nvim"; | ||||
|     NIXOS_OZONE_WL = "1"; | ||||
|     QT_QPA_PLATFORM = "wayland"; | ||||
|     XCURSOR_SIZE = 36; | ||||
|   }; | ||||
| 
 | ||||
|   ## | ||||
|  | @ -86,7 +86,6 @@ | |||
|     # Editing | ||||
|     krita | ||||
|     libreoffice | ||||
|     logseq | ||||
|     shotcut | ||||
| 
 | ||||
|     ## Entertainment | ||||
|  | @ -107,7 +106,6 @@ | |||
| 
 | ||||
|     ## Development | ||||
|     lazygit | ||||
|     vscode-extensions.vadimcn.vscode-lldb | ||||
| 
 | ||||
|     ## Desktop environment | ||||
|     cliphist | ||||
|  | @ -118,7 +116,12 @@ | |||
|     swww | ||||
| 
 | ||||
|     ## Theming | ||||
|     (nerdfonts.override { fonts = [ "FantasqueSansMono" ]; }) | ||||
|     (nerdfonts.override { | ||||
|       fonts = [ | ||||
|         "FantasqueSansMono" | ||||
|         "NerdFontsSymbolsOnly" | ||||
|       ]; | ||||
|     }) | ||||
|     libsForQt5.qtstyleplugin-kvantum | ||||
|     libsForQt5.qtwayland | ||||
|     qt6Packages.qtstyleplugin-kvantum | ||||
|  | @ -126,22 +129,28 @@ | |||
| 
 | ||||
|     # Create an FHS environment using the command `fhs`, enabling the execution of non-NixOS packages in NixOS! | ||||
|     ( | ||||
|       let base = pkgs.appimageTools.defaultFhsEnvArgs; | ||||
|       in pkgs.buildFHSUserEnv (base // { | ||||
|         name = "fhs"; | ||||
|         targetPkgs = pkgs: | ||||
|           ( | ||||
|             # pkgs.buildFHSUserEnv provides only a minimal FHS environment, | ||||
|             # lacking many basic packages needed by most software. | ||||
|             # Therefore, we need to add them manually. | ||||
|             # | ||||
|             # pkgs.appimageTools provides basic packages required by most software. | ||||
|             (base.targetPkgs pkgs) ++ (with pkgs; [ nodejs ]) | ||||
|           ); | ||||
|         profile = "export FHS=1"; | ||||
|         runScript = "bash"; | ||||
|         extraOutputsToInstall = [ "dev" ]; | ||||
|       }) | ||||
|       let | ||||
|         base = pkgs.appimageTools.defaultFhsEnvArgs; | ||||
|       in | ||||
|       pkgs.buildFHSUserEnv ( | ||||
|         base | ||||
|         // { | ||||
|           name = "fhs"; | ||||
|           targetPkgs = | ||||
|             pkgs: | ||||
|             ( | ||||
|               # pkgs.buildFHSUserEnv provides only a minimal FHS environment, | ||||
|               # lacking many basic packages needed by most software. | ||||
|               # Therefore, we need to add them manually. | ||||
|               # | ||||
|               # pkgs.appimageTools provides basic packages required by most software. | ||||
|               (base.targetPkgs pkgs) ++ (with pkgs; [ nodejs ]) | ||||
|             ); | ||||
|           profile = "export FHS=1"; | ||||
|           runScript = "bash"; | ||||
|           extraOutputsToInstall = [ "dev" ]; | ||||
|         } | ||||
|       ) | ||||
|     ) | ||||
|   ]; | ||||
| 
 | ||||
|  | @ -153,8 +162,7 @@ | |||
|   # plain files is through 'home.file'. | ||||
|   home.file = { | ||||
|     # Cattpuccin theme for fish shell. | ||||
|     ".config/fish/themes/Catppuccin-Frappe.theme".source = | ||||
|       ./programs/fish/Catppuccin-Frappe.theme; | ||||
|     ".config/fish/themes/Catppuccin-Frappe.theme".source = ./programs/fish/Catppuccin-Frappe.theme; | ||||
| 
 | ||||
|     # Configuration for gamemode, for running games with optimizations. | ||||
|     ".config/gamemode.ini".source = ./programs/gamemode.ini; | ||||
|  | @ -165,11 +173,11 @@ | |||
|     ## Kvantum's theme configuration. | ||||
|     ".config/Kvantum/Catppuccin-Frappe-Lavender" = { | ||||
|       source = "${ | ||||
|           pkgs.catppuccin-kvantum.override { | ||||
|             accent = "Lavender"; | ||||
|             variant = "Frappe"; | ||||
|           } | ||||
|         }/share/Kvantum/Catppuccin-Frappe-Lavender"; | ||||
|         pkgs.catppuccin-kvantum.override { | ||||
|           accent = "Lavender"; | ||||
|           variant = "Frappe"; | ||||
|         } | ||||
|       }/share/Kvantum/Catppuccin-Frappe-Lavender"; | ||||
|     }; | ||||
| 
 | ||||
|     ".config/Kvantum/kvantum.kvconfig".text = '' | ||||
|  | @ -181,8 +189,7 @@ | |||
|     ## Themeing configuration for qt5 and qt6 | ||||
|     ".config/qt5ct/colors".source = ./theming/qt5ct; | ||||
| 
 | ||||
|     ".config/qt6ct/colors".source = | ||||
|       ./theming/qt5ct; # We use the qt5ct because it's the SAME spec | ||||
|     ".config/qt6ct/colors".source = ./theming/qt5ct; # We use the qt5ct because it's the SAME spec | ||||
|     ## | ||||
| 
 | ||||
|     # Configure pipewire for microphone noise supression. | ||||
|  | @ -247,13 +254,12 @@ | |||
|   gtk = { | ||||
|     enable = true; | ||||
| 
 | ||||
|     theme = { | ||||
|       name = "Catppuccin-Frappe-Standard-Lavender-Dark"; | ||||
|       package = pkgs.catppuccin-gtk.override { | ||||
|         accents = [ "lavender" ]; | ||||
|         tweaks = [ "rimless" ]; | ||||
|         variant = "frappe"; | ||||
|       }; | ||||
|     gtk3.extraConfig = { | ||||
|       gtk-application-prefer-dark-theme = true; | ||||
|     }; | ||||
| 
 | ||||
|     gtk4.extraConfig = { | ||||
|       gtk-application-prefer-dark-theme = true; | ||||
|     }; | ||||
| 
 | ||||
|     iconTheme = { | ||||
|  |  | |||
|  | @ -1,9 +1,17 @@ | |||
| { lib, stdenv, fetchFromGitHub, kernel, kmod }: | ||||
| { | ||||
|   lib, | ||||
|   stdenv, | ||||
|   fetchFromGitHub, | ||||
|   kernel, | ||||
|   kmod, | ||||
| }: | ||||
| 
 | ||||
| let kernelDirectory = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"; | ||||
| in stdenv.mkDerivation { | ||||
| let | ||||
|   kernelDirectory = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"; | ||||
| in | ||||
| stdenv.mkDerivation { | ||||
|   pname = "zenergy"; | ||||
|   version = "a3e124477ee8197015481156b90100d49fa3cd84"; | ||||
|   version = "0-unstable-2024-05-19"; | ||||
| 
 | ||||
|   src = fetchFromGitHub { | ||||
|     owner = "BoukeHaarsma23"; | ||||
|  | @ -12,29 +20,30 @@ in stdenv.mkDerivation { | |||
|     hash = "sha256-10hiUHJvLTG3WGrr4WXMo/mCoJGFqWk2l5PryjNhcHg="; | ||||
|   }; | ||||
| 
 | ||||
|   hardeningDisable = [ "format" "pic" ]; | ||||
|   nativeBuildInputs = [ kmod ] ++ kernel.moduleBuildDependencies; | ||||
| 
 | ||||
|   hardeningDisable = [ | ||||
|     "format" | ||||
|     "pic" | ||||
|   ]; | ||||
| 
 | ||||
|   makeFlags = kernel.makeFlags ++ [ "KDIR=${kernelDirectory}" ]; | ||||
| 
 | ||||
|   makeTargets = [ "modules_install" ]; | ||||
| 
 | ||||
|   preBuild = '' | ||||
|     substituteInPlace Makefile --replace-fail "PWD modules_install" "PWD INSTALL_MOD_PATH=$out modules_install" | ||||
|   ''; | ||||
| 
 | ||||
|   nativeBuildInputs = [ kmod ] ++ kernel.moduleBuildDependencies; | ||||
| 
 | ||||
|   installPhase = '' | ||||
|     make modules_install KDIR=${kernelDirectory} | ||||
|   ''; | ||||
| 
 | ||||
|   outputs = [ "out" ]; | ||||
| 
 | ||||
|   meta = with lib; { | ||||
|     description = | ||||
|       "Based on AMD_ENERGY driver, but with some jiffies added so non-root users can read it safely."; | ||||
|     description = "Based on AMD_ENERGY driver, but with some jiffies added so non-root users can read it safely."; | ||||
|     homepage = "https://github.com/BoukeHaarsma23/zenergy"; | ||||
|     license = licenses.gpl2Only; | ||||
|     maintainers = with maintainers; [ wizardlink ]; | ||||
|     platforms = platforms.linux; | ||||
|     outputsToInstall = [ "out" ]; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
							
								
								
									
										100
									
								
								nixos.nix
									
										
									
									
									
								
							
							
						
						
									
										100
									
								
								nixos.nix
									
										
									
									
									
								
							|  | @ -16,7 +16,10 @@ | |||
|     ]; | ||||
| 
 | ||||
|   # Enable experimental features | ||||
|   nix.settings.experimental-features = [ "nix-command" "flakes" ]; | ||||
|   nix.settings.experimental-features = [ | ||||
|     "nix-command" | ||||
|     "flakes" | ||||
|   ]; | ||||
| 
 | ||||
|   # Enable automatic garbage collection. | ||||
|   nix.gc = { | ||||
|  | @ -42,12 +45,16 @@ | |||
|   ## | ||||
| 
 | ||||
|   # Kernel | ||||
|   boot.kernelPackages = pkgs.linuxPackages_latest; | ||||
|   boot.kernelPackages = pkgs.linuxPackages_zen; | ||||
| 
 | ||||
|   # Add AMD drivers. | ||||
|   boot.initrd.kernelModules = [ "amdgpu" ]; | ||||
|   services.xserver.videoDrivers = [ "amdgpu" ]; | ||||
| 
 | ||||
|   # TODO: FIX IT BEING BEING OVERWRITTEN | ||||
|   boot.extraModulePackages = [ | ||||
|     config.boot.kernelPackages.v4l2loopback | ||||
|     (pkgs.callPackage ./kernel/zenergy.nix { kernel = pkgs.linux_latest; }) | ||||
|     (pkgs.callPackage ./kernel/zenergy.nix { kernel = pkgs.linux_zen; }) | ||||
|   ]; | ||||
| 
 | ||||
|   # Bootloader. | ||||
|  | @ -71,15 +78,17 @@ | |||
| 
 | ||||
|     allowedUDPPorts = [ ]; | ||||
| 
 | ||||
|     allowedTCPPortRanges = [{ | ||||
|       from = 1714; | ||||
|       to = 1764; | ||||
|     } # KDEConnect | ||||
|     allowedTCPPortRanges = [ | ||||
|       { | ||||
|         from = 1714; | ||||
|         to = 1764; | ||||
|       } # KDEConnect | ||||
|     ]; | ||||
|     allowedUDPPortRanges = [{ | ||||
|       from = 1714; | ||||
|       to = 1764; | ||||
|     } # KDEConnect | ||||
|     allowedUDPPortRanges = [ | ||||
|       { | ||||
|         from = 1714; | ||||
|         to = 1764; | ||||
|       } # KDEConnect | ||||
|     ]; | ||||
|   }; | ||||
|   # Or disable the firewall altogether. | ||||
|  | @ -95,7 +104,14 @@ | |||
|   users.users.wizardlink = { | ||||
|     createHome = true; | ||||
|     description = "Alexandre Cavalheiro"; | ||||
|     extraGroups = [ "networkmanager" "wheel" "postgresql" "docker" "openrazer" ]; | ||||
|     extraGroups = [ | ||||
|       "docker" | ||||
|       "libvirtd" | ||||
|       "networkmanager" | ||||
|       "openrazer" | ||||
|       "postgresql" | ||||
|       "wheel" | ||||
|     ]; | ||||
| 
 | ||||
|     initialPassword = "wizardlink"; | ||||
|     isNormalUser = true; | ||||
|  | @ -158,8 +174,17 @@ | |||
|   }; | ||||
|   services.blueman.enable = true; | ||||
| 
 | ||||
|   # Enable xpadneo support. | ||||
|   hardware.xpadneo.enable = true; | ||||
|   # Enable openrazer for managing Razer products' configuration | ||||
|   hardware.openrazer = { | ||||
|     enable = true; | ||||
|     users = [ "wizardlink" ]; | ||||
|   }; | ||||
| 
 | ||||
|   # Enable QMK support. | ||||
|   hardware.keyboard.qmk.enable = true; | ||||
| 
 | ||||
|   # Enable the udev rules Steam recommends for controllers. | ||||
|   hardware.steam-hardware.enable = true; | ||||
| 
 | ||||
|   # Enable fstrim for better ssd lifespan | ||||
|   services.fstrim.enable = true; | ||||
|  | @ -168,22 +193,51 @@ | |||
|   ## DESKTOP ## | ||||
|   ## | ||||
| 
 | ||||
|   # Enable XServer | ||||
|   services.xserver = { | ||||
|     enable = true; | ||||
| 
 | ||||
|     xrandrHeads = [ | ||||
|       { | ||||
|         output = "DP-2"; | ||||
|         primary = true; | ||||
|       } | ||||
|       "DP-3" | ||||
|     ]; | ||||
|   }; | ||||
| 
 | ||||
|   # Enable SDDM. | ||||
|   services.displayManager.sddm = { | ||||
|     enable = true; | ||||
|     wayland.enable = true; | ||||
| 
 | ||||
|     theme = "${import ./theming/sddm.nix { inherit pkgs; }}"; | ||||
|   }; | ||||
| 
 | ||||
|   # Enable Hyprland | ||||
|   programs.hyprland.enable = true; | ||||
| 
 | ||||
|   # Enable OpenGL. | ||||
|   hardware.opengl = { | ||||
|   # Enable XDG Desktop Portals. | ||||
|   xdg.portal = { | ||||
|     enable = true; | ||||
|     driSupport = true; | ||||
|     driSupport32Bit = true; | ||||
| 
 | ||||
|     extraPortals = with pkgs; [ xdg-desktop-portal-hyprland ]; | ||||
| 
 | ||||
|     config = { | ||||
|       common = { | ||||
|         default = [ "hyprland" ]; | ||||
|       }; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   # Needed for home-manager | ||||
|   environment.pathsToLink = [ | ||||
|     "/share/xdg-desktop-portal" | ||||
|     "/share/applications" | ||||
|   ]; | ||||
| 
 | ||||
|   # Enable OpenGL. | ||||
|   hardware.graphics = { | ||||
|     enable = true; | ||||
|     enable32Bit = true; | ||||
| 
 | ||||
|     extraPackages = with pkgs; [ | ||||
|       rocm-opencl-icd # OpenGL hwa | ||||
|  | @ -243,6 +297,8 @@ | |||
|   programs.steam = { | ||||
|     enable = true; | ||||
|     remotePlay.openFirewall = true; | ||||
| 
 | ||||
|     extraCompatPackages = with pkgs; [ proton-ge-bin ]; | ||||
|   }; | ||||
| 
 | ||||
|   # Enable and configure gamemode. | ||||
|  | @ -257,6 +313,10 @@ | |||
|   # Enable Docker. | ||||
|   virtualisation.docker.enable = true; | ||||
| 
 | ||||
|   # Enable virt-manager | ||||
|   virtualisation.libvirtd.enable = true; | ||||
|   programs.virt-manager.enable = true; | ||||
| 
 | ||||
|   # List packages installed in system profile. To search, run: | ||||
|   # $ nix search wget | ||||
|   environment.systemPackages = with pkgs; [ | ||||
|  |  | |||
							
								
								
									
										43
									
								
								programs/emacs/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								programs/emacs/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,43 @@ | |||
| { pkgs, lib, ... }: | ||||
| 
 | ||||
| { | ||||
|   programs.emacs.enable = true; | ||||
| 
 | ||||
|   home.packages = with pkgs; [ | ||||
|     # Optional for DOOM | ||||
|     clang | ||||
|     coreutils | ||||
|     fd | ||||
| 
 | ||||
|     pandoc # For org-pandoc | ||||
|   ]; | ||||
| 
 | ||||
|   # Neatly place the configuration files for doom in their right place. | ||||
|   xdg.configFile."doom" = | ||||
|     let | ||||
|       # What DOOM needs to be able to install/sync. | ||||
|       packagesNeeded = with pkgs; [ | ||||
|         git | ||||
|         emacs | ||||
|         ripgrep | ||||
|       ]; | ||||
|     in | ||||
|     { | ||||
|       source = ./doom; | ||||
|       recursive = true; | ||||
| 
 | ||||
|       onChange = # sh | ||||
|         '' | ||||
|           # Need to set this so DOOM can find all binaries. | ||||
|           export PATH="${lib.strings.concatMapStrings (x: x + "/bin:") packagesNeeded}$PATH" | ||||
| 
 | ||||
|           if [ ! -d "$HOME/.emacs.d" ]; then | ||||
|             git clone https://github.com/hlissner/doom-emacs $HOME/.emacs.d | ||||
|             $HOME/.emacs.d/bin/doom install | ||||
|           else | ||||
|             # Needed to apply the configuration changes. | ||||
|             $HOME/.emacs.d/bin/doom sync | ||||
|           fi | ||||
|         ''; | ||||
|     }; | ||||
| } | ||||
							
								
								
									
										100
									
								
								programs/emacs/doom/config.el
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										100
									
								
								programs/emacs/doom/config.el
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,100 @@ | |||
| ;;; $DOOMDIR/config.el -*- lexical-binding: t; -*- | ||||
| 
 | ||||
| ;; Place your private configuration here! Remember, you do not need to run 'doom | ||||
| ;; sync' after modifying this file! | ||||
| 
 | ||||
| 
 | ||||
| ;; Some functionality uses this to identify you, e.g. GPG configuration, email | ||||
| ;; clients, file templates and snippets. It is optional. | ||||
| (setq user-full-name "Alexandre Cavalheiro S. Tiago da Silva" | ||||
|       user-mail-address "contact@thewizard.link") | ||||
| 
 | ||||
| ;; Doom exposes five (optional) variables for controlling fonts in Doom: | ||||
| ;; | ||||
| ;; - `doom-font' -- the primary font to use | ||||
| ;; - `doom-variable-pitch-font' -- a non-monospace font (where applicable) | ||||
| ;; - `doom-big-font' -- used for `doom-big-font-mode'; use this for | ||||
| ;;   presentations or streaming. | ||||
| ;; - `doom-symbol-font' -- for symbols | ||||
| ;; - `doom-serif-font' -- for the `fixed-pitch-serif' face | ||||
| ;; | ||||
| ;; See 'C-h v doom-font' for documentation and more examples of what they | ||||
| ;; accept. For example: | ||||
| ;; | ||||
| ;;(setq doom-font (font-spec :family "Fira Code" :size 12 :weight 'semi-light) | ||||
| ;;      doom-variable-pitch-font (font-spec :family "Fira Sans" :size 13)) | ||||
| ;; | ||||
| ;; If you or Emacs can't find your font, use 'M-x describe-font' to look them | ||||
| ;; up, `M-x eval-region' to execute elisp code, and 'M-x doom/reload-font' to | ||||
| ;; refresh your font settings. If Emacs still can't find your font, it likely | ||||
| ;; wasn't installed correctly. Font issues are rarely Doom issues! | ||||
| (setq doom-font (font-spec :family "FantasqueSansM Nerd Font" :size 16)) | ||||
| 
 | ||||
| ;; There are two ways to load a theme. Both assume the theme is installed and | ||||
| ;; available. You can either set `doom-theme' or manually load a theme with the | ||||
| ;; `load-theme' function. This is the default: | ||||
| (setq doom-theme 'catppuccin) | ||||
| 
 | ||||
| ;; This determines the style of line numbers in effect. If set to `nil', line | ||||
| ;; numbers are disabled. For relative line numbers, set this to `relative'. | ||||
| (setq display-line-numbers-type 'relative) | ||||
| 
 | ||||
| ;; If you use `org' and don't want your org files in the default location below, | ||||
| ;; change `org-directory'. It must be set before org loads! | ||||
| (setq org-directory "~/Documents/notes" | ||||
|       org-agenda-files (doom-files-in `(,org-directory, "~/Documents/zettelkasten") :type 'files :match "\\.org\\'")) | ||||
| 
 | ||||
| 
 | ||||
| ;; Whenever you reconfigure a package, make sure to wrap your config in an | ||||
| ;; `after!' block, otherwise Doom's defaults may override your settings. E.g. | ||||
| ;; | ||||
| ;;   (after! PACKAGE | ||||
| ;;     (setq x y)) | ||||
| ;; | ||||
| ;; The exceptions to this rule: | ||||
| ;; | ||||
| ;;   - Setting file/directory variables (like `org-directory') | ||||
| ;;   - Setting variables which explicitly tell you to set them before their | ||||
| ;;     package is loaded (see 'C-h v VARIABLE' to look up their documentation). | ||||
| ;;   - Setting doom variables (which start with 'doom-' or '+'). | ||||
| ;; | ||||
| ;; Here are some additional functions/macros that will help you configure Doom. | ||||
| ;; | ||||
| ;; - `load!' for loading external *.el files relative to this one | ||||
| ;; - `use-package!' for configuring packages | ||||
| ;; - `after!' for running code after a package has loaded | ||||
| ;; - `add-load-path!' for adding directories to the `load-path', relative to | ||||
| ;;   this file. Emacs searches the `load-path' when you load packages with | ||||
| ;;   `require' or `use-package'. | ||||
| ;; - `map!' for binding new keys | ||||
| ;; | ||||
| ;; To get information about any of these functions/macros, move the cursor over | ||||
| ;; the highlighted symbol at press 'K' (non-evil users must press 'C-c c k'). | ||||
| ;; This will open documentation for it, including demos of how they are used. | ||||
| ;; Alternatively, use `C-h o' to look up a symbol (functions, variables, faces, | ||||
| ;; etc). | ||||
| ;; | ||||
| ;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how | ||||
| ;; they are implemented. | ||||
| 
 | ||||
| ;; Set the tab size to 2 | ||||
| (setq tab-width 2) | ||||
| 
 | ||||
| ;; Configure initial major mode for the scratch buffer | ||||
| (setq initial-major-mode 'org-mode) | ||||
| 
 | ||||
| ;; Configure orm-roam | ||||
| (setq org-roam-directory "~/Documents/zettelkasten") | ||||
| (map! (:leader :desc "Opens a daily note through the calendar" :n "nrdF" #'org-roam-dailies-find-date)) | ||||
| 
 | ||||
| (use-package! org-roam-ui | ||||
|   :after org-roam | ||||
|   :config | ||||
|   (setq org-roam-ui-sync-theme t | ||||
|         org-roam-ui-follow t | ||||
|         org-roam-ui-update-on-save t | ||||
|         org-roam-ui-open-on-start t)) | ||||
| 
 | ||||
| ;; Configure doom-themes with treemacs | ||||
| (with-eval-after-load 'doom-themes | ||||
|   (doom-themes-treemacs-config)) | ||||
							
								
								
									
										201
									
								
								programs/emacs/doom/init.el
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										201
									
								
								programs/emacs/doom/init.el
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,201 @@ | |||
| ;;; init.el -*- lexical-binding: t; -*- | ||||
| 
 | ||||
| ;; This file controls what Doom modules are enabled and what order they load | ||||
| ;; in. Remember to run 'doom sync' after modifying it! | ||||
| 
 | ||||
| ;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's | ||||
| ;;      documentation. There you'll find a link to Doom's Module Index where all | ||||
| ;;      of our modules are listed, including what flags they support. | ||||
| 
 | ||||
| ;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or | ||||
| ;;      'C-c c k' for non-vim users) to view its documentation. This works on | ||||
| ;;      flags as well (those symbols that start with a plus). | ||||
| ;; | ||||
| ;;      Alternatively, press 'gd' (or 'C-c c d') on a module to browse its | ||||
| ;;      directory (for easy access to its source code). | ||||
| 
 | ||||
| (doom! :input | ||||
|        ;;bidi              ; (tfel ot) thgir etirw uoy gnipleh | ||||
|        ;;chinese | ||||
|        ;;japanese | ||||
|        ;;layout            ; auie,ctsrnm is the superior home row | ||||
| 
 | ||||
|        :completion | ||||
|        company           ; the ultimate code completion backend | ||||
|        ;;(corfu +orderless)  ; complete with cap(f), cape and a flying feather! | ||||
|        ;;helm              ; the *other* search engine for love and life | ||||
|        ;;ido               ; the other *other* search engine... | ||||
|        ;;ivy               ; a search engine for love and life | ||||
|        vertico           ; the search engine of the future | ||||
| 
 | ||||
|        :ui | ||||
|        ;;deft              ; notational velocity for Emacs | ||||
|        doom              ; what makes DOOM look the way it does | ||||
|        doom-dashboard    ; a nifty splash screen for Emacs | ||||
|        ;;doom-quit         ; DOOM quit-message prompts when you quit Emacs | ||||
|        ;;(emoji +unicode)  ; 🙂 | ||||
|        hl-todo           ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW | ||||
|        ;;hydra | ||||
|        indent-guides     ; highlighted indent columns | ||||
|        ligatures         ; ligatures and symbols to make your code pretty again | ||||
|        ;;minimap           ; show a map of the code on the side | ||||
|        modeline          ; snazzy, Atom-inspired modeline, plus API | ||||
|        nav-flash         ; blink cursor line after big motions | ||||
|        ;;neotree           ; a project drawer, like NERDTree for vim | ||||
|        ophints           ; highlight the region an operation acts on | ||||
|        (popup +defaults)   ; tame sudden yet inevitable temporary windows | ||||
|        ;;tabs              ; a tab bar for Emacs | ||||
|        (treemacs +lsp)     ; a project drawer, like neotree but cooler | ||||
|        unicode           ; extended unicode support for various languages | ||||
|        (vc-gutter +pretty) ; vcs diff in the fringe | ||||
|        vi-tilde-fringe   ; fringe tildes to mark beyond EOB | ||||
|        ;;window-select     ; visually switch windows | ||||
|        workspaces        ; tab emulation, persistence & separate workspaces | ||||
|        zen               ; distraction-free coding or writing | ||||
| 
 | ||||
|        :editor | ||||
|        (evil +everywhere); come to the dark side, we have cookies | ||||
|        file-templates    ; auto-snippets for empty files | ||||
|        fold              ; (nigh) universal code folding | ||||
|        (format +onsave)  ; automated prettiness | ||||
|        ;;god               ; run Emacs commands without modifier keys | ||||
|        ;;lispy             ; vim for lisp, for people who don't like vim | ||||
|        ;;multiple-cursors  ; editing in many places at once | ||||
|        ;;objed             ; text object editing for the innocent | ||||
|        ;;parinfer          ; turn lisp into python, sort of | ||||
|        ;;rotate-text       ; cycle region at point between text candidates | ||||
|        snippets          ; my elves. They type so I don't have to | ||||
|        ;;word-wrap         ; soft wrapping with language-aware indent | ||||
| 
 | ||||
|        :emacs | ||||
|        dired             ; making dired pretty [functional] | ||||
|        electric          ; smarter, keyword-based electric-indent | ||||
|        ;;ibuffer         ; interactive buffer management | ||||
|        undo              ; persistent, smarter undo for your inevitable mistakes | ||||
|        vc                ; version-control and Emacs, sitting in a tree | ||||
| 
 | ||||
|        :term | ||||
|        ;;eshell            ; the elisp shell that works everywhere | ||||
|        ;;shell             ; simple shell REPL for Emacs | ||||
|        ;;term              ; basic terminal emulator for Emacs | ||||
|        ;;vterm             ; the best terminal emulation in Emacs | ||||
| 
 | ||||
|        :checkers | ||||
|        syntax              ; tasing you for every semicolon you forget | ||||
|        (spell +flyspell) ; tasing you for misspelling mispelling | ||||
|        ;;grammar           ; tasing grammar mistake every you make | ||||
| 
 | ||||
|        :tools | ||||
|        ;;ansible | ||||
|        ;;biblio            ; Writes a PhD for you (citation needed) | ||||
|        ;;collab            ; buffers with friends | ||||
|        ;;debugger          ; FIXME stepping through code, to help you add bugs | ||||
|        ;;direnv | ||||
|        ;;docker | ||||
|        editorconfig      ; let someone else argue about tabs vs spaces | ||||
|        ;;ein               ; tame Jupyter notebooks with emacs | ||||
|        (eval +overlay)     ; run code, run (also, repls) | ||||
|        lookup              ; navigate your code and its documentation | ||||
|        ;lsp               ; M-x vscode | ||||
|        ;;magit             ; a git porcelain for Emacs | ||||
|        ;;make              ; run make tasks from Emacs | ||||
|        ;;pass              ; password manager for nerds | ||||
|        ;;pdf               ; pdf enhancements | ||||
|        ;;prodigy           ; FIXME managing external services & code builders | ||||
|        rgb               ; creating color strings | ||||
|        ;;taskrunner        ; taskrunner for all your projects | ||||
|        ;;terraform         ; infrastructure as code | ||||
|        ;;tmux              ; an API for interacting with tmux | ||||
|        tree-sitter       ; syntax and parsing, sitting in a tree... | ||||
|        ;;upload            ; map local to remote projects via ssh/ftp | ||||
| 
 | ||||
|        :os | ||||
|        (:if (featurep :system 'macos) macos)  ; improve compatibility with macOS | ||||
|        ;;tty               ; improve the terminal Emacs experience | ||||
| 
 | ||||
|        :lang | ||||
|        ;;agda              ; types of types of types of types... | ||||
|        ;;beancount         ; mind the GAAP | ||||
|        ;;(cc +lsp)         ; C > C++ == 1 | ||||
|        ;;clojure           ; java with a lisp | ||||
|        ;;common-lisp       ; if you've seen one lisp, you've seen them all | ||||
|        ;;coq               ; proofs-as-programs | ||||
|        ;;crystal           ; ruby at the speed of c | ||||
|        ;;csharp            ; unity, .NET, and mono shenanigans | ||||
|        ;;data              ; config/data formats | ||||
|        ;;(dart +flutter)   ; paint ui and not much else | ||||
|        ;;dhall | ||||
|        ;;elixir            ; erlang done right | ||||
|        ;;elm               ; care for a cup of TEA? | ||||
|        emacs-lisp        ; drown in parentheses | ||||
|        ;;erlang            ; an elegant language for a more civilized age | ||||
|        ;;ess               ; emacs speaks statistics | ||||
|        ;;factor | ||||
|        ;;faust             ; dsp, but you get to keep your soul | ||||
|        ;;fortran           ; in FORTRAN, GOD is REAL (unless declared INTEGER) | ||||
|        ;;fsharp            ; ML stands for Microsoft's Language | ||||
|        ;;fstar             ; (dependent) types and (monadic) effects and Z3 | ||||
|        ;;gdscript          ; the language you waited for | ||||
|        ;;(go +lsp)         ; the hipster dialect | ||||
|        ;;(graphql +lsp)    ; Give queries a REST | ||||
|        ;;(haskell +lsp)    ; a language that's lazier than I am | ||||
|        ;;hy                ; readability of scheme w/ speed of python | ||||
|        ;;idris             ; a language you can depend on | ||||
|        ;;json              ; At least it ain't XML | ||||
|        ;;(java +lsp)       ; the poster child for carpal tunnel syndrome | ||||
|        ;;javascript        ; all(hope(abandon(ye(who(enter(here)))))) | ||||
|        ;;julia             ; a better, faster MATLAB | ||||
|        ;;kotlin            ; a better, slicker Java(Script) | ||||
|        (latex            ; writing papers in Emacs has never been so fun | ||||
|          +lsp | ||||
|          +cdlatex) | ||||
|        ;;lean              ; for folks with too much to prove | ||||
|        ledger            ; be audit you can be | ||||
|        ;;lua               ; one-based indices? one-based indices | ||||
|        markdown          ; writing docs for people to ignore | ||||
|        ;;nim               ; python + lisp at the speed of c | ||||
|        ;;nix               ; I hereby declare "nix geht mehr!" | ||||
|        ;;ocaml             ; an objective camel | ||||
|        (org              ; organize your plain life in plain text | ||||
|          +gnuplot | ||||
|          +pandoc | ||||
|          +pretty | ||||
|          +roam2) | ||||
|        ;;php               ; perl's insecure younger brother | ||||
|        ;;plantuml          ; diagrams for confusing people more | ||||
|        ;;purescript        ; javascript, but functional | ||||
|        ;;python            ; beautiful is better than ugly | ||||
|        ;;qt                ; the 'cutest' gui framework ever | ||||
|        ;;racket            ; a DSL for DSLs | ||||
|        ;;raku              ; the artist formerly known as perl6 | ||||
|        ;;rest              ; Emacs as a REST client | ||||
|        ;;rst               ; ReST in peace | ||||
|        ;;(ruby +rails)     ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} | ||||
|        ;;(rust +lsp)       ; Fe2O3.unwrap().unwrap().unwrap().unwrap() | ||||
|        ;;scala             ; java, but good | ||||
|        ;;(scheme +guile)   ; a fully conniving family of lisps | ||||
|        sh                ; she sells {ba,z,fi}sh shells on the C xor | ||||
|        ;;sml | ||||
|        ;;solidity          ; do you need a blockchain? No. | ||||
|        ;;swift             ; who asked for emoji variables? | ||||
|        ;;terra             ; Earth and Moon in alignment for performance. | ||||
|        ;;web               ; the tubes | ||||
|        ;;yaml              ; JSON, but readable | ||||
|        ;;zig               ; C, but simpler | ||||
| 
 | ||||
|        :email | ||||
|        ;;(mu4e +org +gmail) | ||||
|        ;;notmuch | ||||
|        ;;(wanderlust +gmail) | ||||
| 
 | ||||
|        :app | ||||
|        ;;calendar | ||||
|        ;;emms | ||||
|        ;;everywhere        ; *leave* Emacs!? You must be joking | ||||
|        ;;irc               ; how neckbeards socialize | ||||
|        (rss +org)        ; emacs as an RSS reader | ||||
|        ;;twitter           ; twitter client https://twitter.com/vnought | ||||
| 
 | ||||
|        :config | ||||
|        ;;literate | ||||
|        (default +bindings +smartparens)) | ||||
							
								
								
									
										57
									
								
								programs/emacs/doom/packages.el
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								programs/emacs/doom/packages.el
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,57 @@ | |||
| ;; -*- no-byte-compile: t; -*- | ||||
| ;;; $DOOMDIR/packages.el | ||||
| 
 | ||||
| ;; To install a package with Doom you must declare them here and run 'doom sync' | ||||
| ;; on the command line, then restart Emacs for the changes to take effect -- or | ||||
| ;; use 'M-x doom/reload'. | ||||
| 
 | ||||
| 
 | ||||
| ;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror: | ||||
| ;; (package! some-package) | ||||
| 
 | ||||
| ;; To install a package directly from a remote git repo, you must specify a | ||||
| ;; `:recipe'. You'll find documentation on what `:recipe' accepts here: | ||||
| ;; https://github.com/radian-software/straight.el#the-recipe-format | ||||
| ;; (package! another-package | ||||
| ;;   :recipe (:host github :repo "username/repo")) | ||||
| 
 | ||||
| ;; If the package you are trying to install does not contain a PACKAGENAME.el | ||||
| ;; file, or is located in a subdirectory of the repo, you'll need to specify | ||||
| ;; `:files' in the `:recipe': | ||||
| ;; (package! this-package | ||||
| ;;   :recipe (:host github :repo "username/repo" | ||||
| ;;            :files ("some-file.el" "src/lisp/*.el"))) | ||||
| 
 | ||||
| ;; If you'd like to disable a package included with Doom, you can do so here | ||||
| ;; with the `:disable' property: | ||||
| ;; (package! builtin-package :disable t) | ||||
| 
 | ||||
| ;; You can override the recipe of a built in package without having to specify | ||||
| ;; all the properties for `:recipe'. These will inherit the rest of its recipe | ||||
| ;; from Doom or MELPA/ELPA/Emacsmirror: | ||||
| ;; (package! builtin-package :recipe (:nonrecursive t)) | ||||
| ;; (package! builtin-package-2 :recipe (:repo "myfork/package")) | ||||
| 
 | ||||
| ;; Specify a `:branch' to install a package from a particular branch or tag. | ||||
| ;; This is required for some packages whose default branch isn't 'master' (which | ||||
| ;; our package manager can't deal with; see radian-software/straight.el#279) | ||||
| ;; (package! builtin-package :recipe (:branch "develop")) | ||||
| 
 | ||||
| ;; Use `:pin' to specify a particular commit to install. | ||||
| ;; (package! builtin-package :pin "1a2b3c4d5e") | ||||
| 
 | ||||
| 
 | ||||
| ;; Doom's packages are pinned to a specific commit and updated from release to | ||||
| ;; release. The `unpin!' macro allows you to unpin single packages... | ||||
| ;; (unpin! pinned-package) | ||||
| ;; ...or multiple packages | ||||
| ;; (unpin! pinned-package another-pinned-package) | ||||
| ;; ...Or *all* packages (NOT RECOMMENDED; will likely break things) | ||||
| ;; (unpin! t) | ||||
| 
 | ||||
| ;; Add org-roam-ui so I can see the node graph of my notes. | ||||
| (unpin! org-roam) | ||||
| (package! org-roam-ui) | ||||
| 
 | ||||
| ;; Add catppuccin theme. | ||||
| (package! catppuccin-theme) | ||||
							
								
								
									
										19
									
								
								programs/emacs/doom/snippets/org-mode/daily.org
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								programs/emacs/doom/snippets/org-mode/daily.org
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,19 @@ | |||
| # -*- mode: snippet -*- | ||||
| # name: daily | ||||
| # key: daily | ||||
| # -- | ||||
| #+filetags: :daily:$1 | ||||
| 
 | ||||
| * Tasks | ||||
| $2 | ||||
| * Input | ||||
| * Output | ||||
| * Morning Journal | ||||
| ** What are you grateful for? | ||||
| ** What do you want today's highlight to be? | ||||
| ** What's on your mind? | ||||
| * Evening Reflection | ||||
| ** How are you feeling today? | ||||
| ** What could you have done better? | ||||
| ** Amazing things that happened | ||||
| ** What did you learn today? | ||||
							
								
								
									
										25
									
								
								programs/emacs/doom/templates/roam/daily.org
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								programs/emacs/doom/templates/roam/daily.org
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,25 @@ | |||
| #+title: %<%Y-%m-%d> | ||||
| #+filetags: :daily: | ||||
| 
 | ||||
| * Morning Journal | ||||
| ** What are you grateful for? | ||||
| 
 | ||||
| ** What do you want the today's highlight to be? | ||||
| 
 | ||||
| ** Daily affirmations | ||||
| *** What's on your mind? | ||||
| 
 | ||||
| * Tasks | ||||
| 
 | ||||
| * Input | ||||
| 
 | ||||
| * Output | ||||
| 
 | ||||
| * Evening Reflection | ||||
| ** How are you feeling today? | ||||
| 
 | ||||
| ** What could you have done better? | ||||
| 
 | ||||
| ** Amazing things that happend | ||||
| 
 | ||||
| ** What did you learn today? | ||||
|  | @ -28,9 +28,13 @@ | |||
|       zoxide init --cmd cd fish | source | ||||
|     ''; | ||||
| 
 | ||||
|     shellAbbrs = { z = "zoxide"; }; | ||||
|     shellAbbrs = { | ||||
|       z = "zoxide"; | ||||
|     }; | ||||
| 
 | ||||
|     shellAliases = { del = "trash_file"; }; | ||||
|     shellAliases = { | ||||
|       del = "trash_file"; | ||||
|     }; | ||||
| 
 | ||||
|     functions = { | ||||
|       fish_prompt.body = '' | ||||
|  |  | |||
|  | @ -47,9 +47,13 @@ | |||
|         gpgsign = true; | ||||
|       }; | ||||
| 
 | ||||
|       tag = { gpgsign = true; }; | ||||
|       tag = { | ||||
|         gpgsign = true; | ||||
|       }; | ||||
| 
 | ||||
|       difftool = { prompt = true; }; | ||||
|       difftool = { | ||||
|         prompt = true; | ||||
|       }; | ||||
| 
 | ||||
|       mergetool = { | ||||
|         # https://www.git-scm.com/docs/git-mergetool#Documentation/git-mergetool.txt---no-prompt | ||||
|  | @ -75,9 +79,13 @@ | |||
|         signingkey = "A1D3A2B4E14BD7C0445BB749A5767B54367CFBDF"; | ||||
|       }; | ||||
| 
 | ||||
|       pull = { ff = "only"; }; | ||||
|       pull = { | ||||
|         ff = "only"; | ||||
|       }; | ||||
| 
 | ||||
|       init = { defaultBranch = "main"; }; | ||||
|       init = { | ||||
|         defaultBranch = "main"; | ||||
|       }; | ||||
| 
 | ||||
|       credential = { | ||||
|         helper = "/usr/libexec/git-core/git-credential-libsecret"; | ||||
|  |  | |||
|  | @ -2,176 +2,177 @@ | |||
|   wayland.windowManager.hyprland = { | ||||
|     enable = true; | ||||
| 
 | ||||
|     extraConfig = '' | ||||
|       # Catppuccin Macchiato - https://github.com/catppuccin/hyprland | ||||
|       $rosewaterAlpha = rgb(f4dbd6) | ||||
|       $flamingoAlpha  = rgb(f0c6c6) | ||||
|       $pinkAlpha      = rgb(f5bde6) | ||||
|       $mauveAlpha     = rgb(c6a0f6) | ||||
|       $redAlpha       = rgb(ed8796) | ||||
|       $maroonAlpha    = rgb(ee99a0) | ||||
|       $peachAlpha     = rgb(f5a97f) | ||||
|       $yellowAlpha    = rgb(eed49f) | ||||
|       $greenAlpha     = rgb(a6da95) | ||||
|       $tealAlpha      = rgb(8bd5ca) | ||||
|       $skyAlpha       = rgb(91d7e3) | ||||
|       $sapphireAlpha  = rgb(7dc4e4) | ||||
|       $blueAlpha      = rgb(8aadf4) | ||||
|       $lavenderAlpha  = rgb(b7bdf8) | ||||
|     extraConfig = # hyprlang | ||||
|       '' | ||||
|         # Catppuccin Macchiato - https://github.com/catppuccin/hyprland | ||||
|         $rosewaterAlpha = rgb(f4dbd6) | ||||
|         $flamingoAlpha  = rgb(f0c6c6) | ||||
|         $pinkAlpha      = rgb(f5bde6) | ||||
|         $mauveAlpha     = rgb(c6a0f6) | ||||
|         $redAlpha       = rgb(ed8796) | ||||
|         $maroonAlpha    = rgb(ee99a0) | ||||
|         $peachAlpha     = rgb(f5a97f) | ||||
|         $yellowAlpha    = rgb(eed49f) | ||||
|         $greenAlpha     = rgb(a6da95) | ||||
|         $tealAlpha      = rgb(8bd5ca) | ||||
|         $skyAlpha       = rgb(91d7e3) | ||||
|         $sapphireAlpha  = rgb(7dc4e4) | ||||
|         $blueAlpha      = rgb(8aadf4) | ||||
|         $lavenderAlpha  = rgb(b7bdf8) | ||||
| 
 | ||||
|       $textAlpha      = rgb(cad3f5) | ||||
|       $subtext1Alpha  = rgb(b8c0e0) | ||||
|       $subtext0Alpha  = rgb(a5adcb) | ||||
|         $textAlpha      = rgb(cad3f5) | ||||
|         $subtext1Alpha  = rgb(b8c0e0) | ||||
|         $subtext0Alpha  = rgb(a5adcb) | ||||
| 
 | ||||
|       $overlay2Alpha  = rgb(939ab7) | ||||
|       $overlay1Alpha  = rgb(8087a2) | ||||
|       $overlay0Alpha  = rgb(6e738d) | ||||
|         $overlay2Alpha  = rgb(939ab7) | ||||
|         $overlay1Alpha  = rgb(8087a2) | ||||
|         $overlay0Alpha  = rgb(6e738d) | ||||
| 
 | ||||
|       $surface2Alpha  = rgb(5b6078) | ||||
|       $surface1Alpha  = rgb(494d64) | ||||
|       $surface0Alpha  = rgb(363a4f) | ||||
|         $surface2Alpha  = rgb(5b6078) | ||||
|         $surface1Alpha  = rgb(494d64) | ||||
|         $surface0Alpha  = rgb(363a4f) | ||||
| 
 | ||||
|       $baseAlpha      = rgb(24273a) | ||||
|       $mantleAlpha    = rgb(1e2030) | ||||
|       $crustAlpha     = rgb(181926) | ||||
|         $baseAlpha      = rgb(24273a) | ||||
|         $mantleAlpha    = rgb(1e2030) | ||||
|         $crustAlpha     = rgb(181926) | ||||
| 
 | ||||
|       $rosewater = 0xfff5e0dc | ||||
|       $flamingo  = 0xfff2cdcd | ||||
|       $pink      = 0xfff5c2e7 | ||||
|       $mauve     = 0xffcba6f7 | ||||
|       $red       = 0xfff38ba8 | ||||
|       $maroon    = 0xffeba0ac | ||||
|       $peach     = 0xfffab387 | ||||
|       $yellow    = 0xfff9e2af | ||||
|       $green     = 0xffa6e3a1 | ||||
|       $teal      = 0xff94e2d5 | ||||
|       $sky       = 0xff89dceb | ||||
|       $sapphire  = 0xff74c7ec | ||||
|       $blue      = 0xff89b4fa | ||||
|       $lavender  = 0xffb4befe | ||||
|         $rosewater = 0xfff5e0dc | ||||
|         $flamingo  = 0xfff2cdcd | ||||
|         $pink      = 0xfff5c2e7 | ||||
|         $mauve     = 0xffcba6f7 | ||||
|         $red       = 0xfff38ba8 | ||||
|         $maroon    = 0xffeba0ac | ||||
|         $peach     = 0xfffab387 | ||||
|         $yellow    = 0xfff9e2af | ||||
|         $green     = 0xffa6e3a1 | ||||
|         $teal      = 0xff94e2d5 | ||||
|         $sky       = 0xff89dceb | ||||
|         $sapphire  = 0xff74c7ec | ||||
|         $blue      = 0xff89b4fa | ||||
|         $lavender  = 0xffb4befe | ||||
| 
 | ||||
|       $text      = 0xffcdd6f4 | ||||
|       $subtext1  = 0xffbac2de | ||||
|       $subtext0  = 0xffa6adc8 | ||||
|         $text      = 0xffcdd6f4 | ||||
|         $subtext1  = 0xffbac2de | ||||
|         $subtext0  = 0xffa6adc8 | ||||
| 
 | ||||
|       $overlay2  = 0xff9399b2 | ||||
|       $overlay1  = 0xff7f849c | ||||
|       $overlay0  = 0xff6c7086 | ||||
|         $overlay2  = 0xff9399b2 | ||||
|         $overlay1  = 0xff7f849c | ||||
|         $overlay0  = 0xff6c7086 | ||||
| 
 | ||||
|       $surface2  = 0xff585b70 | ||||
|       $surface1  = 0xff45475a | ||||
|       $surface0  = 0xff313244 | ||||
|         $surface2  = 0xff585b70 | ||||
|         $surface1  = 0xff45475a | ||||
|         $surface0  = 0xff313244 | ||||
| 
 | ||||
|       $base      = 0xff1e1e2e | ||||
|       $mantle    = 0xff181825 | ||||
|       $crust     = 0xff11111b | ||||
|         $base      = 0xff1e1e2e | ||||
|         $mantle    = 0xff181825 | ||||
|         $crust     = 0xff11111b | ||||
| 
 | ||||
|       # | ||||
|       # Please note not all available settings / options are set here. | ||||
|       # For a full list, see the wiki | ||||
|       # | ||||
|         # | ||||
|         # Please note not all available settings / options are set here. | ||||
|         # For a full list, see the wiki | ||||
|         # | ||||
| 
 | ||||
|       autogenerated = 0 # remove this line to remove the warning | ||||
|         autogenerated = 0 # remove this line to remove the warning | ||||
| 
 | ||||
|       # See https://wiki.hyprland.org/Configuring/Monitors/ | ||||
|       monitor = eDP-1, 1920x1080@60.00800, 0x0, 1 | ||||
| 
 | ||||
|       # See https://wiki.hyprland.org/Configuring/Keywords/ for more | ||||
|         # See https://wiki.hyprland.org/Configuring/Keywords/ for more | ||||
| 
 | ||||
|       # Inject home-manager session variables | ||||
|       exec-once = /etc/profiles/per-user/wizardlink/etc/profile.d/hm-session-vars.sh | ||||
|         # Inject home-manager session variables | ||||
|         exec-once = /etc/profiles/per-user/wizardlink/etc/profile.d/hm-session-vars.sh | ||||
| 
 | ||||
|       # Execute your favorite apps at launch | ||||
|       exec-once = ~/.local/share/scripts/hyprland/start_services.sh | ||||
|         # Execute your favorite apps at launch | ||||
|         exec-once = ~/.local/share/scripts/hyprland/start_services.sh | ||||
| 
 | ||||
|       # Source a file (multi-file configs) | ||||
|       # source = ~/.config/hypr/myColors.conf | ||||
|         # Source a file (multi-file configs) | ||||
|         # source = ~/.config/hypr/myColors.conf | ||||
| 
 | ||||
|       # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ | ||||
|       input { | ||||
|           kb_layout = us,br,jp | ||||
|           kb_variant = ,,kana86 | ||||
|           kb_model = | ||||
|           kb_options = grp:alts_toggle | ||||
|           kb_rules = | ||||
|         # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ | ||||
|         input { | ||||
|             kb_layout = us,br,jp | ||||
|             kb_variant = ,,kana86 | ||||
|             kb_model = | ||||
|             kb_options = grp:alts_toggle | ||||
|             kb_rules = | ||||
| 
 | ||||
|           follow_mouse = 1 | ||||
|           float_switch_override_focus = 1 | ||||
|             follow_mouse = 1 | ||||
|             float_switch_override_focus = 1 | ||||
| 
 | ||||
|           accel_profile = flat | ||||
|           force_no_accel = true | ||||
|             accel_profile = flat | ||||
|             force_no_accel = true | ||||
| 
 | ||||
|           sensitivity = 0 # -1.0 - 1.0, 0 means no modification. | ||||
|             sensitivity = 0 # -1.0 - 1.0, 0 means no modification. | ||||
| 
 | ||||
|           tablet { | ||||
|               output = eDP-1 | ||||
|           } | ||||
|       } | ||||
| 
 | ||||
|       general { | ||||
|           # See https://wiki.hyprland.org/Configuring/Variables/ for more | ||||
|         general { | ||||
|             # See https://wiki.hyprland.org/Configuring/Variables/ for more | ||||
| 
 | ||||
|           gaps_in = 6 | ||||
|           gaps_out = 18 | ||||
|           border_size = 2 | ||||
|           col.active_border = $base $surface0 $green 45deg | ||||
|           col.inactive_border = $base $surface0 $blue 45deg | ||||
|             gaps_in = 6 | ||||
|             gaps_out = 18 | ||||
|             border_size = 2 | ||||
|             col.active_border = $base $surface0 $green 45deg | ||||
|             col.inactive_border = $base $surface0 $blue 45deg | ||||
| 
 | ||||
|           layout = dwindle | ||||
|       } | ||||
|             layout = dwindle | ||||
|         } | ||||
| 
 | ||||
|       decoration { | ||||
|           # See https://wiki.hyprland.org/Configuring/Variables/ for more | ||||
|         decoration { | ||||
|             # See https://wiki.hyprland.org/Configuring/Variables/ for more | ||||
| 
 | ||||
|           rounding = 8 | ||||
|           # FIXME: Check these deprecations. | ||||
|           #blur = yes | ||||
|           #blur_size = 3 | ||||
|           #blur_passes = 1 | ||||
|           #blur_new_optimizations = on | ||||
|             rounding = 8 | ||||
|             # FIXME: Check these deprecations. | ||||
|             #blur = yes | ||||
|             #blur_size = 3 | ||||
|             #blur_passes = 1 | ||||
|             #blur_new_optimizations = on | ||||
| 
 | ||||
|           drop_shadow = yes | ||||
|           shadow_range = 4 | ||||
|           shadow_render_power = 3 | ||||
|           col.shadow = $crust | ||||
|       } | ||||
|             drop_shadow = yes | ||||
|             shadow_range = 4 | ||||
|             shadow_render_power = 3 | ||||
|             col.shadow = $crust | ||||
|         } | ||||
| 
 | ||||
|       animations { | ||||
|           enabled = yes | ||||
|         animations { | ||||
|             enabled = yes | ||||
| 
 | ||||
|           # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more | ||||
|             # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more | ||||
| 
 | ||||
|           bezier = myBezier, 0.05, 0.9, 0.1, 1.05 | ||||
|             bezier = myBezier, 0.05, 0.9, 0.1, 1.05 | ||||
| 
 | ||||
|           animation = windows, 1, 7, myBezier | ||||
|           animation = windowsOut, 1, 7, default, popin 80% | ||||
|           animation = border, 1, 10, default | ||||
|           animation = borderangle, 1, 8, default | ||||
|           animation = fade, 1, 7, default | ||||
|           animation = workspaces, 1, 6, default | ||||
|       } | ||||
|             animation = windows, 1, 7, myBezier | ||||
|             animation = windowsOut, 1, 7, default, popin 80% | ||||
|             animation = border, 1, 10, default | ||||
|             animation = borderangle, 1, 8, default | ||||
|             animation = fade, 1, 7, default | ||||
|             animation = workspaces, 1, 6, default | ||||
|         } | ||||
| 
 | ||||
|       dwindle { | ||||
|           # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more | ||||
|           pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below | ||||
|           preserve_split = yes # you probably want this | ||||
|       } | ||||
|         dwindle { | ||||
|             # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more | ||||
|             pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below | ||||
|             preserve_split = yes # you probably want this | ||||
|         } | ||||
| 
 | ||||
|       master { | ||||
|           # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more | ||||
|           new_is_master = true | ||||
|       } | ||||
|         master { | ||||
|             # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more | ||||
|             new_status = slave | ||||
|         } | ||||
| 
 | ||||
|       gestures { | ||||
|           # See https://wiki.hyprland.org/Configuring/Variables/ for more | ||||
|           workspace_swipe = off | ||||
|       } | ||||
|         gestures { | ||||
|             # See https://wiki.hyprland.org/Configuring/Variables/ for more | ||||
|             workspace_swipe = off | ||||
|         } | ||||
| 
 | ||||
|       # Example windowrule v1 | ||||
|       # windowrule = float, ^(kitty)$ | ||||
|       # Example windowrule v2 | ||||
|       # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ | ||||
|       # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more | ||||
|         # Example windowrule v1 | ||||
|         # windowrule = float, ^(kitty)$ | ||||
|         # Example windowrule v2 | ||||
|         # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ | ||||
|         # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more | ||||
| 
 | ||||
|       # Bind workspaces to specific monitors | ||||
|       workspace = 1, monitor:eDP-1 | ||||
|  | @ -185,83 +186,83 @@ | |||
|       workspace = 9, monitor:eDP-1 | ||||
|       workspace = 0, monitor:eDP-1 | ||||
| 
 | ||||
|       # See https://wiki.hyprland.org/Configuring/Keywords/ for more | ||||
|       $mainMod = SUPER | ||||
|         # See https://wiki.hyprland.org/Configuring/Keywords/ for more | ||||
|         $mainMod = SUPER | ||||
| 
 | ||||
|       # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more | ||||
|       bind = $mainMod CTRL, F, fakefullscreen | ||||
|       bind = $mainMod CTRL, L, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy | ||||
|       bind = $mainMod CTRL, P, exec, ~/.local/share/scripts/hyprland/screenshot_area.sh | ||||
|       bind = $mainMod CTRL, V, pin | ||||
|       bind = $mainMod SHIFT, F, fullscreen, 1 | ||||
|       bind = $mainMod SHIFT, P, exec, ~/.local/share/scripts/hyprland/screenshot.sh | ||||
|       bind = $mainMod, C, killactive | ||||
|       bind = $mainMod, E, exec, wezterm start fish -c "ya" | ||||
|       bind = $mainMod, F, fullscreen | ||||
|       bind = $mainMod, M, exit | ||||
|       bind = $mainMod, O, togglesplit # dwindle | ||||
|       bind = $mainMod, P, pseudo # dwindle | ||||
|       bind = $mainMod, Q, exec, wezterm | ||||
|       bind = $mainMod, R, exec, rofi -show drun | ||||
|       bind = $mainMod, V, togglefloating | ||||
|         # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more | ||||
|         bind = $mainMod CTRL, F, fakefullscreen | ||||
|         bind = $mainMod CTRL, L, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy | ||||
|         bind = $mainMod CTRL, P, exec, ~/.local/share/scripts/hyprland/screenshot_area.sh | ||||
|         bind = $mainMod CTRL, V, pin | ||||
|         bind = $mainMod SHIFT, F, fullscreen, 1 | ||||
|         bind = $mainMod SHIFT, P, exec, ~/.local/share/scripts/hyprland/screenshot.sh | ||||
|         bind = $mainMod, C, killactive | ||||
|         bind = $mainMod, E, exec, wezterm start fish -c "ya" | ||||
|         bind = $mainMod, F, fullscreen | ||||
|         bind = $mainMod, M, exit | ||||
|         bind = $mainMod, O, togglesplit # dwindle | ||||
|         bind = $mainMod, P, pseudo # dwindle | ||||
|         bind = $mainMod, Q, exec, wezterm | ||||
|         bind = $mainMod, R, exec, rofi -show drun | ||||
|         bind = $mainMod, V, togglefloating | ||||
| 
 | ||||
|       # 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 | ||||
|         # 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 | ||||
|         # 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 | ||||
|         # 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 | ||||
| 
 | ||||
|       # Scroll through existing workspaces with mainMod + scroll | ||||
|       bind = $mainMod, mouse_down, workspace, e+1 | ||||
|       bind = $mainMod, mouse_up, workspace, e-1 | ||||
|         # 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 | ||||
|       bind = $mainMod SHIFT, H, movewindow, l | ||||
|       bind = $mainMod SHIFT, L, movewindow, r | ||||
|       bind = $mainMod SHIFT, K, movewindow, u | ||||
|       bind = $mainMod SHIFT, J, movewindow, d | ||||
|       bindm = $mainMod, mouse:272, movewindow | ||||
|       bindm = $mainMod, mouse:273, resizewindow | ||||
|        | ||||
|       # Volume changes | ||||
|       binde = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%+ | ||||
|       binde = , XF86AudioLowerVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%- | ||||
|       bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle | ||||
|         # Move/resize windows with mainMod + LMB/RMB and dragging | ||||
|         bind = $mainMod SHIFT, H, movewindow, l | ||||
|         bind = $mainMod SHIFT, L, movewindow, r | ||||
|         bind = $mainMod SHIFT, K, movewindow, u | ||||
|         bind = $mainMod SHIFT, J, movewindow, d | ||||
|         bindm = $mainMod, mouse:272, movewindow | ||||
|         bindm = $mainMod, mouse:273, resizewindow | ||||
| 
 | ||||
|       # Window rules | ||||
|       windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$ | ||||
|       windowrulev2 = noanim,class:^(xwaylandvideobridge)$ | ||||
|       windowrulev2 = nofocus,class:^(xwaylandvideobridge)$ | ||||
|       windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$ | ||||
|         # Volume changes | ||||
|         binde = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%+ | ||||
|         binde = , XF86AudioLowerVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%- | ||||
|         bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle | ||||
| 
 | ||||
|       # Rules for windowkill | ||||
|       windowrule = noborder, ^(steam_app_2726450)$ | ||||
|       windowrule = pin, ^(steam_app_2726450)$ | ||||
|       windowrule = opacity 0.9, ^(steam_app_2726450)$ | ||||
|     ''; | ||||
|         # Window rules | ||||
|         windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$ | ||||
|         windowrulev2 = noanim,class:^(xwaylandvideobridge)$ | ||||
|         windowrulev2 = nofocus,class:^(xwaylandvideobridge)$ | ||||
|         windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$ | ||||
| 
 | ||||
|         # Rules for windowkill | ||||
|         windowrule = noborder, ^(steam_app_2726450)$ | ||||
|         windowrule = pin, ^(steam_app_2726450)$ | ||||
|         windowrule = opacity 0.9, ^(steam_app_2726450)$ | ||||
|       ''; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
|  | @ -15,8 +15,15 @@ | |||
|       gpu_fan = true; | ||||
|       gpu_junction_temp = true; | ||||
|       gpu_load_change = true; | ||||
|       gpu_load_color = [ "39F900" "FDFD09" "B22222" ]; | ||||
|       gpu_load_value = [ 60 90 ]; | ||||
|       gpu_load_color = [ | ||||
|         "39F900" | ||||
|         "FDFD09" | ||||
|         "B22222" | ||||
|       ]; | ||||
|       gpu_load_value = [ | ||||
|         60 | ||||
|         90 | ||||
|       ]; | ||||
|       gpu_mem_clock = true; | ||||
|       gpu_mem_temp = true; | ||||
|       gpu_power = true; | ||||
|  | @ -26,8 +33,15 @@ | |||
| 
 | ||||
|       # CPU Statistics | ||||
|       cpu_load_change = true; | ||||
|       cpu_load_color = [ "39F900" "FDFD09" "B22222" ]; | ||||
|       cpu_load_value = [ 60 90 ]; | ||||
|       cpu_load_color = [ | ||||
|         "39F900" | ||||
|         "FDFD09" | ||||
|         "B22222" | ||||
|       ]; | ||||
|       cpu_load_value = [ | ||||
|         60 | ||||
|         90 | ||||
|       ]; | ||||
|       cpu_mhz = true; | ||||
|       cpu_power = true; | ||||
|       cpu_stats = true; | ||||
|  | @ -46,8 +60,15 @@ | |||
|       # FPS Statistics | ||||
|       fps = true; | ||||
|       fps_color_change = true; | ||||
|       fps_value = [ 60 90 ]; | ||||
|       fps_color = [ "B22222" "FDFD09" "39F900" ]; | ||||
|       fps_value = [ | ||||
|         60 | ||||
|         90 | ||||
|       ]; | ||||
|       fps_color = [ | ||||
|         "B22222" | ||||
|         "FDFD09" | ||||
|         "39F900" | ||||
|       ]; | ||||
|       frametime = true; | ||||
|       frame_timing = true; # Display graphs | ||||
|       histogram = true; # ^ | ||||
|  |  | |||
|  | @ -34,10 +34,10 @@ | |||
| 
 | ||||
|       # Nix | ||||
|       nil | ||||
|       nixpkgs-fmt | ||||
|       nixfmt-rfc-style | ||||
| 
 | ||||
|       # TypeScript | ||||
|       nodePackages.typescript-language-server | ||||
|       (callPackage ../vtsls/package.nix { }) | ||||
| 
 | ||||
|       # Rust | ||||
|       rust-analyzer | ||||
|  | @ -45,7 +45,7 @@ | |||
|       vscode-extensions.vadimcn.vscode-lldb.adapter | ||||
| 
 | ||||
|       # Vue | ||||
|       nodePackages.volar | ||||
|       vscode-extensions.vue.volar | ||||
| 
 | ||||
|       # Svelte | ||||
|       nodePackages.svelte-language-server | ||||
|  | @ -55,10 +55,8 @@ | |||
|     ]; | ||||
|   }; | ||||
| 
 | ||||
|   xdg.configFile = lib.mkMerge [ | ||||
|     { "nvim/lua/community.lua".source = ./lua/community.lua; } | ||||
|     { "nvim/lua/lazy_setup.lua".source = ./lua/lazy_setup.lua; } | ||||
|     { "nvim/lua/plugins".source = ./lua/plugins; } | ||||
|     { "nvim/lua/polish.lua".source = ./lua/polish.lua; } | ||||
|   ]; | ||||
|   xdg.configFile."nvim/lua" = { | ||||
|     recursive = true; | ||||
|     source = ./lua; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
|  | @ -33,7 +33,7 @@ return { | |||
|   { import = "astrocommunity.pack.nix" }, | ||||
|   { import = "astrocommunity.pack.rust" }, | ||||
|   { import = "astrocommunity.pack.toml" }, | ||||
|   { import = "astrocommunity.pack.typescript-all-in-one" }, | ||||
|   { import = "astrocommunity.pack.typescript" }, | ||||
|   { import = "astrocommunity.pack.vue" }, | ||||
|   { import = "astrocommunity.pack.yaml" }, | ||||
| } | ||||
|  |  | |||
|  | @ -59,8 +59,8 @@ return { | |||
|       "rust_analyzer", | ||||
|       "svelte", | ||||
|       "taplo", | ||||
|       "tsserver", | ||||
|       "volar", | ||||
|       "vtsls", | ||||
|       "yamlls", | ||||
|     }, | ||||
|     -- customize language server configuration options passed to `lspconfig` | ||||
|  |  | |||
|  | @ -12,9 +12,7 @@ return { | |||
|     -- https://github.com/nvimtools/none-ls.nvim/tree/main/lua/null-ls/builtins/diagnostics | ||||
|     config.sources = { | ||||
|       -- Set a formatter | ||||
|       -- null_ls.builtins.formatting.stylua, | ||||
|       -- null_ls.builtins.formatting.prettier, | ||||
|       null_ls.builtins.formatting.nixpkgs_fmt, | ||||
|       null_ls.builtins.formatting.nixfmt, | ||||
|       null_ls.builtins.formatting.prettier, | ||||
|       null_ls.builtins.formatting.stylua, | ||||
|     } | ||||
|  |  | |||
|  | @ -14,6 +14,7 @@ return { | |||
|       "gdscript", | ||||
|       "godot_resource", | ||||
|       "html", | ||||
|       "hyprlang", | ||||
|       "javascript", | ||||
|       "jsdoc", | ||||
|       "lua", | ||||
|  |  | |||
|  | @ -17,17 +17,28 @@ return { | |||
|     opts = function(_, opts) | ||||
|       -- customize the dashboard header | ||||
|       opts.section.header.val = { | ||||
|         "⠀⠀⠀⠀⠀⢀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀", | ||||
|         "⠀⠀⠀⠀⣰⠿⡇⢸⡟⡇⠀⠘⡷⠶⢶⣆⠘⣶⠶⠶⠶⣦⣤⣤⣤⣤⣄⣀⣀⣀⡀⠀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⠤⠤⣤⡀⠀⠀", | ||||
|         "⠀⠀⠀⣰⣿⠀⠹⡌⣇⢹⣀⣠⣿⣦⠀⠹⣄⠸⣆⠀⣄⠹⡇⠀⠈⠃⠁⢹⢻⠀⣿⠈⢻⡛⢳⣤⣶⣿⣿⣿⣿⡶⠶⣶⣶⣶⣶⣶⣶⣶⣶⣾⡁⠀⢠⠴⠙⢦⡀", | ||||
|         "⠀⠀⣴⣿⡙⠀⠀⢳⣾⣿⣿⣿⣿⣿⣷⣦⣼⣿⣿⣷⡘⣆⠁⠀⠀⠀⢠⣼⣿⣴⠇⠀⠀⠙⢿⣿⣿⠟⢹⠃⠀⠀⣀⠀⠉⠈⢷⠈⢻⣿⠁⡿⢿⣄⡘⣄⠀⠀⠁", | ||||
|         "⠀⢸⠻⣿⠉⠓⣶⣶⣿⣿⣿⡿⠿⠿⢿⠿⣿⡉⠻⠇⠙⢿⣷⣀⠀⠀⢼⡙⠿⠃⠀⠀⠀⠀⠈⠿⠋⠀⢸⠄⠀⠀⠛⠃⠀⠀⢸⠀⠀⣿⢀⠇⢸⡿⠛⠛⢷⡶⠂", | ||||
|         "⠀⣸⡄⠙⣆⠀⣿⡿⠹⣏⡤⢤⣸⣿⠼⠀⠘⠇⠆⠀⠀⠀⠉⠉⢳⠦⣼⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢳⡀⠀⠀⠀⠀⢀⡞⠀⣰⣿⣾⣀⣾⡅⠀⡞⠉⠙⢆", | ||||
|         "⢀⡿⢿⢦⠹⣿⣿⡇⠀⢉⠀⠈⠁⠀⠀⠀⢠⢃⡗⠀⠀⠀⠀⠀⢻⠀⠀⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠲⢤⣙⣲⣤⣤⣶⣫⠤⠖⠹⠋⠉⠉⠉⠻⣶⣽⣦⣀⡼", | ||||
|         "⠼⣧⣬⣿⡿⣭⠈⠿⣤⡬⠷⠴⠒⠒⠒⠲⠿⠛⠀⠂⠀⠂⠀⠀⠈⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠛⠛⠉⠉⠉⠁⠀", | ||||
|         "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠴⠶⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀", | ||||
|         "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⣤⣶⣶⣾⣿⣿⣿⣿⣷⣶⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣶⣾⣿⣿⣿⣿⣷⣶⣶⣤⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀", | ||||
|         "⠀⠀⠀⠀⠀⢀⣠⡴⠾⠟⠋⠉⠉⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠉⠉⠙⠛⠷⢦⣄⡀⠀⠀⠀⠀⠀", | ||||
|         "⠀⠀⠀⠀⠘⠋⠁⠀⠀⢀⣀⣤⣶⣖⣒⣒⡲⠶⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⠶⢖⣒⣒⣲⣶⣤⣀⡀⠀⠀⠈⠙⠂⠀⠀⠀⠀", | ||||
|         "⠀⠀⠀⠀⠀⠀⠀⣠⢖⣫⣷⣿⣿⣿⣿⣿⣿⣶⣤⡙⢦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡴⢋⣤⣾⣿⣿⣿⣿⣿⣿⣾⣝⡲⣄⠀⠀⠀⠀⠀⠀⠀", | ||||
|         "⠀⠀⠀⣄⣀⣠⢿⣿⣿⣿⣿⣿⣿⣿⡿⠟⠻⢿⣿⣿⣦⣳⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣟⣴⣿⣿⡿⠟⠻⢿⣿⣿⣿⣿⣿⣿⣿⡻⣄⣀⣤⠀⠀⠀", | ||||
|         "⠀⠀⠀⠈⠟⣿⣿⣿⡿⢻⣿⣿⣿⠃⠀⠀⠀⠀⠙⣿⣿⣿⠓⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠚⣿⣿⣿⠋⠀⠀⠀⠀⠘⣿⣿⣿⡟⢿⣿⣿⣟⠻⠁⠀⠀⠀", | ||||
|         "⠤⣤⣶⣶⣿⣿⣿⡟⠀⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⢻⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⡏⠀⠀⠀⠀⠀⠀⣹⣿⣿⣷⠈⢻⣿⣿⣿⣶⣦⣤⠤", | ||||
|         "⠀⠀⠀⠀⠀⢻⣟⠀⠀⣿⣿⣿⣿⡀⠀⠀⠀⠀⢀⣿⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢻⣿⣿⡀⠀⠀⠀⠀⢀⣿⣿⣿⣿⠀⠀⣿⡟⠀⠀⠀⠀⠀", | ||||
|         "⠀⠀⠀⠀⠀⠀⠻⣆⠀⢹⣿⠟⢿⣿⣦⣤⣤⣴⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⡿⢷⣤⣤⣤⣴⣿⣿⣿⣿⡇⠀⣰⠟⠀⠀⠀⠀⠀⠀", | ||||
|         "⠀⠀⠀⠀⠀⠀⠀⠙⠂⠀⠙⢀⣀⣿⣿⣿⣿⣿⣿⣿⠟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠻⠁⠀⣻⣿⣿⣿⣿⣿⣿⠏⠀⠘⠃⠀⠀⠀⠀⠀⠀⠀", | ||||
|         "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡈⠻⠿⣿⣿⣿⡿⠟⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠻⢿⣿⣿⣿⠿⠛⢁⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀", | ||||
|         "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠚⠛⣶⣦⣤⣤⣤⡤⠆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠰⢤⣤⣤⣤⣶⣾⠛⠓⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀", | ||||
|       } | ||||
|       return opts | ||||
|     end, | ||||
|   }, | ||||
|   { | ||||
|     "jmbuhr/otter.nvim", | ||||
|     dependencies = { | ||||
|       "hrsh7th/nvim-cmp", | ||||
|       "neovim/nvim-lspconfig", | ||||
|       "nvim-treesitter/nvim-treesitter", | ||||
|     }, | ||||
|   }, | ||||
| } | ||||
|  |  | |||
|  | @ -10,7 +10,6 @@ | |||
|       obs-pipewire-audio-capture | ||||
|       obs-vaapi | ||||
|       obs-vkcapture | ||||
|       wlrobs | ||||
|     ]; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
							
								
								
									
										551
									
								
								programs/vtsls/package-lock.json
									
										
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										551
									
								
								programs/vtsls/package-lock.json
									
										
									
										generated
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,551 @@ | |||
| { | ||||
|   "name": "@vtsls/language-server", | ||||
|   "version": "0.2.3", | ||||
|   "lockfileVersion": 3, | ||||
|   "requires": true, | ||||
|   "packages": { | ||||
|     "": { | ||||
|       "name": "@vtsls/language-server", | ||||
|       "version": "0.2.3", | ||||
|       "license": "MIT", | ||||
|       "dependencies": { | ||||
|         "@vtsls/language-service": "0.2.3", | ||||
|         "vscode-languageserver": "^9.0.1", | ||||
|         "vscode-uri": "^3.0.8" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "vtsls": "bin/vtsls.js" | ||||
|       }, | ||||
|       "devDependencies": { | ||||
|         "esbuild": "^0.21.3" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=14" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/aix-ppc64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", | ||||
|       "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", | ||||
|       "cpu": [ | ||||
|         "ppc64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "aix" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/android-arm": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", | ||||
|       "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", | ||||
|       "cpu": [ | ||||
|         "arm" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "android" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/android-arm64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", | ||||
|       "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", | ||||
|       "cpu": [ | ||||
|         "arm64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "android" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/android-x64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", | ||||
|       "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", | ||||
|       "cpu": [ | ||||
|         "x64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "android" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/darwin-arm64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", | ||||
|       "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", | ||||
|       "cpu": [ | ||||
|         "arm64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "darwin" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/darwin-x64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", | ||||
|       "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", | ||||
|       "cpu": [ | ||||
|         "x64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "darwin" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/freebsd-arm64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", | ||||
|       "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", | ||||
|       "cpu": [ | ||||
|         "arm64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "freebsd" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/freebsd-x64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", | ||||
|       "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", | ||||
|       "cpu": [ | ||||
|         "x64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "freebsd" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/linux-arm": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", | ||||
|       "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", | ||||
|       "cpu": [ | ||||
|         "arm" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "linux" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/linux-arm64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", | ||||
|       "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", | ||||
|       "cpu": [ | ||||
|         "arm64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "linux" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/linux-ia32": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", | ||||
|       "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", | ||||
|       "cpu": [ | ||||
|         "ia32" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "linux" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/linux-loong64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", | ||||
|       "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", | ||||
|       "cpu": [ | ||||
|         "loong64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "linux" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/linux-mips64el": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", | ||||
|       "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", | ||||
|       "cpu": [ | ||||
|         "mips64el" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "linux" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/linux-ppc64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", | ||||
|       "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", | ||||
|       "cpu": [ | ||||
|         "ppc64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "linux" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/linux-riscv64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", | ||||
|       "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", | ||||
|       "cpu": [ | ||||
|         "riscv64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "linux" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/linux-s390x": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", | ||||
|       "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", | ||||
|       "cpu": [ | ||||
|         "s390x" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "linux" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/linux-x64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", | ||||
|       "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", | ||||
|       "cpu": [ | ||||
|         "x64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "linux" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/netbsd-x64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", | ||||
|       "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", | ||||
|       "cpu": [ | ||||
|         "x64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "netbsd" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/openbsd-x64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", | ||||
|       "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", | ||||
|       "cpu": [ | ||||
|         "x64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "openbsd" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/sunos-x64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", | ||||
|       "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", | ||||
|       "cpu": [ | ||||
|         "x64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "sunos" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/win32-arm64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", | ||||
|       "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", | ||||
|       "cpu": [ | ||||
|         "arm64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "win32" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/win32-ia32": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", | ||||
|       "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", | ||||
|       "cpu": [ | ||||
|         "ia32" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "win32" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@esbuild/win32-x64": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", | ||||
|       "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", | ||||
|       "cpu": [ | ||||
|         "x64" | ||||
|       ], | ||||
|       "dev": true, | ||||
|       "optional": true, | ||||
|       "os": [ | ||||
|         "win32" | ||||
|       ], | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@vscode/l10n": { | ||||
|       "version": "0.0.18", | ||||
|       "resolved": "https://registry.npmjs.org/@vscode/l10n/-/l10n-0.0.18.tgz", | ||||
|       "integrity": "sha512-KYSIHVmslkaCDyw013pphY+d7x1qV8IZupYfeIfzNA+nsaWHbn5uPuQRvdRFsa9zFzGeudPuoGoZ1Op4jrJXIQ==" | ||||
|     }, | ||||
|     "node_modules/@vtsls/language-service": { | ||||
|       "version": "0.2.3", | ||||
|       "resolved": "https://registry.npmjs.org/@vtsls/language-service/-/language-service-0.2.3.tgz", | ||||
|       "integrity": "sha512-VqjmaSGbW0LHiJNdhBrKnxKXFrpBUUDc/FxakrRh6z26d4kg55mRpm9IM1khR0tkl3MYtejn0lLNQYcfCVHgYg==", | ||||
|       "dependencies": { | ||||
|         "@vscode/l10n": "^0.0.18", | ||||
|         "@vtsls/vscode-fuzzy": "0.0.1", | ||||
|         "jsonc-parser": "^3.2.0", | ||||
|         "semver": "7.5.2", | ||||
|         "typescript": "5.4.5", | ||||
|         "vscode-languageserver-protocol": "^3.17.5", | ||||
|         "vscode-languageserver-textdocument": "^1.0.11", | ||||
|         "vscode-uri": "^3.0.8" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=14" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@vtsls/vscode-fuzzy": { | ||||
|       "version": "0.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/@vtsls/vscode-fuzzy/-/vscode-fuzzy-0.0.1.tgz", | ||||
|       "integrity": "sha512-2KCtA+/OmPVttsdVggO0WQFXZwM0zbG7G8KRGExe4YeoaHB0fDWyfsNrWnutnFVRlpmu8quVTjTI15YK6KGCFw==" | ||||
|     }, | ||||
|     "node_modules/esbuild": { | ||||
|       "version": "0.21.5", | ||||
|       "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", | ||||
|       "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", | ||||
|       "dev": true, | ||||
|       "hasInstallScript": true, | ||||
|       "bin": { | ||||
|         "esbuild": "bin/esbuild" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=12" | ||||
|       }, | ||||
|       "optionalDependencies": { | ||||
|         "@esbuild/aix-ppc64": "0.21.5", | ||||
|         "@esbuild/android-arm": "0.21.5", | ||||
|         "@esbuild/android-arm64": "0.21.5", | ||||
|         "@esbuild/android-x64": "0.21.5", | ||||
|         "@esbuild/darwin-arm64": "0.21.5", | ||||
|         "@esbuild/darwin-x64": "0.21.5", | ||||
|         "@esbuild/freebsd-arm64": "0.21.5", | ||||
|         "@esbuild/freebsd-x64": "0.21.5", | ||||
|         "@esbuild/linux-arm": "0.21.5", | ||||
|         "@esbuild/linux-arm64": "0.21.5", | ||||
|         "@esbuild/linux-ia32": "0.21.5", | ||||
|         "@esbuild/linux-loong64": "0.21.5", | ||||
|         "@esbuild/linux-mips64el": "0.21.5", | ||||
|         "@esbuild/linux-ppc64": "0.21.5", | ||||
|         "@esbuild/linux-riscv64": "0.21.5", | ||||
|         "@esbuild/linux-s390x": "0.21.5", | ||||
|         "@esbuild/linux-x64": "0.21.5", | ||||
|         "@esbuild/netbsd-x64": "0.21.5", | ||||
|         "@esbuild/openbsd-x64": "0.21.5", | ||||
|         "@esbuild/sunos-x64": "0.21.5", | ||||
|         "@esbuild/win32-arm64": "0.21.5", | ||||
|         "@esbuild/win32-ia32": "0.21.5", | ||||
|         "@esbuild/win32-x64": "0.21.5" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/jsonc-parser": { | ||||
|       "version": "3.2.1", | ||||
|       "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz", | ||||
|       "integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==" | ||||
|     }, | ||||
|     "node_modules/lru-cache": { | ||||
|       "version": "6.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", | ||||
|       "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", | ||||
|       "dependencies": { | ||||
|         "yallist": "^4.0.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/semver": { | ||||
|       "version": "7.5.2", | ||||
|       "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.2.tgz", | ||||
|       "integrity": "sha512-SoftuTROv/cRjCze/scjGyiDtcUyxw1rgYQSZY7XTmtR5hX+dm76iDbTH8TkLPHCQmlbQVSSbNZCPM2hb0knnQ==", | ||||
|       "dependencies": { | ||||
|         "lru-cache": "^6.0.0" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "semver": "bin/semver.js" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=10" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/typescript": { | ||||
|       "version": "5.4.5", | ||||
|       "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", | ||||
|       "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", | ||||
|       "bin": { | ||||
|         "tsc": "bin/tsc", | ||||
|         "tsserver": "bin/tsserver" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">=14.17" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/vscode-jsonrpc": { | ||||
|       "version": "8.2.0", | ||||
|       "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.2.0.tgz", | ||||
|       "integrity": "sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==", | ||||
|       "engines": { | ||||
|         "node": ">=14.0.0" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/vscode-languageserver": { | ||||
|       "version": "9.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-9.0.1.tgz", | ||||
|       "integrity": "sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==", | ||||
|       "dependencies": { | ||||
|         "vscode-languageserver-protocol": "3.17.5" | ||||
|       }, | ||||
|       "bin": { | ||||
|         "installServerIntoExtension": "bin/installServerIntoExtension" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/vscode-languageserver-protocol": { | ||||
|       "version": "3.17.5", | ||||
|       "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.5.tgz", | ||||
|       "integrity": "sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==", | ||||
|       "dependencies": { | ||||
|         "vscode-jsonrpc": "8.2.0", | ||||
|         "vscode-languageserver-types": "3.17.5" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/vscode-languageserver-textdocument": { | ||||
|       "version": "1.0.11", | ||||
|       "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.11.tgz", | ||||
|       "integrity": "sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA==" | ||||
|     }, | ||||
|     "node_modules/vscode-languageserver-types": { | ||||
|       "version": "3.17.5", | ||||
|       "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz", | ||||
|       "integrity": "sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==" | ||||
|     }, | ||||
|     "node_modules/vscode-uri": { | ||||
|       "version": "3.0.8", | ||||
|       "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", | ||||
|       "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==" | ||||
|     }, | ||||
|     "node_modules/yallist": { | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", | ||||
|       "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" | ||||
|     } | ||||
|   } | ||||
| } | ||||
							
								
								
									
										40
									
								
								programs/vtsls/package.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								programs/vtsls/package.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,40 @@ | |||
| { | ||||
|   lib, | ||||
|   buildNpmPackage, | ||||
|   fetchFromGitHub, | ||||
|   importNpmLock, | ||||
| }: | ||||
| 
 | ||||
| buildNpmPackage rec { | ||||
|   pname = "vtsls"; | ||||
|   version = "0.2.3"; | ||||
| 
 | ||||
|   src = fetchFromGitHub { | ||||
|     owner = "yioneko"; | ||||
|     repo = "vtsls"; | ||||
|     rev = "server-v${version}"; | ||||
|     hash = "sha256-rHiH42WpKR1nZjsW+Q4pit1aLbNIKxpYSy7sjPS0WGc="; | ||||
|     fetchSubmodules = true; | ||||
|   }; | ||||
| 
 | ||||
|   sourceRoot = "${src.name}/packages/server"; | ||||
| 
 | ||||
|   npmDeps = importNpmLock { | ||||
|     npmRoot = "${src}/packages/server"; | ||||
|     packageLock = lib.importJSON ./package-lock.json; | ||||
|   }; | ||||
| 
 | ||||
|   npmDepsHash = "sha256-R70+8vwcZHlT9J5MMCw3rjUQmki4/IoRYHO45CC8TiI="; | ||||
| 
 | ||||
|   npmConfigHook = importNpmLock.npmConfigHook; | ||||
| 
 | ||||
|   dontNpmPrune = true; | ||||
| 
 | ||||
|   meta = with lib; { | ||||
|     description = "LSP wrapper around TypeScript extension bundled with VSCode."; | ||||
|     homepage = "https://github.com/yioneko/vtsls"; | ||||
|     license = licenses.mit; | ||||
|     maintainers = with maintainers; [ wizardlink ]; | ||||
|     platforms = platforms.all; | ||||
|   }; | ||||
| } | ||||
|  | @ -1,4 +1,5 @@ | |||
| { ... }: { | ||||
| { ... }: | ||||
| { | ||||
|   programs.waybar = { | ||||
|     enable = true; | ||||
| 
 | ||||
|  | @ -92,7 +93,13 @@ | |||
|           critical-threshold = 90; | ||||
|           interval = 5; | ||||
|           format = "{icon} {temperatureC}°"; | ||||
|           format-icons = [ "" "" "" "" "" ]; | ||||
|           format-icons = [ | ||||
|             "" | ||||
|             "" | ||||
|             "" | ||||
|             "" | ||||
|             "" | ||||
|           ]; | ||||
|           tooltip = false; | ||||
|         }; | ||||
| 
 | ||||
|  | @ -110,7 +117,13 @@ | |||
|           format-charging-full = " {capacity}%"; | ||||
|           format-full = "{icon} {capacity}%"; | ||||
|           format-alt = "{icon} {power}W"; | ||||
|           format-icons = [ "" "" "" "" "" ]; | ||||
|           format-icons = [ | ||||
|             "" | ||||
|             "" | ||||
|             "" | ||||
|             "" | ||||
|             "" | ||||
|           ]; | ||||
|           tooltip = false; | ||||
|         }; | ||||
| 
 | ||||
|  |  | |||
|  | @ -3,6 +3,25 @@ | |||
| { | ||||
|   programs.wezterm = { | ||||
|     enable = true; | ||||
|     extraConfig = builtins.readFile ./wezterm.lua; | ||||
|     extraConfig = # lua | ||||
|       '' | ||||
|         local wezterm = require("wezterm") | ||||
| 
 | ||||
|         return { | ||||
|         	color_scheme = "Catppuccin Frappe", | ||||
|         	enable_wayland = false, -- Unfortunately broken on Hyprland, AGAIN | ||||
|         	font = wezterm.font("FantasqueSansM Nerd Font"), | ||||
|         	font_size = 13, | ||||
|         	hide_tab_bar_if_only_one_tab = true, | ||||
|         	hide_mouse_cursor_when_typing = false, | ||||
|         	window_background_opacity = 0.88, | ||||
|         	window_padding = { | ||||
|         		left = 18, | ||||
|         		right = 18, | ||||
|         		top = 18, | ||||
|         		bottom = 18, | ||||
|         	}, | ||||
|         } | ||||
|       ''; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
|  | @ -1,17 +0,0 @@ | |||
| local wezterm = require("wezterm") | ||||
| 
 | ||||
| return { | ||||
| 	color_scheme = "Catppuccin Frappe", | ||||
| 	enable_wayland = false, -- Unfortunately broken on Hyprland, AGAIN | ||||
| 	font = wezterm.font("FantasqueSansM Nerd Font"), | ||||
| 	font_size = 13, | ||||
| 	hide_tab_bar_if_only_one_tab = true, | ||||
| 	hide_mouse_cursor_when_typing = false, | ||||
| 	window_background_opacity = 0.88, | ||||
| 	window_padding = { | ||||
| 		left = 18, | ||||
| 		right = 18, | ||||
| 		top = 18, | ||||
| 		bottom = 18, | ||||
| 	}, | ||||
| } | ||||
|  | @ -49,7 +49,5 @@ kdeconnect-cli --refresh & | |||
| # | ||||
| # Clipboard manager | ||||
| # | ||||
| wl-paste -w cliphist store & | ||||
| 
 | ||||
|  # Need this to be able to paste in xwayland applications. | ||||
| wl-paste -t text -w sh -c 'xclip -selection clipboard -o > /dev/null 2> /dev/null || xclip -selection clipboard' | ||||
| wl-paste --type text --watch cliphist store & | ||||
| wl-paste --type image --watch cliphist store & | ||||
|  |  | |||
|  | @ -1,34 +0,0 @@ | |||
| { fetchFromGitHub, flavor ? "Mocha", lib, stdenvNoCC }: | ||||
| let | ||||
|   validFlavors = [ "Frappe" "Latte" "Macchiato" "Mocha" ]; | ||||
|   pname = "catppucin-qt5ct"; | ||||
| in | ||||
| lib.checkListOfEnum "${pname}: flavors" validFlavors [ flavor ] | ||||
| 
 | ||||
|   stdenvNoCC.mkDerivation | ||||
| { | ||||
|   inherit pname; | ||||
|   version = "unstable-2023-10-24"; | ||||
| 
 | ||||
|   src = fetchFromGitHub { | ||||
|     owner = "catppuccin"; | ||||
|     repo = "qt5ct"; | ||||
|     rev = "89ee948e72386b816c7dad72099855fb0d46d41e"; | ||||
|     sha256 = "sha256-t/uyK0X7qt6qxrScmkTU2TvcVJH97hSQuF0yyvSO/qQ="; | ||||
|   }; | ||||
| 
 | ||||
|   nativeBuildInputs = [ ]; | ||||
|   buildInputs = [ ]; | ||||
| 
 | ||||
|   postPatch = '' | ||||
|     export HOME=$(mktemp -d) | ||||
|     cp -r themes/* $HOME/.config/qt5ct/colors/ | ||||
|   ''; | ||||
| 
 | ||||
|   meta = with lib; { | ||||
|     description = "Catppuccin for qt5ct"; | ||||
|     homepage = "https://github.com/catppuccin/qt5ct"; | ||||
|     license = licenses.mit; | ||||
|     maintainers = with maintainers; [ ]; | ||||
|   }; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue