mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-06-25 11:45:32 +02:00
Compare commits
5 Commits
99f633d222
...
7042f28a79
Author | SHA1 | Date | |
---|---|---|---|
7042f28a79 | |||
526f1c952d | |||
659c24eb14 | |||
887db59a57 | |||
4541e2d636 |
@ -83,6 +83,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
|
||||||
|
|
||||||
|
# Chromium Browser
|
||||||
|
chromium:
|
||||||
|
plugins: # Plugins to be installed in Chromium
|
||||||
|
- "cjpalhdlnbpafiamejdnhcphjbkeiagm;https://clients2.google.com/service/update2/crx" # U-Block Origine Plugin
|
||||||
|
- "oboonakemofpalcgghocfoadofidjkkk;https://clients2.google.com/service/update2/crx" # KeepassXC Plugin
|
||||||
|
|
||||||
coturn: # @todo implement
|
coturn: # @todo implement
|
||||||
credentials:
|
credentials:
|
||||||
user: turnuser
|
user: turnuser
|
||||||
@ -109,6 +115,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: "true" # Landingpage should be embeded in portfolio
|
landingpage_iframe_enabled: "true" # Landingpage should be embeded in portfolio
|
||||||
|
|
||||||
|
# Firefox Browser
|
||||||
|
firefox:
|
||||||
|
plugins: # Plugins to be installed in Firefox
|
||||||
|
- "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi" # U-Block Origine Plugin
|
||||||
|
- "https://addons.mozilla.org/firefox/downloads/latest/keepassxc-browser/latest.xpi" # KeepassXC Plugin
|
||||||
|
|
||||||
## Friendica
|
## Friendica
|
||||||
friendica:
|
friendica:
|
||||||
version: "latest"
|
version: "latest"
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
## Description
|
## Description
|
||||||
|
|
||||||
This Ansible role pulls the [directory-validator](https://github.com/kevinveenbirkenbach/directory-validator.git) repository to a predefined location. It is used by the backup-docker-to-local and cleanup-failed-docker-backups roles to verify whether backups have been successfully created.
|
This Ansible role installs the [directory-validator](https://github.com/kevinveenbirkenbach/directory-validator.git). It is used by the backup-docker-to-local and cleanup-failed-docker-backups roles to verify whether backups have been successfully created.
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
|
@ -23,4 +23,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:
|
||||||
|
- package-manager
|
||||||
|
@ -1,9 +1,6 @@
|
|||||||
- name: pull directory-validator.git
|
- name: install directory-validator
|
||||||
git:
|
command:
|
||||||
repo: "https://github.com/kevinveenbirkenbach/directory-validator.git"
|
cmd: "pkgmgr install directory-validator"
|
||||||
dest: "{{backup_directory_validator_folder}}"
|
|
||||||
update: yes
|
|
||||||
ignore_errors: true
|
|
||||||
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
|
||||||
|
@ -23,9 +23,9 @@ 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
|
|
||||||
- backups-provider
|
- backups-provider
|
||||||
- systemd-notifier
|
- systemd-notifier
|
||||||
- cleanup-failed-docker-backups
|
- cleanup-failed-docker-backups
|
||||||
- system-maintenance-lock
|
- system-maintenance-lock
|
||||||
- backup-directory-validator
|
- backup-directory-validator
|
||||||
|
- package-manager
|
@ -1,17 +1,16 @@
|
|||||||
- name: install required software
|
- name: install backup-docker-to-local
|
||||||
community.general.pacman:
|
command:
|
||||||
name:
|
cmd: "pkgmgr install backup-docker-to-local"
|
||||||
- lsof
|
|
||||||
- python-pandas
|
|
||||||
state: present
|
|
||||||
when: run_once_backup_docker_to_local is not defined
|
when: run_once_backup_docker_to_local is not defined
|
||||||
|
|
||||||
- name: pull backup-docker-to-local.git
|
- name: Retrieve backup-docker-to-local path from pkgmgr
|
||||||
git:
|
command: pkgmgr path backup-docker-to-local
|
||||||
repo: "https://github.com/kevinveenbirkenbach/backup-docker-to-local.git"
|
register: pkgmgr_output
|
||||||
dest: "{{backup_docker_to_local_folder}}"
|
when: run_once_backup_docker_to_local is not defined
|
||||||
update: yes
|
|
||||||
ignore_errors: true
|
- name: Set fact for backup_docker_to_local_folder
|
||||||
|
set_fact:
|
||||||
|
backup_docker_to_local_folder: "{{ pkgmgr_output.stdout }}"
|
||||||
when: run_once_backup_docker_to_local is not defined
|
when: run_once_backup_docker_to_local is not defined
|
||||||
|
|
||||||
- name: configure backup-docker-to-local-everything.cymais.service
|
- name: configure backup-docker-to-local-everything.cymais.service
|
||||||
|
@ -1 +0,0 @@
|
|||||||
backup_docker_to_local_folder: "{{path_administrator_scripts}}backup-docker-to-local/"
|
|
@ -22,7 +22,7 @@ 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
|
|
||||||
- systemd-notifier
|
- systemd-notifier
|
||||||
- system-maintenance-lock
|
- system-maintenance-lock
|
||||||
- backup-directory-validator
|
- backup-directory-validator
|
||||||
|
- package-manager
|
||||||
|
@ -1,9 +1,16 @@
|
|||||||
- name: pull cleanup-failed-docker-backups.git
|
- name: install cleanup-failed-docker-backups
|
||||||
git:
|
command:
|
||||||
repo: "https://github.com/kevinveenbirkenbach/cleanup-failed-docker-backups.git"
|
cmd: "pkgmgr install cleanup-failed-docker-backups"
|
||||||
dest: "{{backup_docker_to_local_cleanup_folder}}"
|
when: run_once_cleanup_failed_docker_backups is not defined
|
||||||
update: yes
|
|
||||||
ignore_errors: true
|
- name: Retrieve backup-docker-to-local path from pkgmgr
|
||||||
|
command: pkgmgr path cleanup-failed-docker-backups
|
||||||
|
register: pkgmgr_output
|
||||||
|
when: run_once_cleanup_failed_docker_backups is not defined
|
||||||
|
|
||||||
|
- name: Set fact for backup_docker_to_local_cleanup_folder
|
||||||
|
set_fact:
|
||||||
|
backup_docker_to_local_cleanup_folder: "{{ pkgmgr_output.stdout }}"
|
||||||
when: run_once_cleanup_failed_docker_backups is not defined
|
when: run_once_cleanup_failed_docker_backups is not defined
|
||||||
|
|
||||||
- name: configure cleanup-failed-docker-backups.cymais.service
|
- name: configure cleanup-failed-docker-backups.cymais.service
|
||||||
|
@ -1 +0,0 @@
|
|||||||
backup_docker_to_local_cleanup_folder: "{{path_administrator_scripts}}cleanup-failed-docker-backups/"
|
|
27
roles/git/README.md
Normal file
27
roles/git/README.md
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
# Git
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
This Ansible role installs Git on the target system using the Pacman package manager. It ensures that Git is installed only once, even when the role is applied to multiple hosts or executed in a multi-task scenario.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Designed for Arch Linux systems, this role leverages the `pacman` module to install Git. It uses a fact (`run_once_git`) to control task execution, ensuring that the Git installation is performed only once per run.
|
||||||
|
|
||||||
|
## Purpose
|
||||||
|
|
||||||
|
The purpose of this role is to automate the installation of Git in a consistent and idempotent manner. It is especially useful in environments where Git is a prerequisite for further automation or development tasks.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- **Git Installation:** Uses the Pacman package manager to install Git.
|
||||||
|
- **Idempotent Execution:** Sets a fact to guarantee that the installation tasks are executed only once.
|
||||||
|
- **Optimized Deployment:** Suitable for use in multi-host environments to avoid redundant installations.
|
||||||
|
|
||||||
|
## Credits 📝
|
||||||
|
|
||||||
|
Developed and maintained by **Kevin Veen-Birkenbach**.
|
||||||
|
Learn more at [www.veen.world](https://www.veen.world)
|
||||||
|
|
||||||
|
Part of the [CyMaIS Project](https://github.com/kevinveenbirkenbach/cymais)
|
||||||
|
License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)
|
21
roles/git/meta/main.yml
Normal file
21
roles/git/meta/main.yml
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
---
|
||||||
|
galaxy_info:
|
||||||
|
author: "Kevin Veen-Birkenbach"
|
||||||
|
description: "Installs Git 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:
|
||||||
|
- git
|
||||||
|
- pacman
|
||||||
|
- archlinux
|
||||||
|
- installation
|
||||||
|
dependencies: []
|
@ -1,5 +1,7 @@
|
|||||||
- name: install git
|
- name: install git
|
||||||
pacman: name=git state=present
|
pacman:
|
||||||
|
name: git
|
||||||
|
state: present
|
||||||
when: run_once_git is not defined
|
when: run_once_git is not defined
|
||||||
|
|
||||||
- name: run the git tasks once
|
- name: run the git tasks once
|
||||||
|
32
roles/package-manager/README.md
Normal file
32
roles/package-manager/README.md
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
# Kevins Package Manager 🤖📦
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
This Ansible role installs and configures [Kevin's Package Manager](https://github.com/kevinveenbirkenbach/package-manager) - a configurable Python tool designed to manage multiple repositories and automate common Git operations. The role clones the repository from GitHub, sets the executable permissions for the main script, and runs the installation command to set up command aliases.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
This role automates the deployment of Kevin's Package Manager by:
|
||||||
|
- Cloning the repository from GitHub.
|
||||||
|
- Setting the proper executable permissions on `main.py`.
|
||||||
|
- Executing the installation command to create/update repository command wrappers.
|
||||||
|
|
||||||
|
It ensures that the Package Manager is ready to manage repositories, perform Git operations, and streamline software management tasks.
|
||||||
|
|
||||||
|
## Purpose
|
||||||
|
|
||||||
|
The purpose of this role is to simplify the installation of Kevin's Package Manager, reducing manual steps and ensuring a consistent setup across environments. Ideal for developers and system administrators, it helps integrate repository management seamlessly into your automation workflows.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- **Repository Cloning:** Automatically clones the Package Manager repository from GitHub.
|
||||||
|
- **Executable Setup:** Sets proper permissions on the main script.
|
||||||
|
- **Alias Installation:** Runs the installation command to generate command aliases.
|
||||||
|
- **Configurable Paths:** Allows customization of both the installation and binary directories.
|
||||||
|
|
||||||
|
## Credits 📝
|
||||||
|
|
||||||
|
Developed and maintained by **Kevin Veen-Birkenbach**.
|
||||||
|
Learn more at [www.veen.world](https://www.veen.world)
|
||||||
|
|
||||||
|
Part of the [CyMaIS Project](https://github.com/kevinveenbirkenbach/cymais)
|
3
roles/package-manager/files/config.yaml.j2
Normal file
3
roles/package-manager/files/config.yaml.j2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
directories:
|
||||||
|
repositories: "{{repositories_directory}}"
|
||||||
|
binaries: "{{binaries_directory}}"
|
36
roles/package-manager/meta/main.yml
Normal file
36
roles/package-manager/meta/main.yml
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
---
|
||||||
|
galaxy_info:
|
||||||
|
author: "Kevin Veen-Birkenbach"
|
||||||
|
description: "Automates the installation of Kevin's Package Manager — a tool for managing multiple repositories and automating Git operations."
|
||||||
|
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: Debian
|
||||||
|
versions:
|
||||||
|
- stretch
|
||||||
|
- buster
|
||||||
|
- bullseye
|
||||||
|
- name: Ubuntu
|
||||||
|
versions:
|
||||||
|
- bionic
|
||||||
|
- focal
|
||||||
|
- jammy
|
||||||
|
- name: Archlinux
|
||||||
|
versions:
|
||||||
|
- rolling
|
||||||
|
galaxy_tags:
|
||||||
|
- package-manager
|
||||||
|
- automation
|
||||||
|
- git
|
||||||
|
- repositories
|
||||||
|
- development
|
||||||
|
repository: https://github.com/kevinveenbirkenbach/package-manager
|
||||||
|
issue_tracker_url: https://github.com/kevinveenbirkenbach/package-manager/issues
|
||||||
|
documentation: https://github.com/kevinveenbirkenbach/package-manager
|
||||||
|
dependencies:
|
||||||
|
- git
|
43
roles/package-manager/tasks/main.yml
Normal file
43
roles/package-manager/tasks/main.yml
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
---
|
||||||
|
- name: Create installation directory for Kevin's Package Manager
|
||||||
|
file:
|
||||||
|
path: "{{ pkgmgr_install_path }}"
|
||||||
|
state: directory
|
||||||
|
mode: '0755'
|
||||||
|
become: yes
|
||||||
|
when: run_once_package_manager is not defined
|
||||||
|
|
||||||
|
- name: Clone Kevin's Package Manager repository
|
||||||
|
git:
|
||||||
|
repo: "{{ pkgmgr_repo_url }}"
|
||||||
|
dest: "{{ pkgmgr_install_path }}"
|
||||||
|
version: "HEAD"
|
||||||
|
force: yes
|
||||||
|
become: yes
|
||||||
|
when: run_once_package_manager is not defined
|
||||||
|
|
||||||
|
- name: Ensure main.py is executable
|
||||||
|
file:
|
||||||
|
path: "{{ pkgmgr_install_path }}/main.py"
|
||||||
|
mode: '0755'
|
||||||
|
become: yes
|
||||||
|
when: run_once_package_manager is not defined
|
||||||
|
|
||||||
|
- name: create config.yaml
|
||||||
|
template:
|
||||||
|
src: config.yaml.j2
|
||||||
|
dest: "{{pkgmgr_config_path}}"
|
||||||
|
become: yes
|
||||||
|
when: run_once_package_manager is not defined
|
||||||
|
|
||||||
|
- name: Run the Package Manager install command to create an alias for Kevins package manager
|
||||||
|
command: "{{ pkgmgr_install_command }}"
|
||||||
|
args:
|
||||||
|
chdir: "{{ pkgmgr_install_path }}"
|
||||||
|
become: yes
|
||||||
|
when: run_once_package_manager is not defined
|
||||||
|
|
||||||
|
- name: run run_once_package_manager tasks once
|
||||||
|
set_fact:
|
||||||
|
run_once_package_managerr: true
|
||||||
|
when: run_once_package_manager is not defined
|
20
roles/package-manager/vars/main.yml
Normal file
20
roles/package-manager/vars/main.yml
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
# Variables for Kevin's Package Manager installation
|
||||||
|
|
||||||
|
# The Git repository URL for Kevin's Package Manager
|
||||||
|
pkgmgr_repo_url: "https://github.com/kevinveenbirkenbach/package-manager.git"
|
||||||
|
|
||||||
|
# Directory which contains all Repositories managed by Kevin's Package Manager
|
||||||
|
repositories_directory: "/opt/Repositories/"
|
||||||
|
|
||||||
|
# The directory where the repository will be cloned
|
||||||
|
pkgmgr_install_path: "{{repositories_directory}}github.com/kevinveenbirkenbach/package-manager"
|
||||||
|
|
||||||
|
# File containing the configuration
|
||||||
|
pkgmgr_config_path: "{{pkgmgr_install_path}}/config/config.yaml"
|
||||||
|
|
||||||
|
# The directory where executable aliases will be installed (ensure it's in your PATH)
|
||||||
|
binaries_directory: "/usr/local/bin"
|
||||||
|
|
||||||
|
# The command to run to install/update the Package Manager's aliases
|
||||||
|
pkgmgr_install_command: "./main.py install pkgmgr"
|
@ -1,39 +0,0 @@
|
|||||||
# PC-Bluray-Player-Tools Role
|
|
||||||
|
|
||||||
## Overview
|
|
||||||
Welcome to the `pc-bluray-player-tools` role, a part of the `cymais` repository. This role is dedicated to setting up software required for Blu-ray playback on personal computers. It focuses on installing necessary packages to enable the use of Blu-ray media with VLC player and other compatible software.
|
|
||||||
|
|
||||||
## Role Contents
|
|
||||||
The `main.yml` file in this role consists of tasks that automate the installation of the following packages:
|
|
||||||
1. **Install VLC and Blu-ray Software**:
|
|
||||||
- `vlc`: A versatile media player that supports Blu-ray playback.
|
|
||||||
- `libaacs`: A library for Blu-ray disc encryption handling.
|
|
||||||
- `libbluray`: A library for Blu-ray disc playback support.
|
|
||||||
|
|
||||||
There are commented-out tasks for installing additional AUR packages, such as `aacskeys` and `libbdplus`, which can be enabled as per the user's requirements.
|
|
||||||
|
|
||||||
## Other Resources and Resources
|
|
||||||
For more in-depth information and guidance on Blu-ray playback and software configuration, the following resources can be consulted:
|
|
||||||
- [Arch Linux Wiki on Blu-ray](https://wiki.archlinux.org/title/Blu-ray#Using_aacskeys)
|
|
||||||
- [Guide to Play Blu-ray with VLC](https://videobyte.de/play-blu-ray-with-vlc)
|
|
||||||
- [Manjaro Forum Discussion on Blu-ray UHD Playback](https://archived.forum.manjaro.org/t/wie-kann-ich-bluray-uhd-abspielen/127396/12)
|
|
||||||
- [FV Online DB](http://fvonline-db.bplaced.net/)
|
|
||||||
|
|
||||||
## Dependencies
|
|
||||||
This role depends on the `java` role, which ensures the Java runtime is available – a requirement for certain Blu-ray playback tools and functionalities.
|
|
||||||
|
|
||||||
## Prerequisites
|
|
||||||
- **Ansible**: Ansible must be installed on your system to use this role.
|
|
||||||
- **Arch Linux-based System**: Designed for Arch Linux distributions, using the `pacman` package manager.
|
|
||||||
|
|
||||||
## Running the Role
|
|
||||||
To utilize this role:
|
|
||||||
1. Clone the `cymais` repository.
|
|
||||||
2. Navigate to the `roles/pc-bluray-player-tools` directory.
|
|
||||||
3. Execute the role using Ansible, with appropriate permissions for installing packages.
|
|
||||||
|
|
||||||
## Customization
|
|
||||||
You can customize this role by enabling or adding additional tasks for other AUR packages related to Blu-ray playback as needed.
|
|
||||||
|
|
||||||
## Support and Contributions
|
|
||||||
For support, feedback, or contributions to enhance the role's capabilities, please open an issue or submit a pull request in the `cymais` repository. Contributions that improve Blu-ray playback support or compatibility are highly appreciated.
|
|
@ -1,7 +1,39 @@
|
|||||||
# collection-blu-ray-player
|
# PC-Bluray-Player-Tools Role
|
||||||
|
|
||||||
## Other Resources
|
## Overview
|
||||||
- https://wiki.archlinux.org/title/Blu-ray#Using_aacskeys
|
Welcome to the `pc-bluray-player-tools` role, a part of the `cymais` repository. This role is dedicated to setting up software required for Blu-ray playback on personal computers. It focuses on installing necessary packages to enable the use of Blu-ray media with VLC player and other compatible software.
|
||||||
- https://videobyte.de/play-blu-ray-with-vlc
|
|
||||||
- https://archived.forum.manjaro.org/t/wie-kann-ich-bluray-uhd-abspielen/127396/12
|
## Role Contents
|
||||||
- http://fvonline-db.bplaced.net/
|
The `main.yml` file in this role consists of tasks that automate the installation of the following packages:
|
||||||
|
1. **Install VLC and Blu-ray Software**:
|
||||||
|
- `vlc`: A versatile media player that supports Blu-ray playback.
|
||||||
|
- `libaacs`: A library for Blu-ray disc encryption handling.
|
||||||
|
- `libbluray`: A library for Blu-ray disc playback support.
|
||||||
|
|
||||||
|
There are commented-out tasks for installing additional AUR packages, such as `aacskeys` and `libbdplus`, which can be enabled as per the user's requirements.
|
||||||
|
|
||||||
|
## Other Resources and Resources
|
||||||
|
For more in-depth information and guidance on Blu-ray playback and software configuration, the following resources can be consulted:
|
||||||
|
- [Arch Linux Wiki on Blu-ray](https://wiki.archlinux.org/title/Blu-ray#Using_aacskeys)
|
||||||
|
- [Guide to Play Blu-ray with VLC](https://videobyte.de/play-blu-ray-with-vlc)
|
||||||
|
- [Manjaro Forum Discussion on Blu-ray UHD Playback](https://archived.forum.manjaro.org/t/wie-kann-ich-bluray-uhd-abspielen/127396/12)
|
||||||
|
- [FV Online DB](http://fvonline-db.bplaced.net/)
|
||||||
|
|
||||||
|
## Dependencies
|
||||||
|
This role depends on the `java` role, which ensures the Java runtime is available – a requirement for certain Blu-ray playback tools and functionalities.
|
||||||
|
|
||||||
|
## Prerequisites
|
||||||
|
- **Ansible**: Ansible must be installed on your system to use this role.
|
||||||
|
- **Arch Linux-based System**: Designed for Arch Linux distributions, using the `pacman` package manager.
|
||||||
|
|
||||||
|
## Running the Role
|
||||||
|
To utilize this role:
|
||||||
|
1. Clone the `cymais` repository.
|
||||||
|
2. Navigate to the `roles/pc-bluray-player-tools` directory.
|
||||||
|
3. Execute the role using Ansible, with appropriate permissions for installing packages.
|
||||||
|
|
||||||
|
## Customization
|
||||||
|
You can customize this role by enabling or adding additional tasks for other AUR packages related to Blu-ray playback as needed.
|
||||||
|
|
||||||
|
## Support and Contributions
|
||||||
|
For support, feedback, or contributions to enhance the role's capabilities, please open an issue or submit a pull request in the `cymais` repository. Contributions that improve Blu-ray playback support or compatibility are highly appreciated.
|
29
roles/pc-browser-chromium/README.md
Normal file
29
roles/pc-browser-chromium/README.md
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
# Chromium 🌐
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
This Ansible role installs and configures the Chromium browser along with essential security and productivity extensions. It ensures that Chromium is installed and properly set up with forced installation of uBlock Origin and the KeePassXC browser extension via Enterprise Policies, providing a secure and streamlined browsing experience.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Designed for various Linux distributions, this role manages the installation of the Chromium browser using the system’s package manager. It configures Chromium's managed policies to automatically deploy key browser extensions, ensuring that users always have a secure and consistent environment. This role integrates seamlessly with other system management roles for a holistic deployment.
|
||||||
|
|
||||||
|
## Purpose
|
||||||
|
|
||||||
|
The purpose of this role is to automate the provisioning of a secure Chromium environment in a consistent and maintainable way. It reduces manual configuration steps and guarantees that critical browser extensions are enforced, making it ideal for both production and personal deployments.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- **Installs Chromium Browser:** Automatically installs the appropriate Chromium package based on the target system.
|
||||||
|
- **Installs KeePassXC:** Ensures KeePassXC is installed for secure password management.
|
||||||
|
- **Enforces Browser Extensions:** Configures Chromium Enterprise Policies to force-install uBlock Origin and the KeePassXC browser extension.
|
||||||
|
- **Cross-Platform Support:** Handles package variations for multiple Linux distributions.
|
||||||
|
- **Seamless Integration:** Provides a stable and secure browsing setup as part of broader system automation workflows.
|
||||||
|
|
||||||
|
## Credits 📝
|
||||||
|
|
||||||
|
Developed and maintained by **Kevin Veen-Birkenbach**.
|
||||||
|
Learn more at [www.veen.world](https://www.veen.world)
|
||||||
|
|
||||||
|
Part of the [CyMaIS Project](https://github.com/kevinveenbirkenbach/cymais)
|
||||||
|
License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)
|
2
roles/pc-browser-chromium/defaults/main.yml
Normal file
2
roles/pc-browser-chromium/defaults/main.yml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
chromium_package: "{{ 'chromium-browser' if ansible_os_family == 'Debian' else 'chromium' }}"
|
35
roles/pc-browser-chromium/meta/main.yml
Normal file
35
roles/pc-browser-chromium/meta/main.yml
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
---
|
||||||
|
galaxy_info:
|
||||||
|
author: "Kevin Veen-Birkenbach"
|
||||||
|
description: "Automates the installation and configuration of the Chromium browser with enforced security 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: Debian
|
||||||
|
versions:
|
||||||
|
- stretch
|
||||||
|
- buster
|
||||||
|
- bullseye
|
||||||
|
- name: Ubuntu
|
||||||
|
versions:
|
||||||
|
- bionic
|
||||||
|
- focal
|
||||||
|
- jammy
|
||||||
|
- name: Archlinux
|
||||||
|
versions:
|
||||||
|
- rolling
|
||||||
|
galaxy_tags:
|
||||||
|
- chromium
|
||||||
|
- browser
|
||||||
|
- enterprise-policy
|
||||||
|
- security
|
||||||
|
- automation
|
||||||
|
repository: https://s.veen.world/cymais
|
||||||
|
issue_tracker_url: https://s.veen.world/cymaisissues
|
||||||
|
documentation: https://s.veen.world/cymais
|
||||||
|
dependencies: []
|
27
roles/pc-browser-chromium/tasks/main.yml
Normal file
27
roles/pc-browser-chromium/tasks/main.yml
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
---
|
||||||
|
- name: Update package cache (Debian/Ubuntu)
|
||||||
|
apt:
|
||||||
|
update_cache: yes
|
||||||
|
when: ansible_os_family == "Debian"
|
||||||
|
|
||||||
|
- name: Install Chromium browser
|
||||||
|
package:
|
||||||
|
name: "{{ chromium_package }}"
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: Install KeePassXC
|
||||||
|
package:
|
||||||
|
name: keepassxc
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: Ensure Chromium policies directory exists
|
||||||
|
file:
|
||||||
|
path: /etc/chromium/policies/managed
|
||||||
|
state: directory
|
||||||
|
mode: '0755'
|
||||||
|
|
||||||
|
- name: Copy the extensions policy file for Chromium
|
||||||
|
template:
|
||||||
|
src: extensions_policy.json.j2
|
||||||
|
dest: /etc/chromium/policies/managed/extensions_policy.json
|
||||||
|
mode: '0644'
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"ExtensionInstallForcelist": [
|
||||||
|
{% for plugin in applications[application_id].plugins -%}
|
||||||
|
"{{ plugin }}"{% if not loop.last %},{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
]
|
||||||
|
}
|
28
roles/pc-browser-firefox/README.md
Normal file
28
roles/pc-browser-firefox/README.md
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
# Firefox 🦊
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
This Ansible role installs and configures Firefox on Arch Linux systems, enforcing Enterprise Policies to automatically install key browser extensions. It ensures that Firefox is installed and set up with policies that force-install uBlock Origin and the KeePassXC Browser extension, delivering a secure and consistent browsing experience.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Tailored for Arch Linux, this role handles the installation of Firefox using the system’s package manager (`pacman`). It deploys a `policies.json` file to Firefox’s distribution directory, ensuring that critical extensions are automatically installed via Firefox Enterprise Policies.
|
||||||
|
|
||||||
|
## Purpose
|
||||||
|
|
||||||
|
The role automates the provisioning of a secure Firefox environment, reducing manual configuration and ensuring consistency across deployments. It is ideal for environments where a standardized and secure browsing setup is required.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- **Installs Firefox:** Uses `pacman` to install the Firefox package.
|
||||||
|
- **Enforces Enterprise Policies:** Deploys a `policies.json` file that forces the installation of uBlock Origin and the KeePassXC Browser extension.
|
||||||
|
- **Streamlined Configuration:** Automatically creates necessary directories and applies correct file permissions.
|
||||||
|
- **Seamless Integration:** Easily integrates with other automation roles for a complete system setup.
|
||||||
|
|
||||||
|
## Credits 📝
|
||||||
|
|
||||||
|
Developed and maintained by **Kevin Veen-Birkenbach**.
|
||||||
|
Learn more at [www.veen.world](https://www.veen.world)
|
||||||
|
|
||||||
|
Part of the [CyMaIS Project](https://github.com/kevinveenbirkenbach/cymais)
|
||||||
|
License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)
|
11
roles/pc-browser-firefox/defaults/main.yml
Normal file
11
roles/pc-browser-firefox/defaults/main.yml
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
# Default variables for the pc-firefox role
|
||||||
|
|
||||||
|
# Package name for Firefox on Arch Linux
|
||||||
|
firefox_package: firefox
|
||||||
|
|
||||||
|
# Directory where Firefox expects distribution policies
|
||||||
|
firefox_policy_dir: "/usr/lib/firefox/distribution"
|
||||||
|
|
||||||
|
# Full path to the policies file
|
||||||
|
firefox_policy_file: "{{ firefox_policy_dir }}/policies.json"
|
25
roles/pc-browser-firefox/meta/main.yml
Normal file
25
roles/pc-browser-firefox/meta/main.yml
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
---
|
||||||
|
galaxy_info:
|
||||||
|
author: "Kevin Veen-Birkenbach"
|
||||||
|
description: "Automates the installation and configuration of Firefox with enforced extension policies 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:
|
||||||
|
- firefox
|
||||||
|
- browser
|
||||||
|
- enterprise-policy
|
||||||
|
- security
|
||||||
|
- automation
|
||||||
|
repository: https://s.veen.world/cymais
|
||||||
|
issue_tracker_url: https://s.veen.world/cymaisissues
|
||||||
|
documentation: https://s.veen.world/cymais
|
||||||
|
dependencies: []
|
17
roles/pc-browser-firefox/tasks/main.yml
Normal file
17
roles/pc-browser-firefox/tasks/main.yml
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
---
|
||||||
|
- name: Install Firefox
|
||||||
|
package:
|
||||||
|
name: "{{ firefox_package }}"
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: Ensure Firefox distribution policies directory exists
|
||||||
|
file:
|
||||||
|
path: "{{ firefox_policy_dir }}"
|
||||||
|
state: directory
|
||||||
|
mode: '0755'
|
||||||
|
|
||||||
|
- name: Deploy Firefox Enterprise Policies file
|
||||||
|
template:
|
||||||
|
src: policies.json.j2
|
||||||
|
dest: "{{ firefox_policy_file }}"
|
||||||
|
mode: '0644'
|
12
roles/pc-browser-firefox/templates/policies.json.j2
Normal file
12
roles/pc-browser-firefox/templates/policies.json.j2
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"policies": {
|
||||||
|
"Extensions": {
|
||||||
|
"Install": [
|
||||||
|
{% for plugin in applications[application_id].plugins -%}
|
||||||
|
"{{ plugin }}"{% if not loop.last %},{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
28
roles/pc-browsers/README.md
Normal file
28
roles/pc-browsers/README.md
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
# Browsers 🎨
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
This Ansible role serves as a wrapper to install and configure multiple browsers on a target system. It integrates the configurations of both Chromium and Firefox, ensuring that each browser is set up with forced installation of key security extensions (uBlock Origin and the KeePassXC browser extension) via Enterprise Policies.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
The **pc-browsers** role orchestrates the deployment of two specialized roles: **pc-browser-chromium** and **pc-browser-firefox**. By executing both roles, it provides a unified solution for browser management, making it easier to maintain a secure and consistent browsing environment across your systems.
|
||||||
|
|
||||||
|
## Purpose
|
||||||
|
|
||||||
|
The purpose of this role is to simplify the automation of browser deployments. Instead of managing separate playbooks or tasks for Chromium and Firefox, this role consolidates browser installation and configuration into one streamlined process.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- **Unified Browser Management:** Executes both Chromium and Firefox configuration roles.
|
||||||
|
- **Automated Installation:** Installs Chromium and Firefox along with their essential security extensions.
|
||||||
|
- **Enforced Security Policies:** Ensures that uBlock Origin and the KeePassXC browser extension are automatically deployed using Enterprise Policies.
|
||||||
|
- **Seamless Integration:** Easily integrates into your existing automation workflows for a consistent system setup.
|
||||||
|
|
||||||
|
## Credits 📝
|
||||||
|
|
||||||
|
Developed and maintained by **Kevin Veen-Birkenbach**.
|
||||||
|
Learn more at [www.veen.world](https://www.veen.world)
|
||||||
|
|
||||||
|
Part of the [CyMaIS Project](https://github.com/kevinveenbirkenbach/cymais)
|
||||||
|
License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)
|
38
roles/pc-browsers/meta/main.yml
Normal file
38
roles/pc-browsers/meta/main.yml
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
---
|
||||||
|
galaxy_info:
|
||||||
|
author: "Kevin Veen-Birkenbach"
|
||||||
|
description: "Wrapper role to install and configure both Chromium and Firefox with enforced security 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: Debian
|
||||||
|
versions:
|
||||||
|
- stretch
|
||||||
|
- buster
|
||||||
|
- bullseye
|
||||||
|
- name: Ubuntu
|
||||||
|
versions:
|
||||||
|
- bionic
|
||||||
|
- focal
|
||||||
|
- jammy
|
||||||
|
- name: Archlinux
|
||||||
|
versions:
|
||||||
|
- rolling
|
||||||
|
galaxy_tags:
|
||||||
|
- browsers
|
||||||
|
- chromium
|
||||||
|
- firefox
|
||||||
|
- enterprise-policy
|
||||||
|
- security
|
||||||
|
- automation
|
||||||
|
repository: https://s.veen.world/cymais
|
||||||
|
issue_tracker_url: https://s.veen.world/cymaisissues
|
||||||
|
documentation: https://s.veen.world/cymais
|
||||||
|
dependencies:
|
||||||
|
- pc-browser-chromium
|
||||||
|
- pc-browser-firefox
|
@ -6,6 +6,7 @@
|
|||||||
state: present
|
state: present
|
||||||
|
|
||||||
- name: Adding user {{client_username}} to relevant docker usergroup
|
- name: Adding user {{client_username}} to relevant docker usergroup
|
||||||
user: name={{client_username}}
|
user:
|
||||||
groups=docker
|
name: "{{client_username}}"
|
||||||
append=yes
|
groups: docker
|
||||||
|
append: yes
|
||||||
|
@ -3,29 +3,9 @@
|
|||||||
## Overview
|
## Overview
|
||||||
Welcome to the `pc-git` role documentation, part of the `cymais` repository. This role is focused on setting up Git, a widely-used version control system, on personal computers. The role includes tasks for installing Git and configuring global user details.
|
Welcome to the `pc-git` role documentation, part of the `cymais` repository. This role is focused on setting up Git, a widely-used version control system, on personal computers. The role includes tasks for installing Git and configuring global user details.
|
||||||
|
|
||||||
## Role Tasks
|
|
||||||
The `main.yml` file in the `pc-git` role consists of the following key tasks:
|
|
||||||
|
|
||||||
1. **Set Git User Email**: Uses the `ansible.builtin.shell` module to set the global Git user email to a specified value (`{{user_email}}`).
|
|
||||||
|
|
||||||
2. **Set Git User Name**: Similar to the above, this task sets the global Git user name (`{{user_full_name}}`) using the `ansible.builtin.shell` module.
|
|
||||||
|
|
||||||
3. **Install Git**: Employs the `community.general.pacman` module to install the Git package, ensuring it's present on the system.
|
|
||||||
|
|
||||||
## Purpose and Usage
|
## Purpose and Usage
|
||||||
The `pc-git` role is essential for developers, IT professionals, and anyone who needs to utilize version control for their projects. It automates the installation of Git and the initial configuration of user identity, which is crucial for committing changes and collaborating on projects using Git.
|
The `pc-git` role is essential for developers, IT professionals, and anyone who needs to utilize version control for their projects. It automates the installation of Git and the initial configuration of user identity, which is crucial for committing changes and collaborating on projects using Git.
|
||||||
|
|
||||||
## Prerequisites
|
|
||||||
- **Ansible**: Must be installed on your system to use this role.
|
|
||||||
- **Arch Linux-based System**: This role uses the `pacman` package manager, making it suitable for Arch Linux or similar distributions.
|
|
||||||
|
|
||||||
## Running the Role
|
|
||||||
To use this role:
|
|
||||||
1. Clone the `cymais` repository.
|
|
||||||
2. Navigate to the `roles/pc-git` directory.
|
|
||||||
3. Make sure to define the `user_email` and `user_full_name` variables before running the role.
|
|
||||||
4. Execute the role using Ansible, ensuring you have the required permissions for software installation and configuration.
|
|
||||||
|
|
||||||
## Customization
|
## Customization
|
||||||
You can customize this role by modifying the variables for user email and name or by adding additional Git configuration tasks as needed.
|
You can customize this role by modifying the variables for user email and name or by adding additional Git configuration tasks as needed.
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@ The `main.yml` file within the `pc-office` role comprises tasks for installing a
|
|||||||
## Dependencies
|
## Dependencies
|
||||||
This role depends on:
|
This role depends on:
|
||||||
- **pc-libreoffice**: Ensures that the LibreOffice suite, a comprehensive office package, is installed.
|
- **pc-libreoffice**: Ensures that the LibreOffice suite, a comprehensive office package, is installed.
|
||||||
- **pc-video-conference**: Provides tools necessary for video conferencing, supplementing the office setup.
|
- **pc-zoom**: Provides tools necessary for video conferencing, supplementing the office setup.
|
||||||
|
|
||||||
## Purpose and Usage
|
## Purpose and Usage
|
||||||
The `pc-office` role is ideal for users who require a full-fledged office setup on their personal computers. It encompasses tools for web browsing, email management, e-book organization, and document editing, catering to a wide range of office and productivity needs.
|
The `pc-office` role is ideal for users who require a full-fledged office setup on their personal computers. It encompasses tools for web browsing, email management, e-book organization, and document editing, catering to a wide range of office and productivity needs.
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
- pc-libreoffice
|
- pc-libreoffice
|
||||||
- pc-video-conference
|
- pc-browsers
|
@ -1,7 +1,6 @@
|
|||||||
- name: install office sofware
|
- name: install office sofware
|
||||||
community.general.pacman:
|
community.general.pacman:
|
||||||
name:
|
name:
|
||||||
- chromium
|
|
||||||
- thunderbird
|
- thunderbird
|
||||||
- calibre
|
- calibre
|
||||||
- retext
|
- retext
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
# PC-Video-Conference Role
|
# PC-Video-Conference Role
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
Welcome to the `pc-video-conference` role documentation, a part of the `cymais` repository. This role is focused on installing video conferencing software on Linux systems, specifically tailored for personal use and remote work requirements.
|
Welcome to the `pc-zoom` role documentation, a part of the `cymais` repository. This role is focused on installing video conferencing software on Linux systems, specifically tailored for personal use and remote work requirements.
|
||||||
|
|
||||||
## Role Tasks
|
## Role Tasks
|
||||||
The `main.yml` file in the `pc-video-conference` role includes tasks for setting up video conferencing tools:
|
The `main.yml` file in the `pc-zoom` role includes tasks for setting up video conferencing tools:
|
||||||
|
|
||||||
1. **Install Video Conference Software**:
|
1. **Install Video Conference Software**:
|
||||||
- Utilizes the `kewlfft.aur.aur` module with `yay` as the helper to install `zoom`, a popular video conferencing application.
|
- Utilizes the `kewlfft.aur.aur` module with `yay` as the helper to install `zoom`, a popular video conferencing application.
|
||||||
@ -17,7 +17,7 @@ This role relies on:
|
|||||||
- **system-aur-helper**: Ensures that an Arch User Repository (AUR) helper is installed, necessary for installing software like Zoom which may not be available in standard repositories.
|
- **system-aur-helper**: Ensures that an Arch User Repository (AUR) helper is installed, necessary for installing software like Zoom which may not be available in standard repositories.
|
||||||
|
|
||||||
## Purpose and Usage
|
## Purpose and Usage
|
||||||
The `pc-video-conference` role is particularly useful for professionals, educators, and anyone who needs reliable video conferencing capabilities on their Linux system. With the increasing demand for remote communication, this role provides an efficient way to set up key video conferencing tools.
|
The `pc-zoom` role is particularly useful for professionals, educators, and anyone who needs reliable video conferencing capabilities on their Linux system. With the increasing demand for remote communication, this role provides an efficient way to set up key video conferencing tools.
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
- **Ansible**: Required to run this role.
|
- **Ansible**: Required to run this role.
|
||||||
@ -26,7 +26,7 @@ The `pc-video-conference` role is particularly useful for professionals, educato
|
|||||||
## Running the Role
|
## Running the Role
|
||||||
To utilize this role:
|
To utilize this role:
|
||||||
1. Clone the `cymais` repository.
|
1. Clone the `cymais` repository.
|
||||||
2. Navigate to the `roles/pc-video-conference` directory.
|
2. Navigate to the `roles/pc-zoom` directory.
|
||||||
3. Run the role using Ansible, ensuring you have appropriate system permissions for software installation.
|
3. Run the role using Ansible, ensuring you have appropriate system permissions for software installation.
|
||||||
|
|
||||||
## Customization
|
## Customization
|
@ -1,4 +1,5 @@
|
|||||||
# System AUR Helper
|
# System AUR Helper
|
||||||
|
|
||||||
## Description
|
## Description
|
||||||
|
|
||||||
This role ensures that the AUR helper [yay](https://wiki.archlinux.org/title/Yay) is installed on the system. It installs yay via [pacman](https://wiki.archlinux.org/title/Pacman) and creates a dedicated `aur_builder` user to facilitate building AUR packages.
|
This role ensures that the AUR helper [yay](https://wiki.archlinux.org/title/Yay) is installed on the system. It installs yay via [pacman](https://wiki.archlinux.org/title/Pacman) and creates a dedicated `aur_builder` user to facilitate building AUR packages.
|
||||||
|
@ -1,9 +1,6 @@
|
|||||||
- name: pull auto-btrfs-balancer.git
|
- name: install auto-btrfs-balancer
|
||||||
git:
|
command:
|
||||||
repo: "https://github.com/kevinveenbirkenbach/auto-btrfs-balancer.git"
|
cmd: "pkgmgr install auto-btrfs-balancer"
|
||||||
dest: "{{system_btrfs_auto_balancer_folder}}"
|
|
||||||
update: yes
|
|
||||||
ignore_errors: true
|
|
||||||
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
|
||||||
|
@ -4,4 +4,4 @@ OnFailure=systemd-notifier.cymais@%n.service
|
|||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=oneshot
|
Type=oneshot
|
||||||
ExecStart=/bin/sh -c '/usr/bin/python {{system_btrfs_auto_balancer_folder}}main.py 90 10'
|
ExecStart=/bin/sh -c 'auto-btrfs-balancer 90 10'
|
@ -22,4 +22,4 @@ 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
|
@ -1,11 +1,8 @@
|
|||||||
- name: pull swapfile creating script
|
- name: install swap-forge
|
||||||
git:
|
command:
|
||||||
repo: "https://github.com/kevinveenbirkenbach/create-linux-swapfile.git"
|
cmd: "pkgmgr install backup-docker-to-local"
|
||||||
dest: "$HOME/Repositories/github.com/kevinveenbirkenbach/create-linux-swapfile"
|
become: true
|
||||||
update: yes
|
|
||||||
ignore_errors: true
|
|
||||||
become: false
|
|
||||||
|
|
||||||
- name: Execute create swapfile script
|
- name: Execute create swapfile script
|
||||||
ansible.builtin.shell: bash "/home/{{client_username}}/Repositories/github.com/kevinveenbirkenbach/create-linux-swapfile/create-linux-swapfile.sh" "{{swapfile_size}}"
|
ansible.builtin.shell: swap-forge "{{swapfile_size}}"
|
||||||
become: true
|
become: true
|
23
roles/update-pip/README.md
Normal file
23
roles/update-pip/README.md
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
# Update Pip Packages
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
This Ansible role automatically updates all installed Python Pip packages to their latest versions.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
The role performs the following:
|
||||||
|
- Executes a command to retrieve all installed Python Pip packages.
|
||||||
|
- Updates each package individually to its latest available version.
|
||||||
|
- Ensures a smooth and automated Python environment maintenance process.
|
||||||
|
|
||||||
|
## Purpose
|
||||||
|
|
||||||
|
Ensures Python packages remain up-to-date, improving security and functionality.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- **Automatic Updates:** Automates the process of upgrading Python packages.
|
||||||
|
- **Platform Independent:** Works on Linux, macOS, and Windows environments.
|
||||||
|
- **Ansible Integration:** Easy to include in larger playbooks or maintenance routines.
|
||||||
|
|
26
roles/update-pip/meta/main.yml
Normal file
26
roles/update-pip/meta/main.yml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
galaxy_info:
|
||||||
|
author: "Kevin Veen-Birkenbach"
|
||||||
|
license: "CyMaIS NonCommercial License (CNCL)"
|
||||||
|
license_url: "https://s.veen.world/cncl"
|
||||||
|
company: |
|
||||||
|
Kevin Veen-Birkenbach
|
||||||
|
Consulting & Coaching Solutions
|
||||||
|
https://www.veen.world
|
||||||
|
description: "Automatically updates all Python Pip packages to their latest available versions."
|
||||||
|
min_ansible_version: "2.9"
|
||||||
|
platforms:
|
||||||
|
- name: Ubuntu
|
||||||
|
versions:
|
||||||
|
- all
|
||||||
|
- name: Archlinux
|
||||||
|
versions:
|
||||||
|
- rolling
|
||||||
|
- name: Debian
|
||||||
|
versions:
|
||||||
|
- all
|
||||||
|
galaxy_tags:
|
||||||
|
- python
|
||||||
|
- pip
|
||||||
|
- update
|
||||||
|
- maintenance
|
||||||
|
dependencies: []
|
4
roles/update-pip/tasks/main.yml
Normal file
4
roles/update-pip/tasks/main.yml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
- name: Update all local pip packages
|
||||||
|
shell: "pip freeze --local | grep -v '^\-e' | cut -d = -f 1 | xargs -n1 pip install -U --break-system-packages"
|
||||||
|
args:
|
||||||
|
executable: /bin/bash
|
@ -29,3 +29,14 @@
|
|||||||
include_role:
|
include_role:
|
||||||
name: update-yay
|
name: update-yay
|
||||||
when: yay_installed.rc == 0
|
when: yay_installed.rc == 0
|
||||||
|
|
||||||
|
- name: "Check if pip is installed"
|
||||||
|
command: which pip
|
||||||
|
ignore_errors: yes
|
||||||
|
register: pip_installed
|
||||||
|
changed_when: false
|
||||||
|
|
||||||
|
- name: "Update with pip"
|
||||||
|
include_role:
|
||||||
|
name: update-pip
|
||||||
|
when: pip_installed.rc == 0
|
||||||
|
Loading…
x
Reference in New Issue
Block a user