Compare commits

...

7 Commits

42 changed files with 338 additions and 142 deletions

View File

@ -1,12 +0,0 @@
.PHONY: install deinstall refresh
install:
$(MAKE) -C docs html $(MAKEFLAGS)
$(MAKE) -C docs install $(MAKEFLAGS)
deinstall:
$(MAKE) -C docs clean $(MAKEFLAGS)
refresh:
$(MAKE) -C docs clean $(MAKEFLAGS)
$(MAKE) -C docs html $(MAKEFLAGS)

View File

@ -166,6 +166,12 @@ defaults_applications:
css_enabled: "{{css_enabled_default}}" # Enables\Disables Global CSS Style css_enabled: "{{css_enabled_default}}" # Enables\Disables Global CSS Style
landingpage_iframe_enabled: "{{landingpage_iframe_enabled_default}}" # Enables\Disables the possibility to embed this on landing page via iframe landingpage_iframe_enabled: "{{landingpage_iframe_enabled_default}}" # Enables\Disables the possibility to embed this on landing page via iframe
## Gnome
gnome:
plugins:
- [enable,nasa_apod@elinvention.ovh,https://github.com/Elinvention/gnome-shell-extension-nasa-apod.git]
- [disable,dash-to-dock@micxgx.gmail.com,'']
## Joomla ## Joomla
joomla: joomla:
version: "latest" version: "latest"

View File

@ -9,7 +9,7 @@ def run_ansible_vault(action, filename, password_file):
cmd = ["ansible-vault", action, filename, "--vault-password-file", password_file] cmd = ["ansible-vault", action, filename, "--vault-password-file", password_file]
subprocess.run(cmd, check=True) subprocess.run(cmd, check=True)
def run_ansible_playbook(inventory:str, playbook:str, modes:[bool], limit:str=None, password_file:str=None, verbose:bool=False): def run_ansible_playbook(inventory: str, playbook: str, modes: dict, limit: str = None, password_file: str = None, verbose: int = 0):
"""Execute an ansible-playbook command with optional parameters.""" """Execute an ansible-playbook command with optional parameters."""
cmd = ["ansible-playbook", "-i", inventory, playbook] cmd = ["ansible-playbook", "-i", inventory, playbook]
@ -28,7 +28,8 @@ def run_ansible_playbook(inventory:str, playbook:str, modes:[bool], limit:str=No
cmd.extend(["--ask-vault-pass"]) cmd.extend(["--ask-vault-pass"])
if verbose: if verbose:
cmd.append("-v") # Append a single flag with multiple "v"s (e.g. -vvv)
cmd.append("-" + "v" * verbose)
subprocess.run(cmd, check=True) subprocess.run(cmd, check=True)
@ -59,7 +60,9 @@ def main():
playbook_parser.add_argument("--cleanup", action="store_true", help="Enable cleanup mode") playbook_parser.add_argument("--cleanup", action="store_true", help="Enable cleanup mode")
playbook_parser.add_argument("--debug", action="store_true", help="Enable debugging output") playbook_parser.add_argument("--debug", action="store_true", help="Enable debugging output")
playbook_parser.add_argument("--password-file", help="Path to the Vault password file") playbook_parser.add_argument("--password-file", help="Path to the Vault password file")
playbook_parser.add_argument("-v", "--verbose", action="store_true", help="Enable verbose output") playbook_parser.add_argument("-v", "--verbose", action="count", default=0,
help=("Increase verbosity. This option can be specified multiple times "
"to increase the verbosity level (e.g., -vvv for more detailed debug output)."))
args = parser.parse_args() args = parser.parse_args()

View File

@ -1,6 +1,6 @@
- name: install directory-validator - name: install directory-validator
command: command:
cmd: "pkgmgr install directory-validator" cmd: "pkgmgr install directory-validator --clone-mode https"
when: run_once_backup_directory_validator is not defined when: run_once_backup_directory_validator is not defined
- name: run the backup_directory_validator tasks once - name: run the backup_directory_validator tasks once

View File

@ -1,6 +1,6 @@
- name: install backup-docker-to-local - name: install backup-docker-to-local
command: command:
cmd: "pkgmgr install backup-docker-to-local" cmd: "pkgmgr install backup-docker-to-local --clone-mode https"
when: run_once_backup_docker_to_local is not defined when: run_once_backup_docker_to_local is not defined
- name: Retrieve backup-docker-to-local path from pkgmgr - name: Retrieve backup-docker-to-local path from pkgmgr

View File

@ -1,6 +1,6 @@
- name: install cleanup-failed-docker-backups - name: install cleanup-failed-docker-backups
command: command:
cmd: "pkgmgr install cleanup-failed-docker-backups" cmd: "pkgmgr install cleanup-failed-docker-backups --clone-mode https"
when: run_once_cleanup_failed_docker_backups is not defined when: run_once_cleanup_failed_docker_backups is not defined
- name: Retrieve backup-docker-to-local path from pkgmgr - name: Retrieve backup-docker-to-local path from pkgmgr

24
roles/fakeroot/README.md Normal file
View File

@ -0,0 +1,24 @@
# Fakeroot
## Description
This Ansible role installs **fakeroot** on Arch Linux systems using the Pacman package manager. Fakeroot enables non-privileged users to simulate root-level file manipulations—ideal for building packages or performing file operations that normally require root permissions.
Learn more about fakeroot on [Wikipedia](https://en.wikipedia.org/wiki/Fakeroot) and check out its details on the [Arch Linux Package Repository](https://archlinux.org/packages/?q=fakeroot).
## Purpose
The purpose of this role is to automate the installation of fakeroot so that users can simulate superuser operations without requiring elevated privileges. This is particularly useful in development environments and during package building processes.
## Features
- **Automated Installation:** Uses Pacman to install fakeroot.
- **Idempotent Execution:** Ensures that fakeroot is installed and remains up to date.
- **Simplified Setup:** Minimizes manual installation steps for environments where fakeroot is required.
## Credits
Developed and maintained by **Kevin Veen-Birkenbach**.
Learn more at [www.veen.world](https://www.veen.world)
License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)

View File

@ -0,0 +1,21 @@
---
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Installs fakeroot on Arch Linux using Pacman, enabling non-privileged file manipulations required for package building and development."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Archlinux
versions:
- rolling
galaxy_tags:
- fakeroot
- pacman
- archlinux
- development
dependencies: []

View File

@ -0,0 +1,11 @@
---
- name: Install fakeroot
pacman:
name: fakeroot
state: present
when: run_once_fakeroot is not defined
- name: run the fakeroot tasks once
set_fact:
run_once_fakeroot: true
when: run_once_fakeroot is not defined

28
roles/make/README.md Normal file
View File

@ -0,0 +1,28 @@
# Make Installation
## Description
This Ansible role installs GNU Make on Arch Linux systems using the Pacman package manager. GNU Make is a build automation tool that automatically builds executable programs and libraries from source code by reading files called Makefiles.
Learn more about GNU Make on the [GNU Make Homepage](https://www.gnu.org/software/make/).
## Overview
This role ensures that GNU Make is installed on the target system. It is intended for environments where automated build processes or custom software compilation are required.
## Purpose
The purpose of this role is to provide an automated, idempotent installation of GNU Make, ensuring that the tool is available system-wide for building software. It is ideal for developers and system administrators who require a reliable build system.
## Features
- **Installs GNU Make:** Uses Pacman to install the `make` package.
- **Idempotent Execution:** Ensures that Make is installed only once.
- **System-Wide Availability:** Makes GNU Make available for all users on the system.
## Credits 📝
Developed and maintained by **Kevin Veen-Birkenbach**.
Learn more at [www.veen.world](https://www.veen.world)
License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)

20
roles/make/meta/main.yml Normal file
View File

@ -0,0 +1,20 @@
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Installs GNU Make using the Pacman package manager on Arch Linux systems."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Archlinux
versions:
- rolling
galaxy_tags:
- make
- build
- automation
- archlinux
dependencies: []

View File

@ -0,0 +1,4 @@
- name: install make
pacman:
name: make
state: present

View File

@ -34,3 +34,4 @@ galaxy_info:
documentation: https://github.com/kevinveenbirkenbach/package-manager documentation: https://github.com/kevinveenbirkenbach/package-manager
dependencies: dependencies:
- git - git
- make

View File

@ -1,4 +1,11 @@
--- ---
- name: Ensure GitHub host key is in known_hosts
known_hosts:
path: "~/.ssh/known_hosts"
name: github.com
key: "{{ lookup('pipe', 'ssh-keyscan -t ed25519 github.com | grep -v \"^#\"') }}"
become: yes
- name: Create installation directory for Kevin's Package Manager - name: Create installation directory for Kevin's Package Manager
file: file:
path: "{{ pkgmgr_install_path }}" path: "{{ pkgmgr_install_path }}"
@ -31,7 +38,7 @@
when: run_once_package_manager is not defined when: run_once_package_manager is not defined
- name: Run the Package Manager install command to create an alias for Kevins package manager - name: Run the Package Manager install command to create an alias for Kevins package manager
command: "{{ pkgmgr_install_command }}" command: "make setup"
args: args:
chdir: "{{ pkgmgr_install_path }}" chdir: "{{ pkgmgr_install_path }}"
become: yes become: yes

View File

@ -15,6 +15,3 @@ pkgmgr_config_path: "{{pkgmgr_install_path}}/config/config.yaml"
# The directory where executable aliases will be installed (ensure it's in your PATH) # The directory where executable aliases will be installed (ensure it's in your PATH)
binaries_directory: "/usr/local/bin" binaries_directory: "/usr/local/bin"
# The command to run to install/update the Package Manager's aliases
pkgmgr_install_command: "./main.py install pkgmgr"

View File

@ -1,2 +1,3 @@
dependencies: dependencies:
- pc-git - pc-git
- make

View File

@ -3,7 +3,6 @@
name: name:
- base-devel - base-devel
- yay - yay
- make
- gcc - gcc
- cmake - cmake
- fdupes - fdupes

View File

@ -1,21 +0,0 @@
# Ansible Role: caffeine_auto_start
An Ansible Role that installs `caffeine-ng` on Archlinux systems and sets it to start automatically when the user logs in.
## Requirements
- The target system should be Archlinux.
- Ansible 2.4 or higher.
- The [kewlfft.aur.aur](https://galaxy.ansible.com/kewlfft/aur) Ansible Galaxy role for managing AUR packages.
## Role Variables
None.
## Author
Kevin Veen-Birkenbach - kevin@veen.world - https://www.veen.world/
## Background
The code for this role was created in an interactive conversation with OpenAI's language model. You can view the original conversation [here](https://chat.openai.com/share/fa846dac-6068-4386-b3e7-b75f1248ec82).

View File

@ -1,15 +0,0 @@
---
dependencies:
- system-aur-helper
galaxy_info:
author: Kevin Veen-Birkenbach
description: Ansible role for installing caffeine-ng and setting it to start at user login.
min_ansible_version: 2.4
platforms:
- name: Archlinux
versions:
- all
galaxy_tags:
- caffeine
- autostart
- archlinux

View File

@ -0,0 +1,23 @@
# GNOME Caffeine Setup
## Description
This role installs [caffeine-ng](https://codeberg.org/WhyNotHugo/caffeine-ng), a utility that prevents your GNOME desktop from entering sleep mode or activating the screensaver automatically. It also ensures that caffeine-ng is set to autostart at user login.
## Purpose
The purpose of this role is to ensure uninterrupted workflow by keeping the desktop active during long-running tasks or presentations. By automatically starting caffeine-ng, it prevents unwanted screen locking or sleep modes on GNOME systems.
## Features
- Installs caffeine-ng from the AUR using an AUR helper.
- Creates the autostart directory if it does not exist.
- Deploys a customized desktop entry to ensure caffeine-ng starts automatically.
- Enhances user experience by maintaining an active desktop environment.
## Credits
Developed and maintained by **Kevin Veen-Birkenbach**.
Learn more at [www.veen.world](https://www.veen.world)
License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)

View File

@ -0,0 +1,17 @@
---
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Installs caffeine-ng and configures it to autostart for preventing screen sleep on GNOME."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
min_ansible_version: "2.4"
platforms:
- name: Archlinux
versions:
- all
galaxy_tags:
- caffeine
- autostart
- archlinux
dependencies:
- system-aur-helper

View File

@ -0,0 +1,25 @@
# GNOME Extensions Manager
## Description
This role manages GNOME Shell extensions by ensuring user extensions are enabled and by installing the CLI GNOME Extension Manager. The CLI tool facilitates the configuration and control of GNOME extensions via the command line.
Learn more about the CLI tool on its [GitHub page](https://github.com/kevinveenbirkenbach/cli-gnome-extension-manager) and about GNOME Extensions at [GNOME Extensions](https://extensions.gnome.org).
## Purpose
The purpose of this role is to enhance and customize the GNOME desktop environment by managing shell extensions. It simplifies the process of installing and configuring extensions, thereby improving productivity and desktop functionality.
## Features
- Activates GNOME Shell extensions via gsettings.
- Installs the CLI GNOME Extension Manager using the package manager.
- Executes extension configuration commands for streamlined management.
- Provides an automated method for managing and updating GNOME extensions.
## Credits
Developed and maintained by **Kevin Veen-Birkenbach**.
Learn more at [www.veen.world](https://www.veen.world)
License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)

View File

@ -0,0 +1,21 @@
---
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Configures GNOME Shell extensions and installs the CLI GNOME Extension Manager for managing extensions."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Archlinux
versions:
- rolling
galaxy_tags:
- gnome
- extensions
- automation
dependencies:
- package-manager

View File

@ -0,0 +1,13 @@
- name: GNOME Activate Extensions
ansible.builtin.shell: gsettings set org.gnome.shell disable-user-extensions false
become: false
- name: install cli-gnome-extension-manager
command:
cmd: "pkgmgr install cli-gnome-extension-manager --clone-mode https"
become: false
- name: Execute CLI GNOME Extension manager script
ansible.builtin.shell: cli-gnome-extension-manager "{{ item[0] }}" "{{ item[1] }}" "{{ item[2] }}"
loop: "{{applications[application_id].plugins | dict2items }}"
become: false

View File

@ -0,0 +1,25 @@
# GNOME Terminal Installation
## Description
This role installs **GNOME Terminal**, the official terminal emulator for the GNOME desktop environment. GNOME Terminal provides a modern, feature-rich command-line interface for users on Arch Linux.
Learn more about GNOME Terminal on [Wikipedia](https://en.wikipedia.org/wiki/GNOME_Terminal) and visit the [GNOME Official Website](https://www.gnome.org) for additional details.
## Purpose
The purpose of this role is to ensure that GNOME Terminal is installed and properly configured on Arch Linux systems, providing users with a robust and fully featured terminal emulator that integrates seamlessly with the GNOME desktop.
## Features
- Installs GNOME Terminal using the Pacman package manager.
- Ensures the terminal emulator is available system-wide.
- Supports modern features and configuration options offered by GNOME Terminal.
- Enhances the overall usability and productivity of the GNOME desktop environment.
## Credits
Developed and maintained by **Kevin Veen-Birkenbach**.
Learn more at [www.veen.world](https://www.veen.world)
License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)

View File

@ -0,0 +1,20 @@
---
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Installs GNOME Terminal on Arch Linux, providing a modern terminal emulator for the GNOME desktop environment."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Archlinux
versions:
- rolling
galaxy_tags:
- gnome
- terminal
- automation
dependencies: []

View File

@ -0,0 +1,6 @@
- name: Install Gnome Terminal
# @see https://en.wikipedia.org/wiki/GNOME_Terminal
community.general.pacman:
name:
- gnome-terminal
state: present

View File

@ -1,52 +1,27 @@
# PC-Gnome Role # GNOME Desktop Setup
## Overview ## Description
Welcome to the `pc-gnome` role, a key part of the `cymais` repository. This role is dedicated to setting up and configuring the GNOME desktop environment on personal computers.
## Role Details This role aggregates various GNOME desktop components to ensure a cohesive and fully functional GNOME environment on Arch Linux. It includes the installation and configuration of several sub-roles:
The `pc-gnome` role includes several tasks for installing GNOME software, managing GNOME extensions, and customizing the GNOME desktop experience: - **pc-gnome-caffeine:** Prevents the system from sleeping or locking automatically.
- **pc-gnome-extensions:** Manages GNOME Shell extensions and installs the CLI GNOME Extension Manager.
- **pc-gnome-terminal:** Installs GNOME Terminal, the official terminal emulator for GNOME.
1. **Install Gnome Software**: ## Purpose
- Installs essential GNOME packages such as `gnome-shell-extensions`, `gnome-shell-extension-desktop-icons-ng`, and `gnome-terminal` using the `community.general.pacman` module.
2. **GNOME Activate Extensions**: The purpose of this role is to provide a complete GNOME desktop experience by orchestrating multiple sub-roles. This simplifies deployment and management by ensuring that all key components are installed and configured in a consistent, system-wide manner.
- Enables user extensions in GNOME using the `gsettings` command.
3. **GNOME Set Favorite Apps**: ## Features
- Customizes the favorite applications on the GNOME shell using the `gsettings` command and the `{{favorite_apps}}` variable.
4. **Pull CLI GNOME Extension Manager Script**: - Aggregates multiple GNOME-related roles into one cohesive setup.
- Clones or updates the CLI GNOME Extension Manager script from a Git repository. - Installs and configures caffeine-ng to keep the desktop active.
- Manages GNOME Shell extensions and integrates the CLI GNOME Extension Manager.
- Installs GNOME Terminal for a robust command-line interface.
- Ensures a seamless and uniform GNOME environment on Arch Linux.
5. **Warn if Repo is Not Reachable**: ## Credits
- Displays a warning message if the repository for the CLI GNOME Extension Manager script is not reachable.
6. **Execute CLI GNOME Extension Manager Script**: Developed and maintained by **Kevin Veen-Birkenbach**.
- Runs the CLI GNOME Extension Manager script to manage GNOME extensions based on the `{{gnome_extensions}}` variable. Learn more at [www.veen.world](https://www.veen.world)
## Other Resources License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)
For additional details on managing GNOME extensions via command line, visit [Ask Ubuntu](https://askubuntu.com/questions/1029376/how-do-i-enable-and-disable-gnome-extensions-from-the-command-line).
## Dependencies
This role depends on:
- **pc-git**: Ensures Git is installed for cloning repositories.
- **pc-caffeine**: A supplementary role that may include tools or configurations complementing the GNOME setup.
## Purpose and Usage
The `pc-gnome` role is ideal for users who prefer the GNOME desktop environment and wish to automate its setup and customization. It's especially useful for setting up a new system or reconfiguring GNOME after a system update.
## Prerequisites
- **Ansible**: Must be installed to use this role.
- **Arch Linux-based System**: The role uses the `pacman` package manager, indicating it's designed for Arch Linux or similar distributions.
## Running the Role
To use this role:
1. Clone the `cymais` repository.
2. Navigate to the `roles/pc-gnome` directory.
3. Run the role using Ansible, ensuring you have the necessary permissions for installations and configurations.
## Customization
You can customize this role by modifying the GNOME software packages, favorite apps, and GNOME extensions in the respective tasks.
## Support and Contributions
For support, feedback, or contributions, such as adding more GNOME-related configurations or tools, open an issue or submit a pull request in the `cymais` repository. Contributions that enhance the GNOME environment setup are highly encouraged.

View File

@ -1,3 +1,24 @@
---
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Aggregates essential GNOME desktop roles—including caffeine, extensions, and terminal—for a complete GNOME environment on Arch Linux."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Archlinux
versions:
- rolling
galaxy_tags:
- gnome
- desktop
- archlinux
- automation
dependencies: dependencies:
- pc-git - pc-gnome-caffeine
- pc-caffeine - pc-gnome-extensions
- pc-gnome-terminal

View File

@ -1,28 +0,0 @@
- name: Install Gnome Software
community.general.pacman:
name:
- gnome-shell-extensions
- gnome-shell-extension-desktop-icons-ng
- gnome-terminal
state: present
- name: GNOME Activate Extensions
ansible.builtin.shell: gsettings set org.gnome.shell disable-user-extensions false
become: false
- name: GNOME Set favorite apps
ansible.builtin.shell: gsettings set org.gnome.shell favorite-apps "{{favorite_apps}}"
become: false
- name: pull CLI GNOME Extension manager script
git:
repo: "git@github.com:kevinveenbirkenbach/cli-gnome-extension-manager.git"
dest: "$HOME/Repositories/github.com/kevinveenbirkenbach/cli-gnome-extension-manager"
update: yes
ignore_errors: true
become: false
- name: Execute CLI GNOME Extension manager script
ansible.builtin.shell: bash "/home/{{client_username}}/Repositories/github.com/kevinveenbirkenbach/cli-gnome-extension-manager/gnome-extension-manager.sh" "{{ item[0] }}" "{{ item[1] }}" "{{ item[2] }}"
loop: "{{gnome_extensions}}"
become: false

View File

@ -21,4 +21,5 @@ galaxy_info:
repository: "https://s.veen.world/cymais" repository: "https://s.veen.world/cymais"
issue_tracker_url: "https://s.veen.world/cymaisissues" issue_tracker_url: "https://s.veen.world/cymaisissues"
documentation: "https://s.veen.world/cymais" documentation: "https://s.veen.world/cymais"
dependencies: [] dependencies:
- fakeroot

View File

@ -1,6 +1,9 @@
- name: install yay - name: install yay
community.general.pacman: community.general.pacman:
name: yay name:
- yay
- patch
- base-devel
state: present state: present
- name: Create the `aur_builder` user - name: Create the `aur_builder` user

View File

@ -22,5 +22,5 @@ galaxy_info:
issue_tracker_url: "https://s.veen.world/cymaisissues" issue_tracker_url: "https://s.veen.world/cymaisissues"
documentation: "https://s.veen.world/cymais" documentation: "https://s.veen.world/cymais"
dependencies: dependencies:
- git - package-manager
- systemd-notifier - systemd-notifier

View File

@ -1,6 +1,6 @@
- name: install auto-btrfs-balancer - name: install btrfs-auto-balancer
command: command:
cmd: "pkgmgr install auto-btrfs-balancer" cmd: "pkgmgr install btrfs-auto-balancer --clone-mode https"
when: run_once_system_btrfs_auto_balancer is not defined when: run_once_system_btrfs_auto_balancer is not defined
- name: configure system-btrfs-auto-balancer.cymais.service - name: configure system-btrfs-auto-balancer.cymais.service

View File

@ -4,4 +4,4 @@ OnFailure=systemd-notifier.cymais@%n.service
[Service] [Service]
Type=oneshot Type=oneshot
ExecStart=/bin/sh -c 'auto-btrfs-balancer 90 10' ExecStart=/bin/sh -c 'btrfs-auto-balancer 90 10'

View File

@ -1,6 +1,6 @@
- name: install swap-forge - name: install swap-forge
command: command:
cmd: "pkgmgr install backup-docker-to-local" cmd: "pkgmgr install backup-docker-to-local --clone-mode https"
become: true become: true
- name: Execute create swapfile script - name: Execute create swapfile script

View File

@ -1,2 +1,2 @@
#!/bin/bash #!/bin/bash
/usr/bin/curl -s -X POST https://api.telegram.org/bot{{ telegram_bot_token }}/sendMessage -d chat_id={{ telegram_chat_id }} -d text="service $1 failed" /usr/bin/curl -s -X POST https://api.telegram.org/bot{{ telegram_bot_token }}/sendMessage -d chat_id={{ telegram_chat_id }} -d text="service $1 on $HOST failed"

View File

@ -3,7 +3,7 @@
block: block:
- name: Merge users - name: Merge users
set_fact: set_fact:
users: "{{ default_users | combine(users, recursive=True) }}" users: "{{ default_users | combine(users| default({}), recursive=True) }}"
- name: Merge system_email definitions - name: Merge system_email definitions
set_fact: set_fact: