added some more dotfiles

This commit is contained in:
joelchrono12 2021-08-31 16:42:35 -05:00
parent 4a30462120
commit a367f6899c
Signed by: chrono
GPG Key ID: E23D9C7FA57497A6
4 changed files with 736 additions and 0 deletions

223
stow_home/.bashrc/.bashrc Normal file
View File

@ -0,0 +1,223 @@
# ~/.bashrc
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
[[ -f ~/.welcome_screen ]] && . ~/.welcome_screen
_set_my_PS1() {
PS1='[\u@\h \W]\$ '
if [ "$(whoami)" = "liveuser" ] ; then
local iso_version="$(grep ^VERSION= /usr/lib/endeavouros-release 2>/dev/null | cut -d '=' -f 2)"
if [ -n "$iso_version" ] ; then
local prefix="eos-"
local iso_info="$prefix$iso_version"
PS1="[\u@$iso_info \W]\$ "
fi
fi
}
_set_my_PS1
unset -f _set_my_PS1
ShowInstallerIsoInfo() {
local file=/usr/lib/endeavouros-release
if [ -r $file ] ; then
cat $file
else
echo "Sorry, installer ISO info is not available." >&2
fi
}
[[ "$(whoami)" = "root" ]] && return
[[ -z "$FUNCNEST" ]] && export FUNCNEST=100 # limits recursive functions, see 'man bash'
## Use the up and down arrow keys for finding a command in history
## (you can write some initial letters of the command first).
bind '"\e[A":history-search-backward'
bind '"\e[B":history-search-forward'
################################################################################
## Some generally useful functions.
## Consider uncommenting aliases below to start using these functions.
_GeneralCmdCheck() {
# A helper for functions UpdateArchPackages and UpdateAURPackages.
echo "$@" >&2
"$@" || {
echo "Error: '$*' failed." >&2
exit 1
}
}
_CheckInternetConnection() {
# curl --silent --connect-timeout 8 https://8.8.8.8 >/dev/null
eos-connection-checker
local result=$?
test $result -eq 0 || echo "No internet connection!" >&2
return $result
}
_CheckArchNews() {
local conf=/etc/eos-update-notifier.conf
if [ -z "$CheckArchNewsForYou" ] && [ -r $conf ] ; then
source $conf
fi
if [ "$CheckArchNewsForYou" = "yes" ] ; then
local news="$(yay -Pw)"
if [ -n "$news" ] ; then
echo "Arch news:" >&2
echo "$news" >&2
echo "" >&2
# read -p "Press ENTER to continue (or Ctrl-C to stop): "
else
echo "No Arch news." >&2
fi
fi
}
UpdateArchPackages() {
# Updates Arch packages.
_CheckInternetConnection || return 1
_CheckArchNews
#local updates="$(yay -Qu --repo)"
local updates="$(checkupdates)"
if [ -n "$updates" ] ; then
echo "Updates from upstream:" >&2
echo "$updates" | sed 's|^| |' >&2
_GeneralCmdCheck sudo pacman -Syu "$@"
return 0
else
echo "No upstream updates." >&2
return 1
fi
}
UpdateAURPackages() {
# Updates AUR packages.
_CheckInternetConnection || return 1
local updates
if [ -x /usr/bin/yay ] ; then
updates="$(yay -Qua)"
if [ -n "$updates" ] ; then
echo "Updates from AUR:" >&2
echo "$updates" | sed 's|^| |' >&2
_GeneralCmdCheck yay -Syua "$@"
else
echo "No AUR updates." >&2
fi
else
echo "Warning: /usr/bin/yay does not exist." >&2
fi
}
UpdateAllPackages() {
# Updates all packages in the system.
# Upstream (i.e. Arch) packages are updated first.
# If there are Arch updates, you should run
# this function a second time to update
# the AUR packages too.
UpdateArchPackages || UpdateAURPackages
}
_open_files_for_editing() {
# Open any given document file(s) for editing (or just viewing).
# Note1: Do not use for executable files!
# Note2: uses mime bindings, so you may need to use
# e.g. a file manager to make some file bindings.
if [ -x /usr/bin/exo-open ] ; then
echo "exo-open $*" >&2
/usr/bin/exo-open "$@" >& /dev/null &
return
fi
if [ -x /usr/bin/xdg-open ] ; then
for file in "$@" ; do
echo "xdg-open $file" >&2
/usr/bin/xdg-open "$file" >& /dev/null &
done
return
fi
echo "Sorry, none of programs [$progs] is found." >&2
echo "Tip: install one of packages" >&2
for prog in $progs ; do
echo " $(pacman -Qqo "$prog")" >&2
done
}
_Pacdiff() {
local differ pacdiff=/usr/bin/pacdiff
if [ -n "$(echo q | DIFFPROG=diff $pacdiff)" ] ; then
for differ in kdiff3 meld diffuse ; do
if [ -x /usr/bin/$differ ] ; then
DIFFPROG=$differ su-c_wrapper $pacdiff
break
fi
done
fi
}
#------------------------------------------------------------
## Aliases for the functions above.
## Uncomment an alias if you want to use it.
##
#alias ef='_open_files_for_editing' # 'ef' opens given file(s) for editing
# alias pacdiff=_Pacdiff
alias checkin='_CheckInternetConnection'
alias ls='exa -al --color=always --group-directories-first'
alias vb='cd ~/git/joelchrono12.ml/_posts/ && nvim $(/usr/bin/ls *.md | sort -r | head -n 1)'
alias la='exa -a --color=always --group-directories-first'
alias lt='exa -aT --color=always --group-directories-first'
alias l.='exa -a | grep "^\."'
alias ll='exa -l --color=always --group-directories-first'
alias bashrc='v ~/.bashrc & exit'
alias rclua='v ~/.config/awesome/rc.lua & exit'
alias spectrwmconf='v ~/.spectrwm.conf & exit'
alias ..='cd ..'
alias .2='cd ../..'
alias .3='cd ../../..'
alias .4='cd ../../../..'
alias xin='sudo pacman -S'
alias xup='paru -Syu'
alias xun='sudo pacman -Rs'
alias xs='pacman -Ss'
alias xme='sudo xbps-query -m'
alias sysinfo='inxi -Frxz'
alias cp='cp -i'
alias rm='rm -i'
alias df='df -h'
alias v='nvim'
alias drag='dragon-drag-and-drop'
alias rad='radicale --storage-filesystem-folder .var/lib/radicale/collections/'
alias site='cd ~/git/joelchrono12.ml'
alias zzz='systemctl suspend'
# alias picom='picom --experimental-backends --backend glx --blur-method 'dual_kawase' --blur-strength 6 & disown'
alias ssh='TERM=xterm-256color ssh'
export PATH=$PATH:$HOME/bin:$HOME/.local/bin:$HOME/.config/spectrwm/scripts:$HOME/.emacs.d/bin/
export MANPAGER="nvim -c 'set ft=man' -"
export GTK2_RC_FILES="$XDG_CONFIG_HOME"/gtk-2.0/gtkrc
#source $HOME/.config/bash-config/bashrc.bash
eval "$(starship init bash)"
neofetch
################################################################################
# Install Ruby Gems to ~/gems
export GEM_HOME="$HOME/gems"
export PATH="$HOME/.local/share/gem/ruby/3.0.0/bin:$PATH"
export GOBIN="$HOME/go/bin"
export GOPATH="$HOME/go"
export PATH="$PATH:$GOBIN"
#radicale --storage-filesystem-folder=~/.var/lib/radicale/collections &
source /home/joelchrono12/.config/broot/launcher/bash/br

