Compare commits

..

No commits in common. "8289e2a0ca2aef9d3fa6348ede3945837510e2d3" and "752969e2fa64cb90a339ea16aeb5f70b48bf389c" have entirely different histories.

14 changed files with 57 additions and 354 deletions

View File

@ -95,39 +95,30 @@
case $pkg_mgr in case $pkg_mgr in
apt) apt)
if [[ $distribution != "ParrotOS" ]]; then if [[ $distribution != "ParrotOS" ]]; then
echo -e "******* Apt *******\n*** Update Cache ***" && echo "*** Apt ***" &&
sudo apt update && sudo apt update &&
echo -e "\n*** Auto Remove ***" &&
sudo apt autoremove {{ update_accept_var }} && sudo apt autoremove {{ update_accept_var }} &&
echo -e "\n*** Clean ***" &&
sudo apt clean {{ update_accept_var }} && sudo apt clean {{ update_accept_var }} &&
echo -e "Cleaned!\n\n*** Configure DPKG ***" &&
sudo dpkg --configure -a && sudo dpkg --configure -a &&
echo -e "\n*** Fix Broken/Missing ***" &&
sudo apt --fix-broken --fix-missing install && sudo apt --fix-broken --fix-missing install &&
echo -e "\n*** Upgrade ***" &&
sudo apt dist-upgrade --allow-downgrades --fix-broken \ sudo apt dist-upgrade --allow-downgrades --fix-broken \
--fix-missing {{ update_accept_var }} || --fix-missing {{ update_accept_var }} ||
return 1 return 1
else else
echo -e "******* Parrot *******\n*** Update Cache ***" && echo "*** Parrot ***"
sudo apt update && sudo apt update &&
echo -e "\n*** Auto Remove ***" &&
sudo apt autoremove {{ update_accept_var }} && sudo apt autoremove {{ update_accept_var }} &&
parrot_mirrors_suck=true && parrot_mirrors_suck=true &&
while [[ $parrot_mirrors_suck ]]; do while [[ $parrot_mirrors_suck ]]; do
unset parrot_mirrors_suck unset parrot_mirrors_suck
echo -e "\n*** Upgrade ***"
sudo parrot-upgrade sudo parrot-upgrade
if [[ $? != 0 ]]; then if [[ $? != 0 ]]; then
parrot_mirrors_suck=true parrot_mirrors_suck=true
echo -e "*** Update Cache, Again ***"
sudo apt update --fix-missing sudo apt update --fix-missing
fi fi
done || done ||
return 1 return 1
fi fi
echo -e "\n******* Mission Complete!! *******"
;; ;;
pacman) pacman)

View File

@ -34,12 +34,9 @@ function usage() {
Parameters: Parameters:
-s SIZE : Integer for the maximum length of either image dimension. -s SIZE : Integer for the maximum length of either image dimension.
Default size is 2000.
-l LOCATION : The specific image or folder which needs images shrunk. -l LOCATION : The specific image or folder which needs images shrunk.
Default location is the current directory.
-r : Recursively shrink images based on the location passed. -r : Recursively shrink images based on the location passed.
-f : Force the image to be shrunk even if a file already exists for it. -f : Force the image to be shrunk even if a file already exists for it.
-F : FORCE the image to be shrunk even if the file is already shrunk.
-d : Delete the original image if the compressed image is smaller. -d : Delete the original image if the compressed image is smaller.
-c : Clean the filename of underscores, dashes, 'IMG', etc. -c : Clean the filename of underscores, dashes, 'IMG', etc.
-A : Resursively Force, Delete, and Clean. -A : Resursively Force, Delete, and Clean.
@ -51,13 +48,12 @@ function usage() {
## Parameters ## ## Parameters ##
while getopts ":s:l:rfFdcAhx" opt; do while getopts ":s:l:rfdcAhx" opt; do
case $opt in case $opt in
s) in_size="$OPTARG" && size="$in_size" ;; s) in_size="$OPTARG" && size="$in_size" ;;
l) location="$OPTARG" ;; l) location="$OPTARG" ;;
r) recurse="Y" && search="find" ;; r) recurse="Y" && search="find" ;;
f) force="Y" ;; f) force="Y" ;;
F) super_force="Y" ;;
d) delete="Y" ;; d) delete="Y" ;;
c) clean="Y" ;; c) clean="Y" ;;
A) recurse="Y" && search="find" && force="Y" && delete="Y" && clean="Y" ;; A) recurse="Y" && search="find" && force="Y" && delete="Y" && clean="Y" ;;
@ -94,8 +90,8 @@ $search "$location" | sort | while read image; do
# Avoid processing directories no matter the name. # Avoid processing directories no matter the name.
[ -d "$image" ] && continue [ -d "$image" ] && continue
# Avoid processing files previously shrunk, unless we are FORCEing. # Avoid processing files previously shrunk.
[[ "$image" == *"$tag"* && -z "$super_force" ]] && continue [[ "$image" == *"$tag"* ]] && continue
echo -e "\n$image" echo -e "\n$image"
@ -111,7 +107,7 @@ $search "$location" | sort | while read image; do
fi fi
new_image="${image//.$extension/}.$tag-$date_YYYYMMDD-$size.$extension" new_image="${image//.$extension/}.$tag-$date_YYYYMMDD.$extension"
## Clean Filename ## ## Clean Filename ##
# Prevent directory from having its name cleaned too. # Prevent directory from having its name cleaned too.

