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 by geerlingguy.nodejs, default is root.
    • 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 format ppa: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
        
  • [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 includes thefuck and powerline-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

Yes

Installa
ansible-galaxy install marauderxtreme.local_system
Licenza
mit
Download
107
Proprietario
DevOp Engineer that likes ansible, docker and tries to keep up with basic web development.