Compare commits

...

23 Commits

Author SHA1 Message Date
1f41651409 Merge pull request 'General Enhancements' (#4) from dev into main
Reviewed-on: #4
2025-06-16 12:33:14 -07:00
5f63ad1a59 Enahnce the docker aliases to all allow logging after the requested action. 2025-06-16 13:59:19 -06:00
7305e3a90c Add lsusb for Debian. 2025-05-18 11:37:49 -07:00
1e65b565cd Add GS Connect. 2025-05-09 17:41:02 -07:00
c828131bad Change expense tracker to DEV branch. Add the new version of the Buddy project. 2025-04-25 08:43:15 -07:00
3bca080de1 UNTESTED: Add cleaning of the video filename. 2025-04-03 14:50:01 -07:00
e308beec07 Do the size as an extra extension so that it is no longer cleaned into the date. 2025-04-03 10:34:51 -07:00
e155d36ab4 Fix null size variable bug with determining the default bitrate. 2025-03-31 15:09:00 -07:00
4bb075b747 Add a TBD file. 2025-03-21 15:07:22 -07:00
204a1fbb16 Hide Android Studio from taskbar. 2025-03-21 11:07:21 -07:00
9bb813ea78 Add aliases for chmod and chown showing changes. 2025-03-21 10:43:45 -07:00
066c8132e9 No longer using the LBRY folder. 2025-03-19 05:30:44 -07:00
9e61af8aa4 Add aliases for update-firmware. 2025-03-08 20:38:40 -07:00
69c1093289 Update usage for update. 2025-03-08 20:36:38 -07:00
c7c21bc2f8 Add note as to why -g is for shutdown. 2025-03-08 20:35:58 -07:00
466d8b5de5 Update already has code to skip Flatpaks if shutting down. 2025-03-08 20:33:41 -07:00
1eb41df822 Change parameter to not be an alias / function name. 2025-03-08 20:24:10 -07:00
152635e0b3 Don't do Flatpaks during goodbye. 2025-03-08 11:21:24 -07:00
17b78cc361 Goodbye isn't working anymore, try adding the shopt right before the attempt at bye. 2025-03-08 11:19:47 -07:00
a4ff66a9c9 Use dev branches on social traveler project so main is empty until a working version exists. 2025-03-07 12:11:17 -07:00
ea4d4070a6 Continue improving output text. 2025-03-07 12:10:36 -07:00
48777cf25c Attempt to fix Flutter project detection. 2025-03-07 12:02:02 -07:00
e4d784b6c7 Add output for what happens initially. 2025-03-07 12:01:11 -07:00
6 changed files with 166 additions and 53 deletions

View File

@ -110,8 +110,7 @@ $search "$location" | sort | while read image; do
continue continue
fi fi
new_image="${image//.$extension/}.$tag-$date_YYYYMMDD.$size.$extension"
new_image="${image//.$extension/}.$tag-$date_YYYYMMDD-$size.$extension"
## Clean Filename ## ## Clean Filename ##
# Prevent directory from having its name cleaned too. # Prevent directory from having its name cleaned too.

View File

@ -48,7 +48,8 @@ function usage {
-r : Recurse the entire directory structure, compressing all video files. -r : Recurse the entire directory structure, compressing all video files.
-f : Force recompressing any files by deleting it if it already exists. -f : Force recompressing any files by deleting it if it already exists.
-d : Delete the original video if the compressed version is smaller. -d : Delete the original video if the compressed version is smaller.
-A : Recursively Force and Delete. -l : Clean the filename of dashes and underscores so dates line up.
-A : Recursively Force, Delete, and Clean.
-m : Measure the time it takes to compress each video and do the loop. -m : Measure the time it takes to compress each video and do the loop.
-V : Add verbosity, such as printing all the variable values. -V : Add verbosity, such as printing all the variable values.
-x : Set the shell's x flag to display every action which is taken. -x : Set the shell's x flag to display every action which is taken.
@ -59,7 +60,7 @@ function usage {
## Parameters ## ## Parameters ##
while getopts ":i:v:a:c:s:rfdAmVxh" opt; do while getopts ":i:v:a:c:s:rfdlAmVxh" opt; do
case $opt in case $opt in
i) input="$OPTARG" i) input="$OPTARG"
;; ;;
@ -77,7 +78,9 @@ while getopts ":i:v:a:c:s:rfdAmVxh" opt; do
;; ;;
d) delete="Y" d) delete="Y"
;; ;;
A) search_command="find" && force="Y" && delete="Y" l) clean="Y"
;;
A) search_command="find" && force="Y" && delete="Y" #&& clean="Y"
;; ;;
m) time_command="`which time`" m) time_command="`which time`"
;; ;;
@ -102,25 +105,38 @@ if [[ -z "$input" ]]; then
input="." input="."
fi fi
if [[ -z $size ]]; then
size="720"
fi
typeset -i size_int
size_int="$size"
# Ensure the filenames sort properly between 3 and 4 digit resolutions.
while (( ${#size} < 4 )); do
size="0$size"
done
compress_tags="$size"
size="-filter:v scale=-2:$size"
if [[ -z "$video_bitrate" ]]; then if [[ -z "$video_bitrate" ]]; then
# Based roughly on the 2.5 step iteration used for 720 and 1080. # Based roughly on the 2.5 step iteration used for 720 and 1080.
if (( $size >= 2160 )); then if (( size_int >= 2160 )); then
video_bitrate="30M" video_bitrate="30M"
elif (( $size >= 1440 )); then elif (( size_int >= 1440 )); then
video_bitrate="12M" video_bitrate="12M"
elif (( $size >= 1080 )); then elif (( size_int >= 1080 )); then
video_bitrate="5M" video_bitrate="5M"
elif (( $size >= 720 )); then elif (( size_int >= 720 )); then
video_bitrate="2000k" video_bitrate="2000k"
elif (( $size >= 480 )); then elif (( size_int >= 480 )); then
video_bitrate="750k" video_bitrate="750k"
elif (( $size >= 360 )); then elif (( size_int >= 360 )); then
video_bitrate="250k" video_bitrate="250k"
else else
video_bitrate="100k" video_bitrate="100k"
fi fi
fi fi
compress_tags="$video_bitrate" compress_tags="$compress_tags-$video_bitrate"
video_bitrate="-b:v $video_bitrate -minrate 0 -maxrate $video_bitrate -bufsize $video_bitrate" video_bitrate="-b:v $video_bitrate -minrate 0 -maxrate $video_bitrate -bufsize $video_bitrate"
if [[ -z "$audio_bitrate" ]]; then if [[ -z "$audio_bitrate" ]]; then
@ -145,15 +161,6 @@ else
time_command="$time_command -p" time_command="$time_command -p"
fi fi
if [[ -z $size ]]; then
size="720"
fi
while (( ${#size} < 4 )); do
size="0$size"
done
compress_tags="$size-$compress_tags"
size="-filter:v scale=-2:$size"
## Main ## ## Main ##
if [[ "$verbose" == "Y" ]]; then if [[ "$verbose" == "Y" ]]; then
@ -208,21 +215,33 @@ $search_command "$input" | sort | while read file; do
continue continue
fi fi
# TBD / TODO: Test this functionality!
new_video_clean="${newfile}"
new_video_clean="${new_video_clean//_/}"
new_video_clean="${new_video_clean//-/}"
new_video_clean="${new_video_clean// /}"
# More exception checks based on the new file. # More exception checks based on the new file.
if [[ -e "$newfile" ]]; then if [[ -e "$newfile" || -e "$new_video_clean" ]]; then
if [[ "$force" == "Y" ]]; then if [[ "$force" == "Y" ]]; then
echo "FORCE: Removing '$newfile'." echo "FORCE: Removing '$newfile'."
if [[ -d ~/TRASH ]]; then if [[ -d ~/TRASH ]]; then
mv -v "$newfile" ~/TRASH/ mv -v "$newfile" "$new_video_clean" ~/TRASH/ 2>/dev/null
else else
rm -v "$newfile" rm -v "$newfile" "$new_video_clean" 2>/dev/null
fi fi
else else
echo "SKIP: Already has a compressed version ($newfile)." echo "SKIP: Already has a compressed version."
ls -sh "$newfile" "$new_video_clean" 2>/dev/null
continue continue
fi fi
fi fi
# Whether or not to use the cleaned version or the normal version.
if [[ -n $clean ]]; then
newfile="$new_video_clean"
fi
# Convert the file. # Convert the file.
echo "Converting to '$newfile'." echo "Converting to '$newfile'."
echo "*** `date` ***" echo "*** `date` ***"

View File

@ -100,7 +100,6 @@
mode: '0755' mode: '0755'
loop: loop:
- "{{ user_user.home }}/bin" - "{{ user_user.home }}/bin"
- "{{ user_user.home }}/LBRY"
- "{{ user_user.home }}/TRASH" - "{{ user_user.home }}/TRASH"
- "{{ user_user.home }}/Downloads" - "{{ user_user.home }}/Downloads"
- "{{ user_user.home }}/Reports" - "{{ user_user.home }}/Reports"
@ -158,18 +157,18 @@
function_update: | function_update: |
function update() { function update() {
PROG=$FUNCNAME PROG=$FUNCNAME
usage="Usage: $PROG [-y] usage="Usage: $PROG [-y] [-g] [-s] [-f]
$PROG is used to run all the system's package manager commands $PROG is used to run all the system's package manager commands
in one swoop. Flow stops if any command returns a failure code. in one swoop. Flow stops if any command returns a failure code.
The hope is to run something as easy as 'pacman -Syyu'. The hope is to run something as easy as 'pacman -Syyu'.
-y : Assume yes to any prompts. -y : Assume yes to any prompts.
-g : Shutdown after updating. -g : Goodbye - Shutdown after updating.
-s : System updates only, no Flatpaks. -s : System updates only, no Flatpaks.
-f : Flatpaks only, no system updates." -f : Flatpaks only, no system updates."
unset OPTIND unset OPTIND
unset accept unset accept
unset goodbye unset shutdown
unset only_sys unset only_sys
unset only_flat unset only_flat
@ -178,7 +177,7 @@
h) echo -e "$usage" h) echo -e "$usage"
return 0 ;; return 0 ;;
y) accept="-y" ;; y) accept="-y" ;;
g) goodbye="Y" ;; g) shutdown="Y" ;;
s) only_sys="Y" ;; s) only_sys="Y" ;;
f) only_flat="Y" ;; f) only_flat="Y" ;;
*) echo "ERROR: -$OPTARG is not a recognized option." >&2 *) echo "ERROR: -$OPTARG is not a recognized option." >&2
@ -193,7 +192,7 @@
{{ update_package_manager }} {{ update_package_manager }}
fi fi
if [[ "$goodbye" == "Y" && "{{ battery }}" == "True" ]]; then if [[ "$shutdown" == "Y" && "{{ battery }}" == "True" ]]; then
echo -e "\n*** Only System Updates - Skipping Flatpak ***\n\n" echo -e "\n*** Only System Updates - Skipping Flatpak ***\n\n"
elif [[ "$only_sys" == "Y" ]]; then elif [[ "$only_sys" == "Y" ]]; then
echo -e "\n*** Manually Skipping Flatpak ***\n\n" echo -e "\n*** Manually Skipping Flatpak ***\n\n"
@ -203,7 +202,8 @@
echo "*** Completed Successfully ***" echo "*** Completed Successfully ***"
if [[ $goodbye == "Y" ]]; then if [[ $shutdown == "Y" ]]; then
shopt -s expand_aliases
bye bye
fi fi
@ -235,6 +235,8 @@
echo "*** Completed Successfully ***" echo "*** Completed Successfully ***"
return 0 return 0
} }
alias firmware-update="update-firmware"
alias firmware-updater="update-firmware"
alias_sync: alias sync='date && echo "Syncing!" && sync && date' alias_sync: alias sync='date && echo "Syncing!" && sync && date'
export_editor: export EDITOR='vi' export_editor: export EDITOR='vi'
init_aliases: | init_aliases: |
@ -252,8 +254,12 @@
' '
alias init-prog=init-program alias init-prog=init-program
bye_aliases: | bye_aliases: |
alias bye="{{ shutdown_command }}" function bye {
alias goodbye="update -yg" {{ shutdown_command }}
}
function goodbye {
update -yg
}
metasploit_aliases: | metasploit_aliases: |
alias metasploit="msfconsole" alias metasploit="msfconsole"
alias hax="metasploit" alias hax="metasploit"
@ -414,23 +420,63 @@
} }
alias_vim: alias vi=vim alias_vim: alias vi=vim
alias_here: alias here='ls -alh `pwd`/*' alias_here: alias here='ls -alh `pwd`/*'
alias_docker_reload: | function_docker_reload: |
alias docker-reload=' function docker-reload() {
if [[ "$1" == "-h" || "$1" == "--help" ]]; then
cat <<- EOF
Usage: docker-reload [container_name]
Providing the container name starts a log follow after the command.
A reload is characterized by a DOWN, BUILD, and UP.
EOF
return 0
fi
docker compose down && docker compose down &&
docker compose build && docker compose build &&
docker compose up -d docker compose up -d
'
alias_docker_update: | if [[ -n "$1" ]]; then
alias docker-update=' docker logs -f $1
fi
return 0
}
function_docker_update: |
function docker-update() {
if [[ "$1" == "-h" || "$1" == "--help" ]]; then
cat <<- EOF
Usage: docker-update [container_name]
Providing the container name starts a log follow after the command.
An update is characterized by a DOWN, PULL, BUILD, and UP.
EOF
return 0
fi
docker compose down && docker compose down &&
docker compose pull && docker compose pull &&
docker compose build && docker compose build &&
docker compose up -d docker compose up -d
'
if [[ -n "$1" ]]; then
docker logs -f $1
fi
return 0
}
function_docker_upgrade: | function_docker_upgrade: |
function docker-upgrade() { function docker-upgrade() {
# Wrapper for a full-scale upgrade and log view of a container. # Wrapper for a full-scale upgrade and log view of a container.
# Paramaters:
if [[ "$1" == "-h" || "$1" == "--help" ]]; then
cat <<- EOF
Usage: docker-upgrade [container_name]
Providing the container name starts a log follow after the command.
An upgrade is characterized by a DOWN, PULL, BUILD, and UP.
EOF
return 0
fi
# Parameters:
# 1) Container ID or Container Name, as seen in 'docker ps' command. # 1) Container ID or Container Name, as seen in 'docker ps' command.
container=$1 container=$1
if [[ -z $container ]]; then if [[ -z $container ]]; then
@ -460,9 +506,29 @@
echo "*** Following Log ***" && echo "*** Following Log ***" &&
echo "Press ^C to escape." && echo "Press ^C to escape." &&
docker logs -f $container docker logs -f $container
return 0
}
function_docker_restart: |
function docker-restart() {
if [[ "$1" == "-h" || "$1" == "--help" ]]; then
cat <<- EOF
Usage: docker-restart [container_name]
Providing the container name starts a log follow after the command.
A restart is characterized by a DOWN and UP.
EOF
return 0
fi
docker compose down &&
docker compose up -d
if [[ -n "$1" ]]; then
docker logs -f $1
fi
return 0
} }
alias_docker_restart: |
alias docker-restart='docker compose down && docker compose up -d'
alias_code_check: | alias_code_check: |
alias code-check=' alias code-check='
echo "Checking ~/Code directory for git changes." echo "Checking ~/Code directory for git changes."
@ -502,14 +568,16 @@
env-termux dev env-termux dev
nodejs-website dev nodejs-website dev
ebook-health-protocol dev ebook-health-protocol dev
flutter-expense-tracker main flutter-expense-tracker dev
flutter-social-traveler-app main flutter-social-traveler-app dev
nodejs-social-traveler-server main nodejs-social-traveler-server dev
misc-spare-change main misc-spare-change main
flutter-buddy-website dev
EOF EOF
} }
function code-reseed { function code-reseed {
# Move old projects to TRASH. # Unseed current projects.
echo -e "\n*** Move old projects to TRASH ***"
unseed_dir="$HOME/TRASH/`date +%Y%m%d_%H%M%S`_UnseededCodeProjects" unseed_dir="$HOME/TRASH/`date +%Y%m%d_%H%M%S`_UnseededCodeProjects"
mkdir -pv "$unseed_dir" mkdir -pv "$unseed_dir"
mv -v ~/Code/* "$unseed_dir"/ 2>/dev/null mv -v ~/Code/* "$unseed_dir"/ 2>/dev/null
@ -525,8 +593,8 @@
# Project folder manipulation. # Project folder manipulation.
dest_folder="$git_project" dest_folder="$git_project"
if [[ "$dest_folder" == "flutter-*" ]]; then if [[ "$dest_folder" == "flutter-"* ]]; then
echo "- Using '_' for Flutter Project" echo "Using '_' for Flutter Project"
dest_folder="${dest_folder//-/_}" dest_folder="${dest_folder//-/_}"
fi fi
@ -649,6 +717,9 @@
echo "$var = ${!var}" echo "$var = ${!var}"
done done
} }
alias_permission_commands: |
alias chown='chown -c'
alias chmod='chmod -c'
- name: General | Account Management | Users | Files | Common Variable - name: General | Account Management | Users | Files | Common Variable
set_fact: set_fact:
@ -692,10 +763,10 @@
{{ function_flatpak_purge }} {{ function_flatpak_purge }}
{{ alias_vim }} {{ alias_vim }}
{{ alias_here }} {{ alias_here }}
{{ alias_docker_reload }} {{ function_docker_reload }}
{{ alias_docker_update }} {{ function_docker_update }}
{{ function_docker_upgrade }} {{ function_docker_upgrade }}
{{ alias_docker_restart }} {{ function_docker_restart }}
{{ alias_code_check }} {{ alias_code_check }}
{{ alias_code_reset }} {{ alias_code_reset }}
{{ function_code_reseed }} {{ function_code_reseed }}
@ -711,6 +782,7 @@
{{ alias_kill_system }} {{ alias_kill_system }}
{{ function_update_sdks }} {{ function_update_sdks }}
{{ function_ansible_vars }} {{ function_ansible_vars }}
{{ alias_permission_commands }}
- name: General | Account Management | Users | Files | .bashrc - name: General | Account Management | Users | Files | .bashrc
blockinfile: blockinfile:

View File

@ -0,0 +1,6 @@
---
# Software that I've written for personal use, to be placed in `~/bin/`.
# TODO TBD - Add content here and place this in local.yml! :)
# Refactor Music Library

View File

@ -137,3 +137,19 @@
state: absent state: absent
when: ansible_distribution != "Ubuntu" when: ansible_distribution != "Ubuntu"
ignore_errors: yes ignore_errors: yes
- name: General | Software | Packages | GS Connect (KDE Connect, Android Tool)
package:
name:
- gnome-shell-extension-gsconnect
state: present
when: ansible_distribution in ("Debian")
ignore_errors: yes
- name: General | Software | Packages | Other Debian Packages
package:
name:
- usbutils
state: present
when: ansible_distribution in ("Debian")
ignore_errors: yes

View File

@ -18,7 +18,6 @@
, 'com.discordapp.Discord.desktop' , 'com.discordapp.Discord.desktop'
, 'com.vscodium.codium.desktop' , 'com.vscodium.codium.desktop'
, 'codium.desktop' , 'codium.desktop'
, 'com.google.AndroidStudio.desktop'
, 'org.shotcut.Shotcut.desktop' , 'org.shotcut.Shotcut.desktop'
, 'io.lmms.LMMS.desktop' , 'io.lmms.LMMS.desktop'
, 'io.lbry.lbry-app.desktop', 'lbry.desktop' , 'io.lbry.lbry-app.desktop', 'lbry.desktop'
@ -38,6 +37,8 @@
#, 'org.godotengine.Godot.desktop' #, 'org.godotengine.Godot.desktop'
# 2025-03-07 Removed in place of a 2nd VS Codium install (apt version). # 2025-03-07 Removed in place of a 2nd VS Codium install (apt version).
#, 'com.visualstudio.code-oss.desktop', 'code-oss.desktop' #, 'com.visualstudio.code-oss.desktop', 'code-oss.desktop'
# 2025-03-21 Not really using Android Studio now that Flutter is working.
#, 'com.google.AndroidStudio.desktop'
- name: Workstation | Account Management | GNOME | Facts (NixOS) - name: Workstation | Account Management | GNOME | Facts (NixOS)
set_fact: set_fact: