start using GNU stow
add more configurations to the dotfiles directory
This commit is contained in:
2
.config/systemd/user/.gitignore
vendored
Normal file
2
.config/systemd/user/.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
# ignore enabled systemd units, since these are often symlinks to the system and stuff
|
||||
/basic.target.wants/
|
||||
16
.config/user-dirs.dirs
Normal file
16
.config/user-dirs.dirs
Normal file
@@ -0,0 +1,16 @@
|
||||
# This file is written by xdg-user-dirs-update
|
||||
# If you want to change or add directories, just edit the line you're
|
||||
# interested in. All local changes will be retained on the next run.
|
||||
# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
|
||||
# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
|
||||
# absolute path. No other format is supported.
|
||||
#
|
||||
XDG_DESKTOP_DIR="$HOME/desktop"
|
||||
XDG_DOWNLOAD_DIR="$HOME/downloads"
|
||||
XDG_TEMPLATES_DIR="$HOME/templates"
|
||||
XDG_PUBLICSHARE_DIR="$HOME/public"
|
||||
XDG_DOCUMENTS_DIR="$HOME/documents"
|
||||
XDG_MUSIC_DIR="$HOME/music"
|
||||
XDG_PICTURES_DIR="$HOME/photos"
|
||||
XDG_VIDEOS_DIR="$HOME/videos"
|
||||
XDG_PUBLIC_DIR="$HOME/public"
|
||||
1
.config/user-dirs.locale
Normal file
1
.config/user-dirs.locale
Normal file
@@ -0,0 +1 @@
|
||||
en_GB
|
||||
2
.config/user-tmpfiles.d/localtmp.conf
Normal file
2
.config/user-tmpfiles.d/localtmp.conf
Normal file
@@ -0,0 +1,2 @@
|
||||
D /home/furry/.local/tmp 0750 furry furry -
|
||||
|
||||
19
.gtkrc-2.0
Normal file
19
.gtkrc-2.0
Normal file
@@ -0,0 +1,19 @@
|
||||
# DO NOT EDIT! This file will be overwritten by LXAppearance.
|
||||
# Any customization should be done in ~/.gtkrc-2.0.mine instead.
|
||||
|
||||
include "/home/furry/.gtkrc-2.0.mine"
|
||||
gtk-theme-name="Gruvbox-Dark"
|
||||
gtk-icon-theme-name="Gruvbox-Plus-Dark"
|
||||
gtk-font-name="NotoSans Nerd Font 11"
|
||||
gtk-cursor-theme-name="Breeze"
|
||||
gtk-cursor-theme-size=0
|
||||
gtk-toolbar-style=GTK_TOOLBAR_BOTH
|
||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||
gtk-button-images=1
|
||||
gtk-menu-images=1
|
||||
gtk-enable-event-sounds=1
|
||||
gtk-enable-input-feedback-sounds=1
|
||||
gtk-xft-antialias=1
|
||||
gtk-xft-hinting=1
|
||||
gtk-xft-hintstyle="hintfull"
|
||||
gtk-xft-rgba="none"
|
||||
3
.inputrc
Normal file
3
.inputrc
Normal file
@@ -0,0 +1,3 @@
|
||||
"\e[A": history-search-backward
|
||||
"\e[B": history-search-forward
|
||||
|
||||
29
.local/bin/buildconfig
Executable file
29
.local/bin/buildconfig
Executable file
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
BUILD_CONFIG=
|
||||
|
||||
# try to find a valid build config path
|
||||
if [ -n "${1+x}" ] && [ -f "$1" ] && [[ "$(basename "$1")" == ".buildconfig" ]]; then BUILD_CONFIG="$1" # first check if a build config has been specified, and whether it's a valid path
|
||||
elif [ -n "${1+x}" ]; then echo "E: the specified path '$1' is not a valid path!"; exit 1
|
||||
|
||||
elif [[ -f "$PWD/.buildconfig" ]]; then BUILD_CONFIG="$PWD/.buildconfig" # then check if there is a build config in the current working directory
|
||||
elif [[ -f "$HOME/.buildconfig" ]]; then BUILD_CONFIG="$HOME/.buildconfig" # then check if there is a build config in the home directory
|
||||
else $EDITOR .buildconfig
|
||||
#else echo "E: could not find a .buildconfig file and none was specified!"; exit 1
|
||||
fi
|
||||
|
||||
source "$BUILD_CONFIG"
|
||||
[ -z "${cmd+x}" ] && { echo "E: cmd was not set! '$BUILD_CONFIG'"; exit 1; }
|
||||
[ -z "${arg+x}" ] && { echo "E: arg was not set! '$BUILD_CONFIG'"; exit 1; }
|
||||
|
||||
# export the environment variables if they've been set
|
||||
if [[ -n ${env+x} ]]; then
|
||||
for var in "${!env[@]}"; do
|
||||
export "$var=${env[$var]}"
|
||||
done
|
||||
fi
|
||||
|
||||
# execute the command with the arguments
|
||||
# don't mind if the user made arguments separate out, that would likely be the user's intention
|
||||
$cmd "$arg"
|
||||
exit $?
|
||||
BIN
.local/bin/coinflip
Executable file
BIN
.local/bin/coinflip
Executable file
Binary file not shown.
2
.local/bin/cpusetcores
Executable file
2
.local/bin/cpusetcores
Executable file
@@ -0,0 +1,2 @@
|
||||
#!/bin/sh
|
||||
sudo "$HOME/.local/share/cpusetcores" "$@" -v
|
||||
2
.local/bin/emcc
Executable file
2
.local/bin/emcc
Executable file
@@ -0,0 +1,2 @@
|
||||
#!/bin/bash
|
||||
"$HOME/.local/share/emsdk/upstream/emscripten/emcc" "$@"
|
||||
2
.local/bin/emsdk
Executable file
2
.local/bin/emsdk
Executable file
@@ -0,0 +1,2 @@
|
||||
#!/bin/bash
|
||||
"$HOME/.local/share/emsdk/emsdk" "$@"
|
||||
17
.local/bin/git-leaderboard
Executable file
17
.local/bin/git-leaderboard
Executable file
@@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
if [ -z ${1+x} ]; then
|
||||
echo -e "\033[91mdidn't include a file exstension. (eg. \".cs\")"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
# get all the files with the file extension
|
||||
git ls-files | grep -E ".*\\$1" |
|
||||
|
||||
# run git blame on each file, which shows the commit for each line
|
||||
xargs -n 1 git blame --line-porcelain |
|
||||
|
||||
# aquire the authors of this output and sort it
|
||||
grep "^author " | sort |
|
||||
|
||||
# count all the unique authors and sort by number
|
||||
uniq -c | sort -nr
|
||||
5
.local/bin/java-prime
Executable file
5
.local/bin/java-prime
Executable file
@@ -0,0 +1,5 @@
|
||||
#!/bin/sh
|
||||
export __NV_PRIME_RENDER_OFFLOAD=1
|
||||
export __VK_LAYER_NV_optimus=NVIDIA_only
|
||||
export __GLX_VENDOR_LIBRARY_NAME=nvidia
|
||||
exec java "$@" --no-window
|
||||
2
.local/bin/prime-run
Executable file
2
.local/bin/prime-run
Executable file
@@ -0,0 +1,2 @@
|
||||
#!/bin/bash
|
||||
__NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only __GLX_VENDOR_LIBRARY_NAME=nvidia "$@"
|
||||
66
.local/bin/prime-run-conf
Executable file
66
.local/bin/prime-run-conf
Executable file
@@ -0,0 +1,66 @@
|
||||
#!/bin/python
|
||||
|
||||
import os
|
||||
from sys import stderr
|
||||
|
||||
def error(msg: str):
|
||||
print(f"\033[91m{msg}\033[0m", file=stderr)
|
||||
|
||||
def validate_path(path: str, outdir: str, outpath: str) -> bool:
|
||||
if (os.path.isdir(outdir) == False):
|
||||
error(f"'{outdir}' does not exist! can't write .desktop file!")
|
||||
return False
|
||||
|
||||
if (os.path.exists(outpath)):
|
||||
error(f"'{outpath}' already exists!")
|
||||
return False
|
||||
|
||||
if (os.path.isfile(path) == False):
|
||||
error(f"file does not exist: '{path}'")
|
||||
return False
|
||||
return True
|
||||
|
||||
|
||||
def create_desktop_file(path: str) -> int:
|
||||
outdir = os.environ['HOME'] + "/.local/share/applications"
|
||||
outpath = outdir + "/" + os.path.basename(path)
|
||||
|
||||
if (validate_path(path, outdir, outpath) == False):
|
||||
return 1
|
||||
|
||||
f_in = open(path, "r")
|
||||
f_out = open(outpath, "w")
|
||||
|
||||
while (True):
|
||||
ln = f_in.readline();
|
||||
|
||||
if (len(ln) == 0):
|
||||
break
|
||||
|
||||
if (ln.startswith("Exec=")):
|
||||
lns = ln.split('=', 1)
|
||||
ln = f"{lns[0]}=prime-run {lns[1]}"
|
||||
|
||||
f_out.write(ln)
|
||||
|
||||
f_in.close()
|
||||
f_out.close()
|
||||
return 0
|
||||
|
||||
def main(argc: int, argv: list[str]) -> int:
|
||||
|
||||
if (argc <= 1):
|
||||
error("incorrect amount of arguments! expected: 'desktop file path'")
|
||||
return 1
|
||||
|
||||
err = 0
|
||||
i = 1
|
||||
while (i < argc):
|
||||
err |= create_desktop_file(argv[i])
|
||||
i += 1
|
||||
|
||||
return err
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
exit(main(len(sys.argv), sys.argv));
|
||||
13
.local/bin/unzip-all
Executable file
13
.local/bin/unzip-all
Executable file
@@ -0,0 +1,13 @@
|
||||
#/bin/bash
|
||||
|
||||
if [ -z ${var+2} ]; then
|
||||
echo -e "\033[91mno parameters were given!\033[0m"
|
||||
fi
|
||||
|
||||
for i in $2; do
|
||||
readonly fname="$(basename $i .*)"
|
||||
mkdir "$fname"
|
||||
cd "$fname"
|
||||
unzip "../$i"
|
||||
cd -
|
||||
done
|
||||
6
.local/bin/uwu
Executable file
6
.local/bin/uwu
Executable file
@@ -0,0 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
while true; do
|
||||
printf "owo "
|
||||
sleep 0.25
|
||||
done
|
||||
14
.local/bin/xfullscreen-toggle
Executable file
14
.local/bin/xfullscreen-toggle
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/bin/sh
|
||||
|
||||
WIN=$(xdotool getwindowfocus)
|
||||
STATE=$(xprop -id "$WIN" _NET_WM_STATE)
|
||||
|
||||
# check if fullscreen is present in the state
|
||||
if echo "$STATE" | grep -q '_NET_WM_STATE_FULLSCREEN'; then
|
||||
wmctrl -ir "$WIN" -b remove,fullscreen
|
||||
exit $?
|
||||
else
|
||||
# If not fullscreen, add it
|
||||
wmctrl -ir "$WIN" -b add,fullscreen
|
||||
exit $?
|
||||
fi
|
||||
BIN
.local/share/cpusetcores
Executable file
BIN
.local/share/cpusetcores
Executable file
Binary file not shown.
3
.stow-local-ignore
Normal file
3
.stow-local-ignore
Normal file
@@ -0,0 +1,3 @@
|
||||
\.git
|
||||
LICENSE
|
||||
README\.md
|
||||
Reference in New Issue
Block a user