Compare commits
50 Commits
e08fa4f6a6
...
debian_alt
Author | SHA1 | Date | |
---|---|---|---|
4cd270ac54 | |||
553d15e38b | |||
e37268fd88 | |||
46e9aea2dd | |||
f23a40f524 | |||
7b1d0ef251 | |||
36e122b62c | |||
96893dff23 | |||
707b581b88 | |||
31e618be9e | |||
91d3d1d98d | |||
d79688f50f | |||
34baf7e029 | |||
3820ea0297 | |||
43a70bb9de | |||
c926e32cda | |||
0848db107c | |||
236672fd44 | |||
e2f4267b7a | |||
6f16c5e710 | |||
784818b510 | |||
afbfeef4d2 | |||
8e29301d96 | |||
937fe0142d | |||
6fb25215b5 | |||
3837b797d0 | |||
812805ced5 | |||
32c066fe4d | |||
8ebda1aa12 | |||
632a0c6741 | |||
25065ea703 | |||
fd9dba9f12 | |||
3d740f1c3b | |||
647831e860 | |||
452fd7600d | |||
d84d9e6933 | |||
12e5c3e2b1 | |||
49335145fd | |||
ec5a09da64 | |||
bb277234ea | |||
2d4027379b | |||
d59183ad63 | |||
2233d47782 | |||
1d3d82aa5b | |||
d6cc45381e | |||
de22a1668e | |||
6c283839fb | |||
682dc5f18a | |||
ea7c081bd4 | |||
5881642a40 |
@ -32,6 +32,7 @@ alias fssizes='df -kh --output=size,used,avail,pcent,target | sort -hr'
|
||||
alias dirsizes='du -kh --apparent-size --max-depth=1 | sort -hr'
|
||||
# sed -ie 's/Beispiel/Ersetzung/' *.xml
|
||||
# sed -Eie 's/(Beispiel)/\1Anhang/' *.xml
|
||||
alias start_x11_vnc="x11vnc -many -display :0 -no6 -rfbport 5900 -auth /var/run/lightdm/root/:0 -rfbauth $HOME/.vnc/passwd"
|
||||
|
||||
|
||||
rsyncLink() {
|
||||
|
@ -4,13 +4,18 @@
|
||||
updatePackages() {
|
||||
noconfirm=
|
||||
if [[ $1 == "-y" ]]; then
|
||||
noconfirm="--no-confirm";
|
||||
noconfirm="--assume-yes"
|
||||
fi
|
||||
executeAndNotify "doUpdatePackages $noconfirm" "packages updated" "package update failed";
|
||||
full=
|
||||
if [[ $2 == "--full" ]]; then
|
||||
full="full-"
|
||||
fi
|
||||
executeAndNotify "doUpdatePackages $noconfirm $full" "system updated" "system update failed";
|
||||
}
|
||||
|
||||
|
||||
doUpdatePackages() {
|
||||
pamac update $1;
|
||||
pamac remove --orphans --cascade $1;
|
||||
sudo apt update;
|
||||
sudo apt ${2}upgrade $1;
|
||||
sudo apt autoremove $1;
|
||||
}
|
||||
|
@ -186,26 +186,29 @@ colours() {
|
||||
|
||||
# ex - archive extractor
|
||||
# usage: ex <file>
|
||||
ex ()
|
||||
{
|
||||
if [ -f $1 ] ; then
|
||||
case $1 in
|
||||
*.tar.bz2) tar xjf $1 ;;
|
||||
*.tar.gz) tar xzf $1 ;;
|
||||
*.bz2) bunzip2 $1 ;;
|
||||
*.rar) unrar x $1 ;;
|
||||
*.gz) gunzip $1 ;;
|
||||
*.tar) tar xf $1 ;;
|
||||
*.tbz2) tar xjf $1 ;;
|
||||
*.tgz) tar xzf $1 ;;
|
||||
*.zip) unzip $1 ;;
|
||||
*.Z) uncompress $1;;
|
||||
*.7z) 7z x $1 ;;
|
||||
*) echo "'$1' cannot be extracted via ex()" ;;
|
||||
esac
|
||||
else
|
||||
ex() {
|
||||
if [[ ! -f "$1" ]]; then
|
||||
echo "'$1' is not a valid file"
|
||||
return 1;
|
||||
fi
|
||||
# FIXME 7z kann (theoretisch) tar
|
||||
outdir=${1%.*}
|
||||
case "$1" in
|
||||
*.tar.bz2 | *.tbz | *.tbz2)
|
||||
tar xjf $1 -C $outdir;;
|
||||
*.tar.gz | *.tgz)
|
||||
tar xzf $1 -C $outdir;;
|
||||
*.tar)
|
||||
tar xf $1 -C $outdir;;
|
||||
*.7z | *.zip | *.gz | *.bz | *.bz2)
|
||||
7z x -o$outdir $1;;
|
||||
*.rar)
|
||||
unrar x $1;;
|
||||
*.Z)
|
||||
uncompress $1;;
|
||||
*)
|
||||
echo "'$1' cannot be extracted via ex()";;
|
||||
esac
|
||||
}
|
||||
|
||||
# BEGIN_KITTY_SHELL_INTEGRATION
|
||||
|
@ -89,7 +89,7 @@ set linenumbers
|
||||
set matchbrackets "(<[{)>]}"
|
||||
|
||||
## Suppress title bar and show file name and editor state at the bottom.
|
||||
set minibar
|
||||
# set minibar
|
||||
|
||||
## Enable mouse support, if available for your system. When enabled,
|
||||
## mouse clicks can be used to place the cursor, set the mark (with a
|
||||
|
@ -139,13 +139,13 @@ configuration {
|
||||
/* me-select-entry: "MousePrimary";*/
|
||||
/* me-accept-entry: "MouseDPrimary";*/
|
||||
/* me-accept-custom: "Control+MouseDPrimary";*/
|
||||
timeout {
|
||||
/* timeout {
|
||||
action: "kb-cancel";
|
||||
delay: 0;
|
||||
}
|
||||
filebrowser {
|
||||
directories-first: true;
|
||||
sorting-method: "name";
|
||||
}
|
||||
}*/
|
||||
}
|
||||
@theme "/usr/share/rofi/themes/Arc-Dark.rasi"
|
||||
|
@ -44,4 +44,5 @@
|
||||
"use_tab_stops": false,
|
||||
"word_wrap": true,
|
||||
"wrap_width": 120,
|
||||
"index_files": true,
|
||||
}
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -63,10 +63,6 @@ PasswordAuthentication no
|
||||
|
||||
# Change to yes to enable challenge-response passwords (beware issues with
|
||||
# some PAM modules and threads)
|
||||
# FIXME! outdated/ replaced by KbdInteractiveAuthentication?
|
||||
ChallengeResponseAuthentication no
|
||||
|
||||
# Change to no to disable s/key passwords
|
||||
KbdInteractiveAuthentication no
|
||||
|
||||
# Kerberos options
|
||||
@ -86,7 +82,7 @@ KbdInteractiveAuthentication no
|
||||
# be allowed through the KbdInteractiveAuthentication and
|
||||
# PasswordAuthentication. Depending on your PAM configuration,
|
||||
# PAM authentication via KbdInteractiveAuthentication may bypass
|
||||
# the setting of "PermitRootLogin without-password".
|
||||
# the setting of "PermitRootLogin prohibit-password".
|
||||
# If you just want the PAM account and session checks to run without
|
||||
# PAM authentication, then enable this but set PasswordAuthentication
|
||||
# and KbdInteractiveAuthentication to 'no'.
|
||||
@ -122,10 +118,10 @@ PrintMotd no # pam does that
|
||||
AcceptEnv LANG LC_*
|
||||
|
||||
# override default of no subsystems
|
||||
# DEACTIVATED because no need for sftp and differences between debian and arch
|
||||
# debian
|
||||
Subsystem sftp /usr/lib/openssh/sftp-server
|
||||
# arch
|
||||
# DEACTIVATED because no need for sftp and differences between debian and arch
|
||||
# Subsystem sftp /usr/lib/ssh/sftp-server
|
||||
|
||||
# Example of overriding settings on a per-user basis
|
||||
|
3
scripts/archive_and_compress.sh
Executable file
3
scripts/archive_and_compress.sh
Executable file
@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
source=${1%/}; # cut off trailing "/"
|
||||
tar cfv $source.tar $source && xz $source.tar;
|
@ -1,35 +1,41 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
source /sync/home_external/.bash_aliases
|
||||
source /sync/scripts/backup_resources.sh
|
||||
# FSFIXME expand_aliases still needed?
|
||||
shopt -s expand_aliases # make aliases work
|
||||
|
||||
|
||||
###############################
|
||||
### update local backup dir ###
|
||||
###############################
|
||||
|
||||
BACKUP_DIR=/sync/backup
|
||||
ensureDirectory $BACKUP_DIR
|
||||
BACKUP_DIR_HOME=$BACKUP_DIR/home
|
||||
if [[ !($HOME/.bash_aliases_local -ef $BACKUP_DIR_HOME/.bash_aliases_local) ]]; then
|
||||
ln $HOME/.bash_aliases_local $BACKUP_DIR_HOME/.bash_aliases_local
|
||||
fi
|
||||
rsync_backup --link-dest="$HOME/.ssh/" $HOME/.ssh/ $BACKUP_DIR_HOME/.ssh/
|
||||
ensureDirectory $BACKUP_DIR_HOME
|
||||
|
||||
backupDirectory $HOME/.ssh/ $BACKUP_DIR_HOME/.ssh/
|
||||
|
||||
BACKUP_DIR_ROOT=$BACKUP_DIR/root/etc
|
||||
sd rsync_backup --link-dest="/etc/ddclient/" /etc/ddclient/ $BACKUP_DIR_ROOT/ddclient/
|
||||
sd rsync_backup --link-dest="/etc/letsencrypt/" /etc/letsencrypt/ $BACKUP_DIR_ROOT/letsencrypt/
|
||||
sd rsync_backup --link-dest="/etc/nginx/" /etc/nginx/ $BACKUP_DIR_ROOT/nginx/
|
||||
sd rsync_backup --link-dest="/etc/ssh/" /etc/ssh/ $BACKUP_DIR_ROOT/ssh/
|
||||
sd rsync_backup --link-dest="/etc/wireguard/" /etc/wireguard/ $BACKUP_DIR_ROOT/wireguard/
|
||||
if [[ !(/etc/ddclient.conf -ef $BACKUP_DIR_ROOT/ddclient.conf) ]]; then
|
||||
ln /etc/ddclient.conf $BACKUP_DIR_ROOT/ddclient.conf
|
||||
fi
|
||||
ensureRootDirectory $BACKUP_DIR_ROOT
|
||||
|
||||
sd rsync_backup /etc/hosts $BACKUP_DIR_ROOT/
|
||||
sd rsync_backup /etc/ddclient.conf $BACKUP_DIR_ROOT/
|
||||
backupRootDirectory /etc/ddclient/ $BACKUP_DIR_ROOT/ddclient/
|
||||
backupRootDirectory /etc/letsencrypt/ $BACKUP_DIR_ROOT/letsencrypt/
|
||||
backupRootDirectory /etc/nginx/ $BACKUP_DIR_ROOT/nginx/
|
||||
backupRootDirectory /etc/ssh/ $BACKUP_DIR_ROOT/ssh/
|
||||
backupRootDirectory /etc/wireguard/ $BACKUP_DIR_ROOT/wireguard/
|
||||
backupRootDirectory /etc/docker/daemon.json $BACKUP_DIR_ROOT/docker/
|
||||
|
||||
#####################
|
||||
### upload backup ###
|
||||
#####################
|
||||
|
||||
if [[ "$1" == "--noupload" ]]; then
|
||||
exit 0;
|
||||
fi
|
||||
|
||||
sd rsync_backup -e "ssh -i /home/edi/.ssh/id_ed25519" --filter="P /home/docker" /sync/backup/ fabian@garrus:/citadel/backup/edi/
|
||||
sd rsync_backup -e "ssh -i /home/edi/.ssh/id_ed25519" /home/edi/docker/ fabian@garrus:/citadel/backup/edi/home/docker/
|
||||
echo "Note: remember to keep /citadel in sync!"
|
||||
|
@ -1,22 +1,22 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
source /sync/home_external/.bash_aliases
|
||||
source /sync/scripts/backup_resources.sh
|
||||
# FSFIXME expand_aliases still needed?
|
||||
shopt -s expand_aliases # make aliases work
|
||||
|
||||
|
||||
###############################
|
||||
### update local backup dir ###
|
||||
###############################
|
||||
|
||||
BACKUP_DIR=/sync/backup
|
||||
ensureDirectory $BACKUP_DIR
|
||||
BACKUP_DIR_HOME=$BACKUP_DIR/home
|
||||
if [[ !($HOME/.bash_aliases_local -ef $BACKUP_DIR_HOME/.bash_aliases_local) ]]; then
|
||||
ln $HOME/.bash_aliases_local $BACKUP_DIR_HOME/.bash_aliases_local
|
||||
fi
|
||||
ensureDirectory $BACKUP_DIR_HOME
|
||||
|
||||
BACKUP_DIR_ROOT=$BACKUP_DIR/root/etc
|
||||
rsync_backup --link-dest="/etc/ssh/" /etc/ssh/ $BACKUP_DIR_ROOT/ssh/
|
||||
ensureRootDirectory $BACKUP_DIR_ROOT
|
||||
backupRootDirectory /etc/ssh/ $BACKUP_DIR_ROOT/ssh/
|
||||
if [[ !(-d $BACKUP_DIR_ROOT/udev/rules.d) ]]; then
|
||||
mkdir $BACKUP_DIR_ROOT/udev/rules.d
|
||||
fi
|
||||
@ -24,14 +24,15 @@ if [[ !(/etc/udev/rules.d/69-hdparm.rules -ef $BACKUP_DIR_ROOT/udev/rules.d/69-h
|
||||
ln /etc/udev/rules.d/69-hdparm.rules $BACKUP_DIR_ROOT/udev/rules.d/69-hdparm.rules
|
||||
fi
|
||||
|
||||
backupRootDirectory /etc/ssh/ $BACKUP_DIR_ROOT/ssh/
|
||||
|
||||
#####################
|
||||
### upload backup ###
|
||||
#####################
|
||||
|
||||
echo $'upload of backup still manual for now.\nplease execute the following commands:'
|
||||
echo 'upload of backup still manual for now.\nplease execute the following commands:'
|
||||
echo 'su garrus'
|
||||
echo 'sd rsync_backup $BACKUP_DIR/ /citadel/backup/garrus/'
|
||||
echo "sd rsync_backup $BACKUP_DIR/ /citadel/backup/garrus/"
|
||||
exit 0
|
||||
|
||||
su garrus
|
||||
|
30
scripts/backup_resources.sh
Normal file
30
scripts/backup_resources.sh
Normal file
@ -0,0 +1,30 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
source /sync/home_external/.bash_aliases
|
||||
shopt -s expand_aliases # make aliases work
|
||||
|
||||
|
||||
backupRootDirectory() {
|
||||
ensureRootDirectory $2
|
||||
sd rsync_backup $1 $2
|
||||
}
|
||||
|
||||
|
||||
backupDirectory() {
|
||||
ensureDirectory $2
|
||||
rsync_backup $1 $2
|
||||
}
|
||||
|
||||
|
||||
ensureRootDirectory() {
|
||||
ensureDirectory $1
|
||||
sudo chown root:root $1
|
||||
}
|
||||
|
||||
|
||||
ensureDirectory() {
|
||||
if [[ ! -d $1 ]]; then
|
||||
mkdir -p $1
|
||||
fi
|
||||
}
|
@ -1,24 +1,27 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
source /sync/home_external/.bash_aliases
|
||||
source /sync/scripts/backup_resources.sh
|
||||
# FSFIXME expand_aliases still needed?
|
||||
shopt -s expand_aliases # make aliases work
|
||||
|
||||
|
||||
###############################
|
||||
### update local backup dir ###
|
||||
###############################
|
||||
|
||||
BACKUP_DIR=/sync/backup
|
||||
ensureDirectory $BACKUP_DIR
|
||||
BACKUP_DIR_HOME=$BACKUP_DIR/home
|
||||
if [[ !($HOME/.bash_aliases_local -ef $BACKUP_DIR_HOME/.bash_aliases_local) ]]; then
|
||||
ln $HOME/.bash_aliases_local $BACKUP_DIR_HOME/.bash_aliases_local
|
||||
fi
|
||||
rsync_backup --link-dest="$HOME/.ssh/" $HOME/.ssh/ $BACKUP_DIR_HOME/.ssh/
|
||||
ensureDirectory $BACKUP_DIR_HOME
|
||||
|
||||
backupDirectory $HOME/.ssh/ $BACKUP_DIR_HOME/.ssh/
|
||||
|
||||
#####################
|
||||
### upload backup ###
|
||||
#####################
|
||||
|
||||
if [[ "$1" == "--noupload" ]]; then
|
||||
exit 0;
|
||||
fi
|
||||
|
||||
sd rsync_backup -e "ssh -i /home/fabian/.ssh/id_ed25519" $BACKUP_DIR/ fabian@garrus:/citadel/backup/shepard/
|
||||
|
4
scripts/decompress_and_unarchive.sh
Executable file
4
scripts/decompress_and_unarchive.sh
Executable file
@ -0,0 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
source=$1;
|
||||
archive=${source%.xz}; # cut off trailing ".xz"
|
||||
unxz $source && tar xfv $archive
|
@ -11,6 +11,8 @@ replacements[':']='_';
|
||||
replacements["'"]='_';
|
||||
replacements['(']='_';
|
||||
replacements[')']='_';
|
||||
replacements['[']='_';
|
||||
replacements[']']='_';
|
||||
while [[ $# > 0 ]]; do
|
||||
replacements["$1"]="$2";
|
||||
shift 2;
|
||||
|
@ -2,10 +2,12 @@
|
||||
set -euo pipefail
|
||||
|
||||
sshMount () {
|
||||
serverUser=$1;
|
||||
serverHost=$2;
|
||||
shift 2;
|
||||
args=($@)
|
||||
args=(${args[@]:2})
|
||||
for ((i=0; i < ${#args[@]}; i=i + 2)); do
|
||||
sshfs $1@$2:/citadel/${args[$i]}/ /home/fabian/${args[$i + 1]}/ -o reconnect,ServerAliveInterval=15,ServerAliveCountMax=8
|
||||
sshfs ${serverUser}@${serverHost}:/citadel/${args[$i]}/ $HOME/${args[$i + 1]}/ -o reconnect,ServerAliveInterval=15,ServerAliveCountMax=8
|
||||
done
|
||||
}
|
||||
|
||||
|
@ -5,7 +5,7 @@ set -euo pipefail
|
||||
dir="$(pwd)"
|
||||
dest=${dir%/*}/${dir##*/}_reencode
|
||||
if [[ !(-d $dest) ]]; then
|
||||
mkdir $dest
|
||||
mkdir "$dest"
|
||||
fi
|
||||
|
||||
for file in ./*.$1; do
|
||||
|
@ -21,7 +21,7 @@ fi
|
||||
dir="$(pwd)"
|
||||
dest=${dir%/*}/${dir##*/}_reencode
|
||||
if [[ !(-d $dest) ]]; then
|
||||
mkdir $dest
|
||||
mkdir "$dest"
|
||||
fi
|
||||
|
||||
for file in ./*.m4a; do
|
||||
|
25
scripts/transcode_flac.sh
Executable file
25
scripts/transcode_flac.sh
Executable file
@ -0,0 +1,25 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# evaluate options through given arguments
|
||||
file_suffix='wav'
|
||||
map=
|
||||
while [[ $# > 0 ]]; do
|
||||
case $1 in
|
||||
-t | --type) file_suffix=$2; shift 2;;
|
||||
-map ) map='-map 0:0'; shift;;
|
||||
* ) break ;; # Anything else stops command line processing.
|
||||
esac
|
||||
done
|
||||
|
||||
# ensure existence of destination folder
|
||||
dir="$(pwd)"
|
||||
dest=${dir%/*}/${dir##*/}_flac
|
||||
if [[ !(-d $dest) ]]; then
|
||||
mkdir "$dest"
|
||||
fi
|
||||
|
||||
for file in ./*.$file_suffix; do
|
||||
echo "ffmpeg -i '$file' -c:a flac $map '$dest/${file%$file_suffix}flac'";
|
||||
ffmpeg -i "$file" -c:a flac $map "$dest/${file%$file_suffix}flac";
|
||||
done
|
@ -16,7 +16,7 @@ done
|
||||
dir="$(pwd)"
|
||||
dest=${dir%/*}/${dir##*/}_ogg
|
||||
if [[ !(-d $dest) ]]; then
|
||||
mkdir $dest
|
||||
mkdir "$dest"
|
||||
fi
|
||||
|
||||
for file in ./*.$file_suffix; do
|
||||
|
Reference in New Issue
Block a user