Created
December 7, 2019 03:07
-
-
Save pfaffman/068916c868c9d8387decf21738e16920 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env ansible-playbook | |
--- | |
- hosts: localhost | |
vars: | |
packages: | |
- exfat-fuse | |
- exfat-utils | |
- xfsprogs | |
- xfsdump | |
- hfsprogs | |
- gparted | |
- emacs | |
- vim | |
- openssh-server | |
- ssh-import-id | |
- whois | |
- macchanger | |
- gimp | |
- shotwell | |
- ubuntu-restricted-extras | |
- audacity | |
- hplip-gui | |
- git | |
- git-cola | |
- git-core | |
- mysql-client | |
- mysql-workbench | |
- curl | |
- tmux | |
- s3cmd | |
- keepassxc | |
- aptitude | |
- gnome-tweak-tool | |
- docker.io | |
laptop_packages: | |
- hibernate | |
missing_packages: | |
- skype | |
remove_packages: | |
- thunderbird | |
text_packages: | |
- texlive-latex-base | |
- texlive-latex-extra | |
- texlive-fonts-recommended | |
- texlive-bibtex-extra | |
- biber | |
- pandoc | |
- texlive-xetex | |
- pandoc | |
- haskell-platform | |
- markdown | |
- fonts-linuxlibertine ghc6 ghc6-prof ghc6-doc | |
- texify | |
- unrtf | |
- texlive-base | |
- texlive-latex-base | |
- texlive-latex-recommended | |
- texlive-fonts-extra | |
- texlive-fonts-recommended | |
- texlive-latex-extra | |
- texlive-publishers | |
- ttf-mscorefonts-installer | |
- msttcorefonts/accepted-mscorefonts-eula | |
file_systems: | |
- exfat-fuse | |
- exfat-utils | |
- xfsprogs | |
- xfsdump | |
- hfsprogs | |
- gparted | |
other_stuff: | |
- keybase # installed below | |
extra_packages: | |
- google-chrome-stable | |
tasks: | |
- name: install the packages | |
apt: | |
name: "{{ packages }}" | |
become: yes | |
- name: sudoers | |
lineinfile: | |
path: /etc/sudoers.d/{{item}} | |
line: "{{item}} ALL = NOPASSWD: ALL" | |
state: present | |
create: yes | |
become: yes | |
loop: | |
- pfaffman | |
- ubuntu | |
- lc | |
- jay | |
- name: no darn caps | |
shell: "{{item}}" | |
loop: | |
- gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:nocaps']" | |
- gsettings set org.gnome.desktop.wm.keybindings maximize-vertically "['<Super>Up']" | |
- gsettings set org.gnome.desktop.wm.keybindings maximize-horizontally "['<Super>Right']" | |
- gsettings set org.gnome.desktop.wm.keybindings activate-window-menu "['<Super>space']" | |
- gsettings set org.gnome.desktop.wm.keybindings begin-resize "['<Super>r']" | |
- gsettings set org.gnome.desktop.wm.keybindings begin-move "['<Super>m']" | |
- gsettings set org.gnome.desktop.wm.keybindings move-to-center "['<Super>c']" | |
- gsettings set org.gnome.desktop.wm.keybindings raise "['<Super>u']" | |
- gsettings set org.gnome.desktop.wm.keybindings lower "['<Super>l']" | |
- gsettings set org.gnome.desktop.wm.keybindings minimize "['<Super>z']" | |
- gsettings set org.gnome.desktop.wm.keybindings activate-window-menu \[\'disabled\'\] | |
- gsettings set org.gnome.Evince.Default continuous false | |
#- gconftool --type int -s /apps/gnome-power-manager/backlight/idle_dim_time 30 | |
#- gconftool --type int -s /apps/gnome-power-manager/timeout/sleep_display_battery 300 | |
#- gconftool --type int -s /apps/gnome-power-manager/timeout/sleep_computer_battery 300 | |
# fix focus follows mouse and such | |
- gsettings set org.gnome.desktop.wm.preferences focus-mode 'sloppy' | |
- gsettings set org.gnome.desktop.wm.preferences auto-raise false | |
- gsettings set org.gnome.desktop.screensaver lock-enabled false | |
- name: get keybase deb | |
get_url: | |
url: https://prerelease.keybase.io/keybase_amd64.deb | |
dest: /tmp/keybase_amd64.deb | |
mode: '0440' | |
- name: install keybase | |
shell: "dpkg -i /tmp/keybase_amd64.deb ; apt install -f -y ; run_keybase" | |
become: yes | |
args: | |
creates: /usr/bin/keybase | |
- name: get dbeaver deb | |
get_url: | |
url: https://dbeaver.io/files/dbeaver-ce_latest_amd64.deb | |
dest: /tmp/dbeaver.deb | |
mode: '0440' | |
- name: install dbeaver | |
shell: "dpkg -i /tmp/dbeaver.deb ; apt install -f -y" | |
become: yes | |
args: | |
creates: /usr/bin/dbeaver | |
- name: mkdir ~/src/ | |
file: | |
path: /home/pfaffman/src | |
state: directory | |
mode: '0755' | |
- name: get do-dyndns | |
git: | |
repo: https://github.com/pfaffman/do-dyndns.git | |
dest: /home/pfaffman/src/do-dyndns | |
- name: install do-dyndns | |
shell: "/bin/bash /home/pfaffman/src/do-dyndns/do-dyndns --install" | |
become: yes | |
args: | |
creates: /etc/network/if-up.d/do-dyndns | |
- name: install docker | |
shell: "curl -fsSL https://get.docker.com -o get-docker.sh ; sh get-docker.sh" | |
become: yes | |
args: | |
creates: /usr/bin/docker | |
when: no | |
# Install stuff with snap | |
- name: Install snap stuff | |
snap: | |
name: | |
- doctl | |
- vscode | |
classic: yes | |
become: yes | |
# install keys | |
- name: install keys | |
shell: ssh-import-id-gh pfaffman | |
# stuff for laptop | |
- name: stuff for laptop | |
block: | |
- name: install the packages | |
apt: | |
name: "{{ laptop_packages }}" | |
- name: set swap file permission | |
file: | |
path: /extraswap | |
owner: root | |
group: root | |
mode: '0600' | |
state: touch | |
- name: Create swap space | |
command: fallocate -l 16G /extraswap | |
when: ansible_swaptotal_mb < ansible_memtotal_mb | |
- name: Make swap | |
command: mkswap /extraswap | |
when: ansible_swaptotal_mb < ansible_memtotal_mb | |
- name: Add to fstab | |
action: lineinfile dest=/etc/fstab regexp="extraswap" line="/extraswap none swap sw 0 0" state=present | |
- name: Turn swap on | |
command: swapon -a | |
- name: Set swapiness | |
shell: echo 10 | sudo tee /proc/sys/vm/swappiness | |
become: yes |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment