From 5a1fab6eea0aa8bcac9a5e530301bf135266a051 Mon Sep 17 00:00:00 2001 From: Hyperling Date: Sat, 6 Feb 2021 15:33:26 -0600 Subject: [PATCH] GNOME settings and UI improvements. --- facts/general/package.yml | 4 ++ local.yml | 3 ++ tasks/freebsd/software/gui.yml | 1 + tasks/general/acct_mgmt/gnome.yml | 18 ------- tasks/general/software/gnome.yml | 84 +++++++++++++++++++++++++++++ tasks/general/software/packages.yml | 2 + tasks/linux/software/flatpaks.yml | 32 +++++++++-- 7 files changed, 121 insertions(+), 23 deletions(-) delete mode 100644 tasks/general/acct_mgmt/gnome.yml create mode 100644 tasks/general/software/gnome.yml diff --git a/facts/general/package.yml b/facts/general/package.yml index daf49a4..39720ef 100644 --- a/facts/general/package.yml +++ b/facts/general/package.yml @@ -6,6 +6,8 @@ set_fact: sshfs: sshfs locate: locate + gnome_tweaks: gnome-tweaks + dconf_editor: dconf-editor when: ansible_pkg_mgr == "apt" @@ -13,4 +15,6 @@ set_fact: sshfs: fusefs-sshfs locate: htop # Placeholder to prevent errors. locate builtin FreeBSD. + gnome_tweaks: gnome-tweaks + dconf_editor: dconf-editor when: ansible_system == "FreeBSD" \ No newline at end of file diff --git a/local.yml b/local.yml index 5f49dc0..0dd27d9 100644 --- a/local.yml +++ b/local.yml @@ -55,6 +55,9 @@ - name: Worktation | Linux | Packages | Not Implemented shell: echo "Not implemented yet. :(" when: ansible_system == "Linux" and not flatpak_distro + + post_tasks: + - include: tasks/general/software/gnome.yml # Create reports to analyze security. diff --git a/tasks/freebsd/software/gui.yml b/tasks/freebsd/software/gui.yml index da6a0df..140e922 100644 --- a/tasks/freebsd/software/gui.yml +++ b/tasks/freebsd/software/gui.yml @@ -8,6 +8,7 @@ - gnome3 - "{{ firefox_esr }}" - "{{ thunderbird }}" + - vscode state: present - name: Workstation | FreeBSD | GUI | Uninstall Bloat diff --git a/tasks/general/acct_mgmt/gnome.yml b/tasks/general/acct_mgmt/gnome.yml deleted file mode 100644 index 022aa44..0000000 --- a/tasks/general/acct_mgmt/gnome.yml +++ /dev/null @@ -1,18 +0,0 @@ ---- -# GNOME settings, extensions, and setup. - -# Setup Favorites (Terminal, Files, Firefox, Thunderbird, LBRY, Discord, VS Code, Android Studio, Lutris, Steam) - -# Make sure Gnome-Tweaks is installed - -# Dash to Dock Extension - -# Top Bar Settings (Battery Percentage, Clock Weekday+Seconds, Calendar Week Numbers) - -# Never Prompt for Removal Media - -# Dark theme? -#Pop-dark on Pop -#Adwaita-dark on everything else - -# Window Titlebars (Titlebar Buttons Minimize) diff --git a/tasks/general/software/gnome.yml b/tasks/general/software/gnome.yml new file mode 100644 index 0000000..546e50e --- /dev/null +++ b/tasks/general/software/gnome.yml @@ -0,0 +1,84 @@ +--- +# GNOME settings, extensions, and setup. + +# Make sure Gnome-Tweaks is installed +- name: General | Account Management | GNOME | Install Settings Editors + package: + name: + - "{{ gnome_tweaks }}" + - "{{ dconf_editor }}" + state: present + + +# Dash to Dock Extension +# Validate DtD by checking /org/gnome/shell/enabled-extensions for dash-to-dock@micxgx.gmail.com + + +# Setup Favorites Bar (Terminal, Files, Firefox, Thunderbird, LBRY, Discord, VS Code, Android Studio, Lutris, Steam) +- name: General | Account Management | GNOME | Favorites (Linux) + shell: sudo -u ling dconf write /org/gnome/shell/favorite-apps ['org.gnome.Terminal.desktop', 'org.gnome.Nautilus.desktop', 'firefox.desktop', 'org.mozilla.Thunderbird.desktop', 'io.lbry.lbry-app.desktop', 'com.discordapp.Discord.desktop', 'code.desktop', 'com.google.AndroidStudio.desktop', 'net.lutris.Lutris.desktop', 'steam.desktop'] + when: ansible_system == "Linux" + +- name: General | Account Management | GNOME | Favorites (FreeBSD) + shell: sudo -u ling dconf write /org/gnome/shell/favorite-apps ['org.gnome.Terminal.desktop', 'org.gnome.Nautilus.desktop', 'firefox.desktop', 'org.mozilla.Thunderbird.desktop', 'code.desktop'] + when: ansible_system == "FreeBSD" + + +# Top Bar Settings (Battery Percentage, Clock Weekday+Seconds, Calendar Week Numbers) +- name: General | Account Management | GNOME | Interface - Show Date + shell: sudo -u ling dconf write /org/gnome/desktop/interface/clock-show-date true + +- name: General | Account Management | GNOME | Interface - 24h Format + shell: sudo -u ling dconf write /org/gnome/desktop/interface/clock-format '24h' + +- name: General | Account Management | GNOME | Interface - Show Seconds + shell: sudo -u ling dconf write /org/gnome/desktop/interface/clock-show-seconds true + +- name: General | Account Management | GNOME | Interface - Show Weekday + shell: sudo -u ling dconf write /org/gnome/desktop/interface/clock-show-weekday true + +- name: General | Account Management | GNOME | Interface - 24h Format + shell: sudo -u ling dconf write /org/gnome/desktop/interface/show-battery-percentage true + +- name: General | Account Management | GNOME | Interface - Show Week Date + shell: sudo -u ling dconf write /org/gnome/desktop/calendar/show-weekdate true + + +# Never Prompt for Removal Media + + + +# Dark theme? +#Pop-dark on Pop +#Adwaita-dark on everything else + + + +# Window Titlebars (Titlebar Buttons Minimize) +- name: General | Account Management | GNOME | Windows Buttons + shell: sudo -u ling dconf write /org/gnome/desktop/wm/preferences/button-layout 'appmenu:minimize,close' + + +# Security +- name: General | Account Management | GNOME | Privacy - Camera + shell: sudo -u ling dconf write /org/gnome/desktop/privacy/disable-camera true + +- name: General | Account Management | GNOME | Privacy - Microphone + shell: sudo -u ling dconf write /org/gnome/desktop/privacy/disable-microphone true + + + +# Schemas to try after looking at gsettings list-schemas | sort +# org.gnome.ControlCenter -- not very interesting +# org.gnome.desktop.default-applications -- nothing?? Where do we set Firefox and Evolution? +# org.gnome.desktop.interface -- Good stuff in here. +# org.gnome.desktop.peripherals -- Nothing :( +# org.gnome.desktop.privacy -- Good stuff here too!! Cool! +# org.gnome.desktop.session +# org.gnome.desktop.wm.keybindings +# org.gnome.desktop.wm.preferences +# org.gnome.power-manager +# org.gnome.SessionManager +# org.gnome.shell +# org.gnome.shell.extensions.pop-shell +# org.gnome.shell.keybindings \ No newline at end of file diff --git a/tasks/general/software/packages.yml b/tasks/general/software/packages.yml index 6e62b7e..4343f07 100644 --- a/tasks/general/software/packages.yml +++ b/tasks/general/software/packages.yml @@ -34,6 +34,8 @@ package: name: - cowsay # Sorry ;) + - chromium + - chromium-browser state: absent # TODO: Confirm if Ubuntu still uses snap for critical components like GNOME. diff --git a/tasks/linux/software/flatpaks.yml b/tasks/linux/software/flatpaks.yml index 6ddc72d..6c2428b 100644 --- a/tasks/linux/software/flatpaks.yml +++ b/tasks/linux/software/flatpaks.yml @@ -1,4 +1,5 @@ --- +# Use flatpaks because they're consistent! :) # Flatpak Pre-reqs - name: Workstation | Linux | Flatpak | Install Flatpak @@ -13,32 +14,53 @@ method: system flatpakrepo_url: https://dl.flathub.org/repo/flathub.flatpakrepo + # Flatpak Installs - name: Workstation | Linux | Flatpak | Install Discord flatpak: name: com.discordapp.Discord + remote: flathub + state: present - name: Workstation | Linux | Flatpak | Install Shotcut flatpak: name: org.shotcut.Shotcut + remote: flathub + state: present -- name: Workstation | Linux | Flatpak | Do Not Use Firefox Flatpak (It's Broke Boys!) +- name: Workstation | Linux | Flatpak | Remove Firefox (It's Broke Boys!) flatpak: name: org.mozilla.firefox + remote: flathub state: absent - name: Workstation | Linux | Flatpak | Install Thunderbird flatpak: name: org.mozilla.Thunderbird + remote: flathub + state: present + +- name: Workstation | Linux | Flatpak | Install LBRY + flatpak: + name: io.lbry.lbry-app + remote: flathub + state: present + +- name: Workstation | Linux | Flatpak | Install Steam + flatpak: + name: com.valvesoftware.Steam + remote: flathub + state: present + # Repo Software -- name: Workstation | Linux | Flatpak | Install Firefox ESR From Package Manager +- name: Workstation | Linux | Flatpak | Install Firefox ESR from Package Manager package: name: - "{{ firefox_esr }}" - state: latest + state: present -- name: Workstation | Linux | Flatpak | Remove Normal Firefox for ESR +- name: Workstation | Linux | Flatpak | Remove Firefox Normal for ESR package: name: - "{{ firefox }}" @@ -48,7 +70,7 @@ - name: Workstation | Linux | Flatpak | Remove Software From Package Manager package: name: - - "{{ firefox }}" - "{{ thunderbird }}" - "{{ evolution }}" + - steam state: absent \ No newline at end of file