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