Update dotfiles

This commit is contained in:
Observer of Time 2021-02-07 19:28:14 +02:00
parent abe41fa888
commit 6fdd2cdbfe
Signed by: chronobserver
GPG Key ID: 8A2DEA1DBAEBCA9E
20 changed files with 261 additions and 232 deletions

View File

@ -1,7 +1,9 @@
#!/bin/bash
# shellcheck disable=SC2183,SC2155
# Print date on login
printf '\e[1m\e[91m%(%A, %B %e, %Y)T \e[90m- \e[36m%(%Z %z)T\e[m\n\n'
printf '\e[1m\e[91m%(%A, %B %d, %Y)T \e[90m- \e[36m%(%Z %z)T\e[m\n\n'
# Include hidden files in glob
shopt -s dotglob
@ -9,11 +11,6 @@ shopt -s dotglob
# Save multi-line commands as one command
shopt -s cmdhist
# Set the github & gitlab tokens {{{
test -f ~/.local/tokens/github && export GITHUB_TOKEN="$(<"$_")"
test -f ~/.local/tokens/gitlab && export GITLAB_TOKEN="$(<"$_")"
# }}}
# Set the default command & options used by fzf {{{
export FZF_DEFAULT_COMMAND='fd -LIH -tf --color=always'
export FZF_CTRL_T_COMMAND='fd -LIH -tf'
@ -62,6 +59,12 @@ export BUNDLE_USER_PLUGIN="$XDG_DATA_HOME/bundle"
export TRAVIS_CONFIG_PATH="$XDG_CONFIG_HOME/travis"
# }}}
# Set the paths used by R {{{
export R_LIBS_USER="$HOME/.local/R"
export R_PROFILE="$XDG_CONFIG_HOME/Rprofile"
export R_HISTFILE="$XDG_CACHE_HOME/.R_history"
# }}}
# Set the paths used by perl5 {{{
export PERL5LIB="$HOME/.local/perl/lib/perl5"
export PERL_CPANM_OPT="-l $HOME/.local/perl"
@ -69,7 +72,7 @@ export PERL_CPANM_HOME="$HOME/.local/perl/.cpanm"
# }}}
# Set the paths used by rust {{{
export CARGO_HOME="$XDG_DATA_HOME/cargo"
export CARGO_HOME="$XDG_CACHE_HOME/cargo"
# }}}
# Set the paths used by node {{{
@ -79,9 +82,10 @@ export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME/npm/npmrc"
# Set the paths used by android {{{
export ANDROID_HOME="$HOME/.local/android"
export ANDROID_SDK_HOME="$ANDROID_HOME/sdk"
export ANDROID_SDK_ROOT="$ANDROID_SDK_HOME"
export ANDROID_EMULATOR_HOME="$ANDROID_SDK_HOME"
export ANDROID_SDK_HOME="$ANDROID_HOME"
export ANDROID_SDK_ROOT="$ANDROID_HOME"
export ANDROID_AVD_HOME="$ANDROID_HOME/avd"
export ANDROID_EMULATOR_HOME="$ANDROID_HOME"
# }}}
# Set the paths used by kotlin {{{
@ -93,10 +97,6 @@ export KONAN_DATA_DIR="$XDG_DATA_HOME/konan"
export SQLITE_HISTORY="$XDG_CACHE_HOME/.sqlite_history"
# }}}
# Set the paths used by gtk {{{
export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtkrc-2.0"
# }}}
# Set the paths used by xorg {{{
export XCOMPOSEFILE="$XDG_CONFIG_HOME/X11/XCompose"
export XCOMPOSECACHE="$XDG_CACHE_HOME/X11/XCompose"
@ -132,16 +132,14 @@ export PYCHARM_VM_OPTIONS="$XDG_CONFIG_HOME/pycharm/charm.vmoptions"
# Set the search path for commands {{{
export PATH="$HOME/.local/bin:\
/usr/bin:/usr/local/bin:/usr/sbin:\
/usr/local/bin:/usr/bin:\
/usr/lib/jvm/default/bin:\
/usr/bin/site_perl:\
/usr/bin/vendor_perl:\
/usr/bin/core_perl:\
$HOME/.local/perl/bin:\
$GOPATH/bin:\
$GEM_HOME/bin:\
$ANDROID_SDK_HOME/tools:\
$ANDROID_SDK_HOME/platform-tools:"
$GEM_HOME/bin"
# }}}
# Use a 256color terminal if one exists {{{
@ -149,16 +147,18 @@ for t in {konsole,xterm,gnome}-256color; do
[ -f /usr/share/terminfo/${t:0:1}/$t ] && export TERM=$t && break
[ $t == gnome-256color ] && export TERM=xterm
done
unset t
# }}}
# Source fzf keybinds
test -f /usr/share/fzf/key-bindings.bash && . "$_"
# Specify inputrc
test -f "$XDG_CONFIG_HOME/inputrc" && export INPUTRC="$_"
# Specify xinitrc
test -f "$XDG_CONFIG_HOME/X11/xinitrc" && export XINITRC="$_"
# Source fzf keybinds
test -f /usr/share/fzf/key-bindings.bash && . "$_"
# Source github & gitlab tokens {{{
test -f "$XDG_DATA_HOME/tokens" && . "$_"
# }}}
# Source bashrc
test -f "$XDG_DATA_HOME/bash/bashrc.sh" && . "$_"

