Skip to content
This repository has been archived by the owner on Jul 3, 2024. It is now read-only.

Commit

Permalink
Version 2.7.0
Browse files Browse the repository at this point in the history
  • Loading branch information
marcinbojko committed Jul 9, 2023
1 parent d3bb301 commit bca2a87
Show file tree
Hide file tree
Showing 9 changed files with 163 additions and 878 deletions.
50 changes: 50 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,55 @@
# Changelog "linux_mint"

## Version 2.7.0 [2023-07-09]

* [BREAKING_CHANGE] - removal of Linux Mint 20.x support - last version supporting it will be 2.6.1
* [BREAKING_CHANGE] - Forticlient Ubuntu repo's key expired - temporarily commented out
* [APPLICATION] removal `teams` package
* [REPOSITORY] removal `ms-teams` repository
* [APPLICATION] upgraded `amass` to version 3.23.3
* [APPLICATION] upgraded `angryip` to version 3.9.1
* [APPLICATION] upgraded `argocd` to version 2.7.7
* [APPLICATION] upgraded `balena-etcher` to version 1.18.8
* [APPLICATION] upgraded `datree` to version 1.9.10
* [APPlICATION] upgraded `dive` to version 0.11.0
* [APPLICATION] upgraded `docker-compose` to version 2.19.1
* [APPLICATION] upgraded `dockle` to version 0.4.11
* [APPLICATION] upgraded `gping` to version 1.13.1
* [APPLICATION] upgraded `helm` to version 3.12.1
* [APPLICATION] upgraded `imager` to version 1.7.5
* [APPLICATION] upgraded `k3d` to version 5.5.1
* [APPLICATION] upgraded `k3s` to version 1.25.11
* [APPLICATION] upgraded `k3sup` to version 0.12.13
* [APPLICATION] upgraded `k9s` to version 0.27.4
* [APPLICATION] upgraded `kube-bench` to version 0.6.15
* [APPLICATION] upgraded `kubeconform` to version 0.6.2
* [APPLICATION] upgraded `kubent` to version nightly-0.7.0-14-gb3e2b3f
* [APPLICATION] upgraded `kubestr` to version 0.4.37
* [APPLICATION] upgraded `kustomize` to version 5.1.0
* [APPLICATION] upgraded `minikube` to version 1.30.1
* [APPLICATION] upgraded `nerdctl` to version 1.4.0
* [APPLICATION] upgraded `packer` to version 1.9.1
* [APPLICATION] upgraded `polaris` to version 8.3.0
* [APPLICATION] upgraded `rambox` to version 2.1.4
* [APPLICATION] upgraded `rke` to version 1.4.7
* [APPLICATION] upgraded `steampipe` to version 0.20.8
* [APPLICATION] upgraded `syft` to version 0.84.1
* [APPLICATION] upgraded `tabby` to version 1.0.197
* [APPLICATION] upgraded `terraform` to version 1.5.2
* [APPLICATION] upgraded `tflint` to version 0.47.0
* [APPLICATION] upgraded `vagrant` to version 2.3.8
* [APPLICATION] upgraded `vault` to version 1.14.0
* [APPLICATION] upgraded `zoom` to version 5.15.2.4260
* [VSCODE] added `ecmel.vscode-html-css`
* [VSCODE] added `github.vscode-github-actions`
* [VSCODE] added `ms-dotnettools.vscode-dotnet-runtime`
* [VSCODE] added `ms-python.isort`
* [VSCODE] added `ms-python.vscode-pylance`
* [VSCODE] added `ms-vscode-remote.remote-server`
* [VSCODE] added `ms-vscode.remote-explorer`
* [VSCODE] added `redhat.java`
* [VSCODE] added `Tim-Koehler.helm-intellisense`

## Version 2.6.1 [2023-02-05]

* [VSCODE] removed obsoleted extensions `ms-vsliveshare.vsliveshare-audio` - [https://github.com/MicrosoftDocs/live-share/issues/4826](https://github.com/MicrosoftDocs/live-share/issues/4826)
Expand Down
10 changes: 4 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Ansible playbook for your DevOps/SysOps Linux Mint 20.x/21.x based workstation
# Ansible playbook for your DevOps/SysOps Linux Mint 21.x based workstation

[![Super-Linter](https://github.com/marcinbojko/linux_mint/actions/workflows/01_lint_me.yml/badge.svg)](https://github.com/marcinbojko/linux_mint/actions/workflows/01_lint_me.yml)
[![Ansible Lint](https://github.com/marcinbojko/linux_mint/actions/workflows/02_ansible_lint.yml/badge.svg)](https://github.com/marcinbojko/linux_mint/actions/workflows/02_ansible_lint.yml)
<!-- TOC -->

- [Ansible playbook for your DevOps/SysOps Linux Mint 20.x/21.x based workstation](#ansible-playbook-for-your-devopssysops-linux-mint-20x21x-based-workstation)
- [Ansible playbook for your DevOps/SysOps Linux Mint 21.x based workstation](#ansible-playbook-for-your-devopssysops-linux-mint-21x-based-workstation)
- [Prerequisites](#prerequisites)
- [Ansible 2.10 and higher reminder](#ansible-210-and-higher-reminder)
- [Assumptions](#assumptions)
Expand Down Expand Up @@ -36,8 +36,8 @@

## Prerequisites

- installed `Linux Mint` 20.0/20.1/20.2/20.3/21.0/21.1 - all 64-bit, standard options with extra codecs (available as selection during install)
- for previous versions of Mint - last release supporting `Linux Mint 19` was 2.1.6
- installed `Linux Mint` 21.0/21.1 - all 64-bit, standard options with extra codecs (available as selection during install)
- for previous versions of Mint (20.x) - last release supporting `Linux Mint 20` was 2.6.1
- access to internet
- `openssh-server` installed and running
- `ansible` in version 2.10 or higher
Expand Down Expand Up @@ -224,7 +224,6 @@ custom_packages:
- `skype` - Microsoft's communicator
- `spotify` - Music streaming service
- `sublime text 3` - Alternative text editor
- `teams` - Microsoft Teams Linux Client
- `trivy` - Container security scanner
- `veeam` - Veeam Agent for Linux
- `veracrypt` - Device encryption utility
Expand Down Expand Up @@ -303,7 +302,6 @@ custom_packages:
| GIMP | GNU Image Manipulation Program | [https://www.gimp.org/](https://www.gimp.org/)|
| Insync|Googledrive & Onedrive linux client|[https://www.insynchq.com/](https://www.insynchq.com/)|
| Kodi | Open Source Home Theater| [https://kodi.tv/](https://kodi.tv/)|
| Microsoft Teams | IM |[https://www.microsoft.com/en/microsoft-365?omkt=en-US&rtc=1](https://www.microsoft.com/en/microsoft-365?omkt=en-US&rtc=1)|
| Neofetch |A command-line system information tool written in bash 3.2+| [https://github.com/dylanaraps/neofetch](https://github.com/dylanaraps/neofetch)|
| PDK/Puppet Agent | Puppet Development Kit | [https://puppet.com/docs/pdk/1.x/pdk.html](https://puppet.com/docs/pdk/1.x/pdk.html)|
| Pinta | Drawing/Image Editing| [https://pinta-project.com/pintaproject/pinta/](https://pinta-project.com/pintaproject/pinta/)|
Expand Down
73 changes: 43 additions & 30 deletions linux_mint.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Prepares LinuxMint19/20 desktop.
# start from preparing ssh:
# sudo apt install openssh-server ntp;systemctl enable ssh && systemctl start ssh
#
# kind: playbook
- name: prepare_mint_desktop
hosts: all
vars:
Expand All @@ -24,7 +24,7 @@
reboot_required: false # force reboot even if apt upgrade won't change anything
unpack_folder: /tmp/linux_mint # folder to which we're going to unpack and download files
become: true
gather_facts: no
gather_facts: false
pre_tasks:
# ansible version
- name: verify_ansible_meets_version_requirements
Expand All @@ -48,7 +48,7 @@
- name: assert_root_partition_is_15_GB_of_free_space
ansible.builtin.assert: { that: item.size_available > 13622320128 } # 20 GB free
loop: '{{ ansible_mounts }}'
ignore_errors: no
ignore_errors: false
when: item.mount == '/'
tags:
- assert
Expand Down Expand Up @@ -187,6 +187,7 @@
- keys
- base
- obsolete
become: true
# remove obsolete packages
- name: remove_obsolete_apt_packages
ansible.builtin.apt:
Expand Down Expand Up @@ -350,7 +351,11 @@
- name: reconfigure_all_waiting_packages
ansible.builtin.shell: dpkg --configure -a
any_errors_fatal: false
ignore_errors: true
register: r_reconfigure_all_waiting_packages
retries: "{{ retries_count }}"
delay: "{{ delay_time }}"
until: r_reconfigure_all_waiting_packages is success
failed_when: false
changed_when: false
tags:
- packages
Expand All @@ -364,6 +369,7 @@
delay: "{{ delay_time }}"
until: r_apt_clean is success
when: r_apt_initial_refresh.failed
changed_when: r_apt_clean.rc != 0
tags:
- packages
- base
Expand Down Expand Up @@ -484,7 +490,7 @@
delay: "{{ delay_time }}"
register: r_update_flatpak
until: r_update_flatpak is success
any_errors_fatal: false
changed_when: r_update_flatpak.rc != 0
ignore_errors: true
when: install_flatpak
tags:
Expand Down Expand Up @@ -587,15 +593,23 @@
- apps
- name: refresh_desktop_database
ansible.builtin.shell: update-desktop-database
any_errors_fatal: false
register: r_refresh_desktop_database
until: r_refresh_desktop_database is success
retries: "{{ retries_count }}"
delay: "{{ delay_time }}"
failed_when: r_refresh_desktop_database.rc != 0
ignore_errors: true
changed_when:
changed_when: false
tags:
- base
- downloads
- apps
# Start user-related modification block
- name: user_modifications_block
tags:
- base
- user
- zsh
block:
- name: create_or_check_users_groups
ansible.builtin.user:
Expand Down Expand Up @@ -667,12 +681,11 @@
- base
- user
- yubico
tags:
- base
- user
- zsh
# start ansible block
# start ansible block
- name: start ansible block
tags:
- ansible
when: config_ansible
block:
- name: check_if_ansible_cfg_exists
ansible.builtin.stat:
Expand Down Expand Up @@ -700,9 +713,6 @@
register: r_change_ansible_options
until: r_change_ansible_options is success
when: ansible_exists
when: config_ansible
tags:
- ansible
# start steampipe plugins block
- name: install_steampipe_plugins_block
block:
Expand Down Expand Up @@ -731,13 +741,19 @@
- always
# start vscode extensions block
- name: install_vscode_extensions
tags:
- optional
- user
- vscode
- eztensions
when: install_vscode_extensions
block:
- name: remove_obsolete_extensions
ansible.builtin.shell: "code --uninstall-extension {{ item }} | true"
any_errors_fatal: false
ignore_errors: true
loop: "{{ vscode_obsolete }}"
become: yes
become: true
become_user: "{{ active_user }}"
register: r_remove_obsolete_extensions
changed_when: "'was successfully uninstalled!' in r_remove_obsolete_extensions.stdout"
Expand All @@ -747,7 +763,7 @@
any_errors_fatal: false
ignore_errors: true
changed_when: "r_dpkg_query_vscode.stdout != 'Status: install ok installed'"
become: yes
become: true
become_user: "{{ active_user }}"
- name: install_missing_extensions
ansible.builtin.shell: if [ ! $(code --list-extensions | grep {{ item }}) ]; then code --install-extension {{ item }} --force; fi
Expand All @@ -756,19 +772,17 @@
retries: "{{ retries_count }}"
delay: "{{ delay_time }}"
until: r_install_extension is success
become: yes
become: true
become_user: "{{ active_user }}"
changed_when: r_install_extension.stdout | length > 0
when: r_dpkg_query_vscode.rc == 0
any_errors_fatal: false
ignore_errors: true
tags:
- optional
- user
- vscode
when: install_vscode_extensions
# Start OS related block
- name: start_os_tweaks
tags:
- user
- base
block:
# OS related tweaks and finetuning
- name: set_timezone
Expand Down Expand Up @@ -798,7 +812,10 @@
line: 'hosts: files dns'
backrefs: yes
any_errors_fatal: false
ignore_errors: true
register: r_nsswitch_config
retries: "{{ retries_count }}"
delay: "{{ delay_time }}"
until: r_nsswitch_config is success
- name: restart_avahi_after_changes
ansible.builtin.systemd:
name: avahi-daemon
Expand Down Expand Up @@ -885,7 +902,7 @@
when: config_dconf and "absent" in item.state
any_errors_fatal: false
ignore_errors: true
become: yes
become: true
become_user: "{{ active_user }}"
tags:
- dconf
Expand All @@ -900,14 +917,10 @@
delay: "{{ delay_time }}"
until: r_dconf_values is success
when: config_dconf and "present" in item.state
become: yes
become: true
become_user: "{{ active_user }}"
tags:
- dconf
# Reboot
tags:
- user
- base
- name: update_all_packages
ansible.builtin.apt:
upgrade: "yes"
Expand Down
Loading

0 comments on commit bca2a87

Please sign in to comment.