major home-manager changes
This commit is contained in:
		@@ -2,7 +2,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
## TODO
 | 
					## TODO
 | 
				
			||||||
1. Add user specific traditional dotfiles.
 | 
					1. Add user specific traditional dotfiles.
 | 
				
			||||||
2. Try home-manager for nix (Trying out right now)
 | 
					2. ~~Try home-manager for nix~~ (Still in the middle of updating)
 | 
				
			||||||
3. ~~Try nix flakes~~
 | 
					3. ~~Try nix flakes~~
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## How install workey
 | 
					## How install workey
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
{ config, lib, pkgs, modulesPath, ... }:
 | 
					{ config, lib, ... }:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  powerManagement = {
 | 
					  powerManagement = {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
{lib, config, pkgs, ... }:
 | 
					{lib, config, ... }:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  services.pipewire = {
 | 
					  services.pipewire = {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
{ config, lib, pkgs, modulesPath, ... }:
 | 
					{ config, lib, ... }:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#let
 | 
					#let
 | 
				
			||||||
#  compiledLayout = pkgs.runCommand "keyboard-layout" {} ''
 | 
					#  compiledLayout = pkgs.runCommand "keyboard-layout" {} ''
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -4,17 +4,12 @@
 | 
				
			|||||||
  imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
 | 
					  imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  boot = {
 | 
					  boot = {
 | 
				
			||||||
    kernelPackages = pkgs.linuxPackages_zen;
 | 
					    kernelPackages = pkgs.linuxPackagesFor (pkgs.linux_zen.override {
 | 
				
			||||||
    kernelPatches = [
 | 
					 | 
				
			||||||
      {
 | 
					 | 
				
			||||||
        name = "zenwithmuqqs";
 | 
					 | 
				
			||||||
        patch = null;
 | 
					 | 
				
			||||||
      structuredExtraConfig = with lib.kernel; {
 | 
					      structuredExtraConfig = with lib.kernel; {
 | 
				
			||||||
          SCHED_MUQSS = yes;
 | 
					        CONFIG_SCHED_MUQSS = yes;
 | 
				
			||||||
      };
 | 
					      };
 | 
				
			||||||
      ignoreConfigErrors = true;
 | 
					      ignoreConfigErrors = true;
 | 
				
			||||||
      }
 | 
					      });
 | 
				
			||||||
    ];
 | 
					 | 
				
			||||||
    initrd={
 | 
					    initrd={
 | 
				
			||||||
      availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod"];
 | 
					      availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod"];
 | 
				
			||||||
      kernelModules = [ ];
 | 
					      kernelModules = [ ];
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
{lib, config, pkgs, ... }:
 | 
					{ lib, config, ...}:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  imports =
 | 
					  imports =
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
{ config, lib, pkgs, modulesPath, ... }:
 | 
					{ config, lib, modulesPath, ... }:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  imports =
 | 
					  imports =
 | 
				
			||||||
@@ -11,6 +11,7 @@
 | 
				
			|||||||
  fileSystems."/" =
 | 
					  fileSystems."/" =
 | 
				
			||||||
    { device = "/dev/disk/by-uuid/4c02ddf5-d00e-4d84-856f-c327ae44d047";
 | 
					    { device = "/dev/disk/by-uuid/4c02ddf5-d00e-4d84-856f-c327ae44d047";
 | 
				
			||||||
      fsType = "btrfs";
 | 
					      fsType = "btrfs";
 | 
				
			||||||
 | 
					      options = ["compress=zstd"];
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  fileSystems."/boot/efi" =
 | 
					  fileSystems."/boot/efi" =
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
{lib, config, pkgs, ... }:
 | 
					{lib, config,  ... }:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  networking = {
 | 
					  networking = {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,52 +2,35 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  environment.systemPackages = with pkgs; [
 | 
					  environment.systemPackages = with pkgs; [
 | 
				
			||||||
    customscripts
 | 
					 | 
				
			||||||
    xclip
 | 
					    xclip
 | 
				
			||||||
    dunst
 | 
					 | 
				
			||||||
    xorg.xkbcomp
 | 
					    xorg.xkbcomp
 | 
				
			||||||
    glibc
 | 
					 | 
				
			||||||
    proxychains
 | 
					 | 
				
			||||||
    #qt5.qmake
 | 
					 | 
				
			||||||
    xorg.xmodmap
 | 
					    xorg.xmodmap
 | 
				
			||||||
    ffmpeg
 | 
					    ffmpeg
 | 
				
			||||||
    p7zip
 | 
					    p7zip
 | 
				
			||||||
    git
 | 
					    git
 | 
				
			||||||
    glxinfo
 | 
					    glxinfo
 | 
				
			||||||
    sox
 | 
					    sxiv
 | 
				
			||||||
    libmpdclient
 | 
					 | 
				
			||||||
    lxappearance
 | 
					 | 
				
			||||||
    jq
 | 
					    jq
 | 
				
			||||||
    mono
 | 
					    mono
 | 
				
			||||||
    vim
 | 
					    vim
 | 
				
			||||||
    mpd
 | 
					 | 
				
			||||||
    wineWowPackages.staging
 | 
					    wineWowPackages.staging
 | 
				
			||||||
    neofetch
 | 
					    neofetch
 | 
				
			||||||
    tor-browser-bundle-bin
 | 
					 | 
				
			||||||
    w3m
 | 
					    w3m
 | 
				
			||||||
    gnumake
 | 
					    gnumake
 | 
				
			||||||
    pciutils
 | 
					    pciutils
 | 
				
			||||||
    jdk
 | 
					    jdk
 | 
				
			||||||
    gcc
 | 
					 | 
				
			||||||
    ntfs3g
 | 
					    ntfs3g
 | 
				
			||||||
    python38
 | 
					    python38
 | 
				
			||||||
    luajit
 | 
					 | 
				
			||||||
    neovim
 | 
					 | 
				
			||||||
    htop
 | 
					    htop
 | 
				
			||||||
    nodejs
 | 
					    nodejs
 | 
				
			||||||
    wget
 | 
					    wget
 | 
				
			||||||
    ripgrep
 | 
					    ripgrep
 | 
				
			||||||
    patchelf
 | 
					    patchelf
 | 
				
			||||||
    doas
 | 
					 | 
				
			||||||
    feh
 | 
					    feh
 | 
				
			||||||
    sxiv
 | 
					 | 
				
			||||||
    mpv
 | 
					 | 
				
			||||||
    dwm
 | 
					    dwm
 | 
				
			||||||
    dmenu
 | 
					    dmenu
 | 
				
			||||||
    st
 | 
					    st
 | 
				
			||||||
    kbd
 | 
					    kbd
 | 
				
			||||||
    picom
 | 
					 | 
				
			||||||
    ncmpcpp
 | 
					 | 
				
			||||||
  ];
 | 
					  ];
 | 
				
			||||||
  programs.steam.enable = true;
 | 
					  programs.steam.enable = true;
 | 
				
			||||||
  nix = {
 | 
					  nix = {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
{lib, config, pkgs, ... }:
 | 
					{lib, config, ... }:
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  imports = [
 | 
					  imports = [
 | 
				
			||||||
    ./Stuff/sound.nix
 | 
					    ./Stuff/sound.nix
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										12
									
								
								flake.nix
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								flake.nix
									
									
									
									
									
								
							@@ -29,6 +29,18 @@
 | 
				
			|||||||
        homeDirectory = "/home/natto";
 | 
					        homeDirectory = "/home/natto";
 | 
				
			||||||
        username = "natto";
 | 
					        username = "natto";
 | 
				
			||||||
      };
 | 
					      };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    root = home-manager.lib.homeManagerConfiguration {
 | 
				
			||||||
 | 
					        configuration = { pkgs, lib, ... }: {
 | 
				
			||||||
 | 
					          imports = [ ./home/root.nix ];
 | 
				
			||||||
 | 
					          nixpkgs = {
 | 
				
			||||||
 | 
					            overlays = builtins.attrValues self.overlays;
 | 
				
			||||||
 | 
					          };
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        system = "${system}";
 | 
				
			||||||
 | 
					        homeDirectory = "/root";
 | 
				
			||||||
 | 
					        username = "root";
 | 
				
			||||||
 | 
					      };
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    nixosConfigurations.Satori = nixpkgs.lib.nixosSystem {
 | 
					    nixosConfigurations.Satori = nixpkgs.lib.nixosSystem {
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										30
									
								
								home/config/bspwm/bspwmrc
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										30
									
								
								home/config/bspwm/bspwmrc
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,30 @@
 | 
				
			|||||||
 | 
					#! /bin/sh
 | 
				
			||||||
 | 
					bspc rule -r "*"
 | 
				
			||||||
 | 
					##Autostart
 | 
				
			||||||
 | 
					pgrep -x sxhkd > /dev/null || sxhkd &
 | 
				
			||||||
 | 
					picom --experimental-backends &
 | 
				
			||||||
 | 
					feh --bg-scale ~/Downloads/gruvbox.jpg &
 | 
				
			||||||
 | 
					killall "polybar"
 | 
				
			||||||
 | 
					polybar main &
 | 
				
			||||||
 | 
					killall node
 | 
				
			||||||
 | 
					node /mnt/Stuff/code/muhbot
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bspc monitor -d          
 | 
				
			||||||
 | 
					#bspc monitor -d I II III IV V VI VII VIII IX X
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bspc config border_width         2
 | 
				
			||||||
 | 
					bspc config window_gap           10
 | 
				
			||||||
 | 
					bspc config focus_follows_pointer true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bspc config split_ratio          0.52
 | 
				
			||||||
 | 
					bspc config borderless_monocle   true
 | 
				
			||||||
 | 
					bspc config gapless_monocle      true
 | 
				
			||||||
 | 
					bspc config single_monocle       true
 | 
				
			||||||
 | 
					bspc config top_padding          50
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bspc config normal_border_color  "#ffffff"
 | 
				
			||||||
 | 
					bspc config active_border_color  "#1bb1b1"
 | 
				
			||||||
 | 
					bspc config focused_border_color "#fe8019"
 | 
				
			||||||
 | 
					bspc config urgent_border_color "#fe8019"
 | 
				
			||||||
							
								
								
									
										355
									
								
								home/config/firefox/userChrome.css
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										355
									
								
								home/config/firefox/userChrome.css
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,355 @@
 | 
				
			|||||||
 | 
					 :root {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   /* Minimal Functional Fox variables*/
 | 
				
			||||||
 | 
					  --mff-bg: #1d2021;
 | 
				
			||||||
 | 
					  --mff-icon-color: #bbbbbb;
 | 
				
			||||||
 | 
					  --mff-nav-toolbar-padding: 8px;
 | 
				
			||||||
 | 
					  --mff-sidebar-bg: var(--mff-bg);
 | 
				
			||||||
 | 
					  --mff-sidebar-color: #e0fbfc;
 | 
				
			||||||
 | 
					  --mff-tab-border-radius: 0px;
 | 
				
			||||||
 | 
					  --mff-tab-color: #ebdbb2;
 | 
				
			||||||
 | 
					  --mff-tab-font-family: "Fira Mono for Powerline", sans;
 | 
				
			||||||
 | 
					  --mff-tab-font-size: 11pt;
 | 
				
			||||||
 | 
					  --mff-tab-font-weight: 400;
 | 
				
			||||||
 | 
					  --mff-tab-height: 32px;
 | 
				
			||||||
 | 
					  --mff-tab-pinned-bg: #70c1b3;
 | 
				
			||||||
 | 
					  --mff-tab-selected-bg: #ebdbb2;
 | 
				
			||||||
 | 
					  --mff-tab-selected-color: #1d2021;
 | 
				
			||||||
 | 
					  --mff-tab-soundplaying-bg: #818181;
 | 
				
			||||||
 | 
					  --mff-tab-soundplaying-color: #1d2021;
 | 
				
			||||||
 | 
					  --mff-urlbar-color: #98c1d9;
 | 
				
			||||||
 | 
					  --mff-urlbar-focused-color: #e0fbfc;
 | 
				
			||||||
 | 
					  --mff-urlbar-font-family: "Fira Mono for Powerline", serif;
 | 
				
			||||||
 | 
					  --mff-urlbar-font-size: 12pt;
 | 
				
			||||||
 | 
					  --mff-urlbar-font-weight: 500;
 | 
				
			||||||
 | 
					  --mff-urlbar-results-color: #e0fbfc;
 | 
				
			||||||
 | 
					  --mff-urlbar-results-font-family: "Fira Mono for Powerline", serif;
 | 
				
			||||||
 | 
					  --mff-urlbar-results-font-size: 12pt;
 | 
				
			||||||
 | 
					  --mff-urlbar-results-font-weight: 500;
 | 
				
			||||||
 | 
					  --mff-urlbar-results-url-color: #98c1d9;
 | 
				
			||||||
 | 
					  /*   --mff-tab-selected-bg: linear-gradient(90deg, rgba(232,74,95,1) 0%, rgba(255,132,124,1) 50%, rgba(254,206,168,1) 100%); */
 | 
				
			||||||
 | 
					  /*   --mff-urlbar-font-weight: 600; */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  /* Overriden Firefox variables*/
 | 
				
			||||||
 | 
					  --autocomplete-popup-background: var(--mff-bg) !important;
 | 
				
			||||||
 | 
					  --default-arrowpanel-background: var(--mff-bg) !important;
 | 
				
			||||||
 | 
					  --default-arrowpanel-color: #fefefa !important;
 | 
				
			||||||
 | 
					  --lwt-toolbarbutton-icon-fill: var(--mff-icon-color) !important;
 | 
				
			||||||
 | 
					  --panel-disabled-color: #f9f9fa80;
 | 
				
			||||||
 | 
					  --toolbar-bgcolor: var(--mff-bg) !important;
 | 
				
			||||||
 | 
					  --urlbar-separator-color: transparent !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					  _____ _   ___ ___
 | 
				
			||||||
 | 
					 |_   _/_\ | _ ) __|
 | 
				
			||||||
 | 
					   | |/ _ \| _ \__ \
 | 
				
			||||||
 | 
					   |_/_/ \_\___/___/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.tab-background[selected="true"] {
 | 
				
			||||||
 | 
					  background: var(--mff-tab-selected-bg) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					.tab-text[selected="true"] {
 | 
				
			||||||
 | 
					  color: var(--mff-tab-selected-color) !important;
 | 
				
			||||||
 | 
					  font-weight: bold !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					.tab-background:not[visuallyselected] {
 | 
				
			||||||
 | 
					  background: var(--mff-tab-selected-bg) !important;
 | 
				
			||||||
 | 
					  opacity: 0.5 !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* This positions the tabs under the navaigator container */
 | 
				
			||||||
 | 
					#titlebar {
 | 
				
			||||||
 | 
					  -moz-box-ordinal-group: 3 !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.tabbrowser-tab::after,
 | 
				
			||||||
 | 
					.tabbrowser-tab::before {
 | 
				
			||||||
 | 
					  border-left: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.tab-background {
 | 
				
			||||||
 | 
					  border: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.tabbrowser-arrowscrollbox {
 | 
				
			||||||
 | 
					  margin-inline-start: 4px !important;
 | 
				
			||||||
 | 
					  margin-inline-end: 0px !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.tab-close-button {
 | 
				
			||||||
 | 
					 display: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.tab-text {
 | 
				
			||||||
 | 
					  font-family: var(--mff-tab-font-family);
 | 
				
			||||||
 | 
					  font-weight: var(--mff-tab-font-weight);
 | 
				
			||||||
 | 
					  font-size: var(--mff-tab-font-size) !important;
 | 
				
			||||||
 | 
					  color: var(--mff-tab-color);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Hide the favicon for tabs */
 | 
				
			||||||
 | 
					hbox.tab-content .tab-icon-image {
 | 
				
			||||||
 | 
					  display: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Show the favicon for tabs that are pinned */
 | 
				
			||||||
 | 
					hbox.tab-content[pinned=true] .tab-icon-image {
 | 
				
			||||||
 | 
					  display: initial !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					hbox.tab-content[pinned=true] .tab-text {
 | 
				
			||||||
 | 
					  display: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#tabbrowser-tabs {
 | 
				
			||||||
 | 
					  --tab-loading-fill: #033433 !important;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.tab-label-container:not([textoverflow]) {
 | 
				
			||||||
 | 
					  display: flex;
 | 
				
			||||||
 | 
					  overflow: hidden;
 | 
				
			||||||
 | 
					  justify-content: center;
 | 
				
			||||||
 | 
					width: 50% !important;
 | 
				
			||||||
 | 
					  max-width: 50% !important;
 | 
				
			||||||
 | 
					  min-width: 50% !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* .tab-label-container::after {
 | 
				
			||||||
 | 
					  content: "?" !important;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.tab-line {
 | 
				
			||||||
 | 
					  display: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.tabbrowser-tab {
 | 
				
			||||||
 | 
					  border-radius: var(--mff-tab-border-radius) !important;
 | 
				
			||||||
 | 
					  border-width: 0;
 | 
				
			||||||
 | 
					  height: var(--mff-tab-height) !important;
 | 
				
			||||||
 | 
					  margin-bottom: 4px !important;
 | 
				
			||||||
 | 
					  margin-inline-end: 4px !important;
 | 
				
			||||||
 | 
					  margin-top: 4px !important;
 | 
				
			||||||
 | 
					  max-height: var(--mff-tab-height) !important;
 | 
				
			||||||
 | 
					  min-height: var(--mff-tab-height) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.tabbrowser-tab[soundplaying="true"] {
 | 
				
			||||||
 | 
					  background-color: var(--mff-tab-soundplaying-bg) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#tabs-newtab-button {
 | 
				
			||||||
 | 
					  list-style-image: url("https://raw.githubusercontent.com/mut-ex/minimal-functional-fox/master/add.svg") !important;
 | 
				
			||||||
 | 
					  opacity: 0.7;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.tab-icon-sound {
 | 
				
			||||||
 | 
					  display: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					  _____ ___   ___  _    ___   _   ___
 | 
				
			||||||
 | 
					|_   _/ _ \ / _ \| |  | _ ) /_\ | _ \
 | 
				
			||||||
 | 
					  | || (_) | (_) | |__| _ \/ _ \|   /
 | 
				
			||||||
 | 
					  |_| \___/ \___/|____|___/_/  \_\_|_\
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.urlbar-icon > image {
 | 
				
			||||||
 | 
					  fill: var(--mff-icon-color) !important;
 | 
				
			||||||
 | 
					  color: var(--mff-icon-color) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.toolbarbutton-text {
 | 
				
			||||||
 | 
					  color: var(--mff-icon-color)  !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					.urlbar-icon {
 | 
				
			||||||
 | 
					  color: var(--mff-icon-color)  !important;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.toolbarbutton-icon {
 | 
				
			||||||
 | 
					/* filter: drop-shadow(0 0 0.75rem crimson); */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#urlbar-results {
 | 
				
			||||||
 | 
					  font-family: var(--mff-urlbar-results-font-family);
 | 
				
			||||||
 | 
					  font-weight: var(--mff-urlbar-results-font-weight);
 | 
				
			||||||
 | 
					  font-size: var(--mff-urlbar-results-font-size) !important;
 | 
				
			||||||
 | 
					  color: var(--mff-urlbar-results-color) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.urlbarView-row[type="bookmark"] > span{
 | 
				
			||||||
 | 
					  color: green !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.urlbarView-row[type="switchtab"] > span{
 | 
				
			||||||
 | 
					  color: orange !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.urlbarView-url, .search-panel-one-offs-container {
 | 
				
			||||||
 | 
					  color: var(--mff-urlbar-results-url-color) !important;
 | 
				
			||||||
 | 
					  font-family: var(--mff-urlbar-font-family);
 | 
				
			||||||
 | 
					  font-weight: var(--mff-urlbar-results-font-weight);
 | 
				
			||||||
 | 
					  font-size: var(--mff-urlbar-font-size) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.urlbarView-favicon, .urlbarView-type-icon {
 | 
				
			||||||
 | 
					  display: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#urlbar-input {
 | 
				
			||||||
 | 
					  font-size: var(--mff-urlbar-font-size) !important;
 | 
				
			||||||
 | 
					  color: var(--mff-urlbar-color) !important;
 | 
				
			||||||
 | 
					  font-family: var(--mff-urlbar-font-family) !important;
 | 
				
			||||||
 | 
					  font-weight: var(--mff-urlbar-font-weight)!important;
 | 
				
			||||||
 | 
					  text-align: center !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#tracking-protection-icon-container, #identity-box {
 | 
				
			||||||
 | 
					  display: none;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#back-button > .toolbarbutton-icon{
 | 
				
			||||||
 | 
					  --backbutton-background: transparent !important;
 | 
				
			||||||
 | 
					  border: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#back-button {
 | 
				
			||||||
 | 
					  list-style-image: url("https://raw.githubusercontent.com/mut-ex/minimal-functional-fox/master/left-arrow.svg") !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#forward-button {
 | 
				
			||||||
 | 
					  list-style-image: url("https://raw.githubusercontent.com/mut-ex/minimal-functional-fox/master/right-arrow.svg") !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					toolbar {
 | 
				
			||||||
 | 
					  background-image: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#urlbar-background {
 | 
				
			||||||
 | 
					  opacity: .98 !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#navigator-toolbox, toolbaritem {
 | 
				
			||||||
 | 
					  border: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#urlbar-background {
 | 
				
			||||||
 | 
					  background-color: var(--mff-bg) !important;
 | 
				
			||||||
 | 
					  border: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.toolbar-items {
 | 
				
			||||||
 | 
					  background-color: var(--mff-bg) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#sidebar-search-container {
 | 
				
			||||||
 | 
					  background-color: var(--mff-sidebar-bg) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					box.panel-arrowbox {
 | 
				
			||||||
 | 
					  display: none;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					box.panel-arrowcontent {
 | 
				
			||||||
 | 
					  border-radius: 8px !important;
 | 
				
			||||||
 | 
					  border: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					tab.tabbrowser-tab {
 | 
				
			||||||
 | 
					  overflow: hidden;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					tab.tabbrowser-tab:hover {
 | 
				
			||||||
 | 
					  box-shadow: 0 1px 4px rgba(0,0,0,.05);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					image#star-button {
 | 
				
			||||||
 | 
					  display: none;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					toolbar#nav-bar {
 | 
				
			||||||
 | 
					  padding: var(--mff-nav-toolbar-padding) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					toolbar#nav-bar {
 | 
				
			||||||
 | 
					  padding: 4px !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#urlbar {
 | 
				
			||||||
 | 
					  max-width: 70% !important;
 | 
				
			||||||
 | 
					  margin: 0 15% !important;
 | 
				
			||||||
 | 
					  /* 	position: unset!important; */;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#urlbar-input:focus {
 | 
				
			||||||
 | 
					  color: var(--mff-urlbar-focused-color) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.megabar[breakout-extend="true"]:not([open="true"]) > #urlbar-background {
 | 
				
			||||||
 | 
					  box-shadow: none !important;
 | 
				
			||||||
 | 
					  background-color: transparent !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					toolbarbutton {
 | 
				
			||||||
 | 
					  box-shadow: none !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					  ___ ___ ___  ___ ___   _   ___
 | 
				
			||||||
 | 
					 / __|_ _|   \| __| _ ) /_\ | _ \
 | 
				
			||||||
 | 
					 \__ \| || |) | _|| _ \/ _ \|   /
 | 
				
			||||||
 | 
					 |___/___|___/|___|___/_/ \_\_|_\
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.close-icon, .urlbar-icon {
 | 
				
			||||||
 | 
					  fill: var(--mff-icon-color) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.sidebar-placesTree {
 | 
				
			||||||
 | 
					  color: var(--mff-sidebar-color) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#sidebar-switcher-target {
 | 
				
			||||||
 | 
					/*   color: white !important; */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#sidebar-box {
 | 
				
			||||||
 | 
					  --sidebar-background-color: var(--mff-sidebar-bg) !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					splitter#sidebar-splitter {
 | 
				
			||||||
 | 
					  opacity: 0 !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					splitter#sidebar-splitter {
 | 
				
			||||||
 | 
					  border: none !important;
 | 
				
			||||||
 | 
					  background-color: transparent !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					image#sidebar-icon {
 | 
				
			||||||
 | 
					  display: none;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					    _   ___ ___  _____      _____  _   _  _ ___ _
 | 
				
			||||||
 | 
					   /_\ | _ \ _ \/ _ \ \    / / _ \/_\ | \| | __| |
 | 
				
			||||||
 | 
					  / _ \|   /   / (_) \ \/\/ /|  _/ _ \| .` | _|| |__
 | 
				
			||||||
 | 
					 /_/ \_\_|_\_|_\\___/ \_/\_/ |_|/_/ \_\_|\_|___|____|
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.panel-arrowcontent {
 | 
				
			||||||
 | 
					  padding: 0px !important;
 | 
				
			||||||
 | 
					  margin: 0px !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					toolbarseparator {
 | 
				
			||||||
 | 
					  display: none;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										23
									
								
								home/config/firefox/userContent.css
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										23
									
								
								home/config/firefox/userContent.css
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,23 @@
 | 
				
			|||||||
 | 
					@import url("userChrome.css");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Removes white loading page */
 | 
				
			||||||
 | 
					@-moz-document url(about:blank), url(about:newtab), url(about:home) {
 | 
				
			||||||
 | 
					    html:not(#ublock0-epicker), html:not(#ublock0-epicker) body, #newtab-customize-overlay {
 | 
				
			||||||
 | 
					      background: var(--mff-bg) !important;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  /* Hide scrollbar */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  :root{
 | 
				
			||||||
 | 
					    scrollbar-width: none !important;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  @-moz-document url(about:privatebrowsing) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  :root{
 | 
				
			||||||
 | 
					    scrollbar-width: none !important;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
							
								
								
									
										24
									
								
								home/config/mpd/mpd.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								home/config/mpd/mpd.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
				
			|||||||
 | 
					music_directory			"~/Music"
 | 
				
			||||||
 | 
					playlist_directory		"~/.config/mpd/playlists"
 | 
				
			||||||
 | 
					db_file				"~/.config/mpd/database"
 | 
				
			||||||
 | 
					log_file			"~/.config/mpd/log"
 | 
				
			||||||
 | 
					pid_file			"~/.config/mpd/pid"
 | 
				
			||||||
 | 
					state_file			"~/.config/mpd/state"
 | 
				
			||||||
 | 
					bind_to_address			"~/.config/mpd/socket"
 | 
				
			||||||
 | 
					bind_to_address			"localhost"
 | 
				
			||||||
 | 
					port				"6600"
 | 
				
			||||||
 | 
					restore_paused "yes"
 | 
				
			||||||
 | 
					input {
 | 
				
			||||||
 | 
					        plugin "curl"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					audio_output {
 | 
				
			||||||
 | 
						type "pulse"
 | 
				
			||||||
 | 
						name "pulse audio"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					audio_output {
 | 
				
			||||||
 | 
						type "fifo"
 | 
				
			||||||
 | 
						name "Visualizer feed"
 | 
				
			||||||
 | 
						path "/tmp/g.fifo"
 | 
				
			||||||
 | 
						format "44100:16:2"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					filesystem_charset "UTF-8"
 | 
				
			||||||
							
								
								
									
										62
									
								
								home/config/ncmpcpp/config
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								home/config/ncmpcpp/config
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,62 @@
 | 
				
			|||||||
 | 
					autocenter_mode = "yes"
 | 
				
			||||||
 | 
					follow_now_playing_lyrics = "yes"
 | 
				
			||||||
 | 
					lyrics_directory = "~/.lyrics"
 | 
				
			||||||
 | 
					mpd_music_dir="~/Music"
 | 
				
			||||||
 | 
					fetch_lyrics_for_current_song_in_background = "yes"
 | 
				
			||||||
 | 
					#store_lyrics_in_song_dir = yes
 | 
				
			||||||
 | 
					browser_sort_mode=mtime
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					colors_enabled = "yes"
 | 
				
			||||||
 | 
					main_window_color = "white"
 | 
				
			||||||
 | 
					header_window_color = "180"
 | 
				
			||||||
 | 
					volume_color = "215"
 | 
				
			||||||
 | 
					progressbar_color = "180"
 | 
				
			||||||
 | 
					progressbar_elapsed_color = "16"
 | 
				
			||||||
 | 
					statusbar_color = "43"
 | 
				
			||||||
 | 
					active_window_border = "blue"
 | 
				
			||||||
 | 
					user_interface = "alternative"
 | 
				
			||||||
 | 
					#song_list_format="(4)[230]{l}"
 | 
				
			||||||
 | 
					song_columns_list_format = "(4)[230]{l} (30)[219]{t} (15)[180]{a} (15)[215]{b}"
 | 
				
			||||||
 | 
					song_list_format = "{$(219)%a} - {$(230)%t}"
 | 
				
			||||||
 | 
					#song_list_format = "{$7%a - $9}{$5%t$9}|{$5%f$9}$R{$6%b $9}{$3%l$9}"
 | 
				
			||||||
 | 
					song_status_format = " $6%a $7⟫⟫ $3%t $7⟫⟫ $4%b "
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					visualizer_data_source  = "/tmp/g.fifo"
 | 
				
			||||||
 | 
					#visualizer_output_name = "my_fifo"
 | 
				
			||||||
 | 
					visualizer_type = "spectrum"
 | 
				
			||||||
 | 
					#visualizer_type = "ellipse"
 | 
				
			||||||
 | 
					visualizer_fps = 144
 | 
				
			||||||
 | 
					visualizer_in_stereo = "yes"
 | 
				
			||||||
 | 
					visualizer_look = "◆▋"
 | 
				
			||||||
 | 
					visualizer_spectrum_smooth_look="yes"
 | 
				
			||||||
 | 
					playlist_editor_display_mode = "classic"
 | 
				
			||||||
 | 
					playlist_display_mode = "columns"
 | 
				
			||||||
 | 
					cyclic_scrolling = "yes"
 | 
				
			||||||
 | 
					lines_scrolled = "2"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					system_encoding = "utf-8"
 | 
				
			||||||
 | 
					regular_expressions = "extended"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#selected_item_prefix = "* "
 | 
				
			||||||
 | 
					#discard_colors_if_item_is_selected = "no"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#incremental_seeking = "yes"
 | 
				
			||||||
 | 
					#seek_time = "1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Visibility ##
 | 
				
			||||||
 | 
					header_visibility = "yes"
 | 
				
			||||||
 | 
					statusbar_visibility = "yes"
 | 
				
			||||||
 | 
					titles_visibility = "yes"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Progress Bar ##
 | 
				
			||||||
 | 
					progressbar_look =  "▃▃▃"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Now Playing ##
 | 
				
			||||||
 | 
					now_playing_prefix = "> "
 | 
				
			||||||
 | 
					centered_cursor = "yes"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Misc
 | 
				
			||||||
 | 
					display_bitrate = "yes"
 | 
				
			||||||
 | 
					enable_window_title = "yes"
 | 
				
			||||||
 | 
					empty_tag_marker = ""
 | 
				
			||||||
 | 
					#execute_on_song_change="~/.config/ncmpcpp/cover_obs.sh"
 | 
				
			||||||
							
								
								
									
										6
									
								
								home/config/nvim/.netrwhist
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								home/config/nvim/.netrwhist
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
				
			|||||||
 | 
					let g:netrw_dirhistmax  =10
 | 
				
			||||||
 | 
					let g:netrw_dirhistcnt =4
 | 
				
			||||||
 | 
					let g:netrw_dirhist_4='/home/natto/.config/deemix'
 | 
				
			||||||
 | 
					let g:netrw_dirhist_3='/mnt/Stuff/Bruhniggacode/C++'
 | 
				
			||||||
 | 
					let g:netrw_dirhist_2='/home/natto/.config/ncmpcpp'
 | 
				
			||||||
 | 
					let g:netrw_dirhist_1='/home/otaku619/.config/mpd'
 | 
				
			||||||
							
								
								
									
										3
									
								
								home/config/nvim/.vim/coc-settings.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								home/config/nvim/.vim/coc-settings.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
					  "python.jediEnabled": false
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										127
									
								
								home/config/nvim/init.vim
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										127
									
								
								home/config/nvim/init.vim
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,127 @@
 | 
				
			|||||||
 | 
					"SETTINGS
 | 
				
			||||||
 | 
					let g:mapleader = "\<Space>"
 | 
				
			||||||
 | 
					syntax enable
 | 
				
			||||||
 | 
					set modifiable
 | 
				
			||||||
 | 
					set cursorline
 | 
				
			||||||
 | 
					set hidden
 | 
				
			||||||
 | 
					set nowrap
 | 
				
			||||||
 | 
					set encoding=utf-8
 | 
				
			||||||
 | 
					set pumheight=10
 | 
				
			||||||
 | 
					set fileencoding=utf-8
 | 
				
			||||||
 | 
					set ruler
 | 
				
			||||||
 | 
					set cmdheight=2
 | 
				
			||||||
 | 
					set iskeyword+=-
 | 
				
			||||||
 | 
					set mouse=a
 | 
				
			||||||
 | 
					set splitbelow
 | 
				
			||||||
 | 
					set splitright
 | 
				
			||||||
 | 
					set t_Co=256
 | 
				
			||||||
 | 
					set conceallevel=0
 | 
				
			||||||
 | 
					set tabstop=4
 | 
				
			||||||
 | 
					set shiftwidth=4
 | 
				
			||||||
 | 
					set smarttab
 | 
				
			||||||
 | 
					set expandtab
 | 
				
			||||||
 | 
					set smartindent
 | 
				
			||||||
 | 
					set autoindent
 | 
				
			||||||
 | 
					set number
 | 
				
			||||||
 | 
					set relativenumber
 | 
				
			||||||
 | 
					set background=dark
 | 
				
			||||||
 | 
					set showtabline=2
 | 
				
			||||||
 | 
					set noshowmode
 | 
				
			||||||
 | 
					set nobackup
 | 
				
			||||||
 | 
					set nowritebackup
 | 
				
			||||||
 | 
					set updatetime=300
 | 
				
			||||||
 | 
					set timeoutlen=100
 | 
				
			||||||
 | 
					set formatoptions-=cro
 | 
				
			||||||
 | 
					set clipboard=unnamedplus
 | 
				
			||||||
 | 
					au! BufWritePost $MYVIMRC source %
 | 
				
			||||||
 | 
					cmap w!! w !sudo tee %
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					"MAPPINGS
 | 
				
			||||||
 | 
					inoremap <S-Space> <ESC>
 | 
				
			||||||
 | 
					nnoremap m h|xnoremap m h|onoremap m h|
 | 
				
			||||||
 | 
					nnoremap n j|xnoremap n j|onoremap n j|
 | 
				
			||||||
 | 
					nnoremap e k|xnoremap e k|onoremap e k|
 | 
				
			||||||
 | 
					nnoremap i l|xnoremap i l|onoremap i l|
 | 
				
			||||||
 | 
					nnoremap M H|xnoremap M H|onoremap M H|
 | 
				
			||||||
 | 
					nnoremap N J|xnoremap N J|onoremap N J|
 | 
				
			||||||
 | 
					nnoremap E K|xnoremap E K|onoremap E K|
 | 
				
			||||||
 | 
					nnoremap I L|xnoremap I L|onoremap I L|
 | 
				
			||||||
 | 
					nnoremap h i|xnoremap h i|onoremap h i|
 | 
				
			||||||
 | 
					nnoremap H I|xnoremap H I|onoremap H I|
 | 
				
			||||||
 | 
					nnoremap k n|xnoremap k n|onoremap k n|
 | 
				
			||||||
 | 
					nnoremap K N|xnoremap K N|onoremap K N|
 | 
				
			||||||
 | 
					nnoremap j m|xnoremap j m|onoremap j m|
 | 
				
			||||||
 | 
					nnoremap J M|xnoremap J M|onoremap J M|
 | 
				
			||||||
 | 
					nnoremap l e|xnoremap l e|onoremap l e|
 | 
				
			||||||
 | 
					nnoremap L E|xnoremap L E|onoremap L E|
 | 
				
			||||||
 | 
					nnoremap <C-s> :w<CR>
 | 
				
			||||||
 | 
					nnoremap <M-n> :resize -2<CR>
 | 
				
			||||||
 | 
					nnoremap <M-e> :resize +2<CR>
 | 
				
			||||||
 | 
					nnoremap <M-m> :vertical resize -2<CR>
 | 
				
			||||||
 | 
					nnoremap <M-i> :vertical resize +2<CR>
 | 
				
			||||||
 | 
					nnoremap <TAB> :bnext<CR>
 | 
				
			||||||
 | 
					nnoremap <S-TAB> :bprevious<CR>
 | 
				
			||||||
 | 
					vnoremap < <gv
 | 
				
			||||||
 | 
					vnoremap > >gv
 | 
				
			||||||
 | 
					nnoremap <C-q> :bd!<CR>
 | 
				
			||||||
 | 
					nnoremap <C-x> :bd#<CR>
 | 
				
			||||||
 | 
					tnoremap <C-q> :bd!<CR>
 | 
				
			||||||
 | 
					nnoremap <C-M> <C-W>h|xnoremap <C-M> <C-W>h|
 | 
				
			||||||
 | 
					nnoremap <C-N> <C-W>j|xnoremap <C-N> <C-W>j|
 | 
				
			||||||
 | 
					nnoremap <C-E> <C-W>k|xnoremap <C-E> <C-W>k|
 | 
				
			||||||
 | 
					nnoremap <C-I> <C-W>l|xnoremap <C-I> <C-W>l|
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					"STATUSLINE
 | 
				
			||||||
 | 
					"let right=""
 | 
				
			||||||
 | 
					"let left=""
 | 
				
			||||||
 | 
					set laststatus=2
 | 
				
			||||||
 | 
					set statusline=
 | 
				
			||||||
 | 
					set statusline+=%1*
 | 
				
			||||||
 | 
					set statusline+=\ %{ModeBruh()}\ 
 | 
				
			||||||
 | 
					set statusline+=%2*\%{GitBruh()}\ 
 | 
				
			||||||
 | 
					set statusline+=%3*\ %f\ 
 | 
				
			||||||
 | 
					set statusline+=%1*
 | 
				
			||||||
 | 
					set statusline+=%=
 | 
				
			||||||
 | 
					set statusline+=%3*\ %{strlen(&fenc)?&fenc:'none'}\ 
 | 
				
			||||||
 | 
					set statusline+=%2*\ %y\ 
 | 
				
			||||||
 | 
					let bruh="%  "
 | 
				
			||||||
 | 
					let bruh1="  "
 | 
				
			||||||
 | 
					set statusline+=%1*\ %p%{bruh}%l/%L%{bruh1}%c\ 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					hi User1 guibg=#fbf1c7 guifg=#1d2021
 | 
				
			||||||
 | 
					hi User2 guibg=#1d2021 guifg=#fbf1c7
 | 
				
			||||||
 | 
					hi User3 guifg=#fbf1c7 guibg=#665c54
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function! ModeBruh()
 | 
				
			||||||
 | 
					  let l:mode=mode()
 | 
				
			||||||
 | 
					  if l:mode==#"n"
 | 
				
			||||||
 | 
					    return "NORMAL"
 | 
				
			||||||
 | 
					  elseif l:mode==?"v"
 | 
				
			||||||
 | 
					    return "VISUAL"
 | 
				
			||||||
 | 
					  elseif l:mode==#"i"
 | 
				
			||||||
 | 
					    return "INSERT"
 | 
				
			||||||
 | 
					  elseif l:mode==#"R"
 | 
				
			||||||
 | 
					    return "REPLACE"
 | 
				
			||||||
 | 
					  elseif l:mode==?"s"
 | 
				
			||||||
 | 
					    return "SELECT"
 | 
				
			||||||
 | 
					  elseif l:mode==#"t"
 | 
				
			||||||
 | 
					    return "TERMINAL"
 | 
				
			||||||
 | 
					  elseif l:mode==#"c"
 | 
				
			||||||
 | 
					    return "COMMAND"
 | 
				
			||||||
 | 
					  elseif l:mode==#"!"
 | 
				
			||||||
 | 
					    return "SHELL"
 | 
				
			||||||
 | 
					  endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					endfunction
 | 
				
			||||||
 | 
					function! GitBruh()
 | 
				
			||||||
 | 
					  let l:branchname = GitBranch()
 | 
				
			||||||
 | 
					  return strlen(l:branchname) > 0?'  '.l:branchname.'':''
 | 
				
			||||||
 | 
					endfunction
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function! GitBranch()
 | 
				
			||||||
 | 
					  return system("git rev-parse --abbrev-ref HEAD 2>/dev/null | tr -d '\n'")
 | 
				
			||||||
 | 
					endfunction
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set termguicolors
 | 
				
			||||||
							
								
								
									
										19
									
								
								home/config/nvim/utils.vim
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										19
									
								
								home/config/nvim/utils.vim
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,19 @@
 | 
				
			|||||||
 | 
					" I got this part of the config from Michael Lan Source = https://www.youtube.com/watch?v=I4Rz0qoWYBl
 | 
				
			||||||
 | 
					function! TermWrapper(command) abort
 | 
				
			||||||
 | 
						if !exists('g:split_term_style') | let g:split_term_style = 'vertical' | endif
 | 
				
			||||||
 | 
						if g:split_term_style ==# 'vertical'
 | 
				
			||||||
 | 
							let buffercmd = 'vnew'
 | 
				
			||||||
 | 
						elseif g:split_term_style ==# 'horizontal'
 | 
				
			||||||
 | 
							let buffercmd = 'new'
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
							echoerr 'ERROR! g:split_term_style is not a valid value (must be ''horizontal'' or ''vertical'' but is currently set to ''' . g:split_term_style . ''')'
 | 
				
			||||||
 | 
							throw 'ERROR! g:split_term_style is not a valid value (must be ''horizontal'' or ''vertical'')'
 | 
				
			||||||
 | 
						endif
 | 
				
			||||||
 | 
						exec buffercmd
 | 
				
			||||||
 | 
						exec 'term ' . a:command
 | 
				
			||||||
 | 
						exec 'startinsert'
 | 
				
			||||||
 | 
					endfunction
 | 
				
			||||||
 | 
					command! -nargs=0 CompileAndRun call TermWrapper(printf('g++ -std=c++17 %s && ./a.out', expand('%')))
 | 
				
			||||||
 | 
					autocmd FileType cpp nnoremap <F5> :CompileAndRun<CR>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					let g:split_term_style = 'vertical'
 | 
				
			||||||
							
								
								
									
										154
									
								
								home/config/sxhkd/sxhkdrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										154
									
								
								home/config/sxhkd/sxhkdrc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,154 @@
 | 
				
			|||||||
 | 
					#
 | 
				
			||||||
 | 
					# wm independent hotkeys
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# terminal emulator
 | 
				
			||||||
 | 
					super + Return
 | 
				
			||||||
 | 
						st
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# program launcher
 | 
				
			||||||
 | 
					super + d
 | 
				
			||||||
 | 
						rofi -show drun
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# make sxhkd reload its configuration files:
 | 
				
			||||||
 | 
					super + alt + c
 | 
				
			||||||
 | 
						pkill -USR1 -x sxhkd
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# quit/restart bspwm
 | 
				
			||||||
 | 
					super + shift + {e,r}
 | 
				
			||||||
 | 
						bspc {quit,wm -r}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# close and kill
 | 
				
			||||||
 | 
					super + {_,shift + }q
 | 
				
			||||||
 | 
						bspc node -{c,k}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# alternate between the tiled and monocle layout
 | 
				
			||||||
 | 
					super + shift + f
 | 
				
			||||||
 | 
						bspc desktop -l next
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# send the newest marked node to the newest preselected node
 | 
				
			||||||
 | 
					#super + y
 | 
				
			||||||
 | 
					#	bspc node newest.marked.local -n newest.!automatic.local
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# swap the current node and the biggest window
 | 
				
			||||||
 | 
					#super + g
 | 
				
			||||||
 | 
					#	bspc node -s biggest.window
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# state/flags
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# set the window state
 | 
				
			||||||
 | 
					super + {t,shift + t,s,f}
 | 
				
			||||||
 | 
						bspc node -t {\~tiled,\~pseudo_tiled,\~floating,\~fullscreen}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# set the node flags
 | 
				
			||||||
 | 
					#super + ctrl + {m,x,y,z}
 | 
				
			||||||
 | 
					#	bspc node -g {marked,locked,sticky,private}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# focus/swap
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# focus the node in the given direction
 | 
				
			||||||
 | 
					super + shift + {h,j,k,l}
 | 
				
			||||||
 | 
						bspc node -s {west,south,north,east}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + {h,j,k,l}
 | 
				
			||||||
 | 
						bspc node -f {west,south,north,east}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# focus the code for the given path jump
 | 
				
			||||||
 | 
					#super + {p,b,comma,period}
 | 
				
			||||||
 | 
					#	bspc node -f @{parent,brother,first,second}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# focus the next/previous window in the current desktop
 | 
				
			||||||
 | 
					super + {_,shift + }c
 | 
				
			||||||
 | 
						bspc node -f {next,prev}.local.!hidden.window
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# focus the next/previous desktop in the current monitor
 | 
				
			||||||
 | 
					super + bracket{left,right}
 | 
				
			||||||
 | 
						bspc desktop -f {prev,next}.local
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# focus the last node/desktop
 | 
				
			||||||
 | 
					#super + {grave,Tab}
 | 
				
			||||||
 | 
					#	bspc {node,desktop} -f last
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# focus the older or newer node in the focus history
 | 
				
			||||||
 | 
					super + {o,i}
 | 
				
			||||||
 | 
						bspc wm -h off; \
 | 
				
			||||||
 | 
						bspc node {older,newer} -f; \
 | 
				
			||||||
 | 
						bspc wm -h on
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# focus or send to the given desktop
 | 
				
			||||||
 | 
					super + {_,shift + }{1-9,0}
 | 
				
			||||||
 | 
						bspc {desktop -f,node -d} '^{1-9,10}'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# preselect
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# preselect the direction
 | 
				
			||||||
 | 
					super + ctrl + {h,j,k,l}
 | 
				
			||||||
 | 
						bspc node -p {west,south,north,east}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# preselect the ratio
 | 
				
			||||||
 | 
					super + ctrl + {1-9}
 | 
				
			||||||
 | 
						bspc node -o 0.{1-9}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# cancel the preselection for the focused node
 | 
				
			||||||
 | 
					super + ctrl + space
 | 
				
			||||||
 | 
						bspc node -p cancel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# cancel the preselection for the focused desktop
 | 
				
			||||||
 | 
					super + ctrl + shift + space
 | 
				
			||||||
 | 
						bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# move/resize
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# expand a window by moving one of its side outward
 | 
				
			||||||
 | 
					super + alt + {h,j,k,l}
 | 
				
			||||||
 | 
						bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# contract a window by moving one of its side inward
 | 
				
			||||||
 | 
					super + alt + shift + {h,j,k,l}
 | 
				
			||||||
 | 
						bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# move a floating window
 | 
				
			||||||
 | 
					super + {Left,Down,Up,Right}
 | 
				
			||||||
 | 
						bspc node -v {-20 0,0 20,0 -20,20 0}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Screenshotting
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					@Print
 | 
				
			||||||
 | 
					    flameshot & flameshot full -p ~/Pictures
 | 
				
			||||||
 | 
					#	exec scrot '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
 | 
				
			||||||
 | 
					shift + @Print
 | 
				
			||||||
 | 
					    flameshot & flameshot gui -p ~/Pictures
 | 
				
			||||||
 | 
					#	exec scrot -s '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
 | 
				
			||||||
 | 
					#super + @Print
 | 
				
			||||||
 | 
					    #flameshot gui full -p ~/Pictures
 | 
				
			||||||
 | 
					#	exec scrot -u '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
 | 
				
			||||||
 | 
					alt + @Print
 | 
				
			||||||
 | 
					    flameshot & flameshot gui -d 10000 -p ~/Pictures
 | 
				
			||||||
 | 
					#	exec scrot -d 10 '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#mpd/ncmpcpp
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + shift + n
 | 
				
			||||||
 | 
					    mpc prev
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + shift + m
 | 
				
			||||||
 | 
					    mpc next
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					super + shift + space
 | 
				
			||||||
 | 
					    mpc toggle
 | 
				
			||||||
 | 
					super + A
 | 
				
			||||||
 | 
					    mpc seek +00:00:05
 | 
				
			||||||
 | 
					super + D
 | 
				
			||||||
 | 
					    mpc seek -00:00:05
 | 
				
			||||||
							
								
								
									
										14
									
								
								home/config/zathura/zathurarc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								home/config/zathura/zathurarc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					set statusbar-h-padding 0
 | 
				
			||||||
 | 
					set statusbar-v-padding 0
 | 
				
			||||||
 | 
					set page-padding 1
 | 
				
			||||||
 | 
					map w scroll half-up
 | 
				
			||||||
 | 
					map r scroll half-down
 | 
				
			||||||
 | 
					map s reload
 | 
				
			||||||
 | 
					map S rotate
 | 
				
			||||||
 | 
					map f zoom in
 | 
				
			||||||
 | 
					map q zoom out
 | 
				
			||||||
 | 
					map p follow link
 | 
				
			||||||
 | 
					map m left
 | 
				
			||||||
 | 
					map i right
 | 
				
			||||||
 | 
					map n down
 | 
				
			||||||
 | 
					map e up
 | 
				
			||||||
							
								
								
									
										15
									
								
								home/modules/files.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								home/modules/files.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
				
			|||||||
 | 
					{config, ...}:
 | 
				
			||||||
 | 
					let
 | 
				
			||||||
 | 
					  home = config.home.homeDirectory;
 | 
				
			||||||
 | 
					in {
 | 
				
			||||||
 | 
					  home = {
 | 
				
			||||||
 | 
					    file.ncmpcpp = {
 | 
				
			||||||
 | 
					      source = ../config/ncmpcpp/config;
 | 
				
			||||||
 | 
					      target = "${home}/.config/ncmpcpp/config";
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    file.mpd = {
 | 
				
			||||||
 | 
					      source = ../config/mpd/mpd.conf;
 | 
				
			||||||
 | 
					      target = "${home}/.config/mpd/mpd.conf";
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										10
									
								
								home/modules/gtk.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								home/modules/gtk.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					{config, pkgs,...}:
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  gtk = {
 | 
				
			||||||
 | 
					    enable = true;
 | 
				
			||||||
 | 
					    iconTheme.name = "Gruvbox-Material-Dark";
 | 
				
			||||||
 | 
					    iconTheme.package = pkgs.gruvbox-icons;
 | 
				
			||||||
 | 
					    theme.name = "Equilux";
 | 
				
			||||||
 | 
					    theme.package = pkgs.equilux-theme;
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										37
									
								
								home/modules/programs.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								home/modules/programs.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,37 @@
 | 
				
			|||||||
 | 
					{ pkgs, config, ...}: 
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  imports = [
 | 
				
			||||||
 | 
					    ./programs/nvim.nix
 | 
				
			||||||
 | 
					  ];
 | 
				
			||||||
 | 
					  programs = {
 | 
				
			||||||
 | 
					    firefox = {
 | 
				
			||||||
 | 
					      enable = true;
 | 
				
			||||||
 | 
					      package = pkgs.firefox-bin;
 | 
				
			||||||
 | 
					      profiles.natto = {
 | 
				
			||||||
 | 
					        name = "natto";
 | 
				
			||||||
 | 
					        userChrome = builtins.readFile ../config/firefox/userChrome.css;
 | 
				
			||||||
 | 
					        userContent = builtins.readFile ../config/firefox/userContent.css;
 | 
				
			||||||
 | 
					      };
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    zathura = {
 | 
				
			||||||
 | 
					      enable = true;
 | 
				
			||||||
 | 
					      extraConfig = builtins.readFile ../config/zathura/zathurarc;
 | 
				
			||||||
 | 
					      options = {
 | 
				
			||||||
 | 
					        recolor = true;
 | 
				
			||||||
 | 
					        recolor-lightcolor = "rgba(0,0,0,0)";
 | 
				
			||||||
 | 
					        default-bg = "rgba(0,0,0,0.7)";
 | 
				
			||||||
 | 
					      };
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    ncmpcpp = {
 | 
				
			||||||
 | 
					      enable = true;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    mpv = {
 | 
				
			||||||
 | 
					      enable = true;
 | 
				
			||||||
 | 
					      config = {
 | 
				
			||||||
 | 
					        force-window = "yes";
 | 
				
			||||||
 | 
					        keep-open = "yes";
 | 
				
			||||||
 | 
					        save-position-on-quit = "yes";
 | 
				
			||||||
 | 
					      };
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										88
									
								
								home/modules/programs/nvim.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								home/modules/programs/nvim.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,88 @@
 | 
				
			|||||||
 | 
					{config, pkgs, ...}:
 | 
				
			||||||
 | 
					let
 | 
				
			||||||
 | 
					  plugs = {
 | 
				
			||||||
 | 
					    floaterm = {
 | 
				
			||||||
 | 
					      config = ''
 | 
				
			||||||
 | 
					        let g:floaterm_keymap_toggle = '<F1>'
 | 
				
			||||||
 | 
					        let g:floaterm_keymap_next   = '<F2>'
 | 
				
			||||||
 | 
					        let g:floaterm_keymap_prev   = '<F3>'
 | 
				
			||||||
 | 
					        let g:floaterm_keymap_new    = '<F4>'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let g:floaterm_gitcommit='floaterm'
 | 
				
			||||||
 | 
					        let g:floaterm_autoinsert=1
 | 
				
			||||||
 | 
					        let g:floaterm_width=0.8
 | 
				
			||||||
 | 
					        let g:floaterm_height=0.8
 | 
				
			||||||
 | 
					        let g:floaterm_wintitle=0
 | 
				
			||||||
 | 
					        let g:floaterm_shell="/usr/bin/env fish"
 | 
				
			||||||
 | 
					        '';
 | 
				
			||||||
 | 
					      plugin = pkgs.vimPlugins.vim-floaterm;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    nvim-colorizer = {
 | 
				
			||||||
 | 
					      plugin = pkgs.vimPlugins.nvim-colorizer-lua;
 | 
				
			||||||
 | 
					      config = ''
 | 
				
			||||||
 | 
					        packadd! nvim-colorizer.lua
 | 
				
			||||||
 | 
					        lua require'colorizer'.setup()
 | 
				
			||||||
 | 
					        '';
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    auto-pairs = {
 | 
				
			||||||
 | 
					      plugin = pkgs.vimPlugins.auto-pairs;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    vim-closetag = {
 | 
				
			||||||
 | 
					      config = ''
 | 
				
			||||||
 | 
					        let g:closetag_filenames = "*.html,*.xhtml,*.phtml,*.js,*.erb,*.jsx"
 | 
				
			||||||
 | 
					        let g:closetag_xhtml_filenames = '*.xhtml,*.jsx,*.js,*.erb'
 | 
				
			||||||
 | 
					        let g:closetag_emptyTags_caseSensitive = 1
 | 
				
			||||||
 | 
					        let g:closetag_shortcut = '>'
 | 
				
			||||||
 | 
					        let g:closetag_close_shortcut = '<leader>>'
 | 
				
			||||||
 | 
					        '';
 | 
				
			||||||
 | 
					      plugin = pkgs.vimPlugins.vim-closetag;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    nerdcommenter = {
 | 
				
			||||||
 | 
					      config = ''
 | 
				
			||||||
 | 
					        map <C-c> <plug>NERDCommenterToggle
 | 
				
			||||||
 | 
					        map <C-d> <plug>NERDCommenterSexy
 | 
				
			||||||
 | 
					        '';
 | 
				
			||||||
 | 
					      plugin = pkgs.vimPlugins.nerdcommenter;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    vim-rooter = {
 | 
				
			||||||
 | 
					      plugin = pkgs.vimPlugins.vim-rooter;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    vim-polyglot = {
 | 
				
			||||||
 | 
					      plugin = pkgs.vimPlugins.vim-polyglot;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    themes = {
 | 
				
			||||||
 | 
					      gruvbox = {
 | 
				
			||||||
 | 
					        plugin = pkgs.vimPlugins.gruvbox;
 | 
				
			||||||
 | 
					      };
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					in
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    programs.neovim = {
 | 
				
			||||||
 | 
					      enable = true;
 | 
				
			||||||
 | 
					      vimAlias = true;
 | 
				
			||||||
 | 
					      viAlias = false;
 | 
				
			||||||
 | 
					      withNodeJs = true;
 | 
				
			||||||
 | 
					      withPython = true;
 | 
				
			||||||
 | 
					      extraConfig = ''
 | 
				
			||||||
 | 
					        let g:gruvbox_italic=1
 | 
				
			||||||
 | 
					        let g:gruvbox_contrast_dark="hard"
 | 
				
			||||||
 | 
					        let g:gruvbox_contrast_light="hard"
 | 
				
			||||||
 | 
					        set background=dark
 | 
				
			||||||
 | 
					        colorscheme gruvbox
 | 
				
			||||||
 | 
					        '' +
 | 
				
			||||||
 | 
					        builtins.readFile ../../config/nvim/init.vim +
 | 
				
			||||||
 | 
					        builtins.readFile ../../config/nvim/utils.vim;
 | 
				
			||||||
 | 
					      plugins = with plugs; [
 | 
				
			||||||
 | 
					        auto-pairs
 | 
				
			||||||
 | 
					        #nvim-colorizer
 | 
				
			||||||
 | 
					        floaterm
 | 
				
			||||||
 | 
					        vim-rooter
 | 
				
			||||||
 | 
					        nerdcommenter
 | 
				
			||||||
 | 
					        vim-polyglot
 | 
				
			||||||
 | 
					        vim-closetag
 | 
				
			||||||
 | 
					        themes.gruvbox
 | 
				
			||||||
 | 
					      ];
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					          
 | 
				
			||||||
							
								
								
									
										48
									
								
								home/modules/services.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								home/modules/services.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,48 @@
 | 
				
			|||||||
 | 
					{config, pkgs, ...}:
 | 
				
			||||||
 | 
					let
 | 
				
			||||||
 | 
					  home = config.home.homeDirectory;
 | 
				
			||||||
 | 
					in
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    services = {
 | 
				
			||||||
 | 
					      picom = {
 | 
				
			||||||
 | 
					        enable = true;
 | 
				
			||||||
 | 
					        extraOptions = 
 | 
				
			||||||
 | 
					        ''
 | 
				
			||||||
 | 
					          shadow = true;
 | 
				
			||||||
 | 
					          shadow-radius = 7;
 | 
				
			||||||
 | 
					          shadow-offset-x = -7;
 | 
				
			||||||
 | 
					          shadow-offset-y = -7;
 | 
				
			||||||
 | 
					           blurExclude = [ "class_g = 'dwm'" ];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          inactive-opacity = 0.92;
 | 
				
			||||||
 | 
					          active-opacity = 0.97;
 | 
				
			||||||
 | 
					          inactive-opacity-override = true;
 | 
				
			||||||
 | 
					          blur-background = true;
 | 
				
			||||||
 | 
					          blur-method = "dual_kawase";
 | 
				
			||||||
 | 
					          blur-strength = 3;
 | 
				
			||||||
 | 
					          blur-kern = "3x3box";
 | 
				
			||||||
 | 
					          fading = true;
 | 
				
			||||||
 | 
					          fade-in-step = 0.05;
 | 
				
			||||||
 | 
					          fade-out-step = 0.05;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          backend = "glx";
 | 
				
			||||||
 | 
					          detect-rounded-corners = true;
 | 
				
			||||||
 | 
					          detect-client-opacity = true;
 | 
				
			||||||
 | 
					          experimental-backends = true;
 | 
				
			||||||
 | 
					          vsync = false;
 | 
				
			||||||
 | 
					          wintypes:
 | 
				
			||||||
 | 
					          {
 | 
				
			||||||
 | 
					            tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; };
 | 
				
			||||||
 | 
					            popup_menu={opacity=0.8;};
 | 
				
			||||||
 | 
					            dropdown_menu={opacity=0.8;};
 | 
				
			||||||
 | 
					          };
 | 
				
			||||||
 | 
					          shadow-exclude = ["x = 0 && y = 0 && override_redirect = true"]
 | 
				
			||||||
 | 
					          '';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      };
 | 
				
			||||||
 | 
					      sxhkd = {
 | 
				
			||||||
 | 
					        enable = false;
 | 
				
			||||||
 | 
					        extraConfig = builtins.readFile ./config/sxhkd/sxhkdrc;
 | 
				
			||||||
 | 
					      };
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
							
								
								
									
										9
									
								
								home/modules/xsession.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								home/modules/xsession.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					{pkgs, config, ...}:
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  xsession = {
 | 
				
			||||||
 | 
					    windowManager.bspwm = {
 | 
				
			||||||
 | 
					      enable = false;
 | 
				
			||||||
 | 
					      extraConfig = builtins.readFile ./config/bspwm/bspwmrc;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@@ -1,6 +1,13 @@
 | 
				
			|||||||
{ config, pkgs, ... }:
 | 
					{ config, pkgs, ... }:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					  imports = [
 | 
				
			||||||
 | 
					    ./modules/programs.nix 
 | 
				
			||||||
 | 
					    ./modules/xsession.nix
 | 
				
			||||||
 | 
					    ./modules/files.nix
 | 
				
			||||||
 | 
					    ./modules/services.nix
 | 
				
			||||||
 | 
					    ./modules/gtk.nix
 | 
				
			||||||
 | 
					  ];
 | 
				
			||||||
  nixpkgs = {
 | 
					  nixpkgs = {
 | 
				
			||||||
    config = {
 | 
					    config = {
 | 
				
			||||||
      allowUnfree = true;
 | 
					      allowUnfree = true;
 | 
				
			||||||
@@ -8,10 +15,24 @@
 | 
				
			|||||||
  };
 | 
					  };
 | 
				
			||||||
  home = {
 | 
					  home = {
 | 
				
			||||||
    packages = with pkgs; [
 | 
					    packages = with pkgs; [
 | 
				
			||||||
 | 
					      mpdas
 | 
				
			||||||
 | 
					      mpd
 | 
				
			||||||
 | 
					      dunst
 | 
				
			||||||
 | 
					      pavucontrol
 | 
				
			||||||
 | 
					      anup
 | 
				
			||||||
 | 
					      proxychains
 | 
				
			||||||
 | 
					      cmake
 | 
				
			||||||
 | 
					      xfce.thunar
 | 
				
			||||||
      discord
 | 
					      discord
 | 
				
			||||||
      customscripts
 | 
					      customscripts
 | 
				
			||||||
      mpd_discord_richpresence
 | 
					      mpd_discord_richpresence
 | 
				
			||||||
 | 
					      sox
 | 
				
			||||||
      qbittorrent
 | 
					      qbittorrent
 | 
				
			||||||
 | 
					      tor-browser-bundle-bin
 | 
				
			||||||
 | 
					      mpc_cli
 | 
				
			||||||
 | 
					      flameshot
 | 
				
			||||||
 | 
					      luajit
 | 
				
			||||||
 | 
					      mpv
 | 
				
			||||||
    ];
 | 
					    ];
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										7
									
								
								home/root.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								home/root.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,7 @@
 | 
				
			|||||||
 | 
					{config, ...}:
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  imports = [
 | 
				
			||||||
 | 
					    ./modules/programs/nvim.nix
 | 
				
			||||||
 | 
					    ./modules/gtk.nix
 | 
				
			||||||
 | 
					  ];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										18
									
								
								overlays/anup/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								overlays/anup/default.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					{ lib, rustPlatform, fetchFromGitHub, sqlite, xdg_utils}:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					rustPlatform.buildRustPackage rec {
 | 
				
			||||||
 | 
					  pname = "anup";
 | 
				
			||||||
 | 
					  version = "0.4.0";
 | 
				
			||||||
 | 
					  src = fetchFromGitHub {
 | 
				
			||||||
 | 
					    owner = "Acizza";
 | 
				
			||||||
 | 
					    repo = "anup";
 | 
				
			||||||
 | 
					    rev = version;
 | 
				
			||||||
 | 
					    sha256 = "sha256-4pXF4p4K8+YihVB9NdgT6bOidmQEgWXUbcbvgXJ0IDA=";
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  buildInputs = [
 | 
				
			||||||
 | 
					    sqlite.dev
 | 
				
			||||||
 | 
					    xdg_utils
 | 
				
			||||||
 | 
					  ];
 | 
				
			||||||
 | 
					  cargoSha256 = "sha256-1TA2HDHKA3twFtlAWaC2zcRzS8TJwcbBt1OTQ3hC3qM=";
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										15
									
								
								overlays/gruvbox-icons/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								overlays/gruvbox-icons/default.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
				
			|||||||
 | 
					{ stdenv, fetchgit }:
 | 
				
			||||||
 | 
					stdenv.mkDerivation rec {
 | 
				
			||||||
 | 
					  name = "gruvbox-icons";
 | 
				
			||||||
 | 
					  src = fetchgit {
 | 
				
			||||||
 | 
					    url = "https://github.com/sainnhe/gruvbox-material-gtk";
 | 
				
			||||||
 | 
					    rev = "2418ff7988411c57f8974f14adeb70a64e7f25c1";
 | 
				
			||||||
 | 
					    sha256 = "sha256-56Mu8zHcnB4++QXjAq3S7/UPvDB8DlpT14mAW3ketSY=";
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					  dontBuild = true;
 | 
				
			||||||
 | 
					  installPhase = ''
 | 
				
			||||||
 | 
					    mkdir -p $out/share
 | 
				
			||||||
 | 
					    cp -r icons $out/share
 | 
				
			||||||
 | 
					  '';
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -1,4 +1,6 @@
 | 
				
			|||||||
final: prev: {
 | 
					final: prev: {
 | 
				
			||||||
  mpd_discord_richpresence = prev.callPackage ./mpd-rpc {};
 | 
					  mpd_discord_richpresence = prev.callPackage ./mpd-rpc {};
 | 
				
			||||||
  customscripts = prev.callPackage ./customscripts {};
 | 
					  customscripts = prev.callPackage ./customscripts {};
 | 
				
			||||||
 | 
					  gruvbox-icons = prev.callPackage ./gruvbox-icons {};
 | 
				
			||||||
 | 
					  anup = prev.callPackage ./anup {};
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user