aboutsummaryrefslogtreecommitdiff
path: root/local
diff options
context:
space:
mode:
Diffstat (limited to 'local')
-rwxr-xr-xlocal/bin/allsync63
-rwxr-xr-xlocal/bin/cloud39
-rwxr-xr-xlocal/bin/elektroline-windows6
-rwxr-xr-xlocal/bin/elektroline0032
-rwxr-xr-xlocal/bin/new-flake-dev47
-rwxr-xr-xlocal/bin/project-test30
-rwxr-xr-xlocal/bin/startsway7
-rwxr-xr-xlocal/sbin/wayvnc12
-rwxr-xr-xlocal/share/applications/elektroline-windows.desktop6
9 files changed, 149 insertions, 83 deletions
diff --git a/local/bin/allsync b/local/bin/allsync
index 6e537e2..70c9d29 100755
--- a/local/bin/allsync
+++ b/local/bin/allsync
@@ -8,21 +8,22 @@ notify_bar() {
i3_astroid() {
pkill -0 astroid || return 0
- find "/run/user/$(id -u)/i3" "/tmp/i3-$(id -un)".* -name ipc-socket\* 2>/dev/null | \
+ find "/run/user/$(id -u)/i3" "/tmp/i3-$(id -un)".* -name ipc-socket\* 2>/dev/null |
while read -r socket; do
i3-msg -s "$socket" "exec astroid $*"
- done
+ done
}
cron_enable() {
pass mail/cynerd@email.cz >/dev/null # Cache keys
if command -v crontab >/dev/null; then
{
- crontab -l
+ crontab -l
echo "$cronline"
} | crontab -
else
systemctl --user start allsync.timer
+ systemctl --user start davmail.service
fi
notify_bar
}
@@ -46,33 +47,33 @@ cron_enabled() {
if [ "$#" -gt 0 ]; then
case "$1" in
- enable)
- cron_enable
- ;;
- disable)
+ enable)
+ cron_enable
+ ;;
+ disable)
+ cron_disable
+ ;;
+ enabled)
+ cron_enabled
+ ;;
+ state)
+ if cron_enabled; then
+ echo "Enabled"
+ else
+ echo "Disabled"
+ fi
+ ;;
+ toggle)
+ if cron_enabled; then
cron_disable
- ;;
- enabled)
- cron_enabled
- ;;
- state)
- if cron_enabled; then
- echo "Enabled"
- else
- echo "Disabled"
- fi
- ;;
- toggle)
- if cron_enabled; then
- cron_disable
- else
- cron_enable
- fi
- ;;
- *)
- echo "${0##*/}: Unknown argument: $1" >&2
- exit 1
- ;;
+ else
+ cron_enable
+ fi
+ ;;
+ *)
+ echo "${0##*/}: Unknown argument: $1" >&2
+ exit 1
+ ;;
esac
exit
fi
@@ -97,7 +98,6 @@ if [ "${ALLSYNC_FLOCK:-n}" != "y" ]; then
exit 1
fi
-
sec() {
echo -e '\e[1;34m==========' "$@" '==========\e[0m'
}
@@ -108,18 +108,15 @@ fail() {
ecode=1
}
-
sec "Passwords"
pass git pull || fail "Passwords pull failed"
pass git push || fail "Passwords push failed"
sec "Mail"
-i3_astroid --start-polling
mbsync -a || fail "Mail synchronization reported failure"
notmuch new
~/.local/sbin/newmail-notify || fail "Mail notifications not sent"
notmuch tag --batch --input="$HOME/.notmuch-tag-new"
-i3_astroid --stop-polling
notify_bar
#sec "Calendar and contacts"
diff --git a/local/bin/cloud b/local/bin/cloud
new file mode 100755
index 0000000..187db18
--- /dev/null
+++ b/local/bin/cloud
@@ -0,0 +1,39 @@
+#!/usr/bin/env bash
+path="/media/cloud"
+
+usage() {
+ echo "Usage: $0 [OPTION].." >&2
+}
+
+umount="n"
+while getopts "u" opt; do
+ case "$opt" in
+ u)
+ umount="y"
+ ;;
+ *)
+ usage
+ exit 2
+ ;;
+ esac
+done
+
+if [ "$umount" = "n" ]; then
+ url="https://cloud.cynerd.cz/remote.php/dav/files/cynerd"
+ conf="$(mktemp)"
+ secrets="$(mktemp)"
+ trap 'rm -f "$conf" "$secrets"' EXIT HUP INT QUIT SEGV PIPE TERM
+ cat >"$conf" <<-EOF
+ [$path]
+ secrets ${secrets}
+ use_locks 0
+ EOF
+ chmod 600 "$secrets"
+ echo "$url cynerd $(pass cynerd.cz/nextcloud/davfs)" >"$secrets"
+ sudo chown root "$secrets"
+ sudo mkdir -p "$path"
+ sudo mount.davfs -o "conf=${conf}" -o uid=1000 "$url" "$path"
+ sudo rm -f "$secrets"
+else
+ sudo umount "$path"
+fi
diff --git a/local/bin/elektroline-windows b/local/bin/elektroline-windows
index 59c548b..26e6228 100755
--- a/local/bin/elektroline-windows
+++ b/local/bin/elektroline-windows
@@ -9,8 +9,8 @@ fi
exec xfreerdp \
"${args[@]}" \
- -decorations /w:1537 /h:903 /kbd:0x00000409 \
+ -decorations /dynamic-resolution \
/d:ELEKTROLINE /u:kkoci \
- /bpp:24 /audio-mode:0 /sound:sys:alsa /network:lan /rfx /cert-ignore \
+ /bpp:24 /audio-mode:0 /sound:sys:alsa /network:lan /rfx \
+clipboard /port:3389 \
- /v:elvirt00.elektroline.cz /p:"$(pass elektroline.cz/kkoci)"
+ /v:czellts.elektroline.cz /p:"$(pass elektroline.cz/kkoci)"
diff --git a/local/bin/elektroline00 b/local/bin/elektroline00
index b06ae4e..99664d2 100755
--- a/local/bin/elektroline00
+++ b/local/bin/elektroline00
@@ -8,21 +8,29 @@ usage() {
umount="n"
while getopts "u" opt; do
case "$opt" in
- u)
- umount="y"
- ;;
- *)
- usage
- exit 2
- ;;
+ u)
+ umount="y"
+ ;;
+ *)
+ usage
+ exit 2
+ ;;
esac
done
if [ "$umount" = "n" ]; then
- sudo mkdir -p "$path"/{company,elektro_doc,czelldata}
- sudo mount.cifs -o username=kkoci "//Elektroline00/company" "$path/company"
- sudo mount.cifs -o username=kkoci "//Elektroline00/elektro_doc" "$path/elektro_doc"
- sudo mount.cifs -o username=kkoci "//czelldata/Share" "$path/czelldata"
+ mount_cifs() {
+ sudo mkdir -p "$path/$2"
+ sudo --preserve-env=PASSWD mount.cifs -o username=kkoci,uid=1000 "$1" "$path/$2"
+ echo "Mounted $path/$2"
+ }
+
+ sudo mkdir -p "$path"
+ export PASSWD
+ PASSWD="$(pass elektroline.cz/kkoci)"
+ mount_cifs "//czelldata.elektroline.cz/Share" "share"
+ mount_cifs "//10.0.0.3/company" "company"
+ mount_cifs "//10.0.0.3/elektro_doc" "elektro_doc"
else
- sudo umount "$path/company" "$path/elektro_doc"
+ sudo umount "$path"/{share,company,elektro_doc}
fi
diff --git a/local/bin/new-flake-dev b/local/bin/new-flake-dev
index 2c4a280..c28f2fd 100755
--- a/local/bin/new-flake-dev
+++ b/local/bin/new-flake-dev
@@ -6,24 +6,37 @@ if [ -f ./flake.nix ]; then
fi
cat >./flake.nix <<"EOF"
{
- outputs = { self, nixpkgs, flake-utils, personal }:
- with flake-utils.lib;
- eachDefaultSystem (system: let
- pkgs = nixpkgs.legacyPackages.${system};
+ outputs = {
+ self,
+ systems,
+ nixpkgs,
+ }: let
+ inherit (nixpkgs.lib) genAttrs composeManyExtensions;
+ forSystems = genAttrs (import systems);
+ withPkgs = func: forSystems (system: func self.legacyPackages.${system});
in {
- devShells = filterPackages system {
- default = pkgs.mkShell {
- packages = with pkgs; [
- clang-tools
- gcc gdb pkg-config
- cppcheck flawfinder bear
- meson
- ];
- inputsFrom = with pkgs; [
- personal.devShells.${system}.default
- ];
- };
+ overlays = {
+ packages = final: prev: {};
+ default = composeManyExtensions [self.overlays.packages];
};
- });
+
+ devShells = withPkgs (pkgs: {
+ default = with pkgs;
+ mkShell {
+ packages = [
+ # TODO development packages
+ ];
+ inputsFrom = [
+ # TODO other packages development is done for
+ ];
+ };
+ });
+
+ formatter = withPkgs (pkgs: pkgs.alejandra);
+
+ legacyPackages =
+ forSystems (system:
+ nixpkgs.legacyPackages.${system}.extend self.overlays.default);
+ };
}
EOF
diff --git a/local/bin/project-test b/local/bin/project-test
index e8c6261..feab447 100755
--- a/local/bin/project-test
+++ b/local/bin/project-test
@@ -15,21 +15,21 @@ print_help() {
while [ -n "$1" ]; do
case $1 in
- -r|--ref)
- shift
- REF=$1
- ;;
- -c|--count)
- shift
- REF=HEAD~$1
- ;;
- --)
- shift
- break
- ;;
- *)
- break
- ;;
+ -r | --ref)
+ shift
+ REF=$1
+ ;;
+ -c | --count)
+ shift
+ REF=HEAD~$1
+ ;;
+ --)
+ shift
+ break
+ ;;
+ *)
+ break
+ ;;
esac
shift
done
diff --git a/local/bin/startsway b/local/bin/startsway
index 3982c19..262a997 100755
--- a/local/bin/startsway
+++ b/local/bin/startsway
@@ -14,9 +14,10 @@ export MOZ_ENABLE_WAYLAND=1
# Java application do not display properly
export _JAVA_AWT_WM_NONREPARENTING=1
-dbus="dbus-run-session"
if [ "$(ps -o comm= 1)" = "systemd" ]; then
- dbus=""
+ launch="systemd-cat --identifier=sway --stderr-priority=err"
+else
+ launch="dbus-run-session"
fi
-exec $dbus sway
+exec $launch sway
diff --git a/local/sbin/wayvnc1 b/local/sbin/wayvnc1
index b21479d..64edd39 100755
--- a/local/sbin/wayvnc1
+++ b/local/sbin/wayvnc1
@@ -1,3 +1,5 @@
#!/usr/bin/env bash
export WAYLAND_DISPLAY=wayland-1
+export SWAYSOCK="/run/user/${UID=$(id -u)}/sway-ipc.$UID.$(pgrep -x sway).sock"
+swaymsg output '*' power on
exec wayvnc localhost 5901
diff --git a/local/share/applications/elektroline-windows.desktop b/local/share/applications/elektroline-windows.desktop
new file mode 100755
index 0000000..9b488a9
--- /dev/null
+++ b/local/share/applications/elektroline-windows.desktop
@@ -0,0 +1,6 @@
+[Desktop Entry]
+Version=1.0
+Name=Elektroline Windows
+Exec="/home/cynerd/.local/bin/elektroline-windows" %U
+Terminal=false
+Type=Application