Skip to content

W00glin/ansible_pop_os-desktop-

Repository files navigation

Ansible Pop!_OS setup 🧑🏼‍💻

This is my own "personal" fork for Ansible roles to setup Pop!_OS. This playbook is focused on quickly deploying a "ready to use" Pop!_OS machine. It installs a number of utilites that I use for homelab work, "dev" work and gaming. This is also where I learn and test out Git and GitHub features and tools. So if you see a lot of odd, pointless commits that would be why.

Requirements

  • Git
  • Ansible 2+ (automatically installed from Ansible offical PPA with the provided install.sh script)

Installation

First, you need to install Git and Ansible :

$ sudo apt-get install git
$ git clone https://github.com/W00glin/ansible-pop_os-desktop.git
$ cd ansible-pop_os-desktop
$ bash ./install.sh

Then you need to copy the group_vars/all.yml to group_vars/local.yml and customize the which role you need suits your needs. All roles are disabled by default. To customize the install, simply enable any of the boolean options in the all.yml file.

Now if you want to view what the ansible playbook is going to change prior to actually running the playbook you should run ansible-playbook ansible-desktop.yml --check. From the documentation -

Check mode is just a simulation. It will not generate output for tasks that use conditionals based on registered variables (results of prior tasks). However, it is great for validating configuration management playbooks that run on one node at a time

Run ansible-playbook ansible-desktop.yml --ask-become-pass and enter your sudo password to run the playbook

Optionaly you can run just some of the tags like: ansible-playbook ansible-desktop.yml --ask-become-pass --tags=common,locales

Tags are named the same as role dirs. If a role is in a sub dir then the tag for that specific role is sepparated with a colon like: aws:cli. But you can also use aws and that should install all the roles under the aws dir.

Roles included

Role Description
General
common Install a lot of usefull packages (curl, htop, less, zip ... see corresponding task file
java-openjdk Install Default Java JDK.
🖥️ Desktop tools 💻
desktop Install a lot of usefull packages (meld, tilda, vlc, xclip).
filezilla Install Filezilla (no particular settings, basic installation).
firefox Install Firefox (no particular settings, basic installation).
gimp Install Gimp and some minor settings.
nautilus-plugins Install Nautilus plugins.
tmux Install tmux, is a terminal multiplexer. It lets you switch easily between several programs in one terminal, detach them (they keep running in the background) and reattach them to a different terminal. And do a lot more.
vagrant Install Vagrant from online deb file.
terraform Install Terraform an open-source infrastructure-as-code software tool created by HashiCorp.
virtualbox Install VirtualBox from VirtualBox APT repositories.
qemu Install qemu as an alternative to virtualbox if you want to avoid virtualbox and Oracle.
steam Install steam video game platform with add GNU/Linux compatability layers.
numix-circle Install numix-circle as the icon theme.
visual studio code Install Visual Studio Code
neofetch Install neofetch, a CLI tool for system info.
lutris Install lutris, a game manager tool for GNU/Linux.
Flameshot Install Flameshot to screenshot all the things.
LocalSend Install LocalSend a FOSS cross-platform filesharing tool.
📡 Services & server tools 🛠️
ssh Install OpenSSH Server
ufw Install ufw, it is the uncomplicated firewall.
gufw Install gufw, it is a graphical interface for ufw.
cutecom Install cutecom, it is a graphical interface for interacting with console ports.
ipmitool Install ipmitool, it is a CLI tool for managing old IPMI interfaces
virt-manager Install virt-manager KVM managment tool.
wireshark Install wireshark PCAP file analysis tool.
nmap Install nmap, a common CLI tool for network troubleshooting and information gathering.
openvpn Install openvpn, for utilizing VPN configs for PIA.
vagrant Install Vagrant from online deb file.

Contributing

Do whatever you want. This is my fork. I don't plan on upstreaming any of my changes. If you like it, go ahead and fork it, or not. If you want to make changes, feel free to submit a PR.

About

Pop!_OS desktop setup local environment. Originally forked from https://github.com/sys0dm1n/ansible-ubuntu-desktop.

Resources

License

Stars

Watchers

Forks

Languages