🢀︎ archlinux :: 8c1dae3


commit 8c1dae327af81c23460f9defd8c8ed4b6cdfff60
Author: acidvegas <acid.vegas@acid.vegas>
Date:   Sun Feb 23 01:30:13 2020 -0500

    Initial commit

diff --git a/etc/dialogrc b/etc/dialogrc
new file mode 100644
index 0000000..8c2db08
--- /dev/null
+++ b/etc/dialogrc
@@ -0,0 +1,44 @@
+aspect						= 0
+separate_widget				= ""
+tab_len						= 0
+visit_items					= OFF
+use_shadow					= OFF
+use_colors					= ON
+screen_color				= (WHITE,BLACK,OFF)
+shadow_color				= (BLACK,BLACK,OFF)
+dialog_color				= screen_color
+title_color					= screen_color
+border_color				= screen_color
+button_active_color			= screen_color
+button_inactive_color		= dialog_color
+button_key_active_color		= button_active_color
+button_key_inactive_color	= screen_color
+button_label_active_color	= screen_color
+button_label_inactive_color = screen_color
+inputbox_color				= dialog_color
+inputbox_border_color		= dialog_color
+searchbox_color				= dialog_color
+searchbox_title_color		= title_color
+searchbox_border_color		= border_color
+position_indicator_color	= title_color
+menubox_color				= dialog_color
+menubox_border_color		= border_color
+item_color					= dialog_color
+item_selected_color			= (BLACK,WHITE,OFF)
+tag_color					= title_color
+tag_selected_color			= button_label_active_color
+tag_key_color				= button_key_inactive_color
+tag_key_selected_color		= screen_color
+check_color					= dialog_color
+check_selected_color		= button_active_color
+uarrow_color				= screen_color
+darrow_color				= uarrow_color
+itemhelp_color				= screen_color
+form_active_text_color		= button_active_color
+form_text_color				= (WHITE,CYAN,OFF)
+form_item_readonly_color	= (CYAN,WHITE,OFF)
+gauge_color					= title_color
+border2_color				= dialog_color
+inputbox_border2_color		= dialog_color
+searchbox_border2_color		= dialog_color
+menubox_border2_color		= dialog_color
diff --git a/etc/fstab b/etc/fstab
new file mode 100644
index 0000000..5445a11
--- /dev/null
+++ b/etc/fstab
@@ -0,0 +1,8 @@
+# <file system> <dir>    <type> <options>                                         <dump> <pass>
+/dev/mmcblk0p1  /boot    vfat   ro,noatime,nodev,noexec,nosuid                    0      2
+/dev/mmcblk0p2  /        ext4   rw,noatime,data=ordered,commit=60                 0      1
+proc            /proc    proc   nosuid,nodev,noexec,hidepid=2,gid=proc            0      0
+tmpfs           /dev/shm tmpfs  rw,noatime,nodev,noexec,nosuid                    0      0
+tmpfs           /tmp     tmpfs  rw,mode=0755,noatime,nodev,nosuid,size=100m       0      0
+tmpfs           /var/log tmpfs  rw,mode=0755,noatime,nodev,noexec,nosuid,size=25m 0      0
+tmpfs           /run     tmpfs  rw,mode=0755,noatime,nodev,nosuid,size=25m        0      0
\ No newline at end of file
diff --git a/etc/issue b/etc/issue
new file mode 100644
index 0000000..aad9081
--- /dev/null
+++ b/etc/issue
@@ -0,0 +1,11 @@
+********************************************************************
+*                                                                  *
+* This system is for the use of authorized users only.  Usage of   *
+* this system may be monitored and recorded by system personnel.   *
+*                                                                  *
+* Anyone using this system expressly consents to such monitoring   *
+* and is advised that if such monitoring reveals possible          *
+* evidence of criminal activity, system personnel may provide the  *
+* evidence from such monitoring to law enforcement officials.      *
+*                                                                  *
+********************************************************************
diff --git a/etc/pacman.conf b/etc/pacman.conf
new file mode 100644
index 0000000..c8b5bbe
--- /dev/null
+++ b/etc/pacman.conf
@@ -0,0 +1,22 @@
+[options]
+HoldPkg = pacman glibc
+Architecture = auto
+Color
+CheckSpace
+SigLevel = Required DatabaseOptional
+LocalFileSigLevel = Optional
+
+[core]
+Include = /etc/pacman.d/mirrorlist
+
+[extra]
+Include = /etc/pacman.d/mirrorlist
+
+[community]
+Include = /etc/pacman.d/mirrorlist
+
+[alarm]
+Include = /etc/pacman.d/mirrorlist
+
+[aur]
+Include = /etc/pacman.d/mirrorlist
\ No newline at end of file
diff --git a/etc/ssh/sshd_config b/etc/ssh/sshd_config
new file mode 100644
index 0000000..d97b2a7
--- /dev/null
+++ b/etc/ssh/sshd_config
@@ -0,0 +1,17 @@
+AllowUsers acidvegas@10.0.0.0/8
+AuthenticationMethods publickey
+AuthorizedKeysFile /etc/ssh/authorized_keys/%u
+Banner /etc/issue
+ChallengeResponseAuthentication no
+ClientAliveInterval 0
+DisableForwarding yes
+LoginGraceTime 30
+MaxAuthTries 2
+MaxSessions 2
+MaxStartups 5:25:20
+PasswordAuthentication no
+PermitRootLogin no
+Port CHANGEME
+PrintLastLog no
+Protocol 2
+UsePam yes
\ No newline at end of file
diff --git a/etc/sudoers.d/sudoers.lecture b/etc/sudoers.d/sudoers.lecture
new file mode 100644
index 0000000..1758dd0
--- /dev/null
+++ b/etc/sudoers.d/sudoers.lecture
@@ -0,0 +1,6 @@
+
+     "Bee" careful    __
+       with sudo!    // \
+                     \\_/ //
+   ''-.._.-''-.._.. -(||)(')
+                     '''
diff --git a/home/acidvegas/.bashrc b/home/acidvegas/.bashrc
new file mode 100644
index 0000000..dc2bfe1
--- /dev/null
+++ b/home/acidvegas/.bashrc
@@ -0,0 +1,94 @@
+[[ $- != *i* ]] && return
+
+export LC_CTYPE=en_US.UTF-8
+export LC_ALL=en_US.UTF-8
+export GPG_TTY=$(tty)
+
+alias ..='cd ../'
+alias busy="cat /dev/urandom | hexdump -C | grep 'ca fe'"
+alias cpass='pass | tr " " " "'
+alias diff='diff --color=auto'
+alias dump='setterm -dump 1 -file screen.dump'
+alias dyn='curl "https://dynamicdns.park-your-domain.com/update?host=pi&domain=CHANGEME.com&password=CHANGEME&ip=$(curl -s ipecho.net/plain)"'
+alias exa='exa -aghl --git'
+alias google='~/dev/build/googler/googler --colors hgdhhh --noprompt'
+alias grep='grep --color=auto'
+alias ls='ls --color=auto'
+alias maint='~/.scripts/maint'
+alias mtm='mtm -t mtm-256color'
+alias pinstall='pip install --user'
+alias pubkey='ssh-keygen -y -f ~/.ssh/key'
+alias rmexif='for IMAGE in $(find ./ -type f \( -iname *.gif -o -iname *.jpg -o -iname *.jpeg -o -iname *.png \)); do exiftool -all= $IMAGE; done'
+alias ssh-add='ssh-add -t 1h'
+alias su='su -l'
+alias tb='(exec 3<>/dev/tcp/termbin.com/9999; cat >&3; cat <&3; exec 3<&-) | xclip -selection c'
+alias todo='~/.scripts/todo'
+alias y2m='youtube-dl --extract-audio --audio-format mp3 --audio-quality 0  -o "%(title)s.%(ext)s" --no-cache-dir --no-call-home'
+
+audiosrc() {
+	if [ $1 = 'auto' ]; then
+		amixer cset numid=3 0
+	elif [ $1 = 'aux' ]; then
+		amixer cset numid=3 1
+	elif [ $1 = 'hdmi' ]; then
+		amixer cset numid=3 2
+	else
+		echo "invalid option! (must be auto, aux, or hdmi)"
+	fi
+}
+
+color() {
+	for color in {0..255}; do
+		printf "\e[48;5;%sm  %3s  \e[0m" $color $color
+		if [ $((($color + 1) % 6)) == 4 ]; then
+			echo
+		fi
+	done
+}
+
+imgur() {
+	curl -H "Authorization: Client-ID 9657b96ca0b7f38" -H "Expect: " -F "image=@$1" https://api.imgur.com/3/image 2>/dev/null |  sed -E 's/.*"link":"([^"]+)".*/\1/' | sed "s|\\\\/|/|g" | xclip-selection c
+}
+
+rnd() {
+	cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w $1 | head -n 1
+}
+
+shat() {
+	echo -n $1 | shasum -a 512
+}
+
+title() {
+	echo -ne "\033]0;$1\007"
+}
+
+transfer() {
+	TMP=$(mktemp -t transferXXX)
+	curl -H "Max-Downloads: 1" -H "Max-Days: 1" --progress-bar --upload-file $1 https://transfer.sh/$(basename $1) >> $TMP
+	cat $TMP
+	rm -f $TMP
+}
+
+update() {
+	sudo pacman-key --refresh-keys
+	sudo mount -o remount,rw /boot && sudo pacman -Syyu && sudo mount -o remount,ro /boot
+	sudo pacman -Rns $(pacman -Qtdq)
+	sudo pacman -Scc
+	for d in $(find $HOME/dev/git/mirrors -type d -name .git); do
+		cd $(dirname $d) && git pull
+	done;
+	cd $HOME/dev/build/googler && git pull
+}
+
+
+prompt() {
+	# note: detect ssh connection properly to display hostname
+	local _branch="$(git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/')"
+	if [[ "$TERM" = "st-256color" ]]; then
+		PS1="\e[38;5;237m\T\e[0m \e[38;5;41m\u@\h\e[0m \e[38;5;69m\w\e[0m\e[35m$_branch\e[0m : "
+	else
+		PS1="\e[90m\T\e[0m \e[32m\u@\h\e[0m \e[94m\w\e[0m\e[35m$_branch\e[0m : "
+	fi
+}
+
+export PROMPT_COMMAND=prompt
\ No newline at end of file
diff --git a/home/acidvegas/.config/cmus/autosave b/home/acidvegas/.config/cmus/autosave
new file mode 100644
index 0000000..5832b8a
--- /dev/null
+++ b/home/acidvegas/.config/cmus/autosave
@@ -0,0 +1,134 @@
+set aaa_mode=all
+set altformat_current= %f
+set altformat_playlist= %f
+set altformat_title=cmus: %f
+set altformat_trackwin= %f
+set auto_expand_albums_follow=false
+set auto_expand_albums_search=false
+set auto_expand_albums_selcur=false
+set auto_reshuffle=false
+set buffer_seconds=10
+set color_cmdline_attr=default
+set color_cmdline_bg=default
+set color_cmdline_fg=default
+set color_cur_sel_attr=default
+set color_error=lightred
+set color_info=lightyellow
+set color_separator=gray
+set color_statusline_attr=default
+set color_statusline_bg=black
+set color_statusline_fg=white
+set color_titleline_attr=default
+set color_titleline_bg=black
+set color_titleline_fg=white
+set color_trackwin_album_attr=default
+set color_trackwin_album_bg=default
+set color_trackwin_album_fg=black
+set color_win_attr=default
+set color_win_bg=black
+set color_win_cur=lightyellow
+set color_win_cur_attr=default
+set color_win_cur_sel_attr=default
+set color_win_cur_sel_bg=red
+set color_win_cur_sel_fg=black
+set color_win_dir=lightblue
+set color_win_fg=default
+set color_win_inactive_cur_sel_attr=default
+set color_win_inactive_cur_sel_bg=gray
+set color_win_inactive_cur_sel_fg=black
+set color_win_inactive_sel_attr=default
+set color_win_inactive_sel_bg=gray
+set color_win_inactive_sel_fg=black
+set color_win_sel_attr=default
+set color_win_sel_bg=gray
+set color_win_sel_fg=black
+set color_win_title_attr=default
+set color_win_title_bg=default
+set color_win_title_fg=white
+set confirm_run=false
+set continue=true
+set device=/dev/cdrom
+set display_artist_sort_name=false
+set dsp.alsa.device=default
+set dsp.jack.resampling_quality=2
+set dsp.jack.server_name=
+set dsp.oss.device=
+set follow=false
+set format_current= %t
+set format_playlist=
+set format_playlist_va=
+set format_statusline= %{status} %{?show_playback_position?%{position} %{?duration?/ %{duration} }?%{?duration?%{duration} }}%=%{?volume>=0?vol: %{volume}}%% 
+set format_title=cmus: %a - %t
+set format_trackwin= %t
+set format_trackwin_album=
+set format_trackwin_va=%t
+set format_treewin=%l
+set format_treewin_artist=%a
+set icecast_default_charset=ISO-8859-1
+set id3_default_charset=ISO-8859-1
+set input.cdio.cddb_url=freedb.freedb.org:8880
+set input.cdio.priority=50
+set input.cue.priority=50
+set input.ffmpeg.priority=30
+set input.flac.priority=50
+set input.mad.priority=55
+set input.modplug.priority=50
+set input.opus.priority=50
+set input.vorbis.priority=50
+set input.wav.priority=50
+set input.wavpack.priority=50
+set lib_add_filter=
+set lib_sort=artist title filename
+set mixer.alsa.channel=PCM
+set mixer.alsa.device=default
+set mixer.oss.channel=PCM
+set mixer.oss.device=
+set mixer.pulse.restore_volume=1
+set mouse=false
+set mpris=true
+set output_plugin=alsa
+set passwd=
+set pl_sort=
+set play_library=true
+set play_sorted=false
+set repeat=true
+set repeat_current=false
+set replaygain=disabled
+set replaygain_limit=true
+set replaygain_preamp=0.000000
+set resume=false
+set rewind_offset=5
+set scroll_offset=2
+set set_term_title=true
+set show_all_tracks=true
+set show_current_bitrate=false
+set show_hidden=false
+set show_playback_position=true
+set show_remaining_time=false
+set shuffle=false
+set skip_track_info=false
+set smart_artist_sort=false
+set softvol=false
+set softvol_state=0 0
+set start_view=tree
+set status_display_program=
+set time_show_leading_zero=true
+set wrap_search=true
+bind common , vol -10%
+bind common . vol +10%
+bind common / search-start
+bind common 1 view tree
+bind common delete win-remove
+bind common down win-down
+bind common enter win-activate
+bind common left seek -5
+bind common page_down win-page-down
+bind common page_up win-page-up
+bind common q quit -i
+bind common right seek +5
+bind common s view settings
+bind common tab win-next
+bind common u win-update
+bind common up win-up
+fset mp3=filename="*.mp3"
+factivate
diff --git a/home/acidvegas/.config/htop/htoprc b/home/acidvegas/.config/htop/htoprc
new file mode 100644
index 0000000..78d4269
--- /dev/null
+++ b/home/acidvegas/.config/htop/htoprc
@@ -0,0 +1,26 @@
+# Beware! This file is rewritten by htop when settings are changed in the interface.
+# The parser is also very primitive, and not human-friendly.
+fields=0 48 46 47 49 1
+sort_key=48
+sort_direction=1
+hide_threads=0
+hide_kernel_threads=1
+hide_userland_threads=1
+shadow_other_users=1
+show_thread_names=0
+show_program_path=1
+highlight_base_name=1
+highlight_megabytes=1
+highlight_threads=1
+tree_view=1
+header_margin=0
+detailed_cpu_time=0
+cpu_count_from_zero=0
+update_process_names=0
+account_guest_in_cpu_meter=0
+color_scheme=0
+delay=15
+left_meters=CPU
+left_meter_modes=1
+right_meters=Memory
+right_meter_modes=1
diff --git a/home/acidvegas/.gitconfig b/home/acidvegas/.gitconfig
new file mode 100644
index 0000000..ce218c2
--- /dev/null
+++ b/home/acidvegas/.gitconfig
@@ -0,0 +1,21 @@
+[alias]
+	commits = log --color --graph --pretty=format:'%Cred%h%Creset - %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
+	microclone = clone --depth=1
+	rmcommits = !git checkout --orphan latest_branch && git add -A && git commit -S -am "Initial commit" && git branch -D master && git branch -m master && git push -f origin master
+	setup = !git config user.name acidvegas && git config user.email acid.vegas@acid.vegas && git config user.signingkey 441EB0F297E0DCF0AEF2F711EF4B922DB85DC9DE'
+	stats = diff --stat
+[color]
+	diff = auto
+	status = auto
+	branch = auto
+	interactive = auto
+	ui = true
+	pager = true
+[commit]
+	gpgSign = true
+[core]
+	editor = nano
+[user]
+	signingkey = 441EB0F297E0DCF0AEF2F711EF4B922DB85DC9DE
+	name = acidvegas
+	email = acid.vegas@acid.vegas
diff --git a/home/acidvegas/.gnupg/gpg.conf b/home/acidvegas/.gnupg/gpg.conf
new file mode 100644
index 0000000..7c401d9
--- /dev/null
+++ b/home/acidvegas/.gnupg/gpg.conf
@@ -0,0 +1,19 @@
+keyserver-options no-honor-keyserver-url
+keyserver-options include-revoked
+
+keyid-format 0xlong
+with-fingerprint
+
+no-greeting
+no-emit-version
+no-comments
+list-options show-uid-validity
+verify-options show-uid-validity
+use-agent
+utf8-strings
+display-charset utf-8
+
+personal-cipher-preferences AES256 AES192 AES CAST5
+personal-digest-preferences SHA512 SHA384 SHA256 SHA224
+cert-digest-algo SHA512
+default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed
\ No newline at end of file
diff --git a/home/acidvegas/.mozilla/firefox/profile.default/chrome/userChrome.css b/home/acidvegas/.mozilla/firefox/profile.default/chrome/userChrome.css
new file mode 100644
index 0000000..6088047
--- /dev/null
+++ b/home/acidvegas/.mozilla/firefox/profile.default/chrome/userChrome.css
@@ -0,0 +1,82 @@
+/* context menu - blank */
+#context-back,#context-bookmarkpage,#context-forward,#context-inspect,#context-navigation,#context-pocket,#context-reload,#context-savepage,#context-selectall,#context-sendpagetodevice,#context-sep-navigation,#context-sep-sendpagetodevice,#context-sep-viewbgimage,#context-sep-viewsource,#context-stop,#context-viewinfo,#context-viewsource,#inspect-separator,#screenshots_mozilla_org_create-screenshot{display:none !important}
+
+/* context menu - frame */
+#context-bookmarkframe,#context-openframe,#context-openframeintab,#context-printframe,#context-printframe + menuseparator,#context-reloadframe,#context-reloadframe + menuseparator,#context-saveframe,#context-saveframe + menuseparator,#context-showonlythisframe,#context-viewframeinfo,#context-viewframesource,#open-frame-sep{display:none !important}
+
+/* context menu - image */
+#context-reloadimage,#context-sendimage,#context-sep-copyimage,#context-setDesktopBackground,#context-viewimageinfo{display:none !important}
+
+/* context menu - input */
+#context-bidi-page-direction-toggle,#context-bidi-text-direction-toggle,#context-copy,#context-cut,#context-delete,#context-keywordfield,#context-paste,#context-selectall,#context-sep-bidi,#context-sep-paste,#context-sep-undo,#context-undo,#fill-login,#fill-login-separator,#spell-add-dictionaries-main,#spell-check-enabled,#spell-dictionaries,#spell-separator{display:none !important}
+
+/* context menu - link */
+#context-bookmarklink,#context-openlink,#context-openlinkinusercontext-menu,#context-openlinkprivate,#context-savelinktopocket,#context-searchselect,#context-sendlinktodevice,#context-sep-open,#context-sep-sendlinktodevice{display:none !important}
+
+/* context menu - media */
+#context-sendaudio{display:none !important}
+
+/* context menu - page action */
+#pageAction-panel-addSearchEngine,#pageAction-panel-bookmark,#pageAction-panel-bookmarkSeparator,#pageAction-panel-builtInSeparator,#pageAction-panel-copyURL,#pageAction-panel-emailLink,#pageAction-panel-pocket,#pageAction-panel-screenshots,#pageAction-panel-sendToDevice,#pageAction-panel-transientSeparator,#pageAction-panel-webcompat-reporter-button{display:none !important}
+
+/* context menu - select */
+#context-viewpartialsource-selection{display:none !important}
+
+/* context menu - side bar */
+#placesContext_copy,#placesContext_createBookmark,#placesContext_cut,#placesContext_deleteHost,#placesContext_deleteSeparator,#placesContext_delete_history,#placesContext_editSeparator,#placesContext_openLinks:tabs,#placesContext_open:newprivatewindow,#placesContext_open:newwindow,#placesContext_paste,#placesContext_reload{display:none !important}
+
+/* context menu - tab */
+#context_closeOtherTabs,#context_closeTabsToTheEnd,#context_duplicateTab,#context_duplicateTab + menuseparator,#context_moveTabOptions,#context_pinSelectedTabs,#context_reloadSelectedTabs,#context_reloadTab,#context_reopenInContainer,#context_sendTabToDevice,#context_sendTabToDevice + menuseparator,#context_toggleMuteSelectedTabs,#context_undoCloseTab,#context_unpinSelectedTabs{display:none !important}
+
+/* context menu - tool bar */
+#toggle_PersonalToolbar,#toggle_toolbar-menubar,#toolbar-context-bookmarkSelectedTab,#toolbar-context-bookmarkSelectedTabs,#toolbar-context-reloadSelectedTab,#toolbar-context-reloadSelectedTabs,#toolbar-context-selectAllTabs,#toolbar-context-undoCloseTab,#toolbar-context-undoCloseTab + menuseparator,.customize-context-autoHide,.customize-context-manageExtension,.customize-context-moveToPanel,.customize-context-removeExtension,.customize-context-removeExtension + menuseparator,.customize-context-removeFromToolbar,.viewCustomizeToolbar{display:none !important}
+
+
+/* context menu - url bar */
+#urlbar menuitem[anonid="paste-and-go"],#urlbar menuitem[cmd="cmd_copy"],#urlbar menuitem[cmd="cmd_cut"],#urlbar menuitem[cmd="cmd_delete"],#urlbar menuitem[cmd="cmd_delete"] + menuseparator,#urlbar menuitem[cmd="cmd_paste"],#urlbar menuitem[cmd="cmd_selectAll"],#urlbar menuitem[cmd="cmd_undo"],#urlbar menuitem[cmd="cmd_undo"] + menuseparator{display:none !important}
+
+/* find bar - hide extra options */
+.findbar-entire-word, .findbar-case-sensitive, .findbar-highlight {visibility: collapse !important} 
+
+/* nav bar - hide back & forward buttons */
+:-moz-any(#back-button, #forward-button){display:none !important}
+
+/* nav bar - hide hamburger button */
+#PanelUI-menu-button{display:none}
+
+/* nav + tab bar merge */
+:root[uidensity=compact]{--tabs-margin-left:3em;--space-before-tabs:34.5em;--space-after-tabs:2em;--nav-margin-top:-1.9em;--menu-margin-top:0.05em}
+#TabsToolbar{margin-left:var(--tabs-margin-left) !important;padding-left:var(--space-before-tabs) !important;margin-right:var(--space-after-tabs) !important;margin-bottom:-0.1em; !important}
+#nav-bar{margin-top:var(--nav-margin-top) !important;margin-right:60vw !important;margin-bottom:-0.1em !important;background-color:transparent !important}
+
+/* side bar - hide header & search */
+#sidebar-header,#sidebar-search-container{display:none}
+
+/* tab bar - close button on hover only */
+.tabbrowser-tab:not([selected]):not([pinned]) .tab-close-button{display:none !important}
+.tabbrowser-tab:not([selected]):not([pinned]):hover .tab-close-button{display:-moz-box !important}
+
+/* tab bar - hide buttons */
+.tabbrowser-strip *[class^="scrollbutton"], .tabbrowser-strip *[class^="tabs-alltabs"], .tabbrowser-strip *[class^="tabs-newtab-button"]{display:none}
+
+/* tool bar - compact icons */
+#widget-overflow-fixed-list{display:grid;grid-template-rows:repeat(1,1.5em);grid-template-columns:repeat(20, 15em)}
+#widget-overflow-fixed-list .toolbarbutton-1 > .toolbarbutton-text{display:none !important}
+
+/* url bar - hide bookmark star */
+#star-button{display:none !important}
+
+/* url bar - hide dropdown */
+.urlbar-history-dropmarker{display:none !important}
+
+/* url bar - hide feed button */
+#feed-button {display:none !important}
+
+/* url bar - hide info icon */
+#urlbar:not(.grantedPermissions) #identity-icon{transition:300ms !important;opacity:0 !important;-moz-margin-end:-1.1em !important}
+
+/* url bar - hide page actions */
+#pageActionButton{display:none !important}
+
+#urlbar-container {max-width: 400px !important;}
+#search-container {max-width: 200px !important;} 
\ No newline at end of file
diff --git a/home/acidvegas/.mozilla/firefox/profile.default/chrome/userContent.css b/home/acidvegas/.mozilla/firefox/profile.default/chrome/userContent.css
new file mode 100644
index 0000000..c2d8133
--- /dev/null
+++ b/home/acidvegas/.mozilla/firefox/profile.default/chrome/userContent.css
@@ -0,0 +1,4 @@
+/* color blank pages for dark theme */
+@-moz-document url("about:blank"){*:empty:not([id]):not([style]){background-color:#474749 !important;}}
+@-moz-document url("about:home"), url("about:newtab"){.activity-stream{background-color:#474749 !important;}}
+@-moz-document url("about:newtab"){input#newtab-customize-button{display:none !important;}}
\ No newline at end of file
diff --git a/home/acidvegas/.mozilla/firefox/profile.default/mozilla.cfg b/home/acidvegas/.mozilla/firefox/profile.default/mozilla.cfg
new file mode 100644
index 0000000..e603041
--- /dev/null
+++ b/home/acidvegas/.mozilla/firefox/profile.default/mozilla.cfg
@@ -0,0 +1,68 @@
+// custom prefs
+lockPref("accessibility.typeaheadfind.autostart",		false)	// http://kb.mozillazine.org/Accessibility.typeaheadfind.autostart
+lockPref("accessibility.typeaheadfind.enablesound",		false)	// http://kb.mozillazine.org/Accessibility.typeaheadfind.enablesound
+lockPref("app.update.auto",								false)	// http://kb.mozillazine.org/App.update.auto
+lockPref("app.update.enabled",							true)	// http://kb.mozillazine.org/App.update.enabled
+lockPref("beacon.enabled",								false)
+lockPref("browser.aboutHomeSnippets.updateUrl",			"")
+lockPref("browser.backspace_action",					0)		// http://kb.mozillazine.org/Browser.backspace_action
+lockPref("browser.bookmarks.max_backups",				0)		// http://kb.mozillazine.org/Browser.bookmarks.max_backups
+lockPref("browser.cache.check_doc_frequency",           3)		// http://kb.mozillazine.org/Browser.cache.check_doc_frequency
+lockPref("browser.cache.disk.enable",					false)	// http://kb.mozillazine.org/Browser.cache.disk.enable
+lockPref("browser.cache.disk_cache_ssl",				false)	// http://kb.mozillazine.org/Browser.cache.disk_cache_ssl
+lockPref("browser.cache.memory.capacity",				-1)		// http://kb.mozillazine.org/Browser.cache.memory.capacity
+lockPref("browser.cache.memory.enable",					true)	// http://kb.mozillazine.org/Browser.cache.memory.enable
+lockPref("browser.cache.offline.enable",				false)	// http://kb.mozillazine.org/Browser.cache.offline.enable
+lockPref("browser.chrome.site_icons",					false)	// http://kb.mozillazine.org/Browser.chrome.site_icons
+lockPref("browser.chrome.toolbar_tips",					false)	// http://kb.mozillazine.org/Browser.chrome.toolbar_tips
+lockPref("browser.download.manager.addToRecentDocs",	false)	// http://kb.mozillazine.org/Browser.download.manager.addToRecentDocs
+lockPref("browser.formfill.enable",						false)
+lockPref("browser.link.open_newwindow",					3)		// http://kb.mozillazine.org/Browser.link.open_newwindow
+lockPref("browser.link.open_newwindow.restriction",		0)		// http://kb.mozillazine.org/Browser.link.open_newwindow.restriction
+lockPref("browser.newtabpage.enabled",					false)
+lockPref("browser.privatebrowsing.autostart",			true)
+lockPref("browser.safebrowsing.malware.enabled",		false)
+lockPref("browser.safebrowsing.phishing.enabled",		false)
+lockPref("browser.safebrowsing.downloads.enabled",		false)
+lockPref("browser.search.suggest.enabled",				false)	// http://kb.mozillazine.org/Browser.search.suggest.enabled
+lockPref("browser.send_pings",							false)	// http://kb.mozillazine.org/Browser.send_pings
+lockPref("browser.sessionhistory.max_total_viewers",	3)		// http://kb.mozillazine.org/Browser.sessionhistory.max_total_viewers
+lockPref("browser.sessionstore.max_resumed_crashes",	0)		// http://kb.mozillazine.org/Browser.sessionstore.max_resumed_crashes
+lockPref("browser.sessionstore.max_tabs_undo",			3)		// http://kb.mozillazine.org/Browser.sessionstore.max_tabs_undo
+lockPref("browser.sessionstore.privacy_level",			2)		// http://kb.mozillazine.org/Browser.sessionstore.privacy_level
+lockPref("browser.sessionstore.resume_from_crash",		false)	// http://kb.mozillazine.org/Browser.sessionstore.resume_from_crash
+lockPref("browser.startup.page",						0)		// http://kb.mozillazine.org/Browser.startup.page
+lockPref("browser.tabs.crashReporting.sendReport",		false)
+lockPref("browser.urlbar.autoFill",						false)
+lockPref("browser.urlbar.autocomplete.enabled",			false)
+lockPref("browser.urlbar.maxRichResults",				0)		// http://kb.mozillazine.org/Browser.urlbar.maxRichResults
+lockPref("browser.zoom.siteSpecific",					false)
+lockPref("dom.battery.enabled",							false)
+lockPref("dom.event.clipboardevents.enabled",			false)
+lockPref("dom.event.contextmenu.enabled",				false)
+lockPref("general.warnOnAboutConfig",					false)	// http://kb.mozillazine.org/General.warnOnAboutConfig
+lockPref("geo.enabled",									false)
+lockPref("extensions.pocket.enabled",					false)
+lockPref("extensions.screenshots.disabled",				true)
+lockPref("image.animation_mode",						"once")
+lockPref("layout.spellcheckDefault",					0)
+lockPref("network.cookie.cookieBehavior",				1)		// http://kb.mozillazine.org/Network.cookie.cookieBehavior
+lockPref("network.cookie.lifetimePolicy",				2)		// http://kb.mozillazine.org/Network.cookie.lifetimePolicy
+lockPref("network.dns.disablePrefetch",					true)	// http://kb.mozillazine.org/Network.dns.disablePrefetch
+lockPref("network.dnsCacheEntries",						10)		// http://kb.mozillazine.org/Network.dnsCacheEntries
+lockPref("network.http.referer.XOriginPolicy",			0)
+lockPref("network.http.referer.spoofSource",			true)
+lockPref("network.http.sendRefererHeader",				0)
+lockPref("network.IDN_show_punycode",					true)	// http://kb.mozillazine.org/Network.IDN_show_punycode
+lockPref("network.prefetch-next",						false)	// http://kb.mozillazine.org/Network.prefetch-next
+lockPref("places.history.enabled",						false)
+lockPref("signon.autofillForms",						false)	// http://kb.mozillazine.org/Signon.autofillForms
+lockPref("plugins.flashBlock.enabled",					true)
+lockPref("privacy.clearOnShutdown.*",					true)
+lockPref("privacy.cpd.*",								true)
+lockPref("privacy.donottrackheader.enabled",			true)
+lockPref("privacy.sanitize.sanitizeOnShutdown",			true)
+lockPref("privacy.trackingprotection.enabled",			true)
+lockPref("reader.parse-on-load.enabled",				false)
+lockPref("security.dialog_enable_delay",				0)
+lockPref("toolkit.cosmeticAnimations.enabled",			false)
diff --git a/home/acidvegas/.scripts/backup b/home/acidvegas/.scripts/backup
new file mode 100755
index 0000000..0b83fcd
--- /dev/null
+++ b/home/acidvegas/.scripts/backup
@@ -0,0 +1,7 @@
+#!/bin/sh
+mkdir -p $HOME/.backup/tmp && rm -rf $HOME/.backup/tmp/*
+gpg -a --export-secret-key 441EB0F297E0DCF0AEF2F711EF4B922DB85DC9DE > $HOME/.backup/tmp/key.gpg
+ssh supernets 'tar -zcvf ~/supernets.tar.gz ~/services ~/unrealircd ~/www' && scp supernets:supernets.tar.gz $HOME/.backup/tmp/supernets.tar.gz
+ssh pump      'tar -zcvf ~/bots.tar.gz ~/bots'                             && scp pump:bots.tar.gz           $HOME/.backup/tmp/bots.tar.gz
+tar -zcvf $HOME/.backup/backup-$(date +%Y-%m-%d).tar.gz --transform '!^.*/!!' $HOME/.backup/tmp/bots.tar.gz $HOME/.backup/tmp/key.gpg $HOME/.backup/tmp/supernets.tar.gz $HOME/.password-store $HOME/.ssh/config $HOME/.ssh/key $HOME/dev $HOME/doc $HOME/music
+rm -rf $HOME/.backup/tmp
\ No newline at end of file
diff --git a/home/acidvegas/.scripts/gitremote b/home/acidvegas/.scripts/gitremote
new file mode 100755
index 0000000..2cd23b0
--- /dev/null
+++ b/home/acidvegas/.scripts/gitremote
@@ -0,0 +1,24 @@
+#!/bin/sh
+set -xev
+for d in $(find $HOME/dev/git -type d -name mirrors -prune -o -type d -name .git -print | sort); do
+	u=$(echo $d | cut -d/ -f6)
+	r=$(echo $d | cut -d/ -f7)
+	echo "updating $u/$r..."
+	git -C $d remote remove origin
+	if [ $r = 'acid.vegas' ]; then
+		git -C $d remote add origin git@github.com:$u/acidvegas.github.io.git
+		git -C $d remote set-url --add --push origin git@github.com:$u/acidvegas.github.io.git
+		git -C $d remote set-url --add --push origin git@gitlab.com:$u/acidvegas.gitlab.io.git
+		git -C $d remote set-url --add --push origin git@REDACTED:$r.git
+	elif [ $r = 'supernets.org' ]; then
+		git -C $d remote add origin git@github.com:$u/supernets.github.io.git
+		git -C $d remote set-url --add --push origin git@github.com:$u/supernets.github.io.git
+		git -C $d remote set-url --add --push origin git@gitlab.com:$u/supernets.gitlab.io.git
+		git -C $d remote set-url --add --push origin git@REDACTED:$r.git
+	else
+		git -C $d remote add origin git@github.com:$u/$r.git
+		git -C $d remote set-url --add --push origin git@github.com:$u/$r.git
+		git -C $d remote set-url --add --push origin git@gitlab.com:$u/$r.git
+		git -C $d remote set-url --add --push origin git@REDACTED:$r.git
+	fi
+done
\ No newline at end of file
diff --git a/home/acidvegas/.scripts/mutag b/home/acidvegas/.scripts/mutag
new file mode 100755
index 0000000..e46563e
--- /dev/null
+++ b/home/acidvegas/.scripts/mutag
@@ -0,0 +1,10 @@
+#!/bin/sh
+find $HOME/music -type f | while read SONG; do
+	DIR=$(dirname "$SONG")
+	ARTIST=$(basename "$DIR")
+	TITLE=$(basename "$SONG" | rev | cut -d"." -f2- | rev)
+	echo "$DIR | $ARTIST | $TITLE"
+	eyeD3 --remove-all-images "$SONG"
+	id3v2 --delete-all "$SONG"
+	id3v2 --artist "$ARTIST" --song "$TITLE" -2 "$SONG"
+done
\ No newline at end of file
diff --git a/home/acidvegas/.scripts/todo b/home/acidvegas/.scripts/todo
new file mode 100755
index 0000000..595c29f
--- /dev/null
+++ b/home/acidvegas/.scripts/todo
@@ -0,0 +1,19 @@
+#!/bin/sh
+DB=$HOME/.todo.db
+if [ -z $(sqlite3 $DB "SELECT name FROM sqlite_master WHERE type='table'") ]; then
+	sqlite3 $DB "CREATE TABLE TODO (ID INTEGER PRIMARY KEY, DESC TEXT NOT NULL);"
+fi
+if [ $# -eq 0 ]; then
+	data=$(sqlite3 $DB "SELECT ID,DESC FROM TODO" | sed 's/|/\t/g')
+	if [ -z "$data" ]; then
+		echo "nothing to do"
+	else
+		echo "$data"
+	fi
+elif [ $1 = 'add' ]; then
+	desc=$(echo "$@" | sed -e 's/^\w*\ *//')
+	sqlite3 $DB "INSERT INTO TODO (DESC) values ('$desc');"
+elif [ $1 = 'del' ]; then
+	id=$(echo "$@" | sed -e 's/^\w*\ *//')
+	sqlite3 $DB "DELETE FROM TODO WHERE ID=$id"
+fi
\ No newline at end of file
diff --git a/home/acidvegas/.xinitrc b/home/acidvegas/.xinitrc
new file mode 100644
index 0000000..54a877a
--- /dev/null
+++ b/home/acidvegas/.xinitrc
@@ -0,0 +1,16 @@
+#!/bin/sh
+if [ -d /etc/X11/xinit/xinitrc.d ] ; then
+	for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
+		[ -x "$f" ] && . "$f"
+	done
+	unset f
+fi
+
+xset +fp /usr/share/fonts/local
+xset fp rehash
+xset s 3600 3600
+
+slstatus &
+unclutter &
+
+exec dwm
\ No newline at end of file
diff --git a/home/acidvegas/dev/build/dwm/config.h b/home/acidvegas/dev/build/dwm/config.h
new file mode 100644
index 0000000..92174bd
--- /dev/null
+++ b/home/acidvegas/dev/build/dwm/config.h
@@ -0,0 +1,67 @@
+static const unsigned int borderpx = 0;
+static const unsigned int snap     = 32;
+static const int showbar           = 0;
+static const int topbar            = 1;
+static const float mfact           = 0.55;
+static const int nmaster           = 1;
+static const int resizehints       = 0;
+static const Layout layouts[]      = { { "", tile } };
+static const Rule rules[]          = { { NULL, NULL, NULL, 0, False, -1 } };
+static const char *tags[]          = { "chat", "dev", "media", "www", "other" };
+static const char *fonts[]         = { "Misc Ohsnap.Icons:style=Regular:size=11" };
+static const char dmenufont[]      = "Misc Ohsnap.Icons:style=Regular:size=11";
+static const char *colors[][3]     = {
+	[SchemeNorm]   = { "#FFFFFF", "#000000", "#444444" },
+	[SchemeSel]    = { "#00D787", "#000000", "#00D787" },
+	[SchemeWarn]   = { "#00D787", "#000000", "#000000" },
+	[SchemeUrgent] = { "#00D787", "#000000", "#000000" },
+};
+
+#define MODKEY Mod4Mask
+#define TAGKEYS(KEY,TAG) \
+	{ MODKEY,                       KEY, view,       {.ui = 1 << TAG} }, \
+	{ MODKEY|ControlMask,           KEY, toggleview, {.ui = 1 << TAG} }, \
+	{ MODKEY|ShiftMask,             KEY, tag,        {.ui = 1 << TAG} }, \
+	{ MODKEY|ControlMask|ShiftMask, KEY, toggletag,  {.ui = 1 << TAG} },
+
+static char dmenumon[2]         = "0";
+static const char *dmenucmd[]   = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", "#000000", "-nf", "#FFFFFF", "-sb", "#000000", "-sf", "#00D787", NULL };
+static const char *termcmd[]    = { "tabbed", "-cf", "st", "-w", NULL };
+static const char *mutevol[]    = { "amixer", "-q", "set", "Master", "toggle", NULL };
+static const char *downvol[]    = { "amixer", "-q", "set", "Master", "3-",     NULL };
+static const char *upvol[]      = { "amixer", "-q", "set", "Master", "3+",     NULL };
+static const char *mocprev[]    = { "mocp", "-r", NULL };
+static const char *moctoggle[]  = { "mocp", "-G", NULL };
+static const char *mocnext[]    = { "mocp", "-F", NULL };
+
+static Key keys[] = {
+	{ MODKEY, XK_Return, spawn,      {.v = termcmd } },
+	{ MODKEY, XK_Down,   incnmaster, {.i = +1 } },
+	{ MODKEY, XK_Up,     incnmaster, {.i = -1 } },
+	{ MODKEY, XK_Left,   setmfact,   {.f = -0.05} },
+	{ MODKEY, XK_Right,  setmfact,   {.f = +0.05} },
+	{ MODKEY, XK_h,      togglebar,  {0} },
+	{ MODKEY, XK_k,      killclient, {0} },
+	{ MODKEY, XK_q,      quit,       {0} },
+	{ MODKEY, XK_f,      setlayout,  {.v = &layouts[0]} },
+	{ MODKEY, XK_r,      spawn,      {.v = dmenucmd } },
+	{ MODKEY, XK_F1,     spawn,      {.v = mutevol } },
+	{ MODKEY, XK_F2,     spawn,      {.v = downvol } },
+	{ MODKEY, XK_F3,     spawn,      {.v = upvol } },
+	{ MODKEY, XK_F4,     spawn,      {.v = mocprev } },
+	{ MODKEY, XK_F5,     spawn,      {.v = moctoggle } },
+	{ MODKEY, XK_F6,     spawn,      {.v = mocnext } },
+	TAGKEYS(  XK_1, 0)
+	TAGKEYS(  XK_2, 1)
+	TAGKEYS(  XK_3, 2)
+	TAGKEYS(  XK_4, 3)
+	TAGKEYS(  XK_5, 4)
+};
+
+static Button buttons[] = {
+	{ ClkWinTitle,  0,      Button2, zoom,        {0} },
+	{ ClkClientWin, MODKEY, Button1, movemouse,   {0} },
+	{ ClkClientWin, MODKEY, Button3, resizemouse, {0} },
+	{ ClkTagBar,    0,      Button1, view,        {0} },
+	{ ClkTagBar,    MODKEY, Button1, tag,         {0} },
+};
\ No newline at end of file
diff --git a/home/acidvegas/dev/build/dwm/patch_nosquares.diff b/home/acidvegas/dev/build/dwm/patch_nosquares.diff
new file mode 100644
index 0000000..a59ec39
--- /dev/null
+++ b/home/acidvegas/dev/build/dwm/patch_nosquares.diff
@@ -0,0 +1,13 @@
+--- a/drw.c	2019-03-09 23:41:26.989923828 -0500
++++ b/drw.c	2019-03-09 23:41:35.459923639 -0500
+@@ -241,10 +241,6 @@
+ 	if (!drw || !drw->scheme)
+ 		return;
+ 	XSetForeground(drw->dpy, drw->gc, invert ? drw->scheme[ColBg].pixel : drw->scheme[ColFg].pixel);
+-	if (filled)
+-		XFillRectangle(drw->dpy, drw->drawable, drw->gc, x, y, w, h);
+-	else
+-		XDrawRectangle(drw->dpy, drw->drawable, drw->gc, x, y, w - 1, h - 1);
+ }
+ 
+ int
diff --git a/home/acidvegas/dev/build/dwm/patch_notitles.diff b/home/acidvegas/dev/build/dwm/patch_notitles.diff
new file mode 100644
index 0000000..b1e8368
--- /dev/null
+++ b/home/acidvegas/dev/build/dwm/patch_notitles.diff
@@ -0,0 +1,10 @@
+--- a/dwm.c	2019-03-09 23:32:26.479935899 -0500
++++ b/dwm.c	2019-03-09 23:32:36.269935680 -0500
+@@ -731,7 +731,6 @@
+ 	if ((w = m->ww - sw - x) > bh) {
+ 		if (m->sel) {
+ 			drw_setscheme(drw, scheme[m == selmon ? SchemeSel : SchemeNorm]);
+-			drw_text(drw, x, 0, w, bh, lrpad / 2, m->sel->name, 0);
+ 			if (m->sel->isfloating)
+ 				drw_rect(drw, x + boxs, boxs, boxw, boxw, m->sel->isfixed, 0);
+ 		} else {
diff --git a/home/acidvegas/dev/build/slstatus/config.h b/home/acidvegas/dev/build/slstatus/config.h
new file mode 100644
index 0000000..8f363bc
--- /dev/null
+++ b/home/acidvegas/dev/build/slstatus/config.h
@@ -0,0 +1,14 @@
+const unsigned int interval = 1000;
+static const char unknown_str[] = "??";
+
+#define MAXLEN 2048
+
+static const struct arg args[] = {
+	{ cpu_perc,		"Ç %s% | ",		NULL},
+	{ ram_perc,		"Æ %s% | ",		NULL},
+	{ disk_perc,	"¨ %s% | ",		"/"},
+	{ temp,			"± %s°C | ",	"/sys/class/thermal/thermal_zone0/temp"},
+	{ battery_perc, "ð %s% | ",		"BAT0"},
+	{ vol_perc,		"í %s% | ",		"/dev/dsp"},
+	{ datetime,		"ú %s",			"%m/%d | · %I:%M" },
+};
\ No newline at end of file
diff --git a/home/acidvegas/dev/build/st/config.h b/home/acidvegas/dev/build/st/config.h
new file mode 100644
index 0000000..1894a61
--- /dev/null
+++ b/home/acidvegas/dev/build/st/config.h
@@ -0,0 +1,449 @@
+/* See LICENSE file for copyright and license details. */
+
+/*
+ * appearance
+ *
+ * font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html
+ */
+static char *font = "Misc Ohsnap.Icons:style=Regular:size=11";
+static int borderpx = 2;
+
+/*
+ * What program is execed by st depends of these precedence rules:
+ * 1: program passed with -e
+ * 2: utmp option
+ * 3: SHELL environment variable
+ * 4: value of shell in /etc/passwd
+ * 5: value of shell in config.h
+ */
+static char *shell = "/bin/sh";
+char *utmp = NULL;
+char *stty_args = "stty raw pass8 nl -echo -iexten -cstopb 38400";
+
+/* identification sequence returned in DA and DECID */
+char *vtiden = "\033[?6c";
+
+/* Kerning / character bounding-box multipliers */
+static float cwscale = 1.0;
+static float chscale = 1.0;
+
+/*
+ * word delimiter string
+ *
+ * More advanced example: L" `'\"()[]{}"
+ */
+wchar_t *worddelimiters = L" ";
+
+/* selection timeouts (in milliseconds) */
+static unsigned int doubleclicktimeout = 300;
+static unsigned int tripleclicktimeout = 600;
+
+/* alt screens */
+int allowaltscreen = 1;
+
+/* frames per second st should at maximum draw to the screen */
+static unsigned int xfps = 120;
+static unsigned int actionfps = 30;
+
+/*
+ * blinking timeout (set to 0 to disable blinking) for the terminal blinking
+ * attribute.
+ */
+static unsigned int blinktimeout = 800;
+
+/*
+ * thickness of underline and bar cursors
+ */
+static unsigned int cursorthickness = 2;
+
+/*
+ * bell volume. It must be a value between -100 and 100. Use 0 for disabling
+ * it
+ */
+static int bellvolume = 0;
+
+/* default TERM value */
+char *termname = "st-256color";
+
+/*
+ * spaces per tab
+ *
+ * When you are changing this value, don't forget to adapt the »it« value in
+ * the st.info and appropriately install the st.info in the environment where
+ * you use this st version.
+ *
+ *	it#$tabspaces,
+ *
+ * Secondly make sure your kernel is not expanding tabs. When running `stty
+ * -a` »tab0« should appear. You can tell the terminal to not expand tabs by
+ *  running following command:
+ *
+ *	stty tabs
+ */
+unsigned int tabspaces = 4;
+
+/* Terminal colors (16 first used in escape sequence) */
+static const char *colorname[] = {
+	/* colors */
+	"#000000",
+	"#800000",
+	"#008000",
+	"#808000",
+	"#000080",
+	"#800080",
+	"#008080",
+	"#c0c0c0",
+
+	/* bright */
+	"#808080",
+	"#ff0000",