View File

@ -0,0 +1,367 @@
# This is the default config file.
# It also shows all the default values, if you don't create the file.
# All URL values may omit the scheme and/or port, as well as the beginning double slash
# Valid URL examples:
# gemini://example.com
# //example.com
# example.com
# example.com:123
[a-general]
# Press Ctrl-H to access it
home = "gemini://gemini.circumlunar.space"
# Follow up to 5 Gemini redirects without prompting.
# A prompt is always shown after the 5th redirect and for redirects to protocols other than Gemini.
# If set to false, a prompt will be shown before following redirects.
auto_redirect = false
# What command to run to open a HTTP(S) URL.
# Set to "default" to try to guess the browser, or set to "off" to not open HTTP(S) URLs.
# If a command is set, than the URL will be added (in quotes) to the end of the command.
# A space will be prepended to the URL.
#
# The best to define a command is using a string array.
# Examples:
# http = ['firefox']
# http = ['custom-browser', '--flag', '--option=2']
# http = ['/path/with spaces/in it/firefox']
#
# Note the use of single quotes, so that backslashes will not be escaped.
# Using just a string will also work, but it is deprecated, and will degrade if
# you use paths with spaces.
http = 'default'
# Any URL that will accept a query string can be put here
search = "gemini://gus.guru/search"
# Whether colors will be used in the terminal
color = true
# Whether ANSI color codes from the page content should be rendered
ansi = true
# Whether to replace list asterisks with unicode bullets
bullets = true
# Whether to show link after link text
show_link = false
# A number from 0 to 1, indicating what percentage of the terminal width the left margin should take up.
left_margin = 0.15
# The max number of columns to wrap a page's text to. Preformatted blocks are not wrapped.
max_width = 100
# 'downloads' is the path to a downloads folder.
# An empty value means the code will find the default downloads folder for your system.
# If the path does not exist it will be created.
# Note the use of single quotes, so that backslashes will not be escaped.
downloads = ''
# Max size for displayable content in bytes - after that size a download window pops up
page_max_size = 2097152 # 2 MiB
# Max time it takes to load a page in seconds - after that a download window pops up
page_max_time = 10
# Whether to replace tab numbers with emoji favicons, which are cached.
emoji_favicons = false
# When a scrollbar appears. "never", "auto", and "always" are the only valid values.
# "auto" means the scrollbar only appears when the page is longer than the window.
scrollbar = "auto"
[auth]
# Authentication settings
# Note the use of single quotes for values, so that backslashes will not be escaped.
[auth.certs]
# Client certificates
# Set domain name equal to path to client cert
# "example.com" = 'mycert.crt'
[auth.keys]
# Client certificate keys
# Set domain name equal to path to key for the client cert above
# "example.com" = 'mycert.key'
[keybindings]
# If you have a non-US keyboard, use bind_tab1 through bind_tab0 to
# setup the shift-number bindings: Eg, for US keyboards (the default):
# bind_tab1 = "!"
# bind_tab2 = "@"
# bind_tab3 = "#"
# bind_tab4 = "$"
# bind_tab5 = "%"
# bind_tab6 = "^"
# bind_tab7 = "&"
# bind_tab8 = "*"
# bind_tab9 = "("
# bind_tab0 = ")"
# Whitespace is not allowed in any of the keybindings! Use 'Space' and 'Tab' to bind to those keys.
# Multiple keys can be bound to one command, just use a TOML array.
# To add the Alt modifier, the binding must start with Alt-, should be reasonably universal
# Ctrl- won't work on all keys, see this for a list:
# https://github.com/gdamore/tcell/blob/cb1e5d6fa606/key.go#L83
# An example of a TOML array for multiple keys being bound to one command is the default
# binding for reload:
# bind_reload = ["R","Ctrl-R"]
# One thing to note here is that "R" is capitalization sensitive, so it means shift-r.
# "Ctrl-R" means both ctrl-r and ctrl-shift-R (this is a quirk of what ctrl-r means on
# an ANSI terminal)
# The default binding for opening the bottom bar for entering a URL or link number is:
# bind_bottom = "Space"
# This is how to get the Spacebar as a keybinding, if you try to use " ", it won't work.
# And, finally, an example of a simple, unmodified character is:
# bind_edit = "e"
# This binds the "e" key to the command to edit the current URL.
# The bind_link[1-90] options are for the commands to go to the first 10 links on a page,
# typically these are bound to the number keys:
# bind_link1 = "1"
# bind_link2 = "2"
# bind_link3 = "3"
# bind_link4 = "4"
# bind_link5 = "5"
# bind_link6 = "6"
# bind_link7 = "7"
# bind_link8 = "8"
# bind_link9 = "9"
# bind_link0 = "0"
# All keybindings:
#
# bind_bottom
# bind_edit
# bind_home
# bind_bookmarks
# bind_add_bookmark
# bind_save
# bind_reload
# bind_back
# bind_forward
# bind_pgup
# bind_pgdn
# bind_new_tab
# bind_close_tab
# bind_next_tab
# bind_prev_tab
# bind_quit
# bind_help
# bind_sub: for viewing the subscriptions page
# bind_add_sub
[url-handlers]
# Allows setting the commands to run for various URL schemes.
# E.g. to open FTP URLs with FileZilla set the following key:
# ftp = 'filezilla'
# You can set any scheme to "off" or "" to disable handling it, or
# just leave the key unset.
#
# DO NOT use this for setting the HTTP command.
# Use the http setting in the "a-general" section above.
#
# NOTE: These settings are overrided by the ones in the proxies section.
# Note the use of single quotes, so that backslashes will not be escaped.
# This is a special key that defines the handler for all URL schemes for which
# no handler is defined.
other = 'off'
# [[mediatype-handlers]] section
# ---------------------------------
#
# Specify what applications will open certain media types.
# By default your default application will be used to open the file when you select "Open".
# You only need to configure this section if you want to override your default application,
# or do special things like streaming.
#
# Note the use of single quotes for commands, so that backslashes will not be escaped.
#
#
# To open jpeg files with the feh command:
#
# [[mediatype-handlers]]
# cmd = ['feh']
# types = ["image/jpeg"]
#
# Each command that you specify must come under its own [[mediatype-handlers]]. You may
# specify as many [[mediatype-handlers]] as you want to setup multiple commands.
#
# If the subtype is omitted then the specified command will be used for the
# entire type:
#
# [[mediatype-handlers]]
# command = ['vlc', '--flag']
# types = ["audio", "video"]
#
# A catch-all handler can by specified with "*".
# Note that there are already catch-all handlers in place for all OSes,
# that open the file using your default application. This is only if you
# want to override that.
#
# [[mediatype-handlers]]
# cmd = ['some-command']
# types = [
# "application/pdf",
# "*",
# ]
#
# You can also choose to stream the data instead of downloading it all before
# opening it. This is especially useful for large video or audio files, as
# well as radio streams, which will never complete. You can do this like so:
#
# [[mediatype-handlers]]
# cmd = ['vlc', '-']
# types = ["audio", "video"]
# stream = true
#
# This uses vlc to stream all video and audio content.
# By default stream is set to off for all handlers
#
#
# If you want to always open a type in its viewer without the download or open
# prompt appearing, you can add no_prompt = true
#
# [[mediatype-handlers]]
# cmd = ['feh']
# types = ["image"]
# no_prompt = true
#
# Note: Multiple handlers cannot be defined for the same full media type, but
# still there needs to be an order for which handlers are used. The following
# order applies regardless of the order written in the config:
#
# 1. Full media type: "image/jpeg"
# 2. Just type: "image"
# 3. Catch-all: "*"
[cache]
# Options for page cache - which is only for text pages
# Increase the cache size to speed up browsing at the expense of memory
# Zero values mean there is no limit
max_size = 0 # Size in bytes
max_pages = 30 # The maximum number of pages the cache will store
# How long a page will stay in cache, in seconds.
timeout = 1800 # 30 mins
[proxies]
# Allows setting a Gemini proxy for different schemes.
# The settings are similar to the url-handlers section above.
# E.g. to open a gopher page by connecting to a Gemini proxy server:
# gopher = "example.com:123"
#
# Port 1965 is assumed if no port is specified.
#
# NOTE: These settings override any external handlers specified in
# the url-handlers section.
#
# Note that HTTP and HTTPS are treated as separate protocols here.
[subscriptions]
# For tracking feeds and pages
# Whether a pop-up appears when viewing a potential feed
popup = true
# How often to check for updates to subscriptions in the background, in seconds.
# Set it to 0 to disable this feature. You can still update individual feeds
# manually, or restart the browser.
#
# Note Amfora will check for updates on browser start no matter what this setting is.
update_interval = 1800 # 30 mins
# How many subscriptions can be checked at the same time when updating.
# If you have many subscriptions you may want to increase this for faster
# update times. Any value below 1 will be corrected to 1.
workers = 3
# The number of subscription updates displayed per page.
entries_per_page = 20
[theme]
# This section is for changing the COLORS used in Amfora.
# These colors only apply if 'color' is enabled above.
# Colors can be set using a W3C color name, or a hex value such as "#ffffff".
# Note that not all colors will work on terminals that do not have truecolor support.
# If you want to stick to the standard 16 or 256 colors, you can get
# a list of those here: https://jonasjacek.github.io/colors/
# DO NOT use the names from that site, just the hex codes.
# Definitions:
# bg = background
# fg = foreground
# dl = download
# btn = button
# hdg = heading
# bkmk = bookmark
# modal = a popup window/box in the middle of the screen
# EXAMPLES:
# hdg_1 = "green"
# hdg_2 = "#5f0000"
# Available keys to set:
# bg: background for pages, tab row, app in general
# tab_num: The number/highlight of the tabs at the top
# tab_divider: The color of the divider character between tab numbers: |
# bottombar_label: The color of the prompt that appears when you press space
# bottombar_text: The color of the text you type
# bottombar_bg
# scrollbar: The scrollbar that appears on the right for long pages
# hdg_1
# hdg_2
# hdg_3
# amfora_link: A link that Amfora supports viewing. For now this is only gemini://
# foreign_link: HTTP(S), Gopher, etc
# link_number: The silver number that appears to the left of a link
# regular_text: Normal gemini text, and plaintext documents
# quote_text
# preformatted_text
# list_text
# btn_bg: The bg color for all modal buttons
# btn_text: The text color for all modal buttons
# dl_choice_modal_bg
# dl_choice_modal_text
# dl_modal_bg
# dl_modal_text
# info_modal_bg
# info_modal_text
# error_modal_bg
# error_modal_text
# yesno_modal_bg
# yesno_modal_text
# tofu_modal_bg
# tofu_modal_text
# subscription_modal_bg
# subscription_modal_text
# input_modal_bg
# input_modal_text
# input_modal_field_bg: The bg of the input field, where you type the text
# input_modal_field_text: The color of the text you type
# bkmk_modal_bg
# bkmk_modal_text
# bkmk_modal_label
# bkmk_modal_field_bg
# bkmk_modal_field_text

View File

@ -0,0 +1,15 @@
#!/usr/bin/bash
# Dot - manage your dotfiles using stow,
# run it outside of the folder/file you want to back up
# $ dotstow file-or-program
# This program was made by joelchrono12
# Set up your dotfiles folder
STOW_DIR=$HOME/dotfiles/stow_home
# $1 is the program you chose
DIR=$(pwd | cut -d '/' -f4-)
NEW_DIR=$STOW_DIR/$1/$DIR
mkdir -pv $NEW_DIR
mv -v $1 $NEW_DIR
cd $STOW_DIR
stow -vt ~ $1

View File

@ -0,0 +1,131 @@
#
# Configuration file for tut
[general]
# If the program should check for new toots without user interaction.
# If you don't enable this the program will only look for new toots when
# you reach the bottom or top of your feed. With this enabled it will check
# for new toots every x second.
# default=true
auto-load-newer=true
# How many seconds between each pulling of new toots if you have enabled
# auto-load-newer.
# default=60
auto-load-seconds=60
# The date format to be used
# See https://godoc.org/time#Time.Format
# default=2006-01-02 15:04
date-format=2006-01-02 15:04
# Format for dates the same day
# default=15:04
date-today-format=15:04
# This displays relative dates instead
# for statuses that are one day or older
# the output is 1y2m1d (1 year 2 months and 1 day)
#
# The value is an integear
# -1 = don't use relative dates
# 0 = always use relative dates, except for dates < 1 day
# 1 - ∞ = number of days to use relative dates
#
# Example: date-relative=28 will display a relative date
# for toots that are between 1-28 days old. Otherwhise it
# will use the short or long format
#
# default=-1
date-relative=-1
# The timeline that opens up when you start tut
# Valid values: home, direct, local, federated
# default=home
timeline=home
# If you want to display a list of notifications
# under your timeline feed
# default=true
notification-feed=true
# If you always want to quote original message when replying
# default=false
quote-reply=false
[media]
# Your image viewer
# default=xdg-open
image-viewer=xdg-open
# If image should open one by one e.g. "imv image.png" multiple times
# If set to false all images will open at the same time like this
# "imv image1.png image2.png image3.png".
# Not all image viewers support this, so try it first.
# default=true
image-single=true
# Your video viewer
# default=xdg-open
video-viewer=xdg-open
# If videos should open one by one. See above comment about image-single
# default=true
video-single=true
# Your audio viewer
# default=xdg-open
audio-viewer=xdg-open
# If audio files should open one by one. See above comment about image-single
# default=true
audio-single=true
# Your web browser
# default=xdg-open
link-viewer=xdg-open
[style]
# All styles can be represented in their HEX value like #ffffff or
# with their name, so in this case white.
# The only special value is "default" which equals to transparent,
# so it will be the same color as your terminal. But this can lead
# to some artifacts left from a previous paint
# You can also use xrdb colors like this xrdb:color1
# The program will use colors prefixed with an * first then look
# for URxvt or XTerm if it can't find any color prefixed with an asterik.
# If you don't want tut to guess the prefix you can set the prefix yourself.
# If the xrdb color can't be found a preset color will be used.
# The xrdb prefix used for colors in .Xresources
# default=guess
xrdb-prefix=guess
# default=xrdb:background
background=xrdb:background
#text=xrdb:foreground
text=#ffffff
# default=xrdb:color14
subtle=xrdb:color14
# default=xrdb:color1
warning-text=xrdb:color1
# default=xrdb:color5
text-special-one=xrdb:color5
# default=xrdb:color2
text-special-two=xrdb:color2
# default=xrdb:color5
top-bar-background=xrdb:color5
# default=xrdb:background
top-bar-text=xrdb:background
# default=xrdb:color5
status-bar-background=xrdb:color5
# default=xrdb:foreground
status-bar-text=xrdb:foreground
# default=xrdb:color4
status-bar-view-background=xrdb:color4
# default=xrdb:foreground
status-bar-view-text=xrdb:foreground
# default=xrdb:color5
list-selected-background=xrdb:color5
# default=xrdb:background
list-selected-text=xrdb:background