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