View File

@ -149,6 +149,7 @@
<Multi_key> <slash> <equal> : "≠" U2260 # NOT EQUAL TO
<Multi_key> <equal> <underscore> : "≡" U2261 # IDENTICAL TO
<Multi_key> <asciitilde> <equal> : "≅" U2245 # APPROXIMATELY EQUAL TO
<Multi_key> <asciitilde> <asciitilde> : "≈" U2248 # ALMOST EQUAL TO
<Multi_key> <less> <underscore> : "≤" U2264 # LESS-THAN OR EQUAL TO
<Multi_key> <underscore> <less> : "≤" U2264 # LESS-THAN OR EQUAL TO
<Multi_key> <greater> <underscore> : "≥" U2265 # GREATER-THAN OR EQUAL TO

View File

@ -1,2 +1,2 @@
max_size = 2G
max_size = 4G
compression = true

View File

@ -21,6 +21,22 @@
<const>rgb</const>
</edit>
</match>
<match target="font">
<test compare="eq" name="family">
<string>Fantasque Sans Mono</string>
</test>
<edit name="fontfeatures" mode="assign_replace">
<string>ss01</string>
</edit>
</match>
<match target="font">
<test compare="eq" name="family">
<string>JetBrains Mono</string>
</test>
<edit name="fontfeatures" mode="assign_replace">
<string>zero</string>
</edit>
</match>
<alias>
<family>monospace</family>
<prefer>
@ -72,3 +88,4 @@
</alias>
<dir prefix="xdg">fonts</dir>
</fontconfig>
<!-- vim:set ft=xml: -->

View File

@ -8,6 +8,9 @@
pager = ${PAGER:-nvimpager}
whitespace = tabwidth=4,cr-at-eol
[init]
defaultBranch = master
[advice]
detachedHead = false
@ -36,8 +39,6 @@
[tar "tar.xz"]
command = xz -c -z -
[pull]
ff = only
[tar "tar.zst"]
command = zstd -c -z -q -
@ -100,6 +101,7 @@
hist = log --date=short --graph --pretty=log
ls = log --date=short --graph --pretty=log-color --decorate
ll = log --date=short --graph --pretty=log-color --decorate --numstat
rev = log --decorate --reverse --no-merges --stat @{1}..
amend = commit --amend -uno -a
wdiff = diff --word-diff
cdiff = diff --word-diff-regex=. --color-words
@ -112,28 +114,27 @@
git reset --hard ${1:-upstream}/master && git push --verbose --force"
force-pull = "!git fetch -a && git reset --hard ${2:-origin}/${1:-master}"
[url "ssh://git@github.com/"]
insteadOf = https://github.com/
[filter "lfs"]
process = git-lfs filter-process
required = true
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
[url "git@github.com:"]
insteadOf = http://github.com/
insteadOf = @gh:
[url "ssh://git@gitlab.com/"]
insteadOf = https://gitlab.com/
[url "git@gitlab.com:"]
insteadOf = http://gitlab.com/
insteadOf = @gl:
[url "ssh://git@git.disroot.org/"]
insteadOf = https://git.disroot.org/
[url "git@git.disroot.org:"]
insteadOf = http://git.disroot.org/
insteadOf = @disroot:
[url "ssh://aur@aur.archlinux.org/"]
insteadOf = https://aur.achlinux.org/
[url "aur@aur.archlinux.org:"]
insteadOf = https://aur.archlinux.org/
insteadOf = http://aur.archlinux.org/
insteadOf = @aur:
[url "https://bitbucket.org/"]
insteadOf = http://bitbucket.org/
insteadOf = @bb:
# vim:noet:sw=4:ts=4:

View File

