a decent working guix config
This commit is contained in:
		
							parent
							
								
									ae77d05e2f
								
							
						
					
					
						commit
						0ebbec7644
					
				
					 22 changed files with 2302 additions and 279 deletions
				
			
		| 
						 | 
				
			
			@ -357,7 +357,7 @@ colors:
 | 
			
		|||
#   - (Linux/BSD) user login shell
 | 
			
		||||
#   - (Windows) powershell
 | 
			
		||||
shell:
 | 
			
		||||
  program: fish
 | 
			
		||||
  program: bash
 | 
			
		||||
#  args:
 | 
			
		||||
#    - --login
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										141
									
								
								.config/bashrc
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										141
									
								
								.config/bashrc
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,141 @@
 | 
			
		|||
# Enable the subsequent settings only in interactive sessions
 | 
			
		||||
case $- in
 | 
			
		||||
  *i*) ;;
 | 
			
		||||
    *) return;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
# Path to your oh-my-bash installation.
 | 
			
		||||
export OSH='/home/chris/.config/.oh-my-bash'
 | 
			
		||||
 | 
			
		||||
# Set name of the theme to load. Optionally, if you set this to "random"
 | 
			
		||||
# it'll load a random theme each time that oh-my-bash is loaded.
 | 
			
		||||
OSH_THEME="rr"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to use case-sensitive completion.
 | 
			
		||||
# OMB_CASE_SENSITIVE="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to use hyphen-insensitive completion. Case
 | 
			
		||||
# sensitive completion must be off. _ and - will be interchangeable.
 | 
			
		||||
# OMB_HYPHEN_SENSITIVE="false"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to disable bi-weekly auto-update checks.
 | 
			
		||||
# DISABLE_AUTO_UPDATE="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to change how often to auto-update (in days).
 | 
			
		||||
# export UPDATE_OSH_DAYS=13
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to disable colors in ls.
 | 
			
		||||
# DISABLE_LS_COLORS="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to disable auto-setting terminal title.
 | 
			
		||||
# DISABLE_AUTO_TITLE="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to enable command auto-correction.
 | 
			
		||||
# ENABLE_CORRECTION="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to display red dots whilst waiting for completion.
 | 
			
		||||
# COMPLETION_WAITING_DOTS="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line if you want to disable marking untracked files
 | 
			
		||||
# under VCS as dirty. This makes repository status check for large repositories
 | 
			
		||||
# much, much faster.
 | 
			
		||||
# DISABLE_UNTRACKED_FILES_DIRTY="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line if you don't want the repository to be considered dirty
 | 
			
		||||
# if there are untracked files.
 | 
			
		||||
# SCM_GIT_DISABLE_UNTRACKED_DIRTY="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line if you want to completely ignore the presence
 | 
			
		||||
# of untracked files in the repository.
 | 
			
		||||
# SCM_GIT_IGNORE_UNTRACKED="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line if you want to change the command execution time
 | 
			
		||||
# stamp shown in the history command output.  One of the following values can
 | 
			
		||||
# be used to specify the timestamp format.
 | 
			
		||||
# * 'mm/dd/yyyy'     # mm/dd/yyyy + time
 | 
			
		||||
# * 'dd.mm.yyyy'     # dd.mm.yyyy + time
 | 
			
		||||
# * 'yyyy-mm-dd'     # yyyy-mm-dd + time
 | 
			
		||||
# * '[mm/dd/yyyy]'   # [mm/dd/yyyy] + [time] with colors
 | 
			
		||||
# * '[dd.mm.yyyy]'   # [dd.mm.yyyy] + [time] with colors
 | 
			
		||||
# * '[yyyy-mm-dd]'   # [yyyy-mm-dd] + [time] with colors
 | 
			
		||||
# If not set, the default value is 'yyyy-mm-dd'.
 | 
			
		||||
# HIST_STAMPS='yyyy-mm-dd'
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line if you do not want OMB to overwrite the existing
 | 
			
		||||
# aliases by the default OMB aliases defined in lib/*.sh
 | 
			
		||||
# OMB_DEFAULT_ALIASES="check"
 | 
			
		||||
 | 
			
		||||
# Would you like to use another custom folder than $OSH/custom?
 | 
			
		||||
# OSH_CUSTOM=/path/to/new-custom-folder
 | 
			
		||||
 | 
			
		||||
# To disable the uses of "sudo" by oh-my-bash, please set "false" to
 | 
			
		||||
# this variable.  The default behavior for the empty value is "true".
 | 
			
		||||
OMB_USE_SUDO=true
 | 
			
		||||
 | 
			
		||||
# To enable/disable display of Python virtualenv and condaenv
 | 
			
		||||
# OMB_PROMPT_SHOW_PYTHON_VENV=true  # enable
 | 
			
		||||
# OMB_PROMPT_SHOW_PYTHON_VENV=false # disable
 | 
			
		||||
 | 
			
		||||
# Which completions would you like to load? (completions can be found in ~/.oh-my-bash/completions/*)
 | 
			
		||||
# Custom completions may be added to ~/.oh-my-bash/custom/completions/
 | 
			
		||||
# Example format: completions=(ssh git bundler gem pip pip3)
 | 
			
		||||
# Add wisely, as too many completions slow down shell startup.
 | 
			
		||||
