major home-manager changes
This commit is contained in:
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;
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user