@ -3,7 +3,8 @@
fields=0 48 17 18 38 39 40 2 46 47 49 1
sort_key=48
sort_direction=1
hide_threads=0
tree_sort_key=0
tree_sort_direction=1
hide_kernel_threads=1
hide_userland_threads=0
shadow_other_users=0
@ -12,17 +13,29 @@ show_program_path=1
highlight_base_name=1
highlight_megabytes=0
highlight_threads=1
highlight_changes=0
highlight_changes_delay_secs=5
find_comm_in_cmdline=1
strip_exe_from_cmdline=1
show_merged_command=1
tree_view=1
tree_view_always_by_pid=0
header_margin=1
detailed_cpu_time=0
cpu_count_from_zero=0
cpu_count_from_one=1
show_cpu_usage=1
show_cpu_frequency=0
show_cpu_temperature=0
degree_fahrenheit=0
update_process_names=0
account_guest_in_cpu_meter=0
color_scheme=5
enable_mouse=1
delay=15
left_meters=AllCPUs Memory Swap
left_meter_modes=2 2 2
right_meters=CPU LoadAverage Tasks Uptime Clock
right_meter_modes=2 2 2 2 2
hide_function_bar=0
# vim:ft=cfg:

View File

@ -28,6 +28,9 @@ set history-size 500
# Disable completion pages
set page-completions off
# Disable bracketed paste
set enable-bracketed-paste off
# Print completions horizontally
set print-completions-horizontally on

View File

@ -21,13 +21,14 @@ MBTN_LEFT_DBL cycle fullscreen
l cycle-values loop-file "inf" "no"
L cycle-values loop-playlist "inf" "no"
V cycle-values video-aspect-override "16:9" "4:3" "-1"
H cycle-values hwdec "no" "auto-copy-safe"
H cycle-values hwdec "no" "auto-copy"
# }}}
# set {{{
= set volume 100
/ set sub-delay 0
BS set speed 1.0
Alt+BS set video-zoom 0 ; set video-pan-x 0 ; set video-pan-y 0
ESC set fullscreen no
@ -147,15 +148,8 @@ O script-binding kdialog/open-url
T script-binding kdialog/open-subs
c script-binding clipshot/clipshot-subs
C script-binding clipshot/clipshot-video
DEL script-binding osc/visibility
Ctrl+t script-binding misc/show-time
# }}}
# script-message {{{
y script-message osc-visibility never
Y script-message osc-visibility auto
DEL script-binding osc/visibility
# }}}

View File

@ -25,7 +25,7 @@ slang=eng,ell
# Network {{{
# User agent for HTTP streaming.
user-agent="Mozilla/5.0 (X11; Linux x86_64) mpv/0.32.0"
user-agent="Mozilla/5.0 (X11; Linux x86_64) mpv/0.33.0"
# }}}
@ -110,7 +110,7 @@ sub-auto=all
sub-file-paths=Subs
# Specify the position of subtitles on the screen.
sub-pos=97
sub-pos=99
# }}}

View File

@ -28,7 +28,7 @@ reload-threads 4
save-path "~/Documents/RSS"
# This value will be used as HTTP User-Agent header.
user-agent "Mozilla/5.0 (Linux x86_64) newsboat/2.21.0"
user-agent "Mozilla/5.0 (Linux x86_64) newsboat/2.21.1"
# Keybindings {{{
bind-key j next

View File