View File

@ -32,14 +32,7 @@ function usage {
-i input : The input file or folder with which to search for video files. -i input : The input file or folder with which to search for video files.
If nothing is provided, current directory (.) is assumed. If nothing is provided, current directory (.) is assumed.
-v bitrate : The video bitrate to convert to. -v bitrate : The video bitrate to convert to.
Defaults are based on the size passed. Defaults to '2000k'.
>= 2160: '30M'
>= 1440: '12M'
>= 1080: '5M'
>= 720: '2000k'
>= 480: '750k'
>= 360: '250k'
< 360: '100k'
-a bitrate : The audio bitrate to convert to. -a bitrate : The audio bitrate to convert to.
Defaults to '192k'. Defaults to '192k'.
-c vcodec : The video codec you'd like to use, such as libopenh264. -c vcodec : The video codec you'd like to use, such as libopenh264.
@ -103,30 +96,13 @@ if [[ -z "$input" ]]; then
fi fi
if [[ -z "$video_bitrate" ]]; then if [[ -z "$video_bitrate" ]]; then
# Based roughly on the 2.5 step iteration used for 720 and 1080. video_bitrate="2000k"
if (( $size >= 2160 )); then
video_bitrate="30M"
elif (( $size >= 1440 )); then
video_bitrate="12M"
elif (( $size >= 1080 )); then
video_bitrate="5M"
elif (( $size >= 720 )); then
video_bitrate="2000k"
elif (( $size >= 480 )); then
video_bitrate="750k"
elif (( $size >= 360 )); then
video_bitrate="250k"
else
video_bitrate="100k"
fi
fi fi
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
audio_bitrate="192k" audio_bitrate="192k"
fi fi
compress_tags="$compress_tags-$audio_bitrate"
audio_bitrate="-b:a $audio_bitrate" audio_bitrate="-b:a $audio_bitrate"
if [[ -z "$codec" ]]; then if [[ -z "$codec" ]]; then
@ -148,11 +124,7 @@ fi
if [[ -z $size ]]; then if [[ -z $size ]]; then
size="720" size="720"
fi fi
while (( ${#size} < 4 )); do size="-filter:v scale=-1:$size"
size="0$size"
done
compress_tags="$size-$compress_tags"
size="-filter:v scale=-2:$size"
## Main ## ## Main ##
@ -200,9 +172,6 @@ $search_command "$input" | sort | while read file; do
# Build the new filename to signify it is different than the original. # Build the new filename to signify it is different than the original.
newfile="${file//$extension/$filename_flag-$date_YYYYMMDD.$extension_lower}" newfile="${file//$extension/$filename_flag-$date_YYYYMMDD.$extension_lower}"
# Add the size, video, and audio quality it was converted to.
newfile="${newfile//\.$extension_lower/_$compress_tags.$extension_lower}"
if [[ $newfile == $file ]]; then if [[ $newfile == $file ]]; then
echo "ERROR: The new calculated filename matches the old, skipping." >&2 echo "ERROR: The new calculated filename matches the old, skipping." >&2
continue continue

View File

@ -75,6 +75,7 @@
- include_tasks: tasks/general/software/sendmail.yml - include_tasks: tasks/general/software/sendmail.yml
when: ansible_system == "FreeBSD" when: ansible_system == "FreeBSD"
# Gather again in case missing programs have now been installed. # Gather again in case missing programs have now been installed.
- include_tasks: facts/general/gather.yml - include_tasks: facts/general/gather.yml
@ -153,9 +154,6 @@
- include_tasks: tasks/workstation/shared/settings/services.yml - include_tasks: tasks/workstation/shared/settings/services.yml
# Final Tasks (SLOW) # # Final Tasks (SLOW) #
- include_tasks: tasks/workstation/linux/software/flutter.yml
when: ansible_system == "Linux"
- include_tasks: tasks/workstation/linux/software/flatpaks.yml - include_tasks: tasks/workstation/linux/software/flatpaks.yml
when: ansible_system == "Linux" and flatpak_distro when: ansible_system == "Linux" and flatpak_distro

View File

@ -35,11 +35,11 @@
; ;
; user : Provide the name of the user account. ; user : Provide the name of the user account.
; Example: tom, jerry, kim, sarah ; Example: tom, jerry, kim, sarah
; Default: user ; Default: ling
; ;
; user_desc : Provide the description of the user account. ; user_desc : Provide the description of the user account.
; Example: Thomas, Jerry, Kimberly, Sarah ; Example: Thomas, Jerry, Kimberly, Sarah
; Default: User ; Default: Hyperling
; ;
; sshd_port : Determine the port which SSHD should listen on. ; sshd_port : Determine the port which SSHD should listen on.
; Example: 12345 ; Example: 12345
@ -101,22 +101,6 @@
; Slows down the rate of services such as telegraf and cron. ; Slows down the rate of services such as telegraf and cron.
; Default: false ; Default: false
; ;
;;;;;;;;;;;;;;;;;;;; Server Shortcut ;;;;;;;;;;;;;;;;;;;;
;
; For typing `prod` and getting straight to a server, like in env-termux.
;
; prod_host : Branch to use on this machine.
; Example: myserver.com, mywebhost.net
; Default: hyperling.com
;
; prod_port : Provide the git host that the machine should poll.
; Example: 22, 222, 2222
; Default: 22
;
; prod_user : Port of the server host to use for SSH requests.
; Example: jim, bob, jeff, anne
; Default: user
;
[global] [global]
marker: '; {mark} MANAGED BY ANSIBLE | Generic Config' marker: '; {mark} MANAGED BY ANSIBLE | Generic Config'
state: present state: present
@ -140,9 +124,6 @@
git_user: "{{ lookup('ini', 'git_user file={{gen_file}} default=me') }}" git_user: "{{ lookup('ini', 'git_user file={{gen_file}} default=me') }}"
git_project: "{{ lookup('ini', 'git_project file={{gen_file}} default=env-ansible') }}" git_project: "{{ lookup('ini', 'git_project file={{gen_file}} default=env-ansible') }}"
git_ssh_port: "{{ lookup('ini', 'git_ssh_port file={{gen_file}} default=22') }}" git_ssh_port: "{{ lookup('ini', 'git_ssh_port file={{gen_file}} default=22') }}"
prod_host: "{{ lookup('ini', 'prod_host file={{gen_file}} default=hyperling.com') }}"
prod_port: "{{ lookup('ini', 'prod_port file={{gen_file}} default=22') }}"
prod_user: "{{ lookup('ini', 'prod_user file={{gen_file}} default=user') }}"
- name: General | Account Management | Provisioning Configuration | General | List - name: General | Account Management | Provisioning Configuration | General | List
set_fact: set_fact:
@ -163,9 +144,6 @@
- { 'git_user': "{{ git_user }}" } - { 'git_user': "{{ git_user }}" }
- { 'git_project': "{{ git_project }}" } - { 'git_project': "{{ git_project }}" }
- { 'git_ssh_port': "{{ git_ssh_port }}" } - { 'git_ssh_port': "{{ git_ssh_port }}" }
- { 'prod_host': "{{ prod_host }}" }
- { 'prod_port': "{{ prod_port }}" }
- { 'prod_user': "{{ prod_user }}" }
## Workstation ## ## Workstation ##
@ -181,10 +159,6 @@
; coding : Set to true for installation of code editors (VSCode, PyCharm, Android Studio) ; coding : Set to true for installation of code editors (VSCode, PyCharm, Android Studio)
; ;
; editing : Set to true for installation of Audio/Video editors (Shotcut, Audacity, OBS Stdio, GIMP) ; editing : Set to true for installation of Audio/Video editors (Shotcut, Audacity, OBS Stdio, GIMP)
; Set to video for only the video related portions.
; - Shotcut, OpenShot, OBS Studio, etc.
; Set to audio for only the music related portions.
; - Audacity (or similar), LMMS, VMPK, etc.
; ;
; gaming : Set to true for installation of gaming software (Steam, Lutris) ; gaming : Set to true for installation of gaming software (Steam, Lutris)
; ;

View File

@ -281,20 +281,16 @@
unset OPTIND unset OPTIND
unset clean unset clean
unset network unset network
du_params="-ha"
while (( $# > 0 )); do while (( $# > 0 )); do
case $1 in case $1 in
-c | -y | --clean ) -c | -y | --clean )
clean="Y" ;; clean="Y" ;;
-n | -net | --network ) -n | -net | --network )
network="Y" ;; network="Y" ;;
-s | -sum | --summarize )
du_params="-sh" ;;
* ) * )
echo " echo "
ERROR: Option '$1' with value '$2' not recognized. ERROR: Option '$1' with value '$2' not recognized.
$PROG [-c | -y | --clean] [-n | -net | --network] \ $PROG [-c|-y|--clean] [-n|-net|--network]
[-s | -sum | --summarize]
" >&2 " >&2
return 1 return 1
;; ;;
@ -322,8 +318,8 @@
echo "Checking $dir..." echo "Checking $dir..."
$sudo find $dir -name TRASH | while read trash; do $sudo find $dir -name TRASH | while read trash; do
if [[ "$trash" != "" && `$sudo ls -a $trash` ]]; then if [[ "$trash" != "" && `$sudo ls -a $trash` ]]; then
echo "Found $trash:" echo "Found $trash with contents:"
$sudo du $du_params $trash | sort -h $sudo du -ha $trash | sort -h
if [[ "$clean" == "Y" ]]; then if [[ "$clean" == "Y" ]]; then
echo "Cleaning trash..." echo "Cleaning trash..."
$sudo sh -c "cd $trash; rm -rfv ..?* .[!.]* *" $sudo sh -c "cd $trash; rm -rfv ..?* .[!.]* *"
@ -332,8 +328,8 @@
done done
$sudo find $dir $maxdepth -name "*"Trash"*" | while read trash; do $sudo find $dir $maxdepth -name "*"Trash"*" | while read trash; do
if [[ "$trash" != "" && `$sudo ls -a $trash` ]]; then if [[ "$trash" != "" && `$sudo ls -a $trash` ]]; then
echo "Found $trash:" echo "Found $trash with contents:"
$sudo du $du_params $trash | sort -h $sudo du -ha $trash | sort -h
if [[ "$clean" == "Y" ]]; then if [[ "$clean" == "Y" ]]; then
echo "Cleaning trash..." echo "Cleaning trash..."
$sudo sh -c "cd $trash; rm -rfv ..?* .[!.]* *" $sudo sh -c "cd $trash; rm -rfv ..?* .[!.]* *"
@ -349,8 +345,8 @@
echo "Checking $dir..." echo "Checking $dir..."
sudo find $dir -name TRASH | while read trash; do sudo find $dir -name TRASH | while read trash; do
if [[ "$trash" != "" && `sudo ls -a $trash` ]]; then if [[ "$trash" != "" && `sudo ls -a $trash` ]]; then
echo "Found $trash:" echo "Found $trash with contents:"
sudo du $du_params $trash | sort -h sudo du -ha $trash | sort -h
if [[ "$clean" == "Y" ]]; then if [[ "$clean" == "Y" ]]; then
echo "Cleaning trash..." echo "Cleaning trash..."
sudo sh -c "cd $trash; rm -rfv ..?* .[!.]* *" sudo sh -c "cd $trash; rm -rfv ..?* .[!.]* *"
@ -359,8 +355,8 @@
done done
sudo find $dir -name .Trash"*" | while read trash; do sudo find $dir -name .Trash"*" | while read trash; do
if [[ "$trash" != "" && `sudo ls -a $trash` ]]; then if [[ "$trash" != "" && `sudo ls -a $trash` ]]; then
echo "Found $trash:" echo "Found $trash with contents:"
sudo du $du_params $trash | sort -h sudo du -ha $trash | sort -h
if [[ "$clean" == "Y" ]]; then if [[ "$clean" == "Y" ]]; then
echo "Cleaning trash..." echo "Cleaning trash..."
sudo sh -c "cd $trash; rm -rfv ..?* .[!.]* *" sudo sh -c "cd $trash; rm -rfv ..?* .[!.]* *"
@ -547,7 +543,7 @@
echo -e "\nDone!\n" echo -e "\nDone!\n"
} }
alias_clone: | alias_clone: |
alias clone="rsync -auPhz --delete --exclude '.gradle' --exclude 'app/build'" alias clone="rsync -auPhz --delete"
export_hyperling: | export_hyperling: |
export HYPERLING6="2a07:e03:3:80::1" export HYPERLING6="2a07:e03:3:80::1"
export HYPERLING4="185.130.47.173" export HYPERLING4="185.130.47.173"
@ -559,20 +555,6 @@
fi fi
alias_scan: | alias_scan: |
alias scan="nmap -A -p- --script=vuln" alias scan="nmap -A -p- --script=vuln"
alias_prod: |
alias prod="ssh -p {{ prod_port }} {{ prod_user }}@{{ prod_host }}"
function_clean_code: |
function clean-code {
echo -e "******* Android *******\n*** Build Caches ***"
find ~/Code/android-*/app -maxdepth 1 -type d -name "build" \
-exec du -hs {} \; -exec rm -rf {} \;
echo -e "\n*** Gradle Caches ***"
find ~/Code/android-*/ -maxdepth 1 -type d -name ".gradle" \
-exec du -hs {} \; -exec rm -rf {} \;
echo -e "\n*** Done! ***"
}
alias code-clean="clean-code"
- name: General | Account Management | Users | Files | Common Variable - name: General | Account Management | Users | Files | Common Variable
set_fact: set_fact:
@ -614,8 +596,6 @@
{{ export_hyperling }} {{ export_hyperling }}
{{ source_docker_env }} {{ source_docker_env }}
{{ alias_scan }} {{ alias_scan }}
{{ alias_prod }}
{{ function_clean_code }}
- name: General | Account Management | Users | Files | .bashrc - name: General | Account Management | Users | Files | .bashrc
blockinfile: blockinfile:

