env-ansible/README.md

47 lines
1.9 KiB
Markdown
Raw Normal View History

2020-12-21 06:03:16 -06:00
# ansible
Getting real with system management via ansible-pull.
## Disclaimer
This setup is specific to the maintainer's devices and needs. You're welcome to use it as an example for your needs, but do not expect it to work as-is.
2021-07-12 20:21:57 -05:00
## Currently Supported Linux Systems
### Debian Family
#### Debian
100%, but only if using a recent enough version of Ansible. `pip` usually has a better version than `apt`.
2021-07-12 20:21:57 -05:00
#### Ubuntu
100%, both server and desktop.
2021-07-12 20:21:57 -05:00
#### Pop!_OS
100%, have not used for a while though.
2021-07-12 20:21:57 -05:00
#### Mint
100%, but not really used, just tested once for fun.
#### Parrot Security OS (MATE)
General Release (#17) * Add a few aliases for initializing projects. * Begin creating executables in bin for flatpaks. Create an array to reduce future changes. * Add quotes. * Create files as user and set executable permissions. * Split exec dir from array section. * Increase interval for Telegraf but keep the flush at 30s. * Add alias goodbye/bye, modify alias names for initializing program and video projects. * Add newline. * Add content to file to remove warning. * Use arrays for Flatpak sections. Create executable files for them. * Move sudoer files into shared folder. * First stab at automating a GitLab install. * First stab at automating DWM install. * Fix 'usr' typo. * Lowercase dwm. * Fix config play. Install font-awesome. * Add placeholder. * Add dmenu and st. * Fix typo. Hopefully also fixes ~/bin executables. * Add Signal. Remove Discord. * Remove extra line. * Add newline. * Move dbus-launch to correct app. * Fix clock minutes. * Add server for GitLab. * Change check, package was not registering anything. * Change success to failed. * Change to http. Will use reverse proxy. * Remove useless sudo. Go ahead and allow postfix to be installed. * Fix debug option "var". * Only give the out lines. Remove exit, doesn't stop the job. * Add a few games and test them on dell-laptop. * Ignore Lutris errors, Rolling Rhino doesn't like the PPA. ;) * Add goodbye for updating then quitting. * Add airbook to gaming. * Add dnf. * Fix missing underscores. * Install cronie on Fedora. * Beginning to add Fedora. * Add Fedora values. * Make font-awesome optional since it may need installed manually on some systems. * Fix typo in ignore_errors. * Allow DWM to fail, won't work for all workstations. Fedora doesn't have X11 headers. * Most dists are using python3-psutil for the psutil package name. Make it the default. * Fix firefox_esr variable. * More Fedora support. * Move installation of cron to more applicable task list. * Fic nfs-utils typo. * The font is honestly pretty important. ;) * Add Librewolf for testing vs Brave. * For some reason the other link didn't work for Fedora, add the one from flatpak's instructions. * Fedora status update. * Add games to Inspiron. * LibreWolf is amazing. Use it as default if available. * Use English rather than code for `and` and `or`. * Always have LibreWolf pinned if it's available. Brave should still be the main browser for URL-clicking compatibility. * Fix comma. * Add entry for testing Fedora Gitlab server. * Attempt to automate more of the Gitlab setup, especially the part of being behind a reverse proxy. Also add Fedora family support. * Specify the package managers for Gitlab. * Add missing bracket. * Add another missing bracket. * Fix gitlab's when clause. * Another fix for the gitlab when. * Change original gitlab install to be Community Edition. * Fix mgr typo. Create config file if it doesn't exist. * Remove duplicate `when` on Lutris uninstall. * Gitlab script gets a packagecloud.io error for Fedora. Looks like only CentOS and its derivatives are supported. * Update status of Fedora.
2021-11-07 12:40:31 -06:00
100% for a while, but OS did not serve maintainer's needs and 404 errors were terrible while updating. Ubuntu Rolling Rhino filled the gap.
2021-07-12 20:21:57 -05:00
### Arch Family
#### Manjaro
100% at some point.
2021-07-12 20:21:57 -05:00
General Release (#17) * Add a few aliases for initializing projects. * Begin creating executables in bin for flatpaks. Create an array to reduce future changes. * Add quotes. * Create files as user and set executable permissions. * Split exec dir from array section. * Increase interval for Telegraf but keep the flush at 30s. * Add alias goodbye/bye, modify alias names for initializing program and video projects. * Add newline. * Add content to file to remove warning. * Use arrays for Flatpak sections. Create executable files for them. * Move sudoer files into shared folder. * First stab at automating a GitLab install. * First stab at automating DWM install. * Fix 'usr' typo. * Lowercase dwm. * Fix config play. Install font-awesome. * Add placeholder. * Add dmenu and st. * Fix typo. Hopefully also fixes ~/bin executables. * Add Signal. Remove Discord. * Remove extra line. * Add newline. * Move dbus-launch to correct app. * Fix clock minutes. * Add server for GitLab. * Change check, package was not registering anything. * Change success to failed. * Change to http. Will use reverse proxy. * Remove useless sudo. Go ahead and allow postfix to be installed. * Fix debug option "var". * Only give the out lines. Remove exit, doesn't stop the job. * Add a few games and test them on dell-laptop. * Ignore Lutris errors, Rolling Rhino doesn't like the PPA. ;) * Add goodbye for updating then quitting. * Add airbook to gaming. * Add dnf. * Fix missing underscores. * Install cronie on Fedora. * Beginning to add Fedora. * Add Fedora values. * Make font-awesome optional since it may need installed manually on some systems. * Fix typo in ignore_errors. * Allow DWM to fail, won't work for all workstations. Fedora doesn't have X11 headers. * Most dists are using python3-psutil for the psutil package name. Make it the default. * Fix firefox_esr variable. * More Fedora support. * Move installation of cron to more applicable task list. * Fic nfs-utils typo. * The font is honestly pretty important. ;) * Add Librewolf for testing vs Brave. * For some reason the other link didn't work for Fedora, add the one from flatpak's instructions. * Fedora status update. * Add games to Inspiron. * LibreWolf is amazing. Use it as default if available. * Use English rather than code for `and` and `or`. * Always have LibreWolf pinned if it's available. Brave should still be the main browser for URL-clicking compatibility. * Fix comma. * Add entry for testing Fedora Gitlab server. * Attempt to automate more of the Gitlab setup, especially the part of being behind a reverse proxy. Also add Fedora family support. * Specify the package managers for Gitlab. * Add missing bracket. * Add another missing bracket. * Fix gitlab's when clause. * Another fix for the gitlab when. * Change original gitlab install to be Community Edition. * Fix mgr typo. Create config file if it doesn't exist. * Remove duplicate `when` on Lutris uninstall. * Gitlab script gets a packagecloud.io error for Fedora. Looks like only CentOS and its derivatives are supported. * Update status of Fedora.
2021-11-07 12:40:31 -06:00
### Fedora Family
#### Fedora 35
Workstation: 100%
Server: 100%
2021-07-12 20:21:57 -05:00
## Currently Supported Unix Systems
Add initial HUGO support, FreeBSD 13 support, and script for Ansible to hit dev branch. (#4) * Create HUGO file. * Add HUGO. * Add script for running system against development branch. * Add newline to end of file. * Comment unused blocks. * Add path of site that HUGO should host. * Newlines, comments, and HUGO path. (#2) (#3) * Create HUGO file. * Add HUGO. * Add script for running system against development branch. * Add newline to end of file. * Comment unused blocks. * Add path of site that HUGO should host. * FreeBSD is complaining about certbot not having dict object stdout. This whole playbook is supposed to be skipped though, lol. * FreeBSD 13 is still mad. Ansible 2.11.2, jinja 2.11.2 (same version number??), Python 3.8.10. * Fix root group to be existing variable. FreeBSD uses wheel. * Allow choosing Github branch dynamically. * `branch` needs to be at General level. Testing if this works... * Change other `localhost` to `everything`. * Update FreeBSD status. * Goodbye, Code-OSS on Linux! * Delete a terrible file. * Remove excess tag. * "Fix" SSHFS for FreeBSD. * Variablize FreeBSD's loading of fusefs. * Variablize /etc/rc.conf. Enable FuseFS more properly. * Add beginning ticks. * Add missing playbook. * Enable FreeBSD mount job. * Rearrange items to be more consistent with comment. * It seems FreeBSD removed the `gnome3` metapackage. Use `gnome3-lite` instead. Also add Telegram. * Python is to 3.8 now. * Expand on FreeBSD work. * Expand on FreeBSD work. * Add placeholders for Gitlab. * Add parameter for Gitlab install. * Add Gitlab playbook. * Ensure FreeBSD uses the correct Python install. * Add newline. * Fix NFS for FreeBSD workstations. * Remove unnecessary line, restricted install to Linux in playbook. * Fix mount options for FreeBSD. * Fix mount number, as well as system-specific facts. * Add placeholders for remote viewing. * Add RDP for FreeBSD. * Omg! It works! Add setting enforcement. * Always remove OSS. * Remove hosts from explicit dev testing.
2021-07-19 07:07:03 -05:00
### FreeBSD 12, 13
100%, although GUI is not working completely on 13 yet (dash-to-dock doesn't compile).
Add initial HUGO support, FreeBSD 13 support, and script for Ansible to hit dev branch. (#4) * Create HUGO file. * Add HUGO. * Add script for running system against development branch. * Add newline to end of file. * Comment unused blocks. * Add path of site that HUGO should host. * Newlines, comments, and HUGO path. (#2) (#3) * Create HUGO file. * Add HUGO. * Add script for running system against development branch. * Add newline to end of file. * Comment unused blocks. * Add path of site that HUGO should host. * FreeBSD is complaining about certbot not having dict object stdout. This whole playbook is supposed to be skipped though, lol. * FreeBSD 13 is still mad. Ansible 2.11.2, jinja 2.11.2 (same version number??), Python 3.8.10. * Fix root group to be existing variable. FreeBSD uses wheel. * Allow choosing Github branch dynamically. * `branch` needs to be at General level. Testing if this works... * Change other `localhost` to `everything`. * Update FreeBSD status. * Goodbye, Code-OSS on Linux! * Delete a terrible file. * Remove excess tag. * "Fix" SSHFS for FreeBSD. * Variablize FreeBSD's loading of fusefs. * Variablize /etc/rc.conf. Enable FuseFS more properly. * Add beginning ticks. * Add missing playbook. * Enable FreeBSD mount job. * Rearrange items to be more consistent with comment. * It seems FreeBSD removed the `gnome3` metapackage. Use `gnome3-lite` instead. Also add Telegram. * Python is to 3.8 now. * Expand on FreeBSD work. * Expand on FreeBSD work. * Add placeholders for Gitlab. * Add parameter for Gitlab install. * Add Gitlab playbook. * Ensure FreeBSD uses the correct Python install. * Add newline. * Fix NFS for FreeBSD workstations. * Remove unnecessary line, restricted install to Linux in playbook. * Fix mount options for FreeBSD. * Fix mount number, as well as system-specific facts. * Add placeholders for remote viewing. * Add RDP for FreeBSD. * Omg! It works! Add setting enforcement. * Always remove OSS. * Remove hosts from explicit dev testing.
2021-07-19 07:07:03 -05:00
Software choices are slightly more limited since not `flatpak`-enabled and not feeling a `ports` setup.
2021-07-12 20:21:57 -05:00
## Waiting To Be Tested
### Kali Linux
### Arch Linux ARM
Specifically for the Pinephone.
### Arch Linux x86
Would be great to have Arch get built up by this. Used for many years but left after update problems due to a long computer hiatus.
## Future Goals
Make the preferred user's name per-device, specified in the hosts file, rather than the hard-coded `ling`.
2021-07-12 20:37:02 -05:00
Eventually some of the scripts and install files will be put into the files folder. This will allow initializing systems outside of the maintainer's home network.
2021-07-12 20:37:02 -05:00
There may also be a refactor of task-specific facts to be in their task file so that some playbooks can be more self-sufficient and be provided to the community without hacking. The original goal was to never define facts in tasks, but the benefit has yet to be seen for some tasks. Shared facts will definitely continue to exist under the facts tree.