@ -1,5 +1,14 @@
config, c = config, c
# Background color for webpages if unset.
c.colors.webpage.bg = ''
# Force prefers-color-scheme: dark colors for websites.
c.colors.webpage.prefers_color_scheme_dark = True
# Require a confirmation before quitting the application.
c.confirm_quit = ['downloads']
# Default encoding to use for websites.
c.content.default_encoding = 'utf-8'
@ -10,9 +19,9 @@ c.content.headers.accept_language = 'en_GB,en'
c.content.headers.user_agent = ' '.join((
'Mozilla/5.0',
'(X11; Linux x86_64)',
'QtWebEngine/5.15.0',
'Chromium/80.0.3987.163',
'qutebrowser/1.13.0'
'QtWebEngine/5.15.2',
'Chromium/83.0.4103.122',
'qutebrowser/2.0.2'
))
# Allow JavaScript to read from or write to the clipboard.
@ -28,21 +37,20 @@ c.content.ssl_strict = True
c.content.webgl = False
# Editor (and arguments) to use
# for the open-editor command.
# for the edit-text command.
c.editor.command = [
'konsole', '-e',
'nvim', '{file}',
'-c', 'normal {line}G{column0}l'
]
# Command (and arguments) to use for selecting files in forms.
c.fileselect.single_file.command = \
c.fileselect.multiple_files.command = \
['konsole', '-e', 'vifm', '--choose-files', '{}']
# Default monospace fonts.
c.fonts.web.family.fixed = ','.join((
'Hack',
'Fira Code',
'Code New Roman',
'Fantasque Sans Mono',
'DejaVu Sans Mono'
))
c.fonts.web.family.fixed = 'Hack, Fira Code, Fantasque Sans Mono'
# Which Chromium process model to use.
c.qt.process_model = 'process-per-site'
@ -50,55 +58,59 @@ c.qt.process_model = 'process-per-site'
# Languages to use for spell checking.
c.spellcheck.languages = ['en-GB', 'en-US', 'el-GR']
# When to show the statusbar.
c.statusbar.show = 'never'
# List of widgets displayed in the statusbar.
c.statusbar.widgets = ['keypress', 'url', 'history', 'tabs', 'progress']
c.url.start_pages = [
# {{{1
"""https://search.disroot.org/?preferences=
eJx1VU3P2zYM_jXzxUixroedfBg2DCtQ4C2adFeDlmi
bjSS6opy83q8fFX_EedNeElgm-XyQoiPK6JLUHOqA1z
pBU_0NTrCwTHVEYXfBWImhQz8279K1cBC6ETqsMBy-H
gvHBlx-KCwJNA5tPbixoyDVv-QPjs5Y95zOOMkvv_35
MmDIVRWydhTOG24T-SoYM36O-xhaCpSwFhPZuTXzD2N
QpP7r5aMWuUYNKMgrl3qI_DpVpzhiAWNiw35wmLAqBF
oUhGj66tci9eixYjEQCwyPZI_o2lphOXpIxCGzOEUwZ
yX19csnxfOsTujpP6fT5-OKr8_HW_ksxEDCjuNUCzo0
6e4IBsVAqVhFAEUcxsaRmXFq1UgYTC7VRsRSuE1XiFh
ajTQp16sp6dsLQ9JoNgSu9GgJ9LABwX2JMAHU9YUscp
YwBhkcSK8lslH5qGPuHJZ6PJUwDEqgJXd7Y6lr0v1xs
M1D6Y46lQOiIR0GjJD7EtFa0hNtYs7RdolEbPd5gh5C
IlOK6dlBfKa7cVsNspBUV3owZ8_bj0Kmrm9_GdWYQ7r
sZK-s7jw7xHMij7KYSWFvk6dMXI0vwYBFn4vfkRdftu
iFyfy8OwfTCY_PgTNlvhDuo9-_7oTb0ep87_gKoh1Qh
28Tqe8S80LfjDEqu2mf4unVOB7tPeX7VY0v54l5mhzU
K0d2X6CFmAGWVvbQRMg_C2SecrpgSbLPWTWvkG3Ua01
gdtoSnydOLD2fIewiZ7QfSd48aiN4cNREXEhM0DOXme
HG009e72acyhQhiNM7aH9EcJ1qz990FPYRs0sPNR03k
vBdXKelvzVyebjzXGu-UbjRXwZnVfwmbM0W_C-Af3DC
QIilpDiaNEaUN8PYPfVyXnGGLZb5ZyGqa8ZnM-7J7z9
8-P11R3CXZ9ksadZ2pcXbAp4X1LOZc2-3Jbrut2XeH6
3U7oF2JxeRx9lZwn-6FlaD1tv8RnS3NOWp4MxuN4ENp
WbUVZ4WhWvBLWDGu_Wp8Jh6ttXnl-OpWDY6ZW0zSnH7
fBwkTfrVc9xRNu9ysBDP_wMVWr6s
""".replace('\n', '').replace(' ', '')
# }}}
]
# When to show the tab bar.
c.tabs.show = 'multiple'
# What search to start when something else than a URL is entered.
c.url.auto_search = 'never'
# Page to open if :open -t/-b/-w is used without URL. {{{1
c.url.default_page = """https://search.disroot.org/?preferences=
eJx1VU3P2zYM_jXzxUixroedfBg2DCtQ4C2adFeDlmibjSS6opy83q8fFX_EedNe
Elgm-XyQoiPK6JLUHOqA1zpBU_0NTrCwTHVEYXfBWImhQz8279K1cBC6ETqsMBy-
HgvHBlx-KCwJNA5tPbixoyDVv-QPjs5Y95zOOMkvv_35MmDIVRWydhTOG24T-SoY
M36O-xhaCpSwFhPZuTXzD2NQpP7r5aMWuUYNKMgrl3qI_DpVpzhiAWNiw35wmLAq
BFoUhGj66tci9eixYjEQCwyPZI_o2lphOXpIxCGzOEUwZyX19csnxfOsTujpP6fT
5-OKr8_HW_ksxEDCjuNUCzo06e4IBsVAqVhFAEUcxsaRmXFq1UgYTC7VRsRSuE1X
iFhajTQp16sp6dsLQ9JoNgSu9GgJ9LABwX2JMAHU9YUscpYwBhkcSK8lslH5qGPu
HJZ6PJUwDEqgJXd7Y6lr0v1xsM1D6Y46lQOiIR0GjJD7EtFa0hNtYs7RdolEbPd5
gh5CIlOK6dlBfKa7cVsNspBUV3owZ8_bj0Kmrm9_GdWYQ7rsZK-s7jw7xHMij7KY
SWFvk6dMXI0vwYBFn4vfkRdftuiFyfy8OwfTCY_PgTNlvhDuo9-_7oTb0ep87_gK
oh1Qh28Tqe8S80LfjDEqu2mf4unVOB7tPeX7VY0v54l5mhzUK0d2X6CFmAGWVvbQ
RMg_C2SecrpgSbLPWTWvkG3Ua01gdtoSnydOLD2fIewiZ7QfSd48aiN4cNREXEhM
0DOXmeHG009e72acyhQhiNM7aH9EcJ1qz990FPYRs0sPNR03kvBdXKelvzVyebjz
XGu-UbjRXwZnVfwmbM0W_C-Af3DCQIilpDiaNEaUN8PYPfVyXnGGLZb5ZyGqa8Zn
M-7J7z98-P11R3CXZ9ksadZ2pcXbAp4X1LOZc2-3Jbrut2XeH63U7oF2JxeRx9lZ
wn-6FlaD1tv8RnS3NOWp4MxuN4ENpWbUVZ4WhWvBLWDGu_Wp8Jh6ttXnl-OpWDY6
ZW0zSnH7fBwkTfrVc9xRNu9ysBDP_wMVWr6s""".replace('\n', '')
# }}}
# Page(s) to open at the start.
c.url.start_pages = ['about:blank']
# Search engines which can be used via the address bar.
c.url.searchengines = {
'DEFAULT': c.url.start_pages[0] + '&q={}',
'DEFAULT': c.url.default_page + '&q={}',
'G': 'https://google.com/search?q={}',
'Q': 'https://qwant.com/?q={}'
}
# Keybindings {{{0
config.bind('<Ctrl-Shift-I>', 'devtools')
config.bind(';m', 'spawn mpv {url}')
config.bind(';M', 'hint links spawn mpv {hint-url}')
config.bind(';T', 'config-cycle -t tabs.show always multiple')
config.bind(';S', 'config-cycle -t statusbar.show always never')
config.bind('<F5>', 'reload -f')
config.bind('<Ctrl-Shift-I>', 'devtools window')
# }}}
# Load autoconfig.yml
config.load_autoconfig()
# Disable autoconfig
config.load_autoconfig(False)
# vim:fdm=marker:fdl=0:

