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 includesthefuck
andpowerline-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