marauderxtreme.local_system
@MarauderXtreme local_system
This is a simple Ansible role designed to help set up and configure my local system.
This role has some hard-coded configurations and files that I find useful. Use it at your own risk. It's designed for KDE Neon but should work with any Debian-based system and can be adjusted for other distributions.
Requirements
There's a small issue in the role. The role sets up the system with become: yes, but it only writes sudoers with NOPASSWD: in some tasks. To avoid errors, you need to edit the sudoers file or copy the provided sudoers file to /etc/sudoers.
Role Variables
All variables are defined in the defaults/main/* files and start with the role name local_system to avoid name conflicts. You can override them in your group or host variables.
[
main.yml]nodejs_install_npm_user: needed bygeerlingguy.nodejs, default isroot.local_system_uppercase_folders: list of folder names in~that need to be changed to lower-case.local_system_projects_paths: list of project paths/directories.local_system_paths_unshorten: list of directories that should not be shortened by the p10k path prompt.
[
packages.yml]local_system_general_packages: packages that should be installed on every system.local_system_debian_packages: packages that are only for Debian-based systems.local_system_ppa_packages: useful packages from Launchpad PPAs only.
[
ppas.yml]local_system_ppa: list of Launchpad PPAs in the formatppa:USER/PPA.
[
extra_software.yml]local_system_ubuntu_keyserver: configurable Ubuntu keyserver.local_system_extra_software.ubuntu: configurations for PPAs not on Launchpad. Manual setup is needed. You can do it in two ways:- Importing a key from a URL:
- name: signal url: https://updates.signal.org/desktop/apt/keys.asc id: DBA36B5181D0C816F630E889D980A17457F6FB06 repo: deb [arch=amd64] https://updates.signal.org/desktop/apt xenial main package: signal-desktop - Importing a key from the keyserver:
- name: teamviewer keyserver: "{{ local_system_ubuntu_keyserver }}" id: 8CAE012EBFAC38B17A937CD8C5E224500C1289C0 repo: deb http://linux.teamviewer.com/deb package: teamviewer
- Importing a key from a URL:
[
git.yml]local_system_gitconfig: useful general git configurations.local_system_diff_so_fancy_gitconfig: git configurations for diff-so-fancy.
[
pip.yml]local_system_pip: list of pip packages installed in the user directory, currently includesthefuckandpowerline-status.
[
versions.yml]- Most variables act as controls; set them to false if you don't want to install or use certain items. I'm tracking these repos via gitpunch for updates.
local_system_omz: [oh-my-zsh] branches/tags/versions.- Other variables for various tools and fonts, allowing you to specify versions.
Example Playbook
- hosts: localhost
roles:
- local_system
License
MIT
Author Information
Christoph Kepler development@kepler.international
Is it any good
Reference - Setup for my workstation
ansible-galaxy install marauderxtreme.local_system