View File

@ -138,7 +138,7 @@ fileviewer *.aac,
\*.spx,
\*.wav,
\*.xspf
\ ffprobe -pretty %c 2>&1
\ ffprobe -hide_banner %c 2>&1
" }}}
" Videos {{{
@ -207,36 +207,10 @@ fileviewer *.anx,
\*.xcf,
\*.xwd,
\*.yuv
\ ffprobe -pretty %c 2>&1
\ ffprobe -hide_banner %c 2>&1
" }}}
" Images {{{
fileviewer *.apng,
\*.bmp,
\*.gif,
\*.ico,
\*.icon,
\*.j2k,
\*.jp2,
\*.jpeg,
\*.jpf,
\*.jpg,
\*.jpm,
\*.jpx,
\*.mng,
\*.pbm,
\*.pcx,
\*.pgm,
\*.png,
\*.ppm,
\*.psd,
\*.tga,
\*.tif,
\*.tiff,
\*.webp,
\*.xbm,
\*.xpm
\ identify -verbose %c
filextype *.apng,
\*.bmp,
\*.gif,
@ -299,7 +273,7 @@ fileviewer *.apng,
\*.webp,
\*.xbm,
\*.xpm
\ identify %c
\ identify -verbose %c
" }}}
" Archives {{{
@ -379,9 +353,11 @@ filextype *.html,*.htm
" }}}
" Hashes {{{
filetype *.b2 {Verify} b2sum -c %f %S
filetype *.md5 {Verify} md5sum -c %f %S
filetype *.sha1 {Verify} sha1sum -c %f %S
filetype *.sha256 {Verify} sha256sum -c %f %S
filetype *.sha384 {Verify} sha384sum -c %f %S
filetype *.sha512 {Verify} sha512sum -c %f %S
" }}}
@ -398,9 +374,7 @@ fileviewer *.gpg gpg --decrypt %c
" Binary files {{{
filextype *.out,*.exe,*.bin {Okteta} okteta %f %i &
filextype *.class
\ {Okteta} okteta %f %i &,
\ {Decompile} cfr %f --outputdir %d %i &
filetype *.class {Decompile} cfr %f --outputdir %d %i &
fileviewer *.out,*.exe,*.bin xxd -u %c
fileviewer *.class cfr %c
fileviewer *.lnk pylnker %c

View File

@ -17,6 +17,6 @@
--output "%(title)s.%(ext)s"
# Specify a custom user agent.
--user-agent "Mozilla/5.0 (Linux x86_64) youtube-dl/2020.09.20"
--user-agent "Mozilla/5.0 (Linux x86_64) youtube-dl/2021.02.04"
# vim:ft=conf:

View File

