2022-06-05 01:43:16 -03:00
{ config , pkgs , . . . }:
2022-06-12 23:47:05 -03:00
let
key = {
left = " n " ;
down = " e " ;
up = " i " ;
right = " o " ;
tabL = " u " ;
tabR = " Y " ;
} ;
in {
2022-06-05 01:43:16 -03:00
# Home Manager needs a bit of information about you and the
# paths it should manage.
home . username = " l e l g e n i o " ;
home . homeDirectory = " / h o m e / l e l g e n i o " ;
# This value determines the Home Manager release that your
# configuration is compatible with. This helps avoid breakage
# when a new Home Manager release introduces backwards
# incompatible changes.
#
# You can update Home Manager without changing this value. See
# the Home Manager release notes for a list of state version
# changes in each release.
home . stateVersion = " 2 2 . 0 5 " ;
# Let Home Manager install and manage itself.
programs . home-manager . enable = true ;
home . packages = with pkgs ; [
alacritty
exa
fd
ripgrep
2022-06-12 23:47:05 -03:00
yt-dlp
2022-06-09 23:16:20 -03:00
ffmpeg
imagemagick
mpv
2022-06-05 01:43:16 -03:00
] ;
2022-06-09 23:16:20 -03:00
programs . fish . enable = true ;
2022-06-05 01:43:16 -03:00
programs . firefox = {
enable = true ;
package = pkgs . firefox ;
# extensions = with pkgs.nur.repos.rycee.firefox-addons; [
# darkreader
# ublock-origin
# ];
# profiles = {
# main = {
# isDefault = true;
# settings = {
# "devtools.theme" = "dark";
# "toolkit.legacyUserProfileCustomizations.stylesheets" = true;
# };
# userChrome = ''
# #tabbrowser-tabs { visibility: collapse !important; }
# '';
# };
# };
} ;
2022-06-12 23:47:05 -03:00
programs . command-not-found . enable = true ;
# home.file = {
# ".config/sway/config".source = ./sway;
# };
programs . waybar = {
enable = true ;
settings = [ {
layer = " t o p " ;
modules-left = [ " s w a y / w o r k s p a c e s " ] ;
modules-center = [
" c l o c k "
] ;
modules-right = [ ] ;
} ] ;
} ;
wayland . windowManager . sway = {
enable = true ;
config = {
bars = [ { command = " w a y b a r " ; } ] ;
input . " t y p e : t o u c h p a d " = {
# Disable While Typing
dwt = " d i s a b l e d " ;
natural_scroll = " e n a b l e d " ;
tap = " e n a b l e d " ;
} ;
input . " * " = {
xkb_layout = " u s ( c o l e m a k ) " ;
xkb_options = " l v 3 : l s g t _ s w i t c h , g r p : s h i f t s _ t o g g l e " ;
xkb_numlock = " e n a b l e d " ;
repeat_rate = " 3 0 " ;
repeat_delay = " 2 0 0 " ;
} ;
keybindings =
let
mod = " M o d 4 " ;
menu = " b e m e n u - r u n " ;
terminal = " a l a c r i t t y " ;
in
{
" ${ mod } + P r i o r " = " w o r k s p a c e p r e v _ o n _ o u t p u t " ;
" ${ mod } + N e x t " = " w o r k s p a c e n e x t _ o n _ o u t p u t " ;
" ${ mod } + ${ key . tabL } " = " w o r k s p a c e p r e v _ o n _ o u t p u t " ;
" ${ mod } + ${ key . tabR } " = " w o r k s p a c e n e x t _ o n _ o u t p u t " ;
XF86AudioRaiseVolume = " e x e c p a c t l s e t - s i n k - v o l u m e @ D E F A U L T _ S I N K @ + 1 0 % " ;
XF86AudioLowerVolume = " e x e c p a c t l s e t - s i n k - v o l u m e @ D E F A U L T _ S I N K @ - 1 0 % " ;
XF86AudioMute = " e x e c p a c t l s e t - s i n k - m u t e @ D E F A U L T _ S I N K @ t o g g l e " ;
XF86AudioMicMute = " e x e c p a c t l s e t - s o u r c e - m u t e @ D E F A U L T _ S O U R C E @ t o g g l e " ;
# Control media
XF86AudioPlay = " e x e c p l a y e r c t l p l a y - p a u s e " ;
XF86AudioPause = " e x e c p l a y e r c t l p l a y - p a u s e " ;
XF86AudioNext = " e x e c p l a y e r c t l n e x t " ;
XF86AudioPrev = " e x e c p l a y e r c t l p r e v i o u s " ;
" ${ mod } + R e t u r n " = " e x e c ${ terminal } " ;
" ${ mod } + S h i f t + q " = " k i l l " ;
" ${ mod } + s " = " e x e c ${ menu } " ;
" ${ mod } + ${ key . left } " = " f o c u s l e f t " ;
" ${ mod } + ${ key . down } " = " f o c u s d o w n " ;
" ${ mod } + ${ key . up } " = " f o c u s u p " ;
" ${ mod } + ${ key . right } " = " f o c u s r i g h t " ;
" ${ mod } + L e f t " = " f o c u s l e f t " ;
" ${ mod } + D o w n " = " f o c u s d o w n " ;
" ${ mod } + U p " = " f o c u s u p " ;
" ${ mod } + R i g h t " = " f o c u s r i g h t " ;
" ${ mod } + S h i f t + ${ key . left } " = " m o v e l e f t " ;
" ${ mod } + S h i f t + ${ key . down } " = " m o v e d o w n " ;
" ${ mod } + S h i f t + ${ key . up } " = " m o v e u p " ;
" ${ mod } + S h i f t + ${ key . right } " = " m o v e r i g h t " ;
" ${ mod } + S h i f t + L e f t " = " m o v e l e f t " ;
" ${ mod } + S h i f t + D o w n " = " m o v e d o w n " ;
" ${ mod } + S h i f t + U p " = " m o v e u p " ;
" ${ mod } + S h i f t + R i g h t " = " m o v e r i g h t " ;
" ${ mod } + b " = " s p l i t h " ;
" ${ mod } + v " = " s p l i t v " ;
" ${ mod } + f " = " f u l l s c r e e n t o g g l e " ;
" ${ mod } + a " = " f o c u s p a r e n t " ;
# "${mod}+s" = "layout stacking";
" ${ mod } + w " = " l a y o u t t a b b e d " ;
# "${mod}+e" = "layout toggle split";
" ${ mod } + S h i f t + s p a c e " = " f l o a t i n g t o g g l e " ;
" ${ mod } + s p a c e " = " f o c u s m o d e _ t o g g l e " ;
" ${ mod } + 1 " = " w o r k s p a c e n u m b e r 1 " ;
" ${ mod } + 2 " = " w o r k s p a c e n u m b e r 2 " ;
" ${ mod } + 3 " = " w o r k s p a c e n u m b e r 3 " ;
" ${ mod } + 4 " = " w o r k s p a c e n u m b e r 4 " ;
" ${ mod } + 5 " = " w o r k s p a c e n u m b e r 5 " ;
" ${ mod } + 6 " = " w o r k s p a c e n u m b e r 6 " ;
" ${ mod } + 7 " = " w o r k s p a c e n u m b e r 7 " ;
" ${ mod } + 8 " = " w o r k s p a c e n u m b e r 8 " ;
" ${ mod } + 9 " = " w o r k s p a c e n u m b e r 9 " ;
" ${ mod } + S h i f t + 1 " =
" m o v e c o n t a i n e r t o w o r k s p a c e n u m b e r 1 " ;
" ${ mod } + S h i f t + 2 " =
" m o v e c o n t a i n e r t o w o r k s p a c e n u m b e r 2 " ;
" ${ mod } + S h i f t + 3 " =
" m o v e c o n t a i n e r t o w o r k s p a c e n u m b e r 3 " ;
" ${ mod } + S h i f t + 4 " =
" m o v e c o n t a i n e r t o w o r k s p a c e n u m b e r 4 " ;
" ${ mod } + S h i f t + 5 " =
" m o v e c o n t a i n e r t o w o r k s p a c e n u m b e r 5 " ;
" ${ mod } + S h i f t + 6 " =
" m o v e c o n t a i n e r t o w o r k s p a c e n u m b e r 6 " ;
" ${ mod } + S h i f t + 7 " =
" m o v e c o n t a i n e r t o w o r k s p a c e n u m b e r 7 " ;
" ${ mod } + S h i f t + 8 " =
" m o v e c o n t a i n e r t o w o r k s p a c e n u m b e r 8 " ;
" ${ mod } + S h i f t + 9 " =
" m o v e c o n t a i n e r t o w o r k s p a c e n u m b e r 9 " ;
" ${ mod } + S h i f t + m i n u s " = " m o v e s c r a t c h p a d " ;
" ${ mod } + m i n u s " = " s c r a t c h p a d s h o w " ;
" ${ mod } + S h i f t + c " = " r e l o a d " ;
# "${mod}+Shift+e" =
# "exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'";
" ${ mod } + r " = " m o d e r e s i z e " ;
}
# // map (key: "$mod+${key} workspace prev_on_output") [ key.tabL "bracketleft" "Prior" "button9" "button4" ]
# // map (key: "$mod+${key} workspace next_on_output") [ key.tabL "bracketleft" "Prior" "button9" "button4" ]
;
terminal = pkgs . alacritty . executable ;
} ;
} ;
2022-06-05 01:43:16 -03:00
}