Compare commits
13 Commits
0a369efe1b
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 549b420df2 | |||
|
edf76874fc
|
|||
|
95ad6b0c6a
|
|||
|
ff36975eb7
|
|||
|
5ae19346d6
|
|||
|
53ee621747
|
|||
|
dd339f2939
|
|||
|
e0fbdf852e
|
|||
|
b5983ed308
|
|||
|
f39af6d446
|
|||
|
8fe3d112ba
|
|||
|
4c81bcea73
|
|||
|
5623d08d85
|
32
Makefile
32
Makefile
@@ -1,14 +1,10 @@
|
||||
# Autogenerated at 21.05.2025 20:24 using ./gen-makefile
|
||||
# Autogenerated at 10.07.2025 23:45 using ./gen-makefile
|
||||
.DEFAULT_GOAL := help
|
||||
|
||||
#===============================================
|
||||
# Scripts listed in ./install
|
||||
#===============================================
|
||||
|
||||
##albert: Install albert (latest) + ppa
|
||||
albert:
|
||||
@./install/albert
|
||||
|
||||
##apache2: Install apache2 (latest)
|
||||
apache2:
|
||||
@./install/apache2
|
||||
@@ -53,9 +49,9 @@ droidcam-obs:
|
||||
flameshot:
|
||||
@./install/flameshot
|
||||
|
||||
##frkn: Install Wireguard + FRKN
|
||||
frkn:
|
||||
@./install/frkn
|
||||
##frkn.deprecated: Install Wireguard + FRKN
|
||||
frkn.deprecated:
|
||||
@./install/frkn.deprecated
|
||||
|
||||
##git: Install git (latest)
|
||||
git:
|
||||
@@ -93,7 +89,7 @@ kde-portal:
|
||||
libreoffice:
|
||||
@./install/libreoffice
|
||||
|
||||
##lite-xl: Install lite-xl
|
||||
##lite-xl: Install lite-xl v2.1.7
|
||||
lite-xl:
|
||||
@./install/lite-xl
|
||||
|
||||
@@ -137,7 +133,7 @@ papirus:
|
||||
pgsql:
|
||||
@./install/pgsql
|
||||
|
||||
##php: Install php v8.3 + ppa
|
||||
##php: Install php v8.4
|
||||
php:
|
||||
@./install/php
|
||||
|
||||
@@ -173,10 +169,14 @@ postman:
|
||||
qt5:
|
||||
@./install/qt5
|
||||
|
||||
##rustdesk: Install rustdesk client v1.1.9 (deb)
|
||||
##rustdesk: Install rustdesk client (flatpak)
|
||||
rustdesk:
|
||||
@./install/rustdesk
|
||||
|
||||
##rustdesk-deb: Install rustdesk client v1.4.0 (deb)
|
||||
rustdesk-deb:
|
||||
@./install/rustdesk-deb
|
||||
|
||||
##snap: Install bunch of software from snap
|
||||
snap:
|
||||
@./install/snap
|
||||
@@ -189,6 +189,10 @@ sublimemerge:
|
||||
sublimetext:
|
||||
@./install/sublimetext
|
||||
|
||||
##suld: Samsung Unified Linux Driver repo
|
||||
suld:
|
||||
@./install/suld
|
||||
|
||||
##syncthing: Install syncthing (latest) + ppa
|
||||
syncthing:
|
||||
@./install/syncthing
|
||||
@@ -213,7 +217,7 @@ vivaldi:
|
||||
vscode:
|
||||
@./install/vscode
|
||||
|
||||
##wine: Install wine (latest) + ppa (focal)
|
||||
##wine: Install wine (latest) + ppa
|
||||
wine:
|
||||
@./install/wine
|
||||
|
||||
@@ -249,8 +253,8 @@ omz: zsh omz-clean omz-fancy
|
||||
chsh -s /usr/bin/zsh
|
||||
@exec zsh
|
||||
|
||||
##phptools: [PACK] Install only php tooling (composer, phpunit, psalm, phpcs, php-cs-fixer, php-spx, phpmd)
|
||||
phptools: composer php-psalm php-spx phpcs phpmd phpstan phpunit
|
||||
##phptools: [PACK] Install only php tooling (composer, phpunit, psalm, phpcs, php-cs-fixer, phpmd)
|
||||
phptools: composer php-psalm phpcs phpmd phpstan phpunit
|
||||
|
||||
##phpstack: [PACK] Install full php stack with tooling
|
||||
phpstack: php phptools
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
[alias]
|
||||
a = "add"
|
||||
aa = "add --all" # add all unstaged into index
|
||||
aliases = "config --get-regexp '^alias.*'" # show all aliases
|
||||
@@ -119,6 +120,7 @@ undo = "uncommit"
|
||||
unstage = "reset HEAD" # staged file => unstaged
|
||||
upstream-branch = "!git for-each-ref --format='%(upstream:short)' $(git symbolic-ref -q HEAD)"
|
||||
user = "config --local --get-regexp '^user'" # show local user settings (in current repo)
|
||||
vacuum="!git reflog expire --expire-unreachable=now --all; git gc --prune=now"
|
||||
whoami = "user"
|
||||
wip = "!git add . && git commit -am 'WIP'"
|
||||
wipa = "!git add . && git commit --amend -am 'WIP'"
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install albert (latest) + ppa
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
|
||||
# https://albertlauncher.github.io
|
||||
# https://software.opensuse.org/download/package.iframe?project=home:manuelschneid3r&package=albert&acolor=00cccc&hcolor=00aaaa&locale=en
|
||||
# https://download.opensuse.org/repositories/home:/manuelschneid3r/xUbuntu_25.04/amd64/albert_0.27.8-0+701.1_amd64.deb
|
||||
|
||||
title
|
||||
|
||||
# echo 'deb http://download.opensuse.org/repositories/home:/manuelschneid3r/xUbuntu_25.04/ /' | sudo tee /etc/apt/sources.list.d/home:manuelschneid3r.list
|
||||
# curl -fsSL https://download.opensuse.org/repositories/home:manuelschneid3r/xUbuntu_25.04/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_manuelschneid3r.gpg > /dev/null
|
||||
# sudo apt update
|
||||
# sudo apt install albert
|
||||
@@ -25,10 +25,10 @@ php "$HOME/install/other/composer-setup.php" \
|
||||
--filename="composer"
|
||||
|
||||
COMPOSER_GLOBAL_HOME="$($HOME/.local/bin/composer config -g home)"
|
||||
NEWPATH="export PATH=\"$COMPOSER_GLOBAL_HOME/vendor/bin:\${PATH}\""
|
||||
NEWPATH="PATH=\"$COMPOSER_GLOBAL_HOME/vendor/bin:\${PATH}\""
|
||||
cat "$HOME/.profile" | grep -qoh "$NEWPATH" || {
|
||||
$NEWPATH
|
||||
echo "$NEWPATH" >> "$HOME/.profile"
|
||||
export "$NEWPATH"
|
||||
echo "export $NEWPATH" >> "$HOME/.profile"
|
||||
}
|
||||
|
||||
source "$HOME/.profile"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install Wireguard + FRKN
|
||||
##makedesc: Install Wireguard + FRKN (deprecated)
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
|
||||
# https://frkn.org/ru/installation
|
||||
@@ -11,7 +11,7 @@ cd "$HOME/install/frkn"
|
||||
|
||||
apt_install wireguard jq
|
||||
|
||||
countries=(uk ru nl nl2 ch)
|
||||
countries=(jp nl tr at ru se)
|
||||
for idx in ${!countries[@]}; do
|
||||
country=${countries[idx]}
|
||||
info "Downloading config for $country ($(expr $idx + 1)/${#countries[@]})"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install rustdesk client v1.1.9 (deb)
|
||||
##makedesc: Install rustdesk client v1.4.2 (deb)
|
||||
|
||||
[ $1 ] && RDVER="$1" || RDVER="1.1.9"
|
||||
[ "$1" ] && RDVER="$1" || RDVER="1.4.2"
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing rustdesk v$RDVER..."
|
||||
@@ -12,9 +12,13 @@ echo
|
||||
|
||||
deb_path="$HOME/install"
|
||||
deb_name="rustdesk-$RDVER.deb"
|
||||
mkdir -p $deb_path
|
||||
mkdir -p "$deb_path"
|
||||
deb="$deb_path/$deb_name"
|
||||
|
||||
sudo apt install -y libxdo3 python3-pip && \
|
||||
wget "https://github.com/rustdesk/rustdesk/releases/download/$RDVER/$deb_name" -O $deb && \
|
||||
sudo dpkg -i $deb
|
||||
sudo apt install -y libxdo3 python3-pip
|
||||
wget "https://github.com/rustdesk/rustdesk/releases/download/$RDVER/$deb_name" -O "$deb"
|
||||
sudo dpkg -i "$deb"
|
||||
|
||||
# flatpak install -y com.rustdesk.RustDesk
|
||||
# https://develop.kde.org/docs/administration/portal-permissions/
|
||||
# flatpak permission-set kde-authorized remote-desktop com.rustdesk.RustDesk yes
|
||||
|
||||
@@ -3,11 +3,12 @@
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
|
||||
# https://www.sublimetext.com/download
|
||||
# https://gist.github.com/skoqaq/3f3e8f28e23c881143cef9cf49d821ff
|
||||
# https://gist.axenov.dev/anthony/sublime
|
||||
# https://gist.axenov.dev/anthony/sublime2
|
||||
# https://gist.github.com/lugrus2000/1fc55158b87f94d799392a6dd1ac0ce2
|
||||
# https://gist.github.com/maboloshi/feaa63c35f4c2baab24c9aaf9b3f4e47
|
||||
|
||||
[ "$1" ] && STVER="$1" || STVER='4192'
|
||||
[ "$1" ] && STVER="$1" || STVER='4200'
|
||||
|
||||
title
|
||||
|
||||
@@ -20,12 +21,14 @@ if [[ ! -f "$DEB_PATH" ]]; then
|
||||
fi
|
||||
|
||||
sudo dpkg -i "$DEB_PATH"
|
||||
sudo cp -f $BIN_PATH $BIN_PATH.old
|
||||
sudo cp -f "$BIN_PATH" "$BIN_PATH.old"
|
||||
|
||||
if [[ $STVER = 4169 ]]; then
|
||||
echo "00489f39: c640 0501 4885 c9" | sudo xxd -r - $BIN_PATH
|
||||
echo "00489f39: c640 0501 4885 c9" | sudo xxd -r - "$BIN_PATH"
|
||||
elif [[ $STVER = 4200 ]]; then
|
||||
sudo sed -i 's#\x0F\xB6\x51\x05\x83\xF2\x01#\xC6\x41\x05\x01\xB2\x00\x90#' "$BIN_PATH"
|
||||
else
|
||||
sudo sed -i 's#\x80\x79\x05\x00\x0F\x94\xC2#\xC6\x41\x05\x01\xB2\x00\x90#' $BIN_PATH
|
||||
sudo sed -i 's#\x80\x79\x05\x00\x0F\x94\xC2#\xC6\x41\x05\x01\xB2\x00\x90#' "$BIN_PATH"
|
||||
fi
|
||||
|
||||
echo
|
||||
|
||||
20
install/suld
Executable file
20
install/suld
Executable file
@@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Samsung Unified Linux Driver repo
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
|
||||
# https://www.bchemnet.com/suldr/
|
||||
# https://www.bchemnet.com/suldr/supported.html
|
||||
|
||||
title
|
||||
|
||||
mkdir -vp "$HOME/install"
|
||||
sudo bash -c 'echo "deb https://www.bchemnet.com/suldr/ debian extra" >> /etc/apt/sources.list.d/samsung.list'
|
||||
download \
|
||||
https://www.bchemnet.com/suldr/pool/debian/extra/su/suldr-keyring_3_all.deb \
|
||||
"$HOME/install/suldr-keyring_3_all.deb"
|
||||
sudo dpkg -i "$HOME/install/suldr-keyring_3_all.deb"
|
||||
apt_install suld-driver2-1.00.39
|
||||
|
||||
success "Samsung Unified Linux Driver installed!"
|
||||
info "Don't forget to connect your Samsung printer"
|
||||
info "See more info here: https://www.bchemnet.com/suldr/"
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install wine (latest) + ppa (focal)
|
||||
##makedesc: Install wine (latest) + ppa
|
||||
|
||||
echo
|
||||
echo "==============================================="
|
||||
@@ -9,6 +9,6 @@ echo
|
||||
|
||||
sudo dpkg --add-architecture i386
|
||||
wget -qO- https://dl.winehq.org/wine-builds/winehq.key | sudo apt-key add -
|
||||
sudo add-apt-repository -y 'deb https://dl.winehq.org/wine-builds/ubuntu/ focal main'
|
||||
sudo add-apt-repository -y "deb https://dl.winehq.org/wine-builds/ubuntu/ $(lsb_release -cs 2>/dev/null) main"
|
||||
sudo apt install -y --autoremove winehq-stable
|
||||
wine --version
|
||||
|
||||
@@ -6,6 +6,6 @@
|
||||
|
||||
# Wayland KDE: https://www.reddit.com/r/kde/comments/11vrbwc/how_do_i_rotate_the_screen_on_kde_with_wayland/
|
||||
# kscreen-doctor --outputs
|
||||
OUTPUT='HDMI-A-3'
|
||||
OUTPUT='HDMI-0'
|
||||
DIRECTION="$1" # (left|right|normal|inverted)
|
||||
kscreen-doctor "output.$OUTPUT.rotation.$DIRECTION"
|
||||
|
||||
3
tools/duckdns/.env.example
Normal file
3
tools/duckdns/.env.example
Normal file
@@ -0,0 +1,3 @@
|
||||
DUCK_TOKEN=
|
||||
DUCK_DOMAINS=
|
||||
DUCK_IP=
|
||||
2
tools/duckdns/.gitignore
vendored
Normal file
2
tools/duckdns/.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
.env
|
||||
*.log
|
||||
9
tools/duckdns/install.sh
Executable file
9
tools/duckdns/install.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
thisdir="$( dirname "$(readlink -e -- "${BASH_SOURCE[0]}")")"
|
||||
|
||||
# https://www.duckdns.org/install.jsp
|
||||
|
||||
croncmd="$thisdir/update.sh"
|
||||
cronjob="*/30 * * * * $croncmd" # every 30 min
|
||||
( crontab -l | grep -v -F "$croncmd" ; echo "$cronjob" ) | crontab -
|
||||
cp -f "$thisdir/.env.example" "$thisdir/.env"
|
||||
3
tools/duckdns/uninstall.sh
Executable file
3
tools/duckdns/uninstall.sh
Executable file
@@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
|
||||
( crontab -l | grep -v -F "duckdns" ) | crontab -
|
||||
30
tools/duckdns/update.sh
Executable file
30
tools/duckdns/update.sh
Executable file
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
# shellcheck disable=SC1091
|
||||
thisdir="$( dirname "$(readlink -e -- "${BASH_SOURCE[0]}")")"
|
||||
|
||||
log() {
|
||||
timestamp="$(date +'%Y-%m-%d %H:%M:%S')"
|
||||
datestamp="$(date +'%Y-%m-%d')"
|
||||
[ ! -d "$thisdir/log" ] && mkdir "$thisdir/log"
|
||||
echo "[$timestamp] $*" >> "$thisdir/log/$datestamp.log"
|
||||
}
|
||||
|
||||
[ ! -f "$thisdir/.env" ] && {
|
||||
log "ERROR: .env not exists"
|
||||
exit 1
|
||||
}
|
||||
|
||||
source "$thisdir/.env"
|
||||
|
||||
[ -z "$DUCK_TOKEN" ] && {
|
||||
log "ERROR: env var DUCK_TOKEN not specified"
|
||||
exit 1
|
||||
}
|
||||
|
||||
[ -z "$DUCK_DOMAINS" ] && {
|
||||
log "ERROR: env var DUCK_DOMAINS not specified"
|
||||
exit 1
|
||||
}
|
||||
|
||||
result=$(curl -s "https://www.duckdns.org/update?domains=${DUCK_DOMAINS}&token=${DUCK_TOKEN}&ip=${DUCK_IP}")
|
||||
log "$result"
|
||||
@@ -7,5 +7,5 @@ echo "Uninstalling omz..."
|
||||
echo "==============================================="
|
||||
echo
|
||||
|
||||
bash $ZSH/tools/uninstall.sh
|
||||
bash "$ZSH/tools/uninstall.sh"
|
||||
exec bash
|
||||
|
||||
11
uninstall/rustdesk
Executable file
11
uninstall/rustdesk
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Uninstall rustdesk client
|
||||
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Uninstalling rustdesk..."
|
||||
echo "==============================================="
|
||||
echo
|
||||
|
||||
sudo dpkg -r rustdesk
|
||||
# flatpak remove -y com.rustdesk.RustDesk
|
||||
Reference in New Issue
Block a user