@ -5,10 +5,9 @@ sudo cp /etc/pacman.conf{,.bak}
sudo sed -i /etc/pacman.conf \
-e 's/^#\(Color\)/\1\nILoveCandy/' \
-e '/\[multilib\]/,/Include/s/^#//' \
-e '$ a [quarry]\nServer = https://pkgbuild.com/~anatolik/quarry/x86_64/' \
-e '$ a \n[chaotic-aur]\nServer = https://repo.kitsuna.net/x86_64/' \
-e '$ a Server = http://lonewolf-builder.duckdns.org/chaotic-aur/x86_64/' \
-e '$ a Server = http://chaotic.bangl.de/chaotic-aur/x86_64/'
-e '$ a \n[chaotic-aur]\nInclude = /etc/pacman.d/chaotic-mirrorlist'
sudo curl -LSsfo /etc/pacman.d/chaotic-mirrorlist \
'https://aur.archlinux.org/cgit/aur.git/plain/mirrorlist?h=chaotic-mirrorlist'
# }}}
# Update system and install basic packages {{{
@ -17,7 +16,7 @@ sudo pacman-key --populate archlinux
sudo pacman-key --recv-keys 0x3056513887B78AEB
sudo pacman-key --refresh-keys
sudo pacman -Syyu --noconfirm
sudo pacman -S git aria2 reflector yay --noconfirm
sudo pacman -S git aria2 yay --noconfirm
# }}}
# Clone dotfiles {{{
@ -36,46 +35,21 @@ makepkg -sic
popd >/dev/null
rm -r /tmp/dotfiles.sh-git
dotfiles clone https://github.com/ObserverOfTime/home.files \
"${XDG_CONFIG_HOME:=$HOME/.config}/dotfiles"
"${XDG_DATA_HOME:=$HOME/.local/share}/dotfiles"
dotfiles checkout --force
# }}}
# Rank pacman mirrors {{{
sudo cp /etc/pacman.d/mirrorlist{,.bak}
REF_OPTS=('--country GR' '--country DE' '--country FR'
'--protocol https' '--protocol ftp' '--age 12'
'--sort rate' '--save /etc/pacman.d/mirrorlist')
# shellcheck disable=SC2068
sudo reflector ${REF_OPTS[@]}
sudo mkdir -p /etc/pacman.d/hooks
sudo tee /etc/pacman.d/hooks/mirrorupgrade.hook >/dev/null <<EOF
[Trigger]
Operation = Upgrade
Type = Package
Target = pacman-mirrorlist
[Action]
Description = Updating pacman-mirrorlist with reflector...
When = PostTransaction
Depends = reflector
Exec = /usr/bin/reflector ${REF_OPTS[*]}
EOF
unset REF_OPTS
# }}}
# Use aria2 for makepkg & set packager {{{
NAME="$(getent passwd "$USER" | awk -F'[:,]' '{print $5}')"
PACKAGER="${NAME:-ObserverOfTime} <chronobserver@disroot.org>"
PACKAGER="${NAME:=ObserverOfTime} <chronobserver@disroot.org>"
ARIA='::/usr/bin/aria2c --conf-path=/etc/aria2.conf -o %o %u'
WGET="$(wget -V | awk 'NR == 1 {print $2"/"$3}')"
sudo tee /etc/aria2.conf >/dev/null <<EOF
user-agent=${WGET:-Wget}
summary-interval=0
file-allocation=none
split=4
continue=true
follow-metalink=mem
metalink-location=gr,de,us,fr,jp
metalink-location=gr,de,us,fr,it
metalink-preferred-protocol=https
EOF
sudo cp /etc/makepkg.conf{,.bak}
@ -84,23 +58,46 @@ sudo sed -i /etc/makepkg.conf \
-e "s#'http::.*'#'http$ARIA'#" \
-e "s#'https::.*'#'https$ARIA'#" \
-e "s/^#PACKAGER.*/PACKAGER='$PACKAGER'/"
unset NAME PACKAGER ARIA WGET
unset NAME PACKAGER ARIA
# }}}
# Disable wine file associations {{{
sudo tee /etc/pacman.d/hooks/wine.hook >/dev/null <<EOF
[Trigger]
Operation = Install
Operation = Upgrade
Type = File
Target = usr/share/wine/wine.inf
[Action]
Description = Disabling wine menu builder...
When = PostTransaction
Exec = /bin/sed -i /usr/share/wine/wine.inf \
-e 's/winemenubuilder.exe -a -r/winemenubuilder.exe -r/'
EOF
# }}}
# Disable netrw file explorer {{{
sudo tee /etc/pacman.d/hooks/netrw.hook >/dev/null <<EOF
[Trigger]
Operation = Install
Operation = Upgrade
Type = Path
Target = usr/share/nvim/runtime/plugin/netrwPlugin.vim
[Action]
Description = Disabling netrw file explorer...
When = PostTransaction
Exec = /bin/sed -e '/FileExplorer/,/END/d' -i \
/usr/share/nvim/runtime/plugin/netrwPlugin.vim
EOF
# }}}
# Install packages via yay {{{
# shellcheck disable=SC2046
yay -S --repo --needed --noconfirm \
$(<~/.local/arch/packages.repo.txt)
# shellcheck disable=SC2046
yay -S --aur --needed \
$(<~/.local/arch/packages.aur.txt)
# }}}
# Download binaries from github {{{
mkdir -p ~/.local/bin
curl -LSs https://git.io/vhMor -o ~/.local/bin/aria2magnet
curl -LSs https://git.io/fjlNS -o ~/.local/bin/lnk-parse
chmod +x ~/.local/bin/{aria2magnet,lnk-parse}
xargs <~/.local/arch/packages.repo.txt \
yay -S --repo --needed --noconfirm
xargs <~/.local/arch/packages.aur.txt \
yay -S --aur --needed --noconfirm
# }}}
# Install bash completions {{{
@ -149,7 +146,6 @@ grunt --completion=bash > "$DIRECTORY/grunt"
gulp --completion=bash > "$DIRECTORY/gulp"
pandoc --bash-completion > "$DIRECTORY/pandoc"
poetry completions bash > "$DIRECTORY/poetry"
ln -fvs "$(gem contents travis | grep 'travis.sh$')" "$DIRECTORY/travis"
ln -fvs /usr/share/fzf/completion.bash "$DIRECTORY/fzf"
unset DIRECTORY ALIASES
# }}}
@ -200,41 +196,39 @@ sudo sed -i /opt/maven/conf/settings.xml \
# Setup neovim {{{
nvim --headless +q >/dev/null
nvim --headless +PlugInstall +qa >/dev/null
sudo ln -s /usr/bin/nvim /usr/local/bin/vi
sudo ln -s /usr/bin/nvim /usr/local/bin/vim
# }}}
# Set firefox update hook {{{
sudo tee /etc/pacman.d/hooks/firefox.hook >/dev/null <<EOF
[Trigger]
Operation = Upgrade
Type = File
Target = bin/firefox-developer-edition
# Create wrapper scripts {{{
sudo tee /usr/local/bin/jarwrapper >/dev/null <<'EOF'
#!/bin/sh
[Action]
Description = Making Firefox use KDE dialogs...
When = PostTransaction
Exec = /usr/bin/sed -i /usr/bin/firefox-developer-edition \
-e 's/exec/& env GTK_USE_PORTAL=1/'
exec "${JAVA_HOME:-/usr/lib/jvm/default}/bin/java" -jar "$@"
EOF
sudo tee /usr/local/bin/sqlite3 >/dev/null <<'EOF'
#!/bin/sh
exec env \
SQLITE_HISTORY="${XDG_CACHE_HOME:-$HOME}/.sqlite_history" \
/usr/bin/sqlite3 "$@"
EOF
sudo tee /usr/local/bin/wget >/dev/null <<'EOF'
#!/bin/sh
exec /usr/bin/wget "$@" \
--hsts-file="${XDG_CACHE_HOME:-$HOME}/.wget-hsts"
EOF
# }}}
# Disable wine file associations {{{
sudo sed -i /usr/share/wine/wine.inf \
-e 's/winemenubuilder.exe -a -r/winemenubuilder.exe -r/'
sudo tee /etc/pacman.d/hooks/wine.hook >/dev/null <<EOF
[Trigger]
Operation = Upgrade
Type = File
Target = usr/share/wine/wine.inf
[Action]
Description = Stopping Wine from hijacking file associations...
When = PostTransaction
Exec = /usr/bin/sed -i /usr/share/wine/wine.inf \
-e 's/winemenubuilder.exe -a -r/winemenubuilder.exe -r/'
EOF
# Configure binfmt {{{
sudo tee /etc/binfmt.d/jar.conf >/dev/null \
<<< ':JAR:E::jar::/usr/local/bin/jarwrapper:'
sudo ln -s /etc/binfmt.d/wine.conf /dev/null
# }}}
# Set user dirs {{{
mkdir -p "$HOME"/.local/{templates,public}
xdg-user-dirs-update --set TEMPLATES "$HOME/.local/templates"
xdg-user-dirs-update --set PUBLICSHARE "$HOME/.local/public"
# }}}

View File

@ -1,32 +1,27 @@
android-apktool
cfr
compiledb
discord-ptb
drawio-desktop-bin
exe-thumbnailer
google-java-format
fakepkg
gulp-cli
htmlhint
kde-thumbnailer-apk
korla-icon-theme
kora-icon-theme
lab-bin
luacheck
mkv-extractor-qt
mpv-bash-completion-git
nodejs-neovim
nodejs-pug-cli
nvimpager-git
opustags
otf-alegreya
otf-alegreya-sans
otf-firamath
otf-hasklig
pandoc-bin
protontricks-git
pug-lint
sha3sum
shellcheck-static
stylelint
python-pypresence
rclone-browser-git
shellcheck-bin
ssh-audit
svgo
trackma-git
ttf-fira-go
ttf-twemoji-color
vale-bin
waifu2x-ncnn-vulkan-git
webp-pixbuf-loader
winetricks-git

View File

@ -1,3 +1,4 @@
android-apktool
aegisub
alsa-firmware
alsa-plugins
@ -10,6 +11,7 @@ base-devel
bash
bash-completion
bc
bear
bluedevil
breeze
breeze-gtk
@ -20,6 +22,7 @@ ccache
clang
cmake
ctags
cawbird
desmume
dnscrypt-proxy
docker
@ -30,6 +33,7 @@ doxygen
eog
eog-plugins
eslint
exe-thumbnailer
extra-cmake-modules
fd
ffmpegthumbs
@ -44,6 +48,7 @@ gdb
gimp
git
git-lfs
github-cli
glances
gnupg
go
@ -56,8 +61,8 @@ gst-plugins-ugly
gtk2
gtk3
gwenview
htmlhint
htop
hub
hunspell-el
hunspell-en_GB
hunspell-en_US
@ -89,12 +94,16 @@ konsole
kotlin
krita
lib32-alsa-plugins
lib32-ffmpeg
lib32-gamemode
lib32-gst-plugins-bad
lib32-gst-plugins-base
lib32-gst-plugins-good
lib32-gst-plugins-ugly
lib32-mesa-tkg-git
lib32-vulkan-icd-loader
linux-firmware
linux-tkg-muqss-zen
linux-tkg-muqss-zen-headers
linux-tkg-pds
linux-tkg-pds-headers
lldb
llvm
lsof
@ -128,6 +137,7 @@ parallel
pdfjs
perl-tidy
plantuml
protontricks-git
ppsspp
python-isort
python-netifaces
@ -151,16 +161,19 @@ ruby
ruby-jekyll
ruby-travis
sddm-kcm
sha3sum
shfmt
spectacle
sshfs
steam
stylelint
syncplay
terminus-font
texlive-langgreek
texlive-latexextra
thunderbird
tor-browser
trackma-git
ttf-hack
ttf-lato
ungoogled-chromium
@ -169,6 +182,9 @@ valgrind
vifm
vint
virt-manager
waifu2x-ncnn-vulkan-git
webp-pixbuf-loader
winetricks-git
whois
wine
words
@ -176,6 +192,7 @@ xclip
xdg-desktop-portal-kde
xdg-user-dirs
xdotool
xxd-standalone
yarn
yay
youtube-dl