View File

@ -6,7 +6,9 @@
path: "{{ user_root.home }}/bin/scm.sh" path: "{{ user_root.home }}/bin/scm.sh"
block: | block: |
# 20210211 - Make life easier! # 20210211 - Make life easier!
time {{ ansible_pull_exec.stdout }} -U {{ git_repo_http }} git clone {{ git_repo_http }} ansible-pull
ansible-pull/setup.sh
mv ansible-pull ~/TRASH/
marker: '{mark}' marker: '{mark}'
marker_begin: "#!{{ bash_exec.stdout }}" marker_begin: "#!{{ bash_exec.stdout }}"
marker_end: "exit 0" marker_end: "exit 0"

View File

@ -6,7 +6,9 @@
path: "{{ user_user.home }}/bin/scm.sh" path: "{{ user_user.home }}/bin/scm.sh"
block: | block: |
# 20210211 - Make life easier! # 20210211 - Make life easier!
time {{ ansible_pull_exec.stdout }} -U {{ git_repo_http }} git clone {{ git_repo_http }} ansible-pull
ansible-pull/setup.sh
mv ansible-pull ~/TRASH/
marker: '{mark}' marker: '{mark}'
marker_begin: "#!{{ bash_exec.stdout }}" marker_begin: "#!{{ bash_exec.stdout }}"
marker_end: "exit 0" marker_end: "exit 0"

View File

@ -44,7 +44,7 @@
- shotcut - shotcut
- obs-studio - obs-studio
state: present state: present
when: editing in (true, "video") when: editing == true
- name: Workstation | FreeBSD | Software | Packages | Editing | Install - name: Workstation | FreeBSD | Software | Packages | Editing | Install
package: package:
@ -53,7 +53,7 @@
- shotcut - shotcut
- obs-studio - obs-studio
state: absent state: absent
when: not editing in (true, "video") when: not editing == true
# Gaming # # Gaming #

View File

@ -40,18 +40,17 @@
- { app: "org.signal.Signal", name: "signal", extra: "" } - { app: "org.signal.Signal", name: "signal", extra: "" }
- { app: "org.mozilla.firefox", name: "firefox-flatpak", extra: "" } - { app: "org.mozilla.firefox", name: "firefox-flatpak", extra: "" }
- { app: "com.transmissionbt.Transmission", name: "transmission", extra: "" } - { app: "com.transmissionbt.Transmission", name: "transmission", extra: "" }
- { app: "org.gimp.GIMP", name: "gimp", extra: "" }
flatpaks_coding: flatpaks_coding:
- { app: "com.vscodium.codium", name: "codium", extra: "" } - { app: "com.vscodium.codium", name: "codium", extra: "" }
- { app: "com.google.AndroidStudio", name: "android-studio", extra: "" } - { app: "com.google.AndroidStudio", name: "android-studio", extra: "" }
- { app: "io.dbeaver.DBeaverCommunity", name: "dbeaver", extra: "" } - { app: "io.dbeaver.DBeaverCommunity", name: "dbeaver", extra: "" }
- { app: "org.godotengine.Godot", name: "godot", extra: "" } - { app: "org.godotengine.Godot", name: "godot", extra: "" }
- { app: "com.visualstudio.code-oss", name: "code", extra: "" } - { app: "com.visualstudio.code-oss", name: "code", extra: "" }
flatpaks_editing_video: flatpaks_editing:
- { app: "org.shotcut.Shotcut", name: "shotcut", extra: "" } - { app: "org.shotcut.Shotcut", name: "shotcut", extra: "" }
- { app: "com.obsproject.Studio", name: "obs", extra: "" } - { app: "com.obsproject.Studio", name: "obs", extra: "" }
- { app: "org.gimp.GIMP", name: "gimp", extra: "" }
- { app: "org.openshot.OpenShot", name: "openshot", extra: "" } - { app: "org.openshot.OpenShot", name: "openshot", extra: "" }
flatpaks_editing_audio:
- { app: "org.tenacityaudio.Tenacity", name: "tenacity", extra: "" } - { app: "org.tenacityaudio.Tenacity", name: "tenacity", extra: "" }
- { app: "io.lmms.LMMS", name: "lmms", extra: "" } - { app: "io.lmms.LMMS", name: "lmms", extra: "" }
- { app: "net.sourceforge.VMPK", name: "vmpk", extra: "" } - { app: "net.sourceforge.VMPK", name: "vmpk", extra: "" }
@ -159,62 +158,14 @@
# Media Editors # # Media Editors #
- name: Workstation | Linux | Flatpak Distro | Flatpak | Video Editors | Installs - name: Workstation | Linux | Flatpak Distro | Flatpak | Audio/Video Editors | Installs
flatpak: flatpak:
name: "{{ item.app }}" name: "{{ item.app }}"
remote: flathub remote: flathub
state: present state: present
loop: "{{ flatpaks_editing_video }}" loop: "{{ flatpaks_editing }}"
ignore_errors: yes ignore_errors: yes
when: editing in (true, "video") when: editing == true
- name: Workstation | Linux | Flatpak Distro | Flatpak | Video Editors | Executables
blockinfile:
path: "{{ flatpak_exec_dir }}/{{ item.name }}"
block: |
{{ item.extra }} {{ flatpak_exec }} {{ item.app }}
marker: '{mark}'
marker_begin: "#!{{ bash_exec.stdout }}"
marker_end: "exit 0"
state: present
create: yes
loop: "{{ flatpaks_editing_video }}"
become_user: "{{ user }}"
when: editing in (true, "video")
- name: Workstation | Linux | Flatpak Distro | Flatpak | Video Editors | Executable Permissions
file:
path: "{{ flatpak_exec_dir }}/{{ item.name }}"
state: file
mode: '0755'
loop: "{{ flatpaks_editing_video }}"
when: editing in (true, "video")
- name: Workstation | Linux | Flatpak Distro | Flatpak | Video Editor Uninstalls
flatpak:
name: "{{ item.app }}"
remote: flathub
state: absent
loop: "{{ flatpaks_editing_video }}"
ignore_errors: yes
when: not editing in (true, "video")
- name: Workstation | Linux | Flatpak Distro | Flatpak | Video Editors | Remove Executables
file:
path: "{{ flatpak_exec_dir }}/{{ item.name }}"
state: absent
loop: "{{ flatpaks_editing_video }}"
ignore_errors: yes
when: not editing in (true, "video")
- name: Workstation | Linux | Flatpak Distro | Flatpak | Audio Editors | Installs
flatpak:
name: "{{ item.app }}"
remote: flathub
state: present
loop: "{{ flatpaks_editing_audio }}"
ignore_errors: yes
when: editing in (true, "audio")
- name: Workstation | Linux | Flatpak Distro | Flatpak | Audio/Video Editors | Executables - name: Workstation | Linux | Flatpak Distro | Flatpak | Audio/Video Editors | Executables
blockinfile: blockinfile:
@ -226,34 +177,34 @@
marker_end: "exit 0" marker_end: "exit 0"
state: present state: present
create: yes create: yes
loop: "{{ flatpaks_editing_audio }}" loop: "{{ flatpaks_editing }}"
become_user: "{{ user }}" become_user: "{{ user }}"
when: editing in (true, "audio") when: editing == true
- name: Workstation | Linux | Flatpak Distro | Flatpak | Audio/Video Editors | Executable Permissions - name: Workstation | Linux | Flatpak Distro | Flatpak | Audio/Video Editors | Executable Permissions
file: file:
path: "{{ flatpak_exec_dir }}/{{ item.name }}" path: "{{ flatpak_exec_dir }}/{{ item.name }}"
state: file state: file
mode: '0755' mode: '0755'
loop: "{{ flatpaks_editing_audio }}" loop: "{{ flatpaks_editing }}"
when: editing in (true, "audio") when: editing == true
- name: Workstation | Linux | Flatpak Distro | Flatpak | Audio/Video Editor Uninstalls - name: Workstation | Linux | Flatpak Distro | Flatpak | Audio/Video Editor Uninstalls
flatpak: flatpak:
name: "{{ item.app }}" name: "{{ item.app }}"
remote: flathub remote: flathub
state: absent state: absent
loop: "{{ flatpaks_editing_audio }}" loop: "{{ flatpaks_editing }}"
ignore_errors: yes ignore_errors: yes
when: not editing in (true, "audio") when: not editing == true
- name: Workstation | Linux | Flatpak Distro | Flatpak | Audio/Video Editors | Remove Executables - name: Workstation | Linux | Flatpak Distro | Flatpak | Audio/Video Editors | Remove Executables
file: file:
path: "{{ flatpak_exec_dir }}/{{ item.name }}" path: "{{ flatpak_exec_dir }}/{{ item.name }}"
state: absent state: absent
loop: "{{ flatpaks_editing_audio }}" loop: "{{ flatpaks_editing }}"
ignore_errors: yes ignore_errors: yes
when: not editing in (true, "audio") when: not editing == true
# Gaming # # Gaming #

View File

@ -1,152 +0,0 @@
---
# Packages specific to workstations developing Flutter apps.
## Facts ##
- name: Workstation | Linux | Software | Flutter | Facts [1/2]
set_fact:
flutter_url: "https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.27.2-stable.tar.xz"
flutter_download_file: "{{ user_user.home }}/Downloads/flutter.tar.xz"
flutter_sdk_location: "{{ user_user.home }}/SDKs/Flutter"
flutter_report: "{{ user_user.home }}/Reports/flutter.txt"
- name: Workstation | Linux | Software | Flutter | Facts [2/2]
set_fact:
flutter_bin_location: "{{ flutter_sdk_location }}/flutter/bin"
## Checks ##
- name: Workstation | Linux | Software | Flutter | Check SDK Exists
stat:
path: "{{ flutter_sdk_location }}"
register: flutter_sdk_stat
- name: Workstation | Linux | Software | Flutter | Check Download Exists
stat:
path: "{{ flutter_download_file }}"
register: flutter_download_stat
## Packages ##
- name: Workstation | Linux | Software | Flutter | Necessities
package:
name:
- curl
- git
- unzip
- xz-utils
- zip
- libglu1-mesa
state: present
when: coding == true
# https://docs.flutter.dev/get-started/install/linux/desktop
- name: Workstation | Linux | Software | Flutter | Linux App Dependencies
package:
name:
- clang
- cmake
- git
- ninja-build
- pkg-config
- libgtk-3-dev
- liblzma-dev
- libstdc++-12-dev
state: present
when: coding == true
# https://docs.flutter.dev/get-started/install/linux/android
- name: Workstation | Linux | Software | Flutter | Android App Dependencies
package:
name:
- libc6:amd64
- libstdc++6:amd64
- lib32z1
- libbz2-1.0:amd64
state: present
when: coding == true
## Install SDK ##
- name: Workstation | Linux | Software | Flutter | SDK
block:
- name: Workstation | Linux | Software | Flutter | Download SDK
get_url:
url: "{{ flutter_url }}"
dest: "{{ flutter_download_file }}"
owner: "{{ user }}"
mode: '0664'
when: not flutter_download_stat.stat.exists
- name: Workstation | Linux | Software | Flutter | Create Folder
file:
path: "{{ flutter_sdk_location }}"
state: directory
owner: "{{ user }}"
mode: '0755'
- name: Workstation | Linux | Software | Flutter | Extract SDK
unarchive:
src: "{{ flutter_download_file }}"
dest: "{{ flutter_sdk_location }}"
owner: "{{ user }}"
when: coding == true and not flutter_sdk_stat.stat.exists
- name: Workstation | Linux | Software | Flutter | Delete Archive
file:
path: "{{ flutter_download_file }}"
state: absent
## Configure Environment ##
- name: Workstation | Linux | Software | Flutter | Modify PATH (.bashrc)
blockinfile:
path: "{{ item }}/.bashrc"
block: |
export PATH="$PATH:{{ flutter_bin_location }}"
marker: '# {mark} MANAGED BY ANSIBLE | Flutter'
state: present
create: yes
backup: yes
loop:
- "{{ user_root.home }}"
- "{{ user_user.home }}"
ignore_errors: yes
when: coding == true and user_root.home != "" and user_user.home != ""
- name: Workstation | Linux | Software | Flutter | Modify PATH (.zshrc)
blockinfile:
path: "{{ item }}/.zshrc"
block: |
export PATH="$PATH:{{ flutter_bin_location }}"
marker: '# {mark} MANAGED BY ANSIBLE | Flutter'
state: present
create: yes
backup: yes
loop:
- "{{ user_root.home }}"
- "{{ user_user.home }}"
ignore_errors: yes
when: coding == true and user_root.home != "" and user_user.home != ""
## Test SDK ##
- name: Workstation | Linux | Software | Flutter | Doctor Report
shell: "{{ item }}"
loop:
- "date > {{ flutter_report }}"
- "{{ flutter_bin_location }}/flutter --disable-analytics >> {{ flutter_report }}"
- "date >> {{ flutter_report }}"
- "{{ flutter_bin_location }}/flutter doctor -v >> {{ flutter_report }}"
- "date >> {{ flutter_report }}"
when: coding == true
## Uninstall SDK ##
- name: Workstation | Linux | Software | Flutter | Remove SDK
file:
path: "{{ flutter_sdk_location }}"
state: absent
when: not coding == true

View File

@ -24,7 +24,7 @@
name: name:
- "{{ ffmpeg }}" - "{{ ffmpeg }}"
state: present state: present
when: editing in (true, "video", "audio") when: editing == true
## Other Stuff ## Other Stuff
@ -38,8 +38,6 @@
- "{{ appimagelauncher }}" - "{{ appimagelauncher }}"
- "{{ evolution }}" - "{{ evolution }}"
- "{{ evolution }}*" - "{{ evolution }}*"
- adb
- fastboot
state: present state: present
# Lutris # # Lutris #

View File

@ -22,19 +22,13 @@
status: present status: present
when: coding == true when: coding == true
- name: Workstation | Mac OS | Software | Brew | Install Packages (Editing:Video) - name: Workstation | Mac OS | Software | Brew | Install Packages (Editing)
package:
name:
- shotcut
status: present
when: editing in (true, "video")
- name: Workstation | Mac OS | Software | Brew | Install Packages (Editing:Audio)
package: package:
name: name:
- audacity - audacity
- shotcut
status: present status: present
when: editing in (true, "audio") when: editing == true
- name: Workstation | Mac OS | Software | Brew | Install Packages (Gaming) - name: Workstation | Mac OS | Software | Brew | Install Packages (Gaming)
package: package:

View File

@ -17,7 +17,6 @@
, 'org.telegram.desktop.desktop' , 'org.telegram.desktop.desktop'
, 'com.discordapp.Discord.desktop' , 'com.discordapp.Discord.desktop'
, 'com.vscodium.codium.desktop' , 'com.vscodium.codium.desktop'
, 'com.visualstudio.code-oss.desktop', 'code-oss.desktop'
, 'com.google.AndroidStudio.desktop' , 'com.google.AndroidStudio.desktop'
, 'org.shotcut.Shotcut.desktop' , 'org.shotcut.Shotcut.desktop'
, 'io.lmms.LMMS.desktop' , 'io.lmms.LMMS.desktop'
@ -34,6 +33,7 @@
#, 'org.mozilla.Thunderbird.desktop' #, 'org.mozilla.Thunderbird.desktop'
# 2025-01-01 # 2025-01-01
# Reduce the amount of icons on the sidebar, things that may get added back. # Reduce the amount of icons on the sidebar, things that may get added back.
#, 'com.visualstudio.code-oss.desktop', 'code-oss.desktop'
#, 'org.godotengine.Godot.desktop' #, 'org.godotengine.Godot.desktop'
- name: Workstation | Account Management | GNOME | Facts (NixOS) - name: Workstation | Account Management | GNOME | Facts (NixOS)