completions=(
 | 
			
		||||
  git
 | 
			
		||||
  composer
 | 
			
		||||
  ssh
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
# Which aliases would you like to load? (aliases can be found in ~/.oh-my-bash/aliases/*)
 | 
			
		||||
# Custom aliases may be added to ~/.oh-my-bash/custom/aliases/
 | 
			
		||||
# Example format: aliases=(vagrant composer git-avh)
 | 
			
		||||
# Add wisely, as too many aliases slow down shell startup.
 | 
			
		||||
aliases=(
 | 
			
		||||
  general
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-bash/plugins/*)
 | 
			
		||||
# Custom plugins may be added to ~/.oh-my-bash/custom/plugins/
 | 
			
		||||
# Example format: plugins=(rails git textmate ruby lighthouse)
 | 
			
		||||
# Add wisely, as too many plugins slow down shell startup.
 | 
			
		||||
plugins=(
 | 
			
		||||
  git
 | 
			
		||||
  bashmarks
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
# Which plugins would you like to conditionally load? (plugins can be found in ~/.oh-my-bash/plugins/*)
 | 
			
		||||
# Custom plugins may be added to ~/.oh-my-bash/custom/plugins/
 | 
			
		||||
# Example format:
 | 
			
		||||
#  if [ "$DISPLAY" ] || [ "$SSH" ]; then
 | 
			
		||||
#      plugins+=(tmux-autoattach)
 | 
			
		||||
#  fi
 | 
			
		||||
 | 
			
		||||
source "$OSH"/oh-my-bash.sh
 | 
			
		||||
 | 
			
		||||
# User configuration
 | 
			
		||||
# export MANPATH="/usr/local/man:$MANPATH"
 | 
			
		||||
 | 
			
		||||
# You may need to manually set your language environment
 | 
			
		||||
# export LANG=en_US.UTF-8
 | 
			
		||||
 | 
			
		||||
# Preferred editor for local and remote sessions
 | 
			
		||||
# if [[ -n $SSH_CONNECTION ]]; then
 | 
			
		||||
#   export EDITOR='vim'
 | 
			
		||||
# else
 | 
			
		||||
#   export EDITOR='mvim'
 | 
			
		||||
# fi
 | 
			
		||||
 | 
			
		||||
# Compilation flags
 | 
			
		||||
# export ARCHFLAGS="-arch x86_64"
 | 
			
		||||
 | 
			
		||||
# ssh
 | 
			
		||||
# export SSH_KEY_PATH="~/.ssh/rsa_id"
 | 
			
		||||
 | 
			
		||||
# Set personal aliases, overriding those provided by oh-my-bash libs,
 | 
			
		||||
# plugins, and themes. Aliases can be placed here, though oh-my-bash
 | 
			
		||||
# users are encouraged to define aliases within the OSH_CUSTOM folder.
 | 
			
		||||
# For a full list of active aliases, run `alias`.
 | 
			
		||||
#
 | 
			
		||||
# Example aliases
 | 
			
		||||
# alias bashconfig="mate ~/.bashrc"
 | 
			
		||||
# alias ohmybash="mate ~/.oh-my-bash"
 | 
			
		||||
							
								
								
									
										1306
									
								
								.config/blesh/init.sh
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1306
									
								
								.config/blesh/init.sh
									
										
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							| 
						 | 
				
			
			@ -1,204 +1,214 @@
 | 
			
		|||
monitor=eDP-1,2256x1504@60,0x0,1.5
 | 
			
		||||
workspace=eDP-1,1
 | 
			
		||||
monitor=DVI-D-1,preferred,0x0,1
 | 
			
		||||
monitor=HDMI-A-1,preferred,0x0,1
 | 
			
		||||
monitor=DP-3,preferred,1080x0,1.5
 | 
			
		||||
workspace=DVI-D-1,2
 | 
			
		||||
workspace=DP-3,1
 | 
			
		||||
workspace=HDMI-A-1,2
 | 
			
		||||
monitor=DVI-D-1,transform,1
 | 
			
		||||
    monitor=eDP-1,2256x1504@60,0x0,1.5
 | 
			
		||||
    workspace=eDP-1,1
 | 
			
		||||
    monitor=HDMI-A-1,preferred,0x0,1
 | 
			
		||||
    monitor=DP-1,preferred,2680x0,1.5
 | 
			
		||||
    monitor=DP-2,preferred,1600x0,1
 | 
			
		||||
    workspace=DP-2,2
 | 
			
		||||
    workspace=DP-1,1
 | 
			
		||||
    workspace=HDMI-A-1,3
 | 
			
		||||
    monitor=DP-2,transform,1
 | 
			
		||||
 | 
			
		||||
input {
 | 
			
		||||
    # kb_layout=
 | 
			
		||||
    # kb_variant=
 | 
			
		||||
    # kb_model=
 | 
			
		||||
    # kb_options=
 | 
			
		||||
    # kb_rules=
 | 
			
		||||
    repeat_rate=140
 | 
			
		||||
    repeat_delay=180
 | 
			
		||||
    natural_scroll=0
 | 
			
		||||
    sensitivity=0.85
 | 
			
		||||
    accel_profile=adaptive
 | 
			
		||||
    input {
 | 
			
		||||
        # kb_layout=
 | 
			
		||||
        # kb_variant=
 | 
			
		||||
        # kb_model=
 | 
			
		||||
        # kb_options=
 | 
			
		||||
        # kb_rules=
 | 
			
		||||
        repeat_rate=140
 | 
			
		||||
        repeat_delay=180
 | 
			
		||||
        natural_scroll=0
 | 
			
		||||
        sensitivity=0.75
 | 
			
		||||
        accel_profile=adaptive
 | 
			
		||||
 | 
			
		||||
    follow_mouse=2
 | 
			
		||||
        follow_mouse=2
 | 
			
		||||
 | 
			
		||||
    touchpad {
 | 
			
		||||
             natural_scroll=1
 | 
			
		||||
             clickfinger_behavior=1
 | 
			
		||||
        touchpad {
 | 
			
		||||
                 natural_scroll=1
 | 
			
		||||
                 clickfinger_behavior=1
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
general {
 | 
			
		||||
    max_fps=60 # deprecated, unused
 | 
			
		||||
    # main_mod=SUPER
 | 
			
		||||
    general {
 | 
			
		||||
        max_fps=60 # deprecated, unused
 | 
			
		||||
        # main_mod=SUPER
 | 
			
		||||
 | 
			
		||||
    gaps_in=15
 | 
			
		||||
    gaps_out=20
 | 
			
		||||
    border_size=0
 | 
			
		||||
    col.active_border=0x66ee1111
 | 
			
		||||
    col.inactive_border=0x66333333
 | 
			
		||||
        gaps_in=15
 | 
			
		||||
        gaps_out=20
 | 
			
		||||
        border_size=0
 | 
			
		||||
        col.active_border=0x66ee1111
 | 
			
		||||
        col.inactive_border=0x66333333
 | 
			
		||||
 | 
			
		||||
    #damage_tracking=full # leave it on full unless you hate your GPU and want to make it suffer
 | 
			
		||||
    layout=master
 | 
			
		||||
}
 | 
			
		||||
        #damage_tracking=full # leave it on full unless you hate your GPU and want to make it suffer
 | 
			
		||||
        layout=master
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
gestures {
 | 
			
		||||
    workspace_swipe=true
 | 
			
		||||
    workspace_swipe_fingers=3
 | 
			
		||||
}
 | 
			
		||||
    gestures {
 | 
			
		||||
        workspace_swipe=true
 | 
			
		||||
        workspace_swipe_fingers=3
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
decoration {
 | 
			
		||||
    rounding=18
 | 
			
		||||
    multisample_edges=true
 | 
			
		||||
    active_opacity=0.97
 | 
			
		||||
    inactive_opacity=0.75
 | 
			
		||||
    fullscreen_opacity=1.0
 | 
			
		||||
    blur=true
 | 
			
		||||
    blur_new_optimizations=true
 | 
			
		||||
    blur_size=10 # minimum 1
 | 
			
		||||
    blur_passes=3 # minimum 1, more passes = more resource intensive.
 | 
			
		||||
    blur_ignore_opacity=false
 | 
			
		||||
    # Your blur "amount" is blur_size * blur_passes, but high blur_size (over around 5-ish) will produce artifacts.
 | 
			
		||||
    # if you want heavy blur, you need to up the blur_passes.
 | 
			
		||||
    # the more passes, the more you can up the blur_size without noticing artifacts.
 | 
			
		||||
    drop_shadow=true
 | 
			
		||||
    shadow_range=15
 | 
			
		||||
    shadow_offset=5 5
 | 
			
		||||
    shadow_scale=0.99
 | 
			
		||||
    shadow_render_power=1
 | 
			
		||||
    col.shadow = rgba(000000cc)
 | 
			
		||||
    dim_inactive=true
 | 
			
		||||
    dim_strength=0.2
 | 
			
		||||
}
 | 
			
		||||
    decoration {
 | 
			
		||||
        rounding=18
 | 
			
		||||
        multisample_edges=true
 | 
			
		||||
        active_opacity=0.97
 | 
			
		||||
        inactive_opacity=0.75
 | 
			
		||||
        fullscreen_opacity=1.0
 | 
			
		||||
        blur=true
 | 
			
		||||
        blur_new_optimizations=true
 | 
			
		||||
        blur_size=10 # minimum 1
 | 
			
		||||
        blur_passes=3 # minimum 1, more passes = more resource intensive.
 | 
			
		||||
        blur_ignore_opacity=false
 | 
			
		||||
        # Your blur "amount" is blur_size * blur_passes, but high blur_size (over around 5-ish) will produce artifacts.
 | 
			
		||||
        # if you want heavy blur, you need to up the blur_passes.
 | 
			
		||||
        # the more passes, the more you can up the blur_size without noticing artifacts.
 | 
			
		||||
 | 
			
		||||
bezier=snapslide,0.07,0.66,0.04,1.02
 | 
			
		||||
        drop_shadow=true
 | 
			
		||||
        shadow_range=15
 | 
			
		||||
        shadow_offset=5 5
 | 
			
		||||
        shadow_scale=0.99
 | 
			
		||||
        shadow_render_power=1
 | 
			
		||||
        col.shadow = rgba(000000cc)
 | 
			
		||||
        dim_inactive=true
 | 
			
		||||
        dim_strength=0.2
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
animations {
 | 
			
		||||
    enabled=1
 | 
			
		||||
    animation=windows,1,2,snapslide
 | 
			
		||||
    # animation=borders,1,10,default
 | 
			
		||||
    animation=fadeIn,1,2,snapslide
 | 
			
		||||
    animation=workspaces,1,2,snapslide
 | 
			
		||||
    animation=specialWorkspace,1,2,snapslide,slidevert
 | 
			
		||||
}
 | 
			
		||||
    bezier=snapslide,0.07,0.66,0.04,1.02
 | 
			
		||||
 | 
			
		||||
dwindle {
 | 
			
		||||
    pseudotile=0 # enable pseudotiling on dwindle
 | 
			
		||||
}
 | 
			
		||||
    animations {
 | 
			
		||||
        enabled=1
 | 
			
		||||
        animation=windows,1,2,snapslide
 | 
			
		||||
        # animation=borders,1,10,default
 | 
			
		||||
        animation=fadeIn,1,2,snapslide
 | 
			
		||||
        animation=workspaces,1,2,snapslide
 | 
			
		||||
        animation=specialWorkspace,1,2,snapslide,slidevert
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
master {
 | 
			
		||||
    special_scale_factor=0.7
 | 
			
		||||
    new_is_master=false
 | 
			
		||||
    new_on_top=false
 | 
			
		||||
}
 | 
			
		||||
    dwindle {
 | 
			
		||||
        pseudotile=0 # enable pseudotiling on dwindle
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
# misc:disable_autoreload = true
 | 
			
		||||
    master {
 | 
			
		||||
        special_scale_factor=0.8
 | 
			
		||||
        mfact=0.65
 | 
			
		||||
        new_is_master=false
 | 
			
		||||
        new_on_top=false
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
# example window rules
 | 
			
		||||
# for windows named/classed as abc and xyz
 | 
			
		||||
windowrule=opaque,firefox
 | 
			
		||||
windowrule=float,dolphin
 | 
			
		||||
${if builtins.readFile "/etc/hostname" == "syl\n" then "# this is a kaladin space" else "windowrule=workspace 1,mpv"}
 | 
			
		||||
windowrule=float,mpv
 | 
			
		||||
windowrule=size ${if builtins.readFile "/etc/hostname" == "syl\n" then "90% 76%" else "85% 85%"},mpv
 | 
			
		||||
windowrule=center,mpv
 | 
			
		||||
# windowrule=pin,mpv
 | 
			
		||||
windowrule=float,pulsemixer
 | 
			
		||||
windowrule=workspace ${if builtins.readFile "/etc/hostname" == "syl\n" then "2" else "1"},firefox
 | 
			
		||||
windowrule=workspace ${if builtins.readFile "/etc/hostname" == "syl\n" then "1" else "2"},emacs
 | 
			
		||||
windowrule=float,btop
 | 
			
		||||
windowrule=size 70% 70%,btop
 | 
			
		||||
windowrule=center,btop
 | 
			
		||||
windowrule=float,presenter
 | 
			
		||||
windowrule=size 80% 80%,presenter
 | 
			
		||||
windowrule=center,presenter
 | 
			
		||||
    # misc:disable_autoreload = true
 | 
			
		||||
    misc {
 | 
			
		||||
        focus_on_activate = true
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
# example binds
 | 
			
		||||
bind = SUPER,RETURN,exec,alacritty
 | 
			
		||||
bind = SUPER,C,killactive,
 | 
			
		||||
bind = SUPERSHIFT,Q,exit,
 | 
			
		||||
bind = SUPERSHIFT,D,exec,dolphin
 | 
			
		||||
bind = SUPERSHIFT,F,togglefloating,
 | 
			
		||||
bindr = SUPER,Super_L,exec,/home/chris/bin/launcher.sh
 | 
			
		||||
# bindr = ALT,Alt_L,exec,/home/chris/bin/window.sh
 | 
			
		||||
bind = SUPER,w,exec,/home/chris/bin/window.sh
 | 
			
		||||
bind = SUPER,E,exec,/home/chris/bin/emacslof
 | 
			
		||||
bind = SUPER,d,exec,emacsclient -c -e '(dired-jump)'
 | 
			
		||||
bind = SUPER,B,exec,/home/chris/bin/fflof
 | 
			
		||||
bind = SUPER,A,exec,alacritty --class pulsemixer -e pulsemixer
 | 
			
		||||
bind = SUPERCTRL,i,exec,alacritty --class btop -e btop
 | 
			
		||||
    # example window rules
 | 
			
		||||
    # for windows named/classed as abc and xyz
 | 
			
		||||
    windowrule=opaque,firefox
 | 
			
		||||
    windowrule=float,dolphin
 | 
			
		||||
    windowrule=size 60% 60%,dolphin
 | 
			
		||||
    windowrule=float,mpv
 | 
			
		||||
    windowrule=size 90% 76%,mpv
 | 
			
		||||
    windowrule=center,mpv
 | 
			
		||||
    windowrule=opaque,mpv
 | 
			
		||||
    # windowrule=pin,mpv
 | 
			
		||||
    windowrule=float,pulsemixer
 | 
			
		||||
    windowrule=workspace 2,firefox
 | 
			
		||||
    windowrule=workspace 1,emacs
 | 
			
		||||
    windowrule=float,btop
 | 
			
		||||
    windowrule=size 70% 70%,btop
 | 
			
		||||
    windowrule=center,btop
 | 
			
		||||
    windowrule=float,presenter
 | 
			
		||||
    windowrule=size 80% 80%,presenter
 | 
			
		||||
    windowrule=center,presenter
 | 
			
		||||
    windowrule=workspace 1,title:presentation-window
 | 
			
		||||
 | 
			
		||||
bind = SUPER,P,exec,/home/chris/bin/rbw.sh
 | 
			
		||||
bind = SUPER,M,fullscreen,1
 | 
			
		||||
bind = SUPER,F,fullscreen,0
 | 
			
		||||
    # example binds
 | 
			
		||||
    bind = SUPER,RETURN,exec,alacritty
 | 
			
		||||
    bind = SUPER,C,killactive,
 | 
			
		||||
    bind = SUPERSHIFT,Q,exit,
 | 
			
		||||
    bind = SUPERSHIFT,D,exec,dolphin
 | 
			
		||||
    bind = SUPERSHIFT,F,togglefloating,
 | 
			
		||||
    bindr = SUPER,Super_L,exec,/home/chris/bin/launcher.sh
 | 
			
		||||
    bindr = ALT,Alt_R,exec,/home/chris/bin/window.sh
 | 
			
		||||
    bind = SUPER,w,exec,/home/chris/bin/window.sh
 | 
			
		||||
    bind = SUPER,E,exec,/home/chris/bin/emacslof
 | 
			
		||||
    bind = SUPER,d,exec,emacsclient -c -e '(dired-jump)'
 | 
			
		||||
    bind = SUPER,v,exec,emacsclient -e '(chris/dired-open-videos)'
 | 
			
		||||
    bind = SUPER,B,exec,/home/chris/bin/fflof
 | 
			
		||||
    bind = SUPER,A,exec,alacritty --class pulsemixer -e pulsemixer
 | 
			
		||||
    bind = SUPERCTRL,i,exec,alacritty --class btop -e btop
 | 
			
		||||
    bind = ,Print,exec,screenshot
 | 
			
		||||
 | 
			
		||||
bind = SUPER,h,movefocus,l
 | 
			
		||||
bind = SUPER,l,movefocus,r
 | 
			
		||||
bind = SUPER,k,cyclenext,prev
 | 
			
		||||
bind = SUPER,j,cyclenext
 | 
			
		||||
bind = SUPERSHIFT,h,movewindow,l
 | 
			
		||||
bind = SUPERSHIFT,l,movewindow,r
 | 
			
		||||
bind = SUPERSHIFT,k,movewindow,u
 | 
			
		||||
bind = SUPERSHIFT,j,movewindow,d
 | 
			
		||||
bind = SUPERCTRL,l,splitratio,+0.05
 | 
			
		||||
bind = SUPERCTRL,h,splitratio,-0.05
 | 
			
		||||
bind = SUPERCTRL,c,centerwindow
 | 
			
		||||
    bind = SUPER,P,exec,/home/chris/bin/rbw.sh
 | 
			
		||||
    bind = SUPER,M,fullscreen,1
 | 
			
		||||
    bind = SUPER,F,fullscreen,0
 | 
			
		||||
 | 
			
		||||
bind = SUPER,1,workspace,1
 | 
			
		||||
bind = SUPER,2,workspace,2
 | 
			
		||||
bind = SUPER,3,workspace,3
 | 
			
		||||
bind = SUPER,4,workspace,4
 | 
			
		||||
bind = SUPER,5,workspace,5
 | 
			
		||||
bind = SUPER,6,workspace,6
 | 
			
		||||
bind = SUPER,7,workspace,7
 | 
			
		||||
bind = SUPER,8,workspace,8
 | 
			
		||||
bind = SUPER,9,workspace,9
 | 
			
		||||
bind = SUPER,0,workspace,10
 | 
			
		||||
    bind = SUPER,h,movefocus,l
 | 
			
		||||
    bind = SUPER,l,movefocus,r
 | 
			
		||||
    bind = SUPER,k,layoutmsg,cycleprev
 | 
			
		||||
    bind = SUPER,j,layoutmsg,cyclenext
 | 
			
		||||
    bind = SUPERSHIFT,h,movewindow,l
 | 
			
		||||
    bind = SUPERSHIFT,l,movewindow,r
 | 
			
		||||
    bind = SUPERSHIFT,k,layoutmsg,swapprev
 | 
			
		||||
    bind = SUPERSHIFT,j,layoutmsg,swapnext
 | 
			
		||||
    bind = SUPERCTRL,l,splitratio,+0.05
 | 
			
		||||
    bind = SUPERCTRL,h,splitratio,-0.05
 | 
			
		||||
    bind = SUPERCTRL,c,centerwindow
 | 
			
		||||
 | 
			
		||||
bind = SUPERALT,l,workspace,m+1
 | 
			
		||||
bind = SUPERALT,h,workspace,m-1
 | 
			
		||||
    bind = SUPER,1,workspace,1
 | 
			
		||||
    bind = SUPER,2,workspace,2
 | 
			
		||||
    bind = SUPER,3,workspace,3
 | 
			
		||||
    bind = SUPER,4,workspace,4
 | 
			
		||||
    bind = SUPER,5,workspace,5
 | 
			
		||||
    bind = SUPER,6,workspace,6
 | 
			
		||||
    bind = SUPER,7,workspace,7
 | 
			
		||||
    bind = SUPER,8,workspace,8
 | 
			
		||||
    bind = SUPER,9,workspace,9
 | 
			
		||||
    bind = SUPER,0,workspace,10
 | 
			
		||||
 | 
			
		||||
bind = SUPERSHIFT,1,movetoworkspace,1
 | 
			
		||||
bind = SUPERSHIFT,2,movetoworkspace,2
 | 
			
		||||
bind = SUPERSHIFT,3,movetoworkspace,3
 | 
			
		||||
bind = SUPERSHIFT,4,movetoworkspace,4
 | 
			
		||||
bind = SUPERSHIFT,5,movetoworkspace,5
 | 
			
		||||
bind = SUPERSHIFT,6,movetoworkspace,6
 | 
			
		||||
bind = SUPERSHIFT,7,movetoworkspace,7
 | 
			
		||||
bind = SUPERSHIFT,8,movetoworkspace,8
 | 
			
		||||
bind = SUPERSHIFT,9,movetoworkspace,9
 | 
			
		||||
bind = SUPERSHIFT,0,movetoworkspace,10
 | 
			
		||||
    bind = SUPERALT,l,workspace,m+1
 | 
			
		||||
    bind = SUPERALT,h,workspace,m-1
 | 
			
		||||
 | 
			
		||||
bind = SUPER,o,movewindow,mon: next
 | 
			
		||||
bind = SUPER,y,togglespecialworkspace
 | 
			
		||||
bind = SUPER,i,movewindow,left
 | 
			
		||||
bind = SUPERSHIFT,p,pin
 | 
			
		||||
bind = SUPER,n,movetoworkspace,special
 | 
			
		||||
    bind = SUPERSHIFT,1,movetoworkspace,1
 | 
			
		||||
    bind = SUPERSHIFT,2,movetoworkspace,2
 | 
			
		||||
    bind = SUPERSHIFT,3,movetoworkspace,3
 | 
			
		||||
    bind = SUPERSHIFT,4,movetoworkspace,4
 | 
			
		||||
    bind = SUPERSHIFT,5,movetoworkspace,5
 | 
			
		||||
    bind = SUPERSHIFT,6,movetoworkspace,6
 | 
			
		||||
    bind = SUPERSHIFT,7,movetoworkspace,7
 | 
			
		||||
    bind = SUPERSHIFT,8,movetoworkspace,8
 | 
			
		||||
    bind = SUPERSHIFT,9,movetoworkspace,9
 | 
			
		||||
    bind = SUPERSHIFT,0,movetoworkspace,10
 | 
			
		||||
 | 
			
		||||
binde = , XF86AudioMute, exec, pamixer -t
 | 
			
		||||
binde = , XF86AudioRaiseVolume, exec, /home/chris/bin/volup
 | 
			
		||||
binde = , XF86AudioLowerVolume, exec, /home/chris/bin/voldown
 | 
			
		||||
binde = ,F1, exec, pamixer -t
 | 
			
		||||
binde = ,F3, exec, /home/chris/bin/volup
 | 
			
		||||
binde = ,F2, exec, /home/chris/bin/voldown
 | 
			
		||||
binde = , XF86MonBrightnessUp, exec, brightnessctl s +10%
 | 
			
		||||
binde = , XF86MonBrightnessDown, exec, brightnessctl s 10%-
 | 
			
		||||
    bind = SUPER,o,movewindow,mon:l
 | 
			
		||||
    bind = SUPER,y,togglespecialworkspace
 | 
			
		||||
    bind = SUPER,i,movewindow,left
 | 
			
		||||
    bind = SUPERSHIFT,p,pin
 | 
			
		||||
    bind = SUPER,n,movetoworkspace,special
 | 
			
		||||
 | 
			
		||||
bind=SUPERCTRL,b,exec,eww.sh
 | 
			
		||||
bind=SUPERALT,n,exec,eww update rightside=true
 | 
			
		||||
    binde = , XF86AudioMute, exec, pamixer -t
 | 
			
		||||
    binde = , XF86AudioRaiseVolume, exec, /home/chris/bin/volup
 | 
			
		||||
    binde = , XF86AudioLowerVolume, exec, /home/chris/bin/voldown
 | 
			
		||||
    binde = ,F1, exec, pamixer -t
 | 
			
		||||
    binde = ,F3, exec, /home/chris/bin/volup
 | 
			
		||||
    binde = ,F2, exec, /home/chris/bin/voldown
 | 
			
		||||
    binde = , XF86MonBrightnessUp, exec, brightnessctl s +10%
 | 
			
		||||
    binde = , XF86MonBrightnessDown, exec, brightnessctl s 10%-
 | 
			
		||||
 | 
			
		||||
bindm=SUPER,mouse:272,movewindow
 | 
			
		||||
bindm=SUPER,mouse:273,resizewindow
 | 
			
		||||
    bind=SUPERCTRL,b,exec,/home/chris/bin/wb-toggle
 | 
			
		||||
    bind=SUPERALT,n,exec,eww update rightside=true
 | 
			
		||||
 | 
			
		||||
# Blur waybar
 | 
			
		||||
# blurls=gtk-layer-shell
 | 
			
		||||
# blurls=notifications
 | 
			
		||||
    bindm=SUPER,mouse:272,movewindow
 | 
			
		||||
    bindm=SUPER,mouse:273,resizewindow
 | 
			
		||||
 | 
			
		||||
exec-once = /home/chris/bin/startup.sh
 | 
			
		||||
exec-once = hyprpaper
 | 
			
		||||
exec-once = dunst
 | 
			
		||||
exec-once = hyprctl dispatch --batch "splitratio 1; splitration -0.35"
 | 
			
		||||
exec-once = dbus-update-activation-environment --systemd --all
 | 
			
		||||
exec-once = jellyfin-mpv-shim
 | 
			
		||||
exec-once = hyprctl setcursor phinger-cursors-light
 | 
			
		||||
exec-once = swayidle -w timeout 300 'swaylock -S --effect-blur 20x3 --fade-in 1 --effect-vignette 0.5:1 --grace 60' timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' before-sleep 'swaylock -S --effect-blur 20x3 --effect-vignette 0.5:1' 
 | 
			
		||||
    # Blur waybar
 | 
			
		||||
    # blurls=gtk-layer-shell
 | 
			
		||||
    # blurls=notifications
 | 
			
		||||
 | 
			
		||||
    exec-once = /home/chris/bin/startup.sh
 | 
			
		||||
    exec-once = swww init
 | 
			
		||||
    exec-once = swww img /home/chris/Pictures/wallpapers/nixorange.webp -t grow --transition-bezier .14,0,.14,.99
 | 
			
		||||
    exec-once = dunst
 | 
			
		||||
    exec-once = hyprctl dispatch --batch "splitratio 1; splitration -0.35"
 | 
			
		||||
    exec-once = dbus-update-activation-environment --all
 | 
			
		||||
    exec-once = jellyfin-mpv-shim
 | 
			
		||||
    exec-once = hyprctl setcursor phinger-cursors-light 24
 | 
			
		||||
    exec-once = swayidle -w timeout 300 'swaylock -S --effect-blur 20x3 --fade-in 1 --effect-vignette 0.5:1 --grace 60' timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' before-sleep 'swaylock -S --effect-blur 20x3 --effect-vignette 0.5:1' 
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										4
									
								
								.config/qt5ct/snazzy.conf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								.config/qt5ct/snazzy.conf
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,4 @@
 | 
			
		|||
[ColorScheme]
 | 
			
		||||
active_colors=#ff9aedfe, #ff34353e, #ff34353e, #ffe2e4e5, #ff78787e, #ffa5a5a9, #e2e4e5, #ffeff0eb, #ffe2e4e5, #ff34353e, #ff282a36, #ff78787e, #ff43454f, #5af78e, #ffff9f43, #ffff5c57, #ff43454f, #ffe2e4e5, #ff34353e, #ffff6ac1, #8fff6ac1
 | 
			
		||||
disabled_colors=#ffb2643c, #ff34353e, #ff34353e, #ffe2e4e5, #ff78787e, #ffa5a5a9, #e2e4e5, #ffb2643c, #ffb2643c, #ff34353e, #ff282a36, #ff78787e, #ff43454f, #5af78e, #ffff9f43, #ffff5c57, #ff43454f, #ffe2e4e5, #ff34353e, #ffb2643c, #8fb2643c
 | 
			
		||||
inactive_colors=#ff9aedfe, #ff34353e, #ff34353e, #ffe2e4e5, #ff78787e, #ffa5a5a9, #e2e4e5, #ffeff0eb, #ffe2e4e5, #43454f, #ff282a36, #ff78787e, #ff43454f, #5af78e, #ffff9f43, #ffff5c57, #ff43454f, #ffe2e4e5, #ff34353e, #ffff6ac1, #8fff6ac1
 | 
			
		||||
							
								
								
									
										9
									
								
								.config/starship.toml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								.config/starship.toml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,9 @@
 | 
			
		|||
# Get editor completions based on the config schema
 | 
			
		||||
"$schema" = 'https://starship.rs/config-schema.json'
 | 
			
		||||
 | 
			
		||||
# Inserts a blank line between shell prompts
 | 
			
		||||
add_newline = true
 | 
			
		||||
 | 
			
		||||
# Replace the '❯' symbol in the prompt with '➜'
 | 
			
		||||
[character] # The name of the module we are configuring is 'character'
 | 
			
		||||
success_symbol = '[❯](bold green)' # The 'success_symbol' segment is being set to '➜' with the color 'bold green'
 | 
			
		||||
							
								
								
									
										13
									
								
								.config/starship/init.sh
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								.config/starship/init.sh
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,13 @@
 | 
			
		|||
 | 
			
		||||
__main() {
 | 
			
		||||
    local major="${BASH_VERSINFO[0]}"
 | 
			
		||||
    local minor="${BASH_VERSINFO[1]}"
 | 
			
		||||
 | 
			
		||||
    if ((major > 4)) || { ((major == 4)) && ((minor >= 1)); }; then
 | 
			
		||||
        source <(/home/chris/.nix-profile/bin/starship init bash --print-full-init)
 | 
			
		||||
    else
 | 
			
		||||
        source /dev/stdin <<<"$(/home/chris/.nix-profile/bin/starship init bash --print-full-init)"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
__main
 | 
			
		||||
unset -f __main
 | 
			
		||||
| 
						 | 
				
			
			@ -50,8 +50,8 @@
 | 
			
		|||
                      padding: 0.4rem;
 | 
			
		||||
                 }
 | 
			
		||||
 | 
			
		||||
#completions table {    font-size: 1.0rem;
 | 
			
		||||
                        font-weight: 500;
 | 
			
		||||
#completions table {    font-size: 1.0rem !important;
 | 
			
		||||
                        font-weight: 800 !important;
 | 
			
		||||
                        border-spacing: 0;
 | 
			
		||||
                        table-layout: fixed;
 | 
			
		||||
                        padding: 1rem;
 | 
			
		||||
| 
						 | 
				
			
			@ -69,7 +69,7 @@
 | 
			
		|||
                  color: var(--tridactyl-fg);
 | 
			
		||||
                  background: var(--tridactyl-bg);
 | 
			
		||||
                  display: inline-block;
 | 
			
		||||
                  font-size: unset;
 | 
			
		||||
                  font-size: 1.0rem !important;
 | 
			
		||||
                  font-weight: 600 !important;
 | 
			
		||||
                  overflow: hidden;
 | 
			
		||||
                  width: 100%;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,12 +1,12 @@
 | 
			
		|||
{
 | 
			
		||||
    // "layer": "top", // Waybar at top layer
 | 
			
		||||
    "layer": "top", // Waybar at top layer
 | 
			
		||||
    "position": "bottom", // Waybar position (top|bottom|left|right)
 | 
			
		||||
    "height": 30, // Waybar height (to be removed for auto height)
 | 
			
		||||
    // "width": 1280, // Waybar width
 | 
			
		||||
    "height": 35, // Waybar height (to be removed for auto height)
 | 
			
		||||
    "width": 1400, // Waybar width
 | 
			
		||||
    // Choose the order of the modules "custom/wintitle", 
 | 
			
		||||
    "modules-left": ["workspaces", "hyprland/window"],
 | 
			
		||||
    "modules-left": ["wlr/workspaces", "workspaces", "hyprland/window"],
 | 
			
		||||
    "modules-center": ["clock"],
 | 
			
		||||
    "modules-right": ["pulseaudio", "backlight", "network", "memory", "cpu", "battery", "battery#bat2", "tray"],
 | 
			
		||||
    "modules-right": ["pulseaudio", "backlight", "temperature", "memory", "cpu", "battery", "tray"],
 | 
			
		||||
    "margin-top": -5,
 | 
			
		||||
    "margin-bottom": 8,
 | 
			
		||||
    "margin-left": 6,
 | 
			
		||||
| 
						 | 
				
			
			@ -31,11 +31,16 @@
 | 
			
		|||
        "num-tags": 8
 | 
			
		||||
    },
 | 
			
		||||
    "hyprland/window": {
 | 
			
		||||
        "format": "  {}"
 | 
			
		||||
        "format": "  <span style='italic'>{}</span>"
 | 
			
		||||
    },
 | 
			
		||||
    "workspaces": {
 | 
			
		||||
        "format": " {name} "
 | 
			
		||||
    },
 | 
			
		||||
    "wlr/workspaces": {
 | 
			
		||||
     "format": "{icon}",
 | 
			
		||||
     "on-scroll-up": "hyprctl dispatch workspace e+1",
 | 
			
		||||
     "on-scroll-down": "hyprctl dispatch workspace e-1"
 | 
			
		||||
    },
 | 
			
		||||
    "sway/mode": {
 | 
			
		||||
        "format": "<span style=\"italic\">  {}</span>"
 | 
			
		||||
    },
 | 
			
		||||
| 
						 | 
				
			
			@ -54,25 +59,25 @@
 | 
			
		|||
        // "timezone": "America/New_York",
 | 
			
		||||
        "tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
 | 
			
		||||
        "format-alt": "{:%Y-%m-%d}",
 | 
			
		||||
        "format": "{:%a %b%e, %I:%M %p}"
 | 
			
		||||
        "format": "{:%a %b %e, %I:%M %p}"
 | 
			
		||||
    },
 | 
			
		||||
    "cpu": {
 | 
			
		||||
        "format": " {usage}%",
 | 
			
		||||
        "format": "  {usage}%",
 | 
			
		||||
    },
 | 
			
		||||
    "memory": {
 | 
			
		||||
        "format": " {}%"
 | 
			
		||||
        "format": "  {}%"
 | 
			
		||||
    },
 | 
			
		||||
    "temperature": {
 | 
			
		||||
        // "thermal-zone": 2,
 | 
			
		||||
        // "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
 | 
			
		||||
        "critical-threshold": 80,
 | 
			
		||||
        // "format-critical": "{temperatureC}°C {icon}",
 | 
			
		||||
        "format": "{temperatureC}°C {icon}",
 | 
			
		||||
        "format-icons": ["", "", ""]
 | 
			
		||||
        "format": "{icon} {temperatureC}°C",
 | 
			
		||||
        "format-icons": ["", "", ""]
 | 
			
		||||
    },
 | 
			
		||||
    "backlight": {
 | 
			
		||||
        // "device": "acpi_video1",
 | 
			
		||||
        "format": "{icon} {percent}%",
 | 
			
		||||
        "format": "{icon}  {percent}%",
 | 
			
		||||
        "format-icons": ["", ""]
 | 
			
		||||
    },
 | 
			
		||||
    "battery": {
 | 
			
		||||
| 
						 | 
				
			
			@ -82,13 +87,13 @@
 | 
			
		|||
            "critical": 15
 | 
			
		||||
        },
 | 
			
		||||
        "format": "{icon} {capacity}%",
 | 
			
		||||
        "format-charging": " {capacity}%",
 | 
			
		||||
        "format-charging": "{icon} {capacity}%",
 | 
			
		||||
        "format-plugged": " {capacity}%",
 | 
			
		||||
        "format-alt": "{time} {icon}",
 | 
			
		||||
        "format-good": "", // An empty format will hide the module
 | 
			
		||||
        "format-full": "",
 | 
			
		||||
        "format-icons": [" ", " ", " ", " ", " "],
 | 
			
		||||
        "format-charging-icons": [" ", " ", " ", " ", " "]
 | 
			
		||||
        "format-good": "{icon} {capacity}%", // An empty format will hide the module
 | 
			
		||||
        "format-full": " {capacity}%",
 | 
			
		||||
        "format-icons": ["", "", "", "", ""],
 | 
			
		||||
        "format-charging-icons": ["", "", "", "", ""]
 | 
			
		||||
    },
 | 
			
		||||
    "battery#bat2": {
 | 
			
		||||
        "bat": "BAT2",
 | 
			
		||||
| 
						 | 
				
			
			@ -108,11 +113,11 @@
 | 
			
		|||
    },
 | 
			
		||||
    "network": {
 | 
			
		||||
        // "interface": "wlp2*", // (Optional) To force the use of this interface
 | 
			
		||||
        "format-wifi": " {essid} ({signalStrength}%)",
 | 
			
		||||
        "format-wifi": "  ({signalStrength}%)",
 | 
			
		||||
        "format-ethernet": " {ipaddr}",
 | 
			
		||||
        "format-linked": "{ifname} (No IP) ",
 | 
			
		||||
        "format-disconnected": "Disconnected ⚠",
 | 
			
		||||
        "format-alt": "{ifname}: {ipaddr}/{cidr}"
 | 
			
		||||
        "format-alt": "{ifname}: {essid} {ipaddr}/{cidr}",
 | 
			
		||||
    },
 | 
			
		||||
    "pulseaudio": {
 | 
			
		||||
        // "scroll-step": 1, // %, can be a float
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -36,19 +36,21 @@ window {
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
window#waybar > box {
 | 
			
		||||
    padding-top: 3px;
 | 
			
		||||
    padding-top: 5px;
 | 
			
		||||
    padding-bottom: 3px;
 | 
			
		||||
    padding-left: 3px;
 | 
			
		||||
    padding-right: 10px;
 | 
			
		||||
    color:      @base05;
 | 
			
		||||
    box-shadow: 2px 2px 5px 5px #101010;
 | 
			
		||||
    box-shadow: 5px 5px 3px 3px #101010;
 | 
			
		||||
    margin: 12px 14px 14px 14px;
 | 
			
		||||
    background: @base00;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#workspaces {
 | 
			
		||||
    border-radius: 20px;
 | 
			
		||||
    margin-left: 10px;
 | 
			
		||||
    padding-right: 10px;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
    background: transparent;
 | 
			
		||||
    transition: none;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -56,7 +58,7 @@ window#waybar > box {
 | 
			
		|||
    border-radius: 20px;
 | 
			
		||||
    margin-left: 6px;
 | 
			
		||||
    padding-right: 10px;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
    background: transparent;
 | 
			
		||||
    transition: none;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -112,7 +114,7 @@ window#waybar > box {
 | 
			
		|||
    border-radius: 20px;
 | 
			
		||||
    transition: none;
 | 
			
		||||
    color: @base0B;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
    background: transparent;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#backlight {
 | 
			
		||||
| 
						 | 
				
			
			@ -123,7 +125,7 @@ window#waybar > box {
 | 
			
		|||
    border-radius: 20px;
 | 
			
		||||
    transition: none;
 | 
			
		||||
    color: @base08;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
    background: transparent;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#battery.warning {
 | 
			
		||||
| 
						 | 
				
			
			@ -144,7 +146,7 @@ window#waybar > box {
 | 
			
		|||
    border-radius: 20px;
 | 
			
		||||
    transition: none;
 | 
			
		||||
    color: @base09;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
    background: transparent;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#network {
 | 
			
		||||
| 
						 | 
				
			
			@ -153,7 +155,7 @@ window#waybar > box {
 | 
			
		|||
    border-radius: 20px;
 | 
			
		||||
    transition: none;
 | 
			
		||||
    color: @base0B;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
    background: transparent;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#cpu {
 | 
			
		||||
| 
						 | 
				
			
			@ -162,7 +164,7 @@ window#waybar > box {
 | 
			
		|||
    border-radius: 20px;
 | 
			
		||||
    transition: none;
 | 
			
		||||
    color: @base09;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
    background: transparent;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#battery {
 | 
			
		||||
| 
						 | 
				
			
			@ -171,7 +173,7 @@ window#waybar > box {
 | 
			
		|||
    border-radius: 20px;
 | 
			
		||||
    transition: none;
 | 
			
		||||
    color: @base0D;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
    background: transparent;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#battery.bat2 {
 | 
			
		||||
| 
						 | 
				
			
			@ -184,7 +186,7 @@ window#waybar > box {
 | 
			
		|||
    border-radius: 20px;
 | 
			
		||||
    transition: none;
 | 
			
		||||
    color: @base0C;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
    background: transparent;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#temperature {
 | 
			
		||||
| 
						 | 
				
			
			@ -193,7 +195,7 @@ window#waybar > box {
 | 
			
		|||
    border-radius: 20px;
 | 
			
		||||
    transition: none;
 | 
			
		||||
    color: @base0E;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
    background: transparent;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#tray {
 | 
			
		||||
| 
						 | 
				
			
			@ -202,6 +204,6 @@ window#waybar > box {
 | 
			
		|||
    border-radius: 20px;
 | 
			
		||||
    transition: none;
 | 
			
		||||
    color: @base0E;
 | 
			
		||||
    background: @backtransparent;
 | 
			
		||||
    background: transparent;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,8 +2,9 @@
 | 
			
		|||
        (name 'guix)
 | 
			
		||||
        (url "https://git.savannah.gnu.org/git/guix.git")
 | 
			
		||||
        (branch "master")
 | 
			
		||||
        (commit
 | 
			
		||||
          "654fcf9971bb01389d577be07c6ec0f68940c743")
 | 
			
		||||
        ;; (commit
 | 
			
		||||
        ;;   "654fcf9971bb01389d577be07c6ec0f68940c743")
 | 
			
		||||
        (commit "d884fc9e2efecfba09af4694f5a13ad7fc6f704f")
 | 
			
		||||
        (introduction
 | 
			
		||||
          (make-channel-introduction
 | 
			
		||||
            "9edb3f66fd807b096b48283debdcddccfea34bad"
 | 
			
		||||
| 
						 | 
				
			
			@ -13,8 +14,9 @@
 | 
			
		|||
        (name 'nonguix)
 | 
			
		||||
        (url "https://gitlab.com/nonguix/nonguix")
 | 
			
		||||
        (branch "master")
 | 
			
		||||
        (commit
 | 
			
		||||
          "c323f4c866cdf7c9fb958ed968b80e0911ecd899")
 | 
			
		||||
        ;; (commit
 | 
			
		||||
        ;;   "c323f4c866cdf7c9fb958ed968b80e0911ecd899")
 | 
			
		||||
        (commit "bf13c6b5f32980582e8c19b509c6825e86b953dd")
 | 
			
		||||
        (introduction
 | 
			
		||||
          (make-channel-introduction
 | 
			
		||||
            "897c1a470da759236cc11798f4e0a5f7d4d59fbc"
 | 
			
		||||
| 
						 | 
				
			
			@ -22,10 +24,27 @@
 | 
			
		|||
             "2A39 3FFF 68F4 EF7A 3D29  12AF 6F51 20A0 22FB B2D5"))))
 | 
			
		||||
      (channel
 | 
			
		||||
       (name 'rosenthal)
 | 
			
		||||
       (url "https://github.com/rakino/rosenthal")
 | 
			
		||||
       (url "https://codeberg.org/hako/rosenthal.git")
 | 
			
		||||
       (branch "trunk")
 | 
			
		||||
       (introduction
 | 
			
		||||
        (make-channel-introduction
 | 
			
		||||
         "7677db76330121a901604dfbad19077893865f35"
 | 
			
		||||
         (openpgp-fingerprint
 | 
			
		||||
          "13E7 6CD6 E649 C28C 3385  4DF5 5E5A A665 6149 17F7")))))
 | 
			
		||||
          "13E7 6CD6 E649 C28C 3385  4DF5 5E5A A665 6149 17F7"))))
 | 
			
		||||
      (channel
 | 
			
		||||
       (name 'rde)
 | 
			
		||||
       (url "https://git.sr.ht/~abcdw/rde")
 | 
			
		||||
       (introduction
 | 
			
		||||
        (make-channel-introduction
 | 
			
		||||
         "257cebd587b66e4d865b3537a9a88cccd7107c95"
 | 
			
		||||
         (openpgp-fingerprint
 | 
			
		||||
          "2841 9AC6 5038 7440 C7E9  2FFA 2208 D209 58C1 DEB0"))))
 | 
			
		||||
      ;; (channel
 | 
			
		||||
      ;;  (name 'emacs)
 | 
			
		||||
      ;;  (url "https://github.com/babariviere/guix-emacs")
 | 
			
		||||
      ;;  (introduction
 | 
			
		||||
      ;;   (make-channel-introduction
 | 
			
		||||
      ;;    "72ca4ef5b572fea10a4589c37264fa35d4564783"
 | 
			
		||||
      ;;    (openpgp-fingerprint
 | 
			
		||||
      ;;     "261C A284 3452 FB01 F6DF  6CF4 F9B7 864F 2AB4 6F18"))))
 | 
			
		||||
      )
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										99
									
								
								guix/home-services/pipewire.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										99
									
								
								guix/home-services/pipewire.scm
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,99 @@
 | 
			
		|||
(define-module (home-services pipewire)
 | 
			
		||||
  #:use-module (gnu packages)
 | 
			
		||||
  #:use-module (gnu packages linux)
 | 
			
		||||
  #:use-module (gnu services)
 | 
			
		||||
  #:use-module (gnu services configuration)
 | 
			
		||||
  #:use-module (gnu home services)
 | 
			
		||||
  #:use-module (gnu home services shepherd)
 | 
			
		||||
  #:use-module (guix gexp))
 | 
			
		||||
 | 
			
		||||
(define (home-pipewire-profile-service config)
 | 
			
		||||
  (map specification->package
 | 
			
		||||
       (list "pipewire"
 | 
			
		||||
             "wireplumber")))
 | 
			
		||||
 | 
			
		||||
(define (home-pipewire-shepherd-service config)
 | 
			
		||||
  (list
 | 
			
		||||
   ;; Start Pipewire daemon
 | 
			
		||||
   (shepherd-service
 | 
			
		||||
    (requirement '(dbus))
 | 
			
		||||
    (provision '(pipewire))
 | 
			
		||||
    (stop  #~(make-kill-destructor))
 | 
			
		||||
    (start #~(make-forkexec-constructor
 | 
			
		||||
              (list #$(file-append pipewire "/bin/pipewire"))
 | 
			
		||||
              #:log-file (string-append
 | 
			
		||||
                          (or (getenv "XDG_LOG_HOME")
 | 
			
		||||
                              (format #f "~a/.local/var/log"
 | 
			
		||||
                                      (getenv "HOME")))
 | 
			
		||||
                          "/pipewire.log")
 | 
			
		||||
              #:environment-variables
 | 
			
		||||
              (append (list "DISABLE_RTKIT=1")
 | 
			
		||||
                      (default-environment-variables)))))
 | 
			
		||||
   ;; Start Pipewire PulseAudio module
 | 
			
		||||
   (shepherd-service
 | 
			
		||||
    (requirement '(pipewire))
 | 
			
		||||
    (provision '(pipewire-pulse))
 | 
			
		||||
    (stop  #~(make-kill-destructor))
 | 
			
		||||
    (start #~(make-forkexec-constructor
 | 
			
		||||
              (list #$(file-append pipewire "/bin/pipewire-pulse"))
 | 
			
		||||
              #:log-file (string-append
 | 
			
		||||
                          (or (getenv "XDG_LOG_HOME")
 | 
			
		||||
                              (format #f "~a/.local/var/log"
 | 
			
		||||
                                      (getenv "HOME")))
 | 
			
		||||
                          "/pipewire-pulse.log")
 | 
			
		||||
              #:environment-variables
 | 
			
		||||
              (append (list "DISABLE_RTKIT=1")
 | 
			
		||||
                      (default-environment-variables)))))
 | 
			
		||||
   ;; Start Wireplumber session manager
 | 
			
		||||
   (shepherd-service
 | 
			
		||||
    (requirement '(pipewire))
 | 
			
		||||
    (provision '(wireplumber))
 | 
			
		||||
    (stop  #~(make-kill-destructor))
 | 
			
		||||
    (start #~(make-forkexec-constructor
 | 
			
		||||
              (list #$(file-append wireplumber "/bin/wireplumber"))
 | 
			
		||||
              #:log-file (string-append
 | 
			
		||||
                          (or (getenv "XDG_LOG_HOME")
 | 
			
		||||
                              (format #f "~a/.local/var/log"
 | 
			
		||||
                                      (getenv "HOME")))
 | 
			
		||||
                          "/wireplumber.log")
 | 
			
		||||
              #:environment-variables
 | 
			
		||||
              (append (list "DISABLE_RTKIT=1")
 | 
			
		||||
                      (default-environment-variables)))))))
 | 
			
		||||
 | 
			
		||||
(define (home-pipewire-xdg-configuration-service config)
 | 
			
		||||
  `(("alsa/asoundrc"
 | 
			
		||||
     ,(mixed-text-file
 | 
			
		||||
       "asoundrc"
 | 
			
		||||
       #~(string-append
 | 
			
		||||
          "<"
 | 
			
		||||
	        #$(file-append
 | 
			
		||||
             pipewire "/share/alsa/alsa.conf.d/50-pipewire.conf")
 | 
			
		||||
	        ">\n<"
 | 
			
		||||
	        #$(file-append
 | 
			
		||||
             pipewire "/share/alsa/alsa.conf.d/99-pipewire-default.conf")
 | 
			
		||||
          ">\n"
 | 
			
		||||
          "
 | 
			
		||||
pcm_type.pipewire {
 | 
			
		||||
  lib " #$(file-append pipewire "/lib/alsa-lib/libasound_module_pcm_pipewire.so")
 | 
			
		||||
  "
 | 
			
		||||
}
 | 
			
		||||
ctl_type.pipewire {
 | 
			
		||||
  lib " #$(file-append pipewire "/lib/alsa-lib/libasound_module_ctl_pipewire.so")
 | 
			
		||||
  "
 | 
			
		||||
}
 | 
			
		||||
")))))
 | 
			
		||||
 | 
			
		||||
(define-public home-pipewire-service-type
 | 
			
		||||
  (service-type (name 'home-pipewire)
 | 
			
		||||
                (extensions
 | 
			
		||||
                 (list (service-extension
 | 
			
		||||
                        home-profile-service-type
 | 
			
		||||
                        home-pipewire-profile-service)
 | 
			
		||||
                       (service-extension
 | 
			
		||||
                        home-shepherd-service-type
 | 
			
		||||
                        home-pipewire-shepherd-service)
 | 
			
		||||
                       (service-extension
 | 
			
		||||
                        home-xdg-configuration-files-service-type
 | 
			
		||||
                        home-pipewire-xdg-configuration-service)))
 | 
			
		||||
                (default-value #f)
 | 
			
		||||
                (description "Configures and runs the Pipewire audio system.")))
 | 
			
		||||
							
								
								
									
										32
									
								
								guix/home-services/udiskie.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								guix/home-services/udiskie.scm
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,32 @@
 | 
			
		|||
(define-module (home-services udiskie)
 | 
			
		||||
  #:use-module (gnu services)
 | 
			
		||||
  #:use-module (gnu home services)
 | 
			
		||||
  #:use-module (gnu home services shepherd)
 | 
			
		||||
  #:use-module (gnu packages freedesktop)
 | 
			
		||||
  #:use-module (gnu services configuration)
 | 
			
		||||
  #:use-module (guix gexp)
 | 
			
		||||
 | 
			
		||||
  #:export (home-udiskie-service-type))
 | 
			
		||||
 | 
			
		||||
(define (home-udiskie-profile-service config)
 | 
			
		||||
  (list udiskie))
 | 
			
		||||
 | 
			
		||||
(define (home-udiskie-shepherd-service config)
 | 
			
		||||
  (list
 | 
			
		||||
   (shepherd-service
 | 
			
		||||
    (provision '(udiskie))
 | 
			
		||||
    (documentation "Run and control udiskie.")
 | 
			
		||||
    (start #~(make-forkexec-constructor '("udiskie" "-t")))
 | 
			
		||||
    (stop #~(make-kill-destructor)))))
 | 
			
		||||
 | 
			
		||||
(define home-udiskie-service-type
 | 
			
		||||
  (service-type (name 'home-udiskie)
 | 
			
		||||
                (description "A service for launching Udiskie.")
 | 
			
		||||
                (extensions
 | 
			
		||||
                 (list (service-extension
 | 
			
		||||
                        home-profile-service-type
 | 
			
		||||
                        home-udiskie-profile-service)
 | 
			
		||||
                       (service-extension
 | 
			
		||||
                        home-shepherd-service-type
 | 
			
		||||
                        home-udiskie-shepherd-service)))
 | 
			
		||||
                (default-value #f)))
 | 
			
		||||
							
								
								
									
										15
									
								
								guix/home.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								guix/home.nix
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,15 @@
 | 
			
		|||
{ config, pkgs, ... }:
 | 
			
		||||
 | 
			
		||||
{
 | 
			
		||||
  home.username = "chris";
 | 
			
		||||
  home.homeDirectory = "/home/chris";
 | 
			
		||||
  home.stateVersion = "23.05";
 | 
			
		||||
  programs.home-manager.enable = true;
 | 
			
		||||
  home.packages = with pkgs; [
 | 
			
		||||
    eww-wayland
 | 
			
		||||
    swww
 | 
			
		||||
    starship
 | 
			
		||||
    # The guix version of dolphin isn't built for wayland and can't find the icon theme
 | 
			
		||||
    dolphin
 | 
			
		||||
  ];
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										208
									
								
								guix/home.scm
									
										
									
									
									
								
							
							
						
						
									
										208
									
								
								guix/home.scm
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -4,34 +4,136 @@
 | 
			
		|||
;; need to capture the channels being used, as returned by "guix describe".
 | 
			
		||||
;; See the "Replicating Guix" section in the manual.
 | 
			
		||||
 | 
			
		||||
(use-modules (gnu home)
 | 
			
		||||
             (gnu home services)
 | 
			
		||||
             (gnu packages)
 | 
			
		||||
	     (gnu packages vim)
 | 
			
		||||
	     (gnu packages rust-apps)
 | 
			
		||||
	     (gnu packages video)
 | 
			
		||||
             (gnu services)
 | 
			
		||||
             (guix gexp)
 | 
			
		||||
             (gnu home services shells))
 | 
			
		||||
(define-module (home)
 | 
			
		||||
  #:use-module (home-services pipewire)
 | 
			
		||||
  #:use-module (gnu home)
 | 
			
		||||
  #:use-module (gnu home services)
 | 
			
		||||
  #:use-module (gnu home services desktop)
 | 
			
		||||
  #:use-module (gnu home services shells)
 | 
			
		||||
  #:use-module (gnu home services xdg)
 | 
			
		||||
  #:use-module (gnu home services gnupg)
 | 
			
		||||
  #:use-module (gnu packages)
 | 
			
		||||
  #:use-module (gnu packages vim)
 | 
			
		||||
  #:use-module (gnu packages rust-apps)
 | 
			
		||||
  #:use-module (gnu packages video)
 | 
			
		||||
  #:use-module (gnu packages gnupg)
 | 
			
		||||
  #:use-module (gnu services)
 | 
			
		||||
  #:use-module (guix gexp)
 | 
			
		||||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module (guix build-system emacs)
 | 
			
		||||
  #:use-module ((guix licenses) #:prefix license:))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
;; (define home-scripts
 | 
			
		||||
;;   (package
 | 
			
		||||
;;    (name "home-scripts")
 | 
			
		||||
;;    (version "0.1")
 | 
			
		||||
;;    (source (local-file "../scripts" #:recursive #t))
 | 
			
		||||
;;    (build-system copy-build-system)
 | 
			
		||||
;;    (arguments
 | 
			
		||||
;;     `(#:install-plan
 | 
			
		||||
;;       '(())))))
 | 
			
		||||
 | 
			
		||||
(define emacs-dired-rsync
 | 
			
		||||
  (let ((commit "c4f484bff94ed2ddfe0fa45f1e695a1637e1a35a")
 | 
			
		||||
        (revision "0"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "emacs-dired-rsync")
 | 
			
		||||
      (version (git-version "0.0.1" revision commit))
 | 
			
		||||
      (source
 | 
			
		||||
       (origin
 | 
			
		||||
         (method git-fetch)
 | 
			
		||||
         (uri (git-reference
 | 
			
		||||
               (url "https://github.com/stsquad/dired-rsync.git")
 | 
			
		||||
               (commit commit)))
 | 
			
		||||
         (file-name (git-file-name name version))
 | 
			
		||||
         (sha256
 | 
			
		||||
          (base32
 | 
			
		||||
           "0000000000000000000000000000000000000000000000000000"))))
 | 
			
		||||
      (build-system emacs-build-system)
 | 
			
		||||
      (arguments (list #:emacs emacs-next-pgtk))
 | 
			
		||||
      (license license:gpl3+)
 | 
			
		||||
      (home-page "https://github.com/stsquad/dired-rsync.git")
 | 
			
		||||
      (synopsis "dired-rsync – asynchronous rsync from dired")
 | 
			
		||||
      (description "\
 | 
			
		||||
This package adds the command dired-rsync which allows the user to copy
 | 
			
		||||
marked files in a dired buffer via rsync."))))
 | 
			
		||||
 | 
			
		||||
(home-environment
 | 
			
		||||
  ;; Below is the list of packages that will show up in your
 | 
			
		||||
  ;; Home profile, under ~/.guix-home/profile.
 | 
			
		||||
  (packages (specifications->packages (list "vim"
 | 
			
		||||
                                            "exa"
 | 
			
		||||
                                            "unzip"
 | 
			
		||||
                                            "rsync"
 | 
			
		||||
                                            "openssh"
 | 
			
		||||
                                            "gcc-toolchain"
 | 
			
		||||
                                            "make"
 | 
			
		||||
                                            "curl"
 | 
			
		||||
					    "mpv"
 | 
			
		||||
					    "mpv-mpris"
 | 
			
		||||
					    "yt-dlp"
 | 
			
		||||
                                            "tmux"
 | 
			
		||||
                                            "direnv"
 | 
			
		||||
                                            "dutree"
 | 
			
		||||
                                            "btop"
 | 
			
		||||
                                            "htop"
 | 
			
		||||
                                            "ripgrep"
 | 
			
		||||
                                            "alacritty"
 | 
			
		||||
                                            "libnotify"
 | 
			
		||||
                                            "nextcloud-client"
 | 
			
		||||
                                            "rofi-wayland"
 | 
			
		||||
                                            "waybar"
 | 
			
		||||
                                            "qt5ct"
 | 
			
		||||
                                            "fd"
 | 
			
		||||
                                            "bc"
 | 
			
		||||
                                            "sysstat"
 | 
			
		||||
                                            "ffmpeg"
 | 
			
		||||
                                            "dolphin"
 | 
			
		||||
                                            "pandoc"
 | 
			
		||||
                                            "grim"
 | 
			
		||||
                                            "slurp"
 | 
			
		||||
                                            "imv"
 | 
			
		||||
                                            "openjdk"
 | 
			
		||||
                                            ;; "dolphin"
 | 
			
		||||
                                            "kwallet"
 | 
			
		||||
                                            "kwallet-pam"
 | 
			
		||||
                                            "breeze"
 | 
			
		||||
                                            "breeze-icons"
 | 
			
		||||
                                            "kdeconnect"
 | 
			
		||||
                                            "pinentry"
 | 
			
		||||
                                            "pinentry-qt"
 | 
			
		||||
                                            "pinentry-gnome3"
 | 
			
		||||
                                            "pinentry-rofi"
 | 
			
		||||
                                            "pulsemixer"
 | 
			
		||||
                                            "python-pulsectl"
 | 
			
		||||
                                            "dunst"
 | 
			
		||||
                                            "rbw"
 | 
			
		||||
                                            "aspell"
 | 
			
		||||
                                            "aspell-dict-en"
 | 
			
		||||
                                            "alsa-utils"
 | 
			
		||||
                                            "lightly"
 | 
			
		||||
                                            "swaylock-effects"
 | 
			
		||||
                                            "swayidle"
 | 
			
		||||
                                            "wtype"
 | 
			
		||||
                                            "brightnessctl"
 | 
			
		||||
                                            "flatpak"
 | 
			
		||||
                                            "flatpak-xdg-utils"
 | 
			
		||||
                                            "xdg-utils"
 | 
			
		||||
                                            "xdg-desktop-portal"
 | 
			
		||||
                                            "xdg-desktop-portal-kde"
 | 
			
		||||
                                            "papirus-icon-theme"
 | 
			
		||||
                                            "font-google-noto"
 | 
			
		||||
                                            "font-google-noto-emoji"
 | 
			
		||||
                                            "enchant"
 | 
			
		||||
                                            "blesh"
 | 
			
		||||
                                            "ncurses"
 | 
			
		||||
                                            "emacs-next-pgtk"
 | 
			
		||||
                                            "emacs-dired-rsync"
 | 
			
		||||
                                            "emacs-all-the-icons"
 | 
			
		||||
                                            "emacs-org-roam"
 | 
			
		||||
                                            "emacs-paredit"
 | 
			
		||||
                                            "emacs-evil-paredit"
 | 
			
		||||
                                            "emacs-doom-modeline"
 | 
			
		||||
                                            "emacs-doom-themes"
 | 
			
		||||
                                            "emacs-org"
 | 
			
		||||
| 
						 | 
				
			
			@ -52,6 +154,7 @@
 | 
			
		|||
                                            "emacs-evil-surround"
 | 
			
		||||
                                            "emacs-websocket"
 | 
			
		||||
                                            "emacs-org-modern"
 | 
			
		||||
                                            "emacs-org-web-tools"
 | 
			
		||||
                                            "emacs-org-re-reveal"
 | 
			
		||||
                                            "emacs-emojify"
 | 
			
		||||
                                            "emacs-pulsar"
 | 
			
		||||
| 
						 | 
				
			
			@ -97,13 +200,84 @@
 | 
			
		|||
                  (home-bash-configuration
 | 
			
		||||
                   (guix-defaults? #t)
 | 
			
		||||
                   (aliases '(("grep" . "grep --color=auto")
 | 
			
		||||
                              ("ll" . "ls -l")
 | 
			
		||||
                              ("ls" . "exa -l")
 | 
			
		||||
                              ("la" . "exa -la")))))
 | 
			
		||||
                              ("gh" . "guix home reconfigure ~/dotfiles/guix/home.scm")
 | 
			
		||||
                              ("gs" . "guix system reconfigure ~/dotfiles/guix/system.scm")))
 | 
			
		||||
                   (environment-variables
 | 
			
		||||
                    '(("QT_QPA_PLATFORM" . "wayland")
 | 
			
		||||
                      ("QT_QPA_PLATFORMTHEME" . "qt5ct")))
 | 
			
		||||
                   (bashrc (list (plain-file "blesh" "source .guix-home/profile/share/blesh/ble.sh")
 | 
			
		||||
                                 (plain-file "home-manager" "source .nix-profile/etc/profile.d/hm-session-vars.sh")
 | 
			
		||||
                                 ;;These need to be here so they are at the bottom and therefore after guix-defaults
 | 
			
		||||
                                 (plain-file "exal" "alias ls=\"exa -l\"")
 | 
			
		||||
                                 (plain-file "exala" "alias la=\"exa -la\"")
 | 
			
		||||
                                 (plain-file "less-color" "export LESS=\"--RAW-CONTROL-CHARS\"")
 | 
			
		||||
                                 (plain-file "man-colors" "[[ -f ~/.LESS_TERMCAP ]] && . ~/.LESS_TERMCAP")
 | 
			
		||||
                                 (plain-file "starship" "source .config/starship/init.sh")))))
 | 
			
		||||
         (simple-service 'extra-env-vars
 | 
			
		||||
          		 home-environment-variables-service-type
 | 
			
		||||
          		 `(("PATH" . "$PATH:/home/chris/bin:/home/chris/.nix-profile/bin")
 | 
			
		||||
                           ("QT_QPA_PLATFORM" . "wayland")
 | 
			
		||||
                           ("QT_QPA_PLATFORMTHEME" . "qt5ct")
 | 
			
		||||
                           ("LITERAL_VALUE" . ,(literal-string "${abc}"))))
 | 
			
		||||
         (service home-fish-service-type
 | 
			
		||||
                  (home-fish-configuration
 | 
			
		||||
                   (aliases '(("ls" . "exa -l")
 | 
			
		||||
                              ("gh" . "guix home reconfigure ~/.files/guix/home.scm")))))
 | 
			
		||||
         (service home-xdg-configuration-files-service-type
 | 
			
		||||
                  `(("hypr/hyprland.conf" ,(local-file "../.config/hypr/hyprland.conf"))
 | 
			
		||||
                    ("alacritty/alacritty.yml" ,(local-file "../.config/alacritty/alacritty.yml")))))))
 | 
			
		||||
                              ("gh" . "guix home reconfigure ~/dotfiles/guix/home.scm")
 | 
			
		||||
                              ("gs" . "guix system reconfigure ~/dotfiles/guix/system.scm")))))
 | 
			
		||||
         (simple-service 'config
 | 
			
		||||
                         home-xdg-configuration-files-service-type
 | 
			
		||||
                         `(("hypr" ,(local-file "../.config/hypr" #:recursive? #t))
 | 
			
		||||
                           ("tridactyl" ,(local-file "../.config/tridactyl" #:recursive? #t))
 | 
			
		||||
                           ("eww" ,(local-file "../.config/eww" #:recursive? #t))
 | 
			
		||||
                           ("waybar" ,(local-file "../.config/waybar" #:recursive? #t))
 | 
			
		||||
                           ("rofi" ,(local-file "../.config/rofi" #:recursive? #t))
 | 
			
		||||
                           ("dunst" ,(local-file "../.config/dunst" #:recursive? #t))
 | 
			
		||||
                           ("btop" ,(local-file "../.config/bpytop" #:recursive? #t))
 | 
			
		||||
                           ("mpv" ,(local-file "../.config/mpv" #:recursive? #t))
 | 
			
		||||
                           ("blesh" ,(local-file "../.config/blesh" #:recursive? #t))
 | 
			
		||||
                           ("starship" ,(local-file "../.config/starship" #:recursive? #t))
 | 
			
		||||
                           ("starship.toml" ,(local-file "../.config/starship.toml"))
 | 
			
		||||
                           ("guix/channels.scm" ,(local-file "channels.scm"))
 | 
			
		||||
                           ("home-manager/home.nix" ,(local-file "home.nix"))
 | 
			
		||||
                           ("qt5ct/colors/snazzy.conf" ,(local-file "../.config/qt5ct/snazzy.conf"))
 | 
			
		||||
                           ("alacritty/alacritty.yml" ,(local-file "../.config/alacritty/alacritty.yml"))))
 | 
			
		||||
         (simple-service 'scripts
 | 
			
		||||
                         home-files-service-type
 | 
			
		||||
                         `(("bin" ,(local-file "../scripts" #:recursive? #t))
 | 
			
		||||
                           (".mozilla/firefox/chris.default/chrome" ,(local-file "../.config/firefox/chrome" #:recursive? #t))))
 | 
			
		||||
 | 
			
		||||
         (service home-gpg-agent-service-type
 | 
			
		||||
                  (home-gpg-agent-configuration
 | 
			
		||||
                   (pinentry-program
 | 
			
		||||
                    (file-append pinentry-rofi "/bin/pinentry-rofi"))
 | 
			
		||||
                   (ssh-support? #t)
 | 
			
		||||
                   (default-cache-ttl 28800)
 | 
			
		||||
                   (max-cache-ttl 28800)
 | 
			
		||||
                   (default-cache-ttl-ssh 28800)
 | 
			
		||||
                   (max-cache-ttl-ssh 28800)))
 | 
			
		||||
 | 
			
		||||
         (service home-xdg-user-directories-service-type
 | 
			
		||||
                  (home-xdg-user-directories-configuration
 | 
			
		||||
                   (videos "$HOME/vids")
 | 
			
		||||
                   (pictures "$HOME/pics")
 | 
			
		||||
                   (download "$HOME/dls")
 | 
			
		||||
                   (documents "$HOME/docs")
 | 
			
		||||
                   (music "$HOME/music")
 | 
			
		||||
                   (templates "$HOME")
 | 
			
		||||
                   (desktop "$HOME")
 | 
			
		||||
                   (publicshare "$HOME")))
 | 
			
		||||
         (service home-xdg-mime-applications-service-type
 | 
			
		||||
                  (home-xdg-mime-applications-configuration
 | 
			
		||||
                   (default '(("video/mp4" . "mpv.desktop")
 | 
			
		||||
                              ("video/webm" . "mpv.desktop")
 | 
			
		||||
                              ("video/x-matroska" . "mpv.destop")
 | 
			
		||||
                              ("audio/opus" . "mpv-slow.desktop")))
 | 
			
		||||
                   (desktop-entries
 | 
			
		||||
                    (list (xdg-desktop-entry
 | 
			
		||||
                           (file "mpv-slow")
 | 
			
		||||
                           (name "MPV for Audio and Streams")
 | 
			
		||||
                           (type 'application)
 | 
			
		||||
                           (config
 | 
			
		||||
                            '((exec . "mpv --profile=slow %U"))))))))
 | 
			
		||||
         (service home-pipewire-service-type)
 | 
			
		||||
         (service home-dbus-service-type))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1 +0,0 @@
 | 
			
		|||
Subproject commit dd7519aa20948e42469eccc3c7c99c1633420a07
 | 
			
		||||
							
								
								
									
										179
									
								
								guix/system.scm
									
										
									
									
									
								
							
							
						
						
									
										179
									
								
								guix/system.scm
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -10,14 +10,54 @@
 | 
			
		|||
;; Indicate which modules to import to access the variables
 | 
			
		||||
;; used in this configuration.
 | 
			
		||||
(use-modules (gnu)
 | 
			
		||||
             (gnu services)
 | 
			
		||||
             (gnu services shepherd)
 | 
			
		||||
             (gnu services dbus)
 | 
			
		||||
             (gnu system)
 | 
			
		||||
             (gnu system setuid)
 | 
			
		||||
             (gnu system nss)
 | 
			
		||||
             (rosenthal packages wm)
 | 
			
		||||
	     (nongnu packages linux)
 | 
			
		||||
	     (nongnu system linux-initrd))
 | 
			
		||||
(use-service-modules cups desktop networking ssh xorg)
 | 
			
		||||
 | 
			
		||||
(use-service-modules cups desktop networking ssh xorg avahi
 | 
			
		||||
                     admin base nix dbus pm audio virtualization sysctl)
 | 
			
		||||
 | 
			
		||||
(use-package-modules nfs certs shells ssh linux bash emacs gnome networking wm fonts glib libusb
 | 
			
		||||
                     cups freedesktop file-systems version-control package-management)
 | 
			
		||||
 | 
			
		||||
(define etc-sudoers-config
 | 
			
		||||
  (plain-file "etc-sudoers-config"
 | 
			
		||||
              "Defaults  timestamp_timeout=480
 | 
			
		||||
root      ALL=(ALL) ALL
 | 
			
		||||
%wheel    ALL=(ALL) ALL
 | 
			
		||||
YOUR-USER-NAME  ALL=(ALL) NOPASSWD:/run/current-system/profile/bin/chvt,/run/current-system/profile/bin/loginctl"))
 | 
			
		||||
 | 
			
		||||
(define my-desktop-services
 | 
			
		||||
  (modify-services %base-services
 | 
			
		||||
                   (guix-service-type config => (guix-configuration
 | 
			
		||||
                                                 (inherit config)
 | 
			
		||||
                                                 (substitute-urls
 | 
			
		||||
                                                  (append (list "https://substitutes.nonguix.org")
 | 
			
		||||
                                                          %default-substitute-urls))
 | 
			
		||||
                                                 (authorized-keys
 | 
			
		||||
                                                  (append (list (plain-file "nonguix.pub" "(public-key (ecc (curve Ed25519) (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)))"))
 | 
			
		||||
                                                          %default-authorized-guix-keys))))
 | 
			
		||||
                   ;; greetd-service-type provides "greetd" PAM service
 | 
			
		||||
                   (delete login-service-type)
 | 
			
		||||
                   (delete console-font-service-type)
 | 
			
		||||
                   ;; and can be used in place of mingetty-service-type
 | 
			
		||||
                   (delete mingetty-service-type)
 | 
			
		||||
                   (delete mingetty-service-type)
 | 
			
		||||
                   (delete mingetty-service-type)
 | 
			
		||||
                   (delete mingetty-service-type)
 | 
			
		||||
                   (delete mingetty-service-type)
 | 
			
		||||
                   (delete mingetty-service-type)))
 | 
			
		||||
 | 
			
		||||
(operating-system
 | 
			
		||||
 (kernel linux)
 | 
			
		||||
 (initrd microcode-initrd)
 | 
			
		||||
 (firmware (list linux-firmware))
 | 
			
		||||
  (kernel linux)
 | 
			
		||||
  (initrd microcode-initrd)
 | 
			
		||||
  (firmware (list linux-firmware))
 | 
			
		||||
  (locale "en_US.utf8")
 | 
			
		||||
  (timezone "America/Chicago")
 | 
			
		||||
  (keyboard-layout (keyboard-layout "us"))
 | 
			
		||||
| 
						 | 
				
			
			@ -25,49 +65,126 @@
 | 
			
		|||
 | 
			
		||||
  ;; The list of user accounts ('root' is implicit).
 | 
			
		||||
  (users (cons* (user-account
 | 
			
		||||
                  (name "chris")
 | 
			
		||||
                  (comment "Chris")
 | 
			
		||||
                  (group "users")
 | 
			
		||||
                  (home-directory "/home/chris")
 | 
			
		||||
                  (supplementary-groups '("wheel" "netdev" "audio" "video")))
 | 
			
		||||
                 (name "chris")
 | 
			
		||||
                 (comment "Chris")
 | 
			
		||||
                 (group "users")
 | 
			
		||||
                 (home-directory "/home/chris")
 | 
			
		||||
                 (supplementary-groups '("wheel" "netdev" "tty" "audio" "video")))
 | 
			
		||||
                %base-user-accounts))
 | 
			
		||||
 | 
			
		||||
  (sudoers-file etc-sudoers-config)
 | 
			
		||||
 | 
			
		||||
  ;; Packages installed system-wide.  Users can also install packages
 | 
			
		||||
  ;; under their own account: use 'guix search KEYWORD' to search
 | 
			
		||||
  ;; for packages and 'guix install PACKAGE' to install a package.
 | 
			
		||||
  (packages (append (list (specification->package "nss-certs")
 | 
			
		||||
			  (specification->package "sway")
 | 
			
		||||
			  (specification->package "dbus-glib")
 | 
			
		||||
                          (specification->package "hyprland")
 | 
			
		||||
			  (specification->package "emacs-next-pgtk"))
 | 
			
		||||
                    %base-packages))
 | 
			
		||||
 | 
			
		||||
  ;; Below is the list of system services.  To search for available
 | 
			
		||||
  ;; services, run 'guix system search KEYWORD' in a terminal.
 | 
			
		||||
  (services
 | 
			
		||||
   (append (list (service gnome-desktop-service-type)
 | 
			
		||||
   (append
 | 
			
		||||
    (list ;; To configure OpenSSH, pass an 'openssh-configuration'
 | 
			
		||||
     ;; record as a second argument to 'service' below.
 | 
			
		||||
     (service openssh-service-type)
 | 
			
		||||
     fontconfig-file-system-service
 | 
			
		||||
     (service sane-service-type)
 | 
			
		||||
     (service cups-service-type
 | 
			
		||||
              (cups-configuration
 | 
			
		||||
               (web-interface? #t)
 | 
			
		||||
               (extensions
 | 
			
		||||
                (list cups-filters))))
 | 
			
		||||
 | 
			
		||||
                 ;; To configure OpenSSH, pass an 'openssh-configuration'
 | 
			
		||||
                 ;; record as a second argument to 'service' below.
 | 
			
		||||
                 (service openssh-service-type)
 | 
			
		||||
                 (service cups-service-type)
 | 
			
		||||
                 (set-xorg-configuration
 | 
			
		||||
                  (xorg-configuration (keyboard-layout keyboard-layout))))
 | 
			
		||||
     (simple-service 'mtp udev-service-type (list libmtp))
 | 
			
		||||
     (udev-rules-service 'pipewire-add-udev-rules pipewire)
 | 
			
		||||
     (udev-rules-service 'brightnessctl-udev-rules brightnessctl)
 | 
			
		||||
 | 
			
		||||
           ;; This is the default list of services we
 | 
			
		||||
           ;; are appending to.
 | 
			
		||||
           
 | 
			
		||||
          (modify-services %desktop-services
 | 
			
		||||
             (guix-service-type config => (guix-configuration
 | 
			
		||||
               (inherit config)
 | 
			
		||||
               (substitute-urls
 | 
			
		||||
                (append (list "https://substitutes.nonguix.org")
 | 
			
		||||
                  %default-substitute-urls))
 | 
			
		||||
               (authorized-keys
 | 
			
		||||
                (append (list (plain-file "nonguix.pub" "(public-key (ecc (curve Ed25519) (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)))"))
 | 
			
		||||
                  %default-authorized-guix-keys)))))))
 | 
			
		||||
     (service nix-service-type)
 | 
			
		||||
 | 
			
		||||
     (service thermald-service-type)
 | 
			
		||||
     (service tlp-service-type
 | 
			
		||||
              (tlp-configuration
 | 
			
		||||
               (cpu-boost-on-ac? #t)
 | 
			
		||||
               (wifi-pwr-on-bat? #t)))
 | 
			
		||||
 | 
			
		||||
     (service screen-locker-service-type
 | 
			
		||||
              (screen-locker-configuration
 | 
			
		||||
               (name "swaylock")
 | 
			
		||||
               (program (file-append 'swaylock-effects "/home/chris/.guix-home/profile/bin/swaylock"))
 | 
			
		||||
               (allow-empty-password? #f)
 | 
			
		||||
               (using-pam? #t)
 | 
			
		||||
               (using-setuid? #f)))
 | 
			
		||||
 | 
			
		||||
     (set-xorg-configuration
 | 
			
		||||
      (xorg-configuration (keyboard-layout keyboard-layout)))
 | 
			
		||||
     
 | 
			
		||||
     (service console-font-service-type
 | 
			
		||||
         (map (lambda (tty)
 | 
			
		||||
                ;; Use a larger font for HIDPI screens
 | 
			
		||||
                (cons tty (file-append
 | 
			
		||||
                           font-terminus
 | 
			
		||||
                           "/share/consolefonts/ter-132n")))
 | 
			
		||||
              '("tty1" "tty2" "tty3" "tty4" "tty5" "tty6")))
 | 
			
		||||
 | 
			
		||||
     (service greetd-service-type
 | 
			
		||||
              (greetd-configuration
 | 
			
		||||
               (greeter-supplementary-groups
 | 
			
		||||
                (list "input" "video"))
 | 
			
		||||
               (terminals
 | 
			
		||||
                (list
 | 
			
		||||
                 (greetd-terminal-configuration
 | 
			
		||||
                  (terminal-vt "1")
 | 
			
		||||
                  (terminal-switch #t)
 | 
			
		||||
                  (default-session-command
 | 
			
		||||
                    (greetd-agreety-session
 | 
			
		||||
                     (command
 | 
			
		||||
                      (file-append dbus "/bin/dbus-run-session"))
 | 
			
		||||
                     (command-args (list "Hyprland")))))
 | 
			
		||||
                 (greetd-terminal-configuration (terminal-vt "2"))
 | 
			
		||||
                 (greetd-terminal-configuration (terminal-vt "3"))
 | 
			
		||||
                 (greetd-terminal-configuration (terminal-vt "4"))
 | 
			
		||||
                 (greetd-terminal-configuration (terminal-vt "5"))
 | 
			
		||||
                 (greetd-terminal-configuration (terminal-vt "6"))))))
 | 
			
		||||
 | 
			
		||||
     ;; NetworkManager and its applet.
 | 
			
		||||
     (service network-manager-service-type)
 | 
			
		||||
     (service wpa-supplicant-service-type)    ;needed by NetworkManager
 | 
			
		||||
     (simple-service 'network-manager-applet
 | 
			
		||||
                     profile-service-type
 | 
			
		||||
                     (list network-manager-applet))
 | 
			
		||||
     (service modem-manager-service-type)
 | 
			
		||||
     (service usb-modeswitch-service-type)
 | 
			
		||||
     (service bluetooth-service-type
 | 
			
		||||
              (bluetooth-configuration
 | 
			
		||||
               (auto-enable? #t)))
 | 
			
		||||
 | 
			
		||||
     ;; The D-Bus clique.
 | 
			
		||||
     polkit-wheel-service
 | 
			
		||||
     (service avahi-service-type)
 | 
			
		||||
     (service udisks-service-type)
 | 
			
		||||
     (service upower-service-type)
 | 
			
		||||
     ;; (service accountsservice-service-type)
 | 
			
		||||
     (service cups-pk-helper-service-type)
 | 
			
		||||
     (service colord-service-type)
 | 
			
		||||
     (service geoclue-service-type)
 | 
			
		||||
     (service polkit-service-type)
 | 
			
		||||
     (service elogind-service-type)
 | 
			
		||||
     (service dbus-root-service-type)
 | 
			
		||||
 | 
			
		||||
     (service ntp-service-type)
 | 
			
		||||
 | 
			
		||||
     (service x11-socket-directory-service-type))
 | 
			
		||||
 | 
			
		||||
    my-desktop-services))
 | 
			
		||||
 | 
			
		||||
  (bootloader (bootloader-configuration
 | 
			
		||||
                (bootloader grub-efi-bootloader)
 | 
			
		||||
                (targets (list "/boot/efi"))
 | 
			
		||||
                (keyboard-layout keyboard-layout)))
 | 
			
		||||
               (bootloader grub-efi-bootloader)
 | 
			
		||||
               (targets (list "/boot/efi"))
 | 
			
		||||
               (keyboard-layout keyboard-layout)))
 | 
			
		||||
 | 
			
		||||
  ;; The list of file systems that get "mounted".  The unique
 | 
			
		||||
  ;; file system identifiers there ("UUIDs") can be obtained
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,7 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
hyprctl dispatch focuswindow emacs
 | 
			
		||||
 | 
			
		||||
# Check to see if an emacsclient is running
 | 
			
		||||
if [ $(pgrep -c emacsclient) -gt 0 ]; then
 | 
			
		||||
    echo hi
 | 
			
		||||
| 
						 | 
				
			
			@ -22,13 +24,13 @@ if [ $(pgrep -c emacsclient) -gt 0 ]; then
 | 
			
		|||
            exit
 | 
			
		||||
        else
 | 
			
		||||
            echo WAYLAND
 | 
			
		||||
            emacsrg=$(wlrctl window list |  rg "emacs:" | rg -v dired)
 | 
			
		||||
            emacsrg=$(hyprctl clients |  rg "emacs:" | rg -v dired)
 | 
			
		||||
            echo $emacsrg
 | 
			
		||||
 | 
			
		||||
            emacswin=$(echo $emacsrg | sed 's/.*\: //')
 | 
			
		||||
            echo $emacswin
 | 
			
		||||
 | 
			
		||||
            exec wlrctl toplevel focus title:"$emacswin"
 | 
			
		||||
            exec hyprctl dispatch focuswindow emacs
 | 
			
		||||
            exit
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,12 +25,12 @@ if [ $(pgrep -c firefox) -gt 0 ]; then
 | 
			
		|||
            exit
 | 
			
		||||
        else
 | 
			
		||||
            # WAYLAND
 | 
			
		||||
            ffrg=$(wlrctl window list | rg firefox)
 | 
			
		||||
            ffrg=$(hyprctl clients | rg firefox)
 | 
			
		||||
 | 
			
		||||
            ffwin=$(echo $ffrg | sed 's/.*\: //')
 | 
			
		||||
            # echo $ffwin
 | 
			
		||||
 | 
			
		||||
            exec wlrctl toplevel focus firefox
 | 
			
		||||
            exec hyprctl dispatch focuswindow firefox
 | 
			
		||||
            exit
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										71
									
								
								scripts/rbw.sh
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										71
									
								
								scripts/rbw.sh
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,71 @@
 | 
			
		|||
#!/usr/bin/env bash
 | 
			
		||||
# Very basic interface for rbw using rofi
 | 
			
		||||
 | 
			
		||||
if [ $(hostname) = "syl" ]; then
 | 
			
		||||
    style="laptop-rbw-wayland"
 | 
			
		||||
    #echo "this is hidpi"
 | 
			
		||||
else 
 | 
			
		||||
    style="desktop-rbw"
 | 
			
		||||
    #echo "this is not hidpi"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Get all password files and create an array
 | 
			
		||||
root=~/.password-store
 | 
			
		||||
CACHE=~/.local/tmp/pass_rofi
 | 
			
		||||
seat=seat0
 | 
			
		||||
 | 
			
		||||
rbw sync
 | 
			
		||||
rbw list
 | 
			
		||||
 | 
			
		||||
list_passwords() {
 | 
			
		||||
    rbw list
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
passwords=$(rbw list)
 | 
			
		||||
 | 
			
		||||
prompt='search for passwords...'
 | 
			
		||||
SECRET=$(list_passwords | rofi -sync -i -p="${prompt}" -dmenu -theme ~/.config/rofi/launchers-git/$style.rasi)
 | 
			
		||||
 | 
			
		||||
# Ask whether pass, user or both are required
 | 
			
		||||
 | 
			
		||||
options=("Password" \
 | 
			
		||||
             "User" \
 | 
			
		||||
             "User and password" \
 | 
			
		||||
             "QR-Code" \
 | 
			
		||||
	     "OTP")
 | 
			
		||||
 | 
			
		||||
option=$(printf '%s\n' "${options[@]%}" | rofi -sync -i -dmenu -width 400 -lines 4 -prompt="..." -theme ~/.config/rofi/launchers-git/$style.rasi)
 | 
			
		||||
 | 
			
		||||
echo $option
 | 
			
		||||
 | 
			
		||||
case ${option} in
 | 
			
		||||
    Password )
 | 
			
		||||
	echo "${SECRET}"
 | 
			
		||||
	wtype $(rbw get "${SECRET}")
 | 
			
		||||
	;;
 | 
			
		||||
    User )
 | 
			
		||||
	wtype $(rbw get --full "${SECRET}" | rg Username: | awk '{$1 = ""; print $0}')
 | 
			
		||||
	;;
 | 
			
		||||
    "User and password" )
 | 
			
		||||
	wtype $(rbw get --full "${SECRET}" | rg Username: | awk '{$1 = ""; print $0}')
 | 
			
		||||
	wtype -P tab
 | 
			
		||||
	wtype $(rbw get "${SECRET}")
 | 
			
		||||
	;;
 | 
			
		||||
    "QR-Code" )
 | 
			
		||||
	if [[ $SECRET =~ wifi$ ]]; then
 | 
			
		||||
	    # Produce a valid wifi QR-code
 | 
			
		||||
	    WIFISSID=$(pass get_user ${SECRET})
 | 
			
		||||
	    WIFIPASS=$(pass get_pass ${SECRET})
 | 
			
		||||
	    WIFIQR="WIFI:T:WPA;S:${WIFISSID};P:${WIFIPASS};;"
 | 
			
		||||
	    qrencode -s 8 -o - $WIFIQR | feh --title "pass: QR-WIFI" -
 | 
			
		||||
	else
 | 
			
		||||
	    # Only password
 | 
			
		||||
	    pass show -q1 ${SECRET}
 | 
			
		||||
	fi
 | 
			
		||||
	;;
 | 
			
		||||
    "OTP" )
 | 
			
		||||
	wtype $(rbw code "${SECRET}")
 | 
			
		||||
	;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
# wl-copy -o -s ${seat} ${PASSWD_PASS}
 | 
			
		||||
| 
						 | 
				
			
			@ -1,5 +1,6 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
waybar &
 | 
			
		||||
kwalletd5 &
 | 
			
		||||
systemctl --user stop jellyfin-mpv-shim.service &
 | 
			
		||||
systemctl --user stop nextcloud-client.service &
 | 
			
		||||
| 
						 | 
				
			
			@ -12,9 +13,3 @@ rbw-agent &
 | 
			
		|||
emacs --daemon &
 | 
			
		||||
nextcloud --background &
 | 
			
		||||
batmon &
 | 
			
		||||
 | 
			
		||||
killall eww
 | 
			
		||||
 | 
			
		||||
eww open bar0 &
 | 
			
		||||
eww open notifications &
 | 
			
		||||
eww open sidebar &
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										10
									
								
								scripts/wb-toggle
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								scripts/wb-toggle
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,10 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
if [ $(pgrep -c waybar) -gt 0 ]; then
 | 
			
		||||
    echo "killing"
 | 
			
		||||
    kill $(pgrep waybar)
 | 
			
		||||
else
 | 
			
		||||
    echo "starting"
 | 
			
		||||
    waybar &
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue