Compare commits

...

22 Commits

Author SHA1 Message Date
ed2535b802 Disable the notifications on Wellbeing more properly. 2026-04-30 19:42:51 -07:00
fb140bea72 Disable breaks from Wellbeing, still seems to be in development, activates when laptop is locked, pop-ups do not always do their action buttons properly, and generally just annoying at this point. 2026-04-30 13:54:25 -07:00
33ef2544dc Increment Debian version for Lutris. 2026-04-30 06:49:07 -07:00
4b8f122376 Deprecate trash related code. 2026-04-25 10:33:31 -07:00
df6dc122f2 Remove uninstall of packages also listed in additional section at every run. 2026-04-25 08:55:34 -07:00
b765c5cdae Rather than overwrite the Android SDKs every run, only do them if they are not listed. update-sdk function can update these manually rather than wasting bandwidth through Ansible. 2026-04-25 08:53:12 -07:00
3629d24b1b Remove the countdown since it blocks screen real estate and does not allow starting the break early. 2026-04-25 08:30:33 -07:00
9339b24808 Add flatpak for Organic Maps. 2026-04-24 08:50:17 -07:00
5e8d188871 Add exporting of all functions, same as done in env-shared. 2026-04-13 19:28:41 -07:00
4fd3e43e0d Add unofficial flatpak for Anki Desktop. 2026-04-11 18:37:59 -07:00
d8bc4a66cf Move log functions to shared. 2026-04-10 13:11:23 -07:00
30f9aff49e Stop killing bluetooth service. 2026-04-06 19:23:34 -07:00
190b3d921b Change settings to all be true since did not get any reminders after these changes. 2026-04-06 18:58:30 -07:00
11632e72d7 Tweak the Wellbeing settings a bit more. 2026-04-06 15:38:27 -07:00
fa0ea0098e Only do the metasploit activities if it is not already installed. 2026-04-06 15:24:33 -07:00
579764ca76 Add a TBD for not reinstalling metasploit every run (will save time and bandwidth). 2026-04-06 15:16:57 -07:00
51b3161124 Add the cron jobs to shutdown automatically at night, but debating whether it's a good idea. 2026-04-01 20:20:35 -07:00
18a1defd65 Add Brave Browser for using WDP. Session seems to have worked itself out, remove TBD. 2026-03-31 16:47:41 -07:00
f7ac9cc7e7 Add gnome-boxes for development systems. 2026-03-30 11:01:48 -07:00
c40019a72d Use the vimrc from env-shared. 2026-03-28 16:25:37 -07:00
2d1f720578 Move now and today t shared env. 2026-03-28 14:24:21 -07:00
119b8aa669 Move scan to be in shared env. 2026-03-28 14:18:54 -07:00
8 changed files with 123 additions and 67 deletions

View File

@@ -330,7 +330,7 @@
alias trashed-cleanup="clean-trashed" alias trashed-cleanup="clean-trashed"
alias trashed-clean="clean-trashed" alias trashed-clean="clean-trashed"
function_check_trash: | function_check_trash: |
function check-trash() { function check-trash-old() {
unset OPTIND unset OPTIND
unset clean unset clean
unset network unset network
@@ -430,9 +430,9 @@
return 0 return 0
} }
alias check_trash="check-trash" alias check_trash="check-trash"
alias_clean_trash: alias clean-trash='check-trash --clean' alias_trash_check: alias trash-check='check-trash-old'
alias_trash_check: alias trash-check='check-trash' alias_clean_trash: alias clean-trash='check-trash-old --clean'
alias_trash_clean: alias trash-clean='trash-check --clean' alias_trash_clean: alias trash-clean='clean-trash'
alias_clean_dir: | alias_clean_dir: |
function clean-dir() { function clean-dir() {
sudo du -hs sudo du -hs
@@ -728,8 +728,6 @@
if [[ -e $DOCKER_SOURCE && $LOGNAME == "root" ]]; then if [[ -e $DOCKER_SOURCE && $LOGNAME == "root" ]]; then
source $DOCKER_SOURCE source $DOCKER_SOURCE
fi fi
alias_scan: |
alias scan="nmap -A -p- --script=vuln"
export_prod: export_prod:
export PROD_HOST="{{ prod_host }}" export PROD_HOST="{{ prod_host }}"
export PROD_PORT="{{ prod_port }}" export PROD_PORT="{{ prod_port }}"
@@ -829,13 +827,6 @@
alias nethogs='sudo nethogs' alias nethogs='sudo nethogs'
alias_ansible_facts: | alias_ansible_facts: |
alias ansible-facts='ansible localhost -m setup --connection=local' alias ansible-facts='ansible localhost -m setup --connection=local'
function_now: |
function now {
date "+%Y%m%d-%H%M%S"
}
function today {
date "+%Y%m%d"
}
function_backup: | function_backup: |
export BACKUP_DIR="/srv/backup" export BACKUP_DIR="/srv/backup"
function backup { function backup {
@@ -901,13 +892,6 @@
alias prod-backup="pull_prod_backups" alias prod-backup="pull_prod_backups"
alias pull-prod="pull_prod_backups" alias pull-prod="pull_prod_backups"
alias prod-pull="pull_prod_backups" alias prod-pull="pull_prod_backups"
function_log: |
function log {
echo -e "$1"
}
function blog {
echo -e "\n\n$1\n\n"
}
function_debian_upgrade: | function_debian_upgrade: |
function debian-upgrade { function debian-upgrade {
typeset -l OLD NEW typeset -l OLD NEW
@@ -1172,7 +1156,6 @@
{{ function_clean_filenames_tree }} {{ function_clean_filenames_tree }}
{{ export_hyperling }} {{ export_hyperling }}
{{ source_docker_env }} {{ source_docker_env }}
{{ alias_scan }}
{{ export_prod }} {{ export_prod }}
{{ alias_prod }} {{ alias_prod }}
{{ function_clean_code }} {{ function_clean_code }}
@@ -1185,10 +1168,8 @@
{{ alias_progs }} {{ alias_progs }}
{{ alias_nethogs }} {{ alias_nethogs }}
{{ alias_ansible_facts }} {{ alias_ansible_facts }}
{{ function_now }}
{{ function_backup }} {{ function_backup }}
{{ function_pull_prod_backups }} {{ function_pull_prod_backups }}
{{ function_log }}
{{ function_debian_upgrade }} {{ function_debian_upgrade }}
{{ function_ebook_convert }} {{ function_ebook_convert }}
{{ alias_sudo }} {{ alias_sudo }}
@@ -1206,6 +1187,10 @@
path: "{{ item }}/.bashrc" path: "{{ item }}/.bashrc"
block: | block: |
{{ rc_common }} {{ rc_common }}
# Export all functions! #
eval "$(declare -F | grep -v _ | sed 's/-f /-fx /')"
[[ $(whoami) != "root" ]] && [[ $(whoami) != "root" ]] &&
echo "`date` - Ansible .bashrc loaded successfully!" echo "`date` - Ansible .bashrc loaded successfully!"
marker: '# {mark} MANAGED BY ANSIBLE | Aliases' marker: '# {mark} MANAGED BY ANSIBLE | Aliases'
@@ -1235,31 +1220,6 @@
ignore_errors: yes ignore_errors: yes
when: user_root.home != "" and user_user.home != "" when: user_root.home != "" and user_user.home != ""
- name: General | Account Management | Users | Files | .vimrc
blockinfile:
path: "{{ item }}/.vimrc"
block: |
" Turn off syntax, flashy lights, etc. Make VIM into a basic editor.
syntax off
set nohlsearch
set noautoindent noautowrite noshowmatch wrapmargin=0 report=1 ts=3
set ignorecase
" Turn off auto-commenting.
autocmd Filetype * set fo-=c fo-=r fo-=o
" qq shortcut for immediately exiting all files without saving.
nnoremap qq :qa!<cr>
marker: '" {mark} MANAGED BY ANSIBLE | vimrc'
state: present
create: yes
backup: yes
loop:
- "{{ user_root.home }}"
- "{{ user_user.home }}"
ignore_errors: yes
when: user_root.home != "" and user_user.home != ""
- name: General | Account Management | Users | Files | Ownership - name: General | Account Management | Users | Files | Ownership
file: file:
path: "{{ user_user.home }}/{{ item }}" path: "{{ user_user.home }}/{{ item }}"
@@ -1268,7 +1228,6 @@
loop: loop:
- .bashrc - .bashrc
- .zshrc - .zshrc
- .vimrc
- name: General | Account Management | Users | Files | Helper Functions (Reset) - name: General | Account Management | Users | Files | Helper Functions (Reset)
@@ -1296,7 +1255,7 @@
update: true update: true
ignore_errors: yes ignore_errors: yes
- name: General | Account Management | Users | env-shared | Install | rc_shared - name: General | Account Management | Users | env-shared | Install | .rc_shared
copy: copy:
src: "{{ shared_rc_install_dir }}/rc_shared.sh" src: "{{ shared_rc_install_dir }}/rc_shared.sh"
dest: "{{ item }}/.rc_shared" dest: "{{ item }}/.rc_shared"
@@ -1309,6 +1268,19 @@
ignore_errors: yes ignore_errors: yes
when: user_root.home != "" and user_user.home != "" when: user_root.home != "" and user_user.home != ""
- name: General | Account Management | Users | env-shared | Install | .vimrc
copy:
src: "{{ shared_rc_install_dir }}/vimrc.vim"
dest: "{{ item }}/.vimrc"
owner: root
group: "{{ root_group }}"
mode: 0755
loop:
- "{{ user_root.home }}"
- "{{ user_user.home }}"
ignore_errors: yes
when: user_root.home != "" and user_user.home != ""
- name: General | Account Management | Users | env-shared | Permissions - name: General | Account Management | Users | env-shared | Permissions
file: file:
path: "{{ user_user.home }}/{{ item }}" path: "{{ user_user.home }}/{{ item }}"
@@ -1316,4 +1288,5 @@
mode: '0755' mode: '0755'
loop: loop:
- .rc_shared - .rc_shared
- .vimrc
ignore_errors: yes ignore_errors: yes

View File

@@ -6,6 +6,11 @@
metasploit_installer: msfinstall metasploit_installer: msfinstall
when: ansible_system in ("Linux", "Darwin") when: ansible_system in ("Linux", "Darwin")
- name: General | Software | Metasploit | Check Install Status
stat:
path: /usr/bin/msfconsole
register: metasploit_status
- name: General | Software | Metasploit | Refresh Apt Files - name: General | Software | Metasploit | Refresh Apt Files
shell: "{{ item }}" shell: "{{ item }}"
loop: loop:
@@ -13,7 +18,8 @@
- "mv -fv /usr/share/keyrings/metasploit-framework.gpg /tmp/apt/metasploit-framework.gpg.old" - "mv -fv /usr/share/keyrings/metasploit-framework.gpg /tmp/apt/metasploit-framework.gpg.old"
- "mv -fv /etc/apt/sources.list.d/metasploit-framework.list /tmp/apt/metasploit-framework.list.old" - "mv -fv /etc/apt/sources.list.d/metasploit-framework.list /tmp/apt/metasploit-framework.list.old"
- "mv -fv /etc/apt/preferences.d/pin-metasploit.pref /tmp/apt/pin-metasploit.pref.old" - "mv -fv /etc/apt/preferences.d/pin-metasploit.pref /tmp/apt/pin-metasploit.pref.old"
when: ansible_system in ("Linux") when: ansible_system in ("Linux") and
not metasploit_status.stat.exists
ignore_errors: true ignore_errors: true
- name: General | Software | Metasploit | Install - name: General | Software | Metasploit | Install
@@ -24,4 +30,5 @@
- "mkdir -p {{ global_bin }}" - "mkdir -p {{ global_bin }}"
- "mv -fv ./msfinstall {{ global_bin }}/{{ metasploit_installer }}" - "mv -fv ./msfinstall {{ global_bin }}/{{ metasploit_installer }}"
- yes y | "{{ global_bin }}/{{ metasploit_installer }}" - yes y | "{{ global_bin }}/{{ metasploit_installer }}"
when: ansible_system in ("Linux", "Darwin") when: ansible_system in ("Linux", "Darwin") and
not metasploit_status.stat.exists

View File

@@ -98,14 +98,15 @@
## Bluetooth ## ## Bluetooth ##
# Do people seriously depend on Bluetooth? Plug your devices in, silly! # Do people seriously depend on Bluetooth? Plug your devices in, silly!
# Hehe, I use it now for a few rare things so disabling this for now.
- name: General | Software | Services | Bluetooth | Disable #- name: General | Software | Services | Bluetooth | Disable
service: # service:
name: "{{ bluetooth }}" # name: "{{ bluetooth }}"
pattern: "{{ bluetooth_pattern }}" # pattern: "{{ bluetooth_pattern }}"
state: stopped # state: stopped
enabled: no # enabled: no
ignore_errors: yes # ignore_errors: yes
## NTP ## ## NTP ##

View File

@@ -126,8 +126,6 @@
- system-images;android-35;google_apis_playstore;x86_64 - system-images;android-35;google_apis_playstore;x86_64
### 34 ### ### 34 ###
- build-tools;34.0.0 - build-tools;34.0.0
- platforms;android-34
- sources;android-34
# Images # Images
- system-images;android-34;google_apis;x86_64 - system-images;android-34;google_apis;x86_64
- system-images;android-34;google_apis_playstore;x86_64 - system-images;android-34;google_apis_playstore;x86_64
@@ -243,14 +241,20 @@
# These are safe to run multiple times, and uses the new `latest` version. # These are safe to run multiple times, and uses the new `latest` version.
- name: Workstation | Linux | Software | Android | Install | Required Modules - name: Workstation | Linux | Software | Android | Install | Required Modules
shell: "yes | {{ android_sdkmanager_final }} --install '{{ item }}' --sdk_root={{ android_sdk_location }}" shell: |
if ! {{ android_sdkmanager_final }} --list_installed | grep -q '{{ item }}'; then
yes | {{ android_sdkmanager_final }} --install '{{ item }}' --sdk_root={{ android_sdk_location }}
fi
loop: "{{ android_downloads_required }}" loop: "{{ android_downloads_required }}"
become_user: "{{ user }}" become_user: "{{ user }}"
when: coding == true when: coding == true
# Add more versions for testing across all the important platforms. # Add more versions for testing across all the important platforms.
- name: Workstation | Linux | Software | Android | Install | Additional Modules - name: Workstation | Linux | Software | Android | Install | Additional Modules
shell: "yes | {{ android_sdkmanager_final }} --install '{{ item }}' --sdk_root={{ android_sdk_location }}" shell: |
if ! {{ android_sdkmanager_final }} --list_installed | grep -q '{{ item }}'; then
yes | {{ android_sdkmanager_final }} --install '{{ item }}' --sdk_root={{ android_sdk_location }}
fi
loop: "{{ android_downloads_additional }}" loop: "{{ android_downloads_additional }}"
become_user: "{{ user }}" become_user: "{{ user }}"
when: coding == true and sdks == true when: coding == true and sdks == true

View File

@@ -44,12 +44,16 @@
- { app: "com.transmissionbt.Transmission", name: "transmission", extra: "" } - { app: "com.transmissionbt.Transmission", name: "transmission", extra: "" }
- { app: "app.grayjay.Grayjay", name: "grayjay", extra: "" } - { app: "app.grayjay.Grayjay", name: "grayjay", extra: "" }
- { app: "com.github.xournalpp.xournalpp", name: "xournal", extra: "" } - { app: "com.github.xournalpp.xournalpp", name: "xournal", extra: "" }
- { app: "network.loki.Session", name: "session", extra: "" } # TBD: Needs run like "flatpak run --socket=wayland network.loki.Session" on some systems. - { app: "network.loki.Session", name: "session", extra: "" }
- { app: "com.brave.Browser", name: "brave", extra: "" }
- { app: "net.ankiweb.Anki", name: "anki", extra: "" }
- { app: "app.organicmaps.desktop", name: "organic-maps", extra: "" }
flatpaks_coding: flatpaks_coding:
- { app: "com.vscodium.codium", name: "codium-flatpak", extra: "" } - { app: "com.vscodium.codium", name: "codium-flatpak", 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: "com.visualstudio.code-oss", name: "code-flatpak", extra: "" } - { app: "com.visualstudio.code-oss", name: "code-flatpak", extra: "" }
- { app: "org.gnome.Boxes", name: "boxes", extra: "" }
flatpaks_editing_video: flatpaks_editing_video:
- { 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: "" }

View File

@@ -34,10 +34,10 @@
- name: Workstation | Linux | Software | Lutris | Add PPA (Debian) - name: Workstation | Linux | Software | Lutris | Add PPA (Debian)
shell: "{{ item }}" shell: "{{ item }}"
loop: loop:
- "wget -q -O- https://download.opensuse.org/repositories/home:/strycore/Debian_12/Release.key \ - "wget -q -O- https://download.opensuse.org/repositories/home:/strycore/Debian_13/Release.key \
| gpg --dearmor \ | gpg --dearmor \
| sudo tee {{ lutris_keyfile }} > /dev/null" | sudo tee {{ lutris_keyfile }} > /dev/null"
- "echo 'deb [signed-by={{ lutris_keyfile }}] https://download.opensuse.org/repositories/home:/strycore/Debian_12/ ./' \ - "echo 'deb [signed-by={{ lutris_keyfile }}] https://download.opensuse.org/repositories/home:/strycore/Debian_13/ ./' \
| sudo tee {{ lutris_source_list }} > /dev/null" | sudo tee {{ lutris_source_list }} > /dev/null"
- "sudo apt update" - "sudo apt update"
when: ansible_distribution in ("Debian") and gaming == true and not lutris_source_exists.stat.exists when: ansible_distribution in ("Debian") and gaming == true and not lutris_source_exists.stat.exists

View File

@@ -0,0 +1,21 @@
# TBD:
# - Decide whether this should be added to local.yml since wall does not work with gnome-terminal.
---
- name: Workstation | Shared | Cron | Root | Shutdown Warnings
cron:
user: root
name: "Shutdown Warnings"
minute: "*"
hour: "19-23"
job: /usr/bin/wall "Shutting down soon! Please save your work!" && /usr/sbin/shutdown --show
state: present
- name: Workstation | Shared | Cron | Root | Shutdown
cron:
user: root
name: "Shutdown"
minute: "*/5"
hour: "20-23"
job: /usr/sbin/shutdown -h 4
state: present

View File

@@ -289,14 +289,60 @@
true && inc_dconf && true && inc_dconf &&
dconf write /org/gnome/desktop/screen-time-limits/daily-limit-seconds \ dconf write /org/gnome/desktop/screen-time-limits/daily-limit-seconds \
"uint32 21600" && inc_dconf && "uint32 21600" && inc_dconf &&
dconf write /org/gnome/desktop/screen-time-limits/grayscale \
true && inc_dconf &&
dconf write /org/gnome/desktop/screen-time-limits/history-enabled \
true && inc_dconf &&
#dconf write /org/gnome/desktop/break-reminders/selected-breaks \
# "['eyesight', 'movement']" && inc_dconf &&
#dconf write /org/gnome/desktop/break-reminders/selected-breaks \
# "['movement']" && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/selected-breaks \ dconf write /org/gnome/desktop/break-reminders/selected-breaks \
"['eyesight', 'movement']" && inc_dconf && "@as []" && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/eyesight/duration-seconds \
"uint32 180" && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/eyesight/interval-seconds \
"uint32 1800" && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/eyesight/countdown \
false && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/eyesight/delay-seconds \
"uint32 180" && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/eyesight/fade-screen \
true && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/eyesight/notify \
false && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/eyesight/notify-overdue \
false && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/eyesight/notify-upcoming \
false && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/eyesight/play-sound \
false && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/eyesight/interval-seconds \
"uint32 1800" && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/movement/duration-seconds \ dconf write /org/gnome/desktop/break-reminders/movement/duration-seconds \
"uint32 180" && inc_dconf && "uint32 180" && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/movement/interval-seconds \ dconf write /org/gnome/desktop/break-reminders/movement/interval-seconds \
"uint32 1800" && inc_dconf && "uint32 1800" && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/movement/countdown \
false && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/movement/delay-seconds \
"uint32 60" && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/movement/fade-screen \
false && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/movement/notify \
false && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/movement/notify-overdue \
false && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/movement/notify-upcoming \
false && inc_dconf &&
dconf write /org/gnome/desktop/break-reminders/movement/play-sound \
false && inc_dconf &&
## Success ## ## Success ##
sleep 0 || sleep 0 ||