View File

@ -1,23 +1,27 @@
# Aliases {{{
# Go to parent directory
# go to parent directory
alias ..='cd ..'
# Go to previous directory
# go to previous directory
alias -- -='cd -'
# Copy from file to clipboard
# R without save prompt
alias R='R -q --no-save'
# copy from file to clipboard
alias fcopy='xclip -sel c -i'
# ffprobe without banner
alias ffprobe='ffprobe -hide_banner'
# ffmpeg without banner
alias ffmpeg='ffmpeg -hide_banner'
# Paste to file from clipboard
# paste to file from clipboard
alias fpaste='xclip -sel c -o > '
# fzf with preview
alias fzfp='fzf --preview rougify\ -tbase16.dark\ {}'
# git diff for regular files
alias gdiff='git diff --no-index'
# print makefile variable
alias pmake="make --eval='print-%: ; @echo $'$'*=$'$'($'$'*)'"
# maximum 7z compression
alias ultra7z='7z a -t7z -m0=lzma2:d=1024m -mx=9 -md=32m -ms=on -mfb=64 -aoa'
# Activate virtualenv
# activate virtualenv
alias venv='. .venv/bin/activate'
# neovim terminal shell
alias vish='SHELL=/bin/bash\ -l nvim +term'

View File

@ -24,6 +24,10 @@ TerminalColumns=100
TerminalMargin=5
TerminalRows=35
[Interaction Options]
CopyTextAsHTML=false
UnderlineFilesEnabled=true
[Scrolling]
HistoryMode=1
ScrollBarPosition=2

View File

@ -10,6 +10,6 @@ init-author-url "https://observeroftime.github.io"
init-license MIT
init-version "0.1.0"
prefix "~/.local"
user-agent "yarn/1.22.10 node/v14.13.1 linux x64"
user-agent "yarn/1.22.10 node/v15.8.0 linux x64"
username ObserverOfTime
version-git-sign true

View File

@ -1,4 +1,4 @@
Copyright (c) 2018-2020 ObserverOfTime
Copyright (c) 2018-2021 ObserverOfTime
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation