Compare commits

...

6 Commits

Author SHA1 Message Date
bc2a99db75 freetube + zoom + element desktop OK 2026-01-23 11:35:54 +01:00
f52725295f add keyboard task 2026-01-23 10:51:49 +01:00
a69729854e need debug ublock origin + libreoffice 2026-01-23 10:46:12 +01:00
54feb67879 update readme + test first tasks 2026-01-22 17:17:14 +01:00
0f7918e655 maj readme 2026-01-20 13:40:19 +01:00
5a5e844d46 push trixie garage post install role to test 2026-01-20 13:37:25 +01:00
42 changed files with 499 additions and 588 deletions

View File

@ -1,6 +1,6 @@
# Debian 13 Ansible workstation installation # Debian 13 Ansible Garage post install
Collection of ansible roles to provision a debian 13 workstation locally Ansible role to provision a debian 13 computer for le Garage numérique
## Configuration ## Configuration
@ -10,25 +10,43 @@ sudo apt install ansible
## Utilisation ## Utilisation
- Edit inventory.yml for targeted machine
- Test with vagrant: - Test with vagrant:
> Create a trixi vagrant box [here](https://git.legaragenumerique.fr/GARAGENUM/packer-box-deb13) ```bash
sudo apt install vagrant
vagrant up
```
- Install all: - Install all:
```bash ```bash
ansible-playbook playbooks/install.yml --ask-become-pass ansible-playbook playbooks/install.yml --ask-become-pass
``` ```
- Install only one role: :warning: exchange ssh-keys with target machine(s) first
<!-- - Install only one role:
```bash ```bash
ansible-playbook playbooks/install.yml --ask-become-pass --tags ollama ansible-playbook playbooks/install.yml --ask-become-pass --tags ollama
``` ``` -->
## To add ## Tasks
- [ ] hugo (extended) - [x] apt
- [x] dns
- [x] base_tools
- [x] firefox (debug ublock origin installed but ineffective) !!!
- [ ] cp keyboard file
- [ ] apps:
- [x] freetube
- [x] zoom
- [x] element
- [ ] chrome
- [ ] vscodium
- [ ] gnome
- [ ]
- [ ] libreoffice (debug .config/libreoffice inexistent -> need mkdir first)
## To test ## To test
- [x] ollama - [ ] update group_vars/
- [x] steam
- [ ] virtualbox

6
Vagrantfile vendored
View File

@ -20,9 +20,9 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
v.memory = vm['memory'] v.memory = vm['memory']
# Provisioning configuration for Ansible. # Provisioning configuration for Ansible.
config.vm.provision "ansible" do |ansible| #config.vm.provision "ansible" do |ansible|
ansible.playbook = "playbooks/install.yml" # ansible.playbook = "playbooks/install.yml"
end # end
end end
end end
end end

View File

@ -4,41 +4,16 @@ ansible_become: true
timezone: Europe/Paris timezone: Europe/Paris
ansible_user: "{{ lookup('env', 'USER') }}" ansible_user: "{{ lookup('env', 'USER') }}"
common: language:
apt_update_cache: true keyboard:
apt_upgrade: true
devtools:
tabby_version: "1.0.215"
tabby_deb_url: "https://github.com/Eugeny/tabby/releases/download/v{{ tabby_version }}/tabby-{{ tabby_version }}-linux-x64.deb"
go_version: "1.22.1"
go_arch: "amd64"
go_tarball: "go{{ go_version }}.linux-{{ go_arch }}.tar.gz"
go_url: "https://go.dev/dl/{{ go_tarball }}"
go_install_dir: /usr/local
element: element:
element_version: "1.11.73" element_version: "1.12.8"
element_deb_url: "https://packages.element.io/debian/pool/main/e/element-desktop/element-desktop_{{ element_version }}_amd64.deb" element_deb_url: "https://packages.element.io/debian/pool/main/e/element-desktop/element-desktop_{{ element_version }}_amd64.deb"
ollama: firefox:
ollama_install_script: https://ollama.com/install.sh firefox_profile_dir: "/home/{{ ansible_user }}/.mozilla/firefox"
ollama_service_name: ollama firefox_backup_dir: "/home/{{ ansible_user }}/firefox_esr_backup_{{ ansible_date_time.iso8601_basic }}"
ollama_user: ollama mozilla_keyring: /etc/apt/keyrings/packages.mozilla.org.asc
ollama_bin: /usr/local/bin/ollama ublock_extension_id: "uBlock0@raymondhill.net.xpi"
ollama_models: ublock_download_url: "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi"
- llama3.2:3b
opentofu:
opentofu_repo: https://packages.opentofu.org/opentofu/tofu/any/ any main
opentofu_key_url: https://packages.opentofu.org/opentofu/tofu/gpgkey
wine:
winehq_repo_url: https://dl.winehq.org/wine-builds/debian/dists/trixie/winehq-trixie.sources
winehq_key_url: https://dl.winehq.org/wine-builds/winehq.key
winehq_keyring: /etc/apt/keyrings/winehq-archive.key
winehq_packages:
- winehq-stable
kubectl:
kubectl_version: "1.35"

View File

@ -1,6 +1,14 @@
[debian] [debian]
# Execute on local machine # Execute on local machine
localhost ansible_connection=local # localhost ansible_connection=local
# Exexcute on distant server # Exexcute on distant server
# 123.456.78.90 ansible_user=user ansible_port=22 # 123.456.78.90 ansible_user=user ansible_port=22
192.168.0.249 ansible_user=greg ansible_port=22
[all:vars]
install_freetube=true
install_vscodium=true
install_chrome=false
install_zoom=false
install_element=false

View File

@ -4,14 +4,4 @@
become: yes become: yes
roles: roles:
- common - role: trixie_postinstall
- devtools
- libvirt
- docker
- podman
- opentofu
- ollama
- element
- wine
- steam
- kubectl

View File

@ -1,3 +0,0 @@
---
apt_update_cache: true
apt_upgrade: true

View File

@ -1,48 +0,0 @@
---
- name: Mise à jour APT
ansible.builtin.apt:
update_cache: true
cache_valid_time: 3600
tags: common
- name: Déployer /etc/apt/sources.list
ansible.builtin.copy:
src: files/sources.list
dest: /etc/apt/sources.list
owner: root
group: root
mode: '0644'
backup: yes
tags: common
- name: Mettre à jour le cache APT
ansible.builtin.apt:
update_cache: yes
when: apt_update_cache
tags: common
- name: Mettre à jour tous les paquets
ansible.builtin.apt:
upgrade: dist
when: apt_upgrade
tags: common
- name: Paquets de base
ansible.builtin.apt:
name:
- rsyslog
- ca-certificates
- curl
- wget
- gnupg
- git
- vim
- htop
- btop
- fail2ban
- net-tools
- resolvconf
- wireguard
- python3-venv
state: present
tags: common

View File

@ -1,89 +0,0 @@
---
- name: Installer outils développeur
ansible.builtin.apt:
name:
- build-essential
- python3
- python3-pip
- python3-venv
- linuxlogo
- lolcat
- vagrant
- kew
state: present
tags: devtools
# VScodium
- name: Ajouter la clé GPG VSCodium
ansible.builtin.get_url:
url: https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg
dest: /usr/share/keyrings/vscodium.gpg
mode: '0644'
tags: devtools
- name: Ajouter le dépôt VSCodium
ansible.builtin.apt_repository:
repo: "deb [signed-by=/usr/share/keyrings/vscodium.gpg] https://download.vscodium.com/debs vscodium main"
filename: vscodium
state: present
tags: devtools
- name: Installer VSCodium
ansible.builtin.apt:
name: codium
update_cache: true
state: present
tags: devtools
# Tabby.sh
- name: Télécharger Tabby
ansible.builtin.get_url:
url: "{{ tabby_deb_url }}"
dest: /tmp/tabby.deb
mode: '0644'
tags: devtools
- name: Installer Tabby
ansible.builtin.apt:
deb: /tmp/tabby.deb
state: present
tags: devtools
- name: Vérifier si Go est déjà installé
ansible.builtin.stat:
path: "{{ go_install_dir }}/go/bin/go"
register: go_installed
tags: devtools
# Go
- name: Télécharger Go {{ go_version }}
ansible.builtin.get_url:
url: "{{ go_url }}"
dest: "/tmp/{{ go_tarball }}"
mode: '0644'
when: not go_installed.stat.exists
tags: devtools
- name: Supprimer ancienne installation Go
ansible.builtin.file:
path: "{{ go_install_dir }}/go"
state: absent
when: not go_installed.stat.exists
tags: devtools
- name: Installer Go {{ go_version }}
ansible.builtin.unarchive:
src: "/tmp/{{ go_tarball }}"
dest: "{{ go_install_dir }}"
remote_src: true
when: not go_installed.stat.exists
tags: devtools
- name: Ajouter Go au PATH global
ansible.builtin.copy:
dest: /etc/profile.d/go.sh
mode: '0755'
content: |
export PATH=$PATH:/usr/local/go/bin
tags: devtools

View File

@ -1,9 +0,0 @@
---
tabby_version: "1.0.215"
tabby_deb_url: "https://github.com/Eugeny/tabby/releases/download/v{{ tabby_version }}/tabby-{{ tabby_version }}-linux-x64.deb"
go_version: "1.22.1"
go_arch: "amd64"
go_tarball: "go{{ go_version }}.linux-{{ go_arch }}.tar.gz"
go_url: "https://go.dev/dl/{{ go_tarball }}"
go_install_dir: /usr/local

View File

@ -1,19 +0,0 @@
---
- name: Installer Docker
ansible.builtin.apt:
name:
- docker.io
- docker-compose
state: present
- name: Activer Docker
ansible.builtin.service:
name: docker
state: started
enabled: true
- name: Ajouter l'utilisateur au groupe docker
ansible.builtin.user:
name: "{{ ansible_user }}"
groups: docker
append: true

View File

@ -1,13 +0,0 @@
---
- name: Télécharger Element Desktop
ansible.builtin.get_url:
url: "{{ element_deb_url }}"
dest: /tmp/element-desktop.deb
mode: '0644'
tags: element
- name: Installer Element Desktop
ansible.builtin.apt:
deb: /tmp/element-desktop.deb
state: present
tags: element

View File

@ -1,3 +0,0 @@
---
element_version: "1.11.73"
element_deb_url: "https://packages.element.io/debian/pool/main/e/element-desktop/element-desktop_{{ element_version }}_amd64.deb"

View File

@ -1,2 +0,0 @@
kubectl_version: "1.35"
kubectl_install_path: /usr/bin

View File

@ -1,40 +0,0 @@
---
- name: Install dependencies
apt:
name:
- ca-certificates
- curl
- gnupg
state: present
update_cache: yes
tags: kubectl
- name: Create keyring directory
file:
path: /etc/apt/keyrings
state: directory
mode: "0755"
tags: kubectl
- name: Download Kubernetes GPG key
get_url:
url: https://pkgs.k8s.io/core:/stable:/v{{ kubectl_version }}/deb/Release.key
dest: /etc/apt/keyrings/kubernetes-apt-keyring.gpg
mode: "0644"
tags: kubectl
- name: Add Kubernetes repository
apt_repository:
repo: >
deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg]
https://pkgs.k8s.io/core:/stable:/v{{ kubectl_version }}/deb/ /
state: present
filename: kubernetes
tags: kubectl
- name: Install kubectl
apt:
name: kubectl
state: present
update_cache: yes
tags: kubectl

View File

@ -1,22 +0,0 @@
---
- name: Installer libvirt/KVM
ansible.builtin.apt:
name:
- qemu-kvm
- libvirt-daemon-system
- libvirt-clients
- virtinst
- virt-manager
state: present
- name: Activer libvirtd
ansible.builtin.service:
name: libvirtd
state: started
enabled: true
- name: Ajouter l'utilisateur aux groupes libvirt et kvm
ansible.builtin.user:
name: "{{ ansible_user }}"
groups: [libvirt, kvm]
append: true

View File

@ -1,5 +0,0 @@
---
ollama_install_script: https://ollama.com/install.sh
ollama_models: []
ollama_service_name: ollama
ollama_bin: /usr/local/bin/ollama

View File

@ -1,5 +0,0 @@
---
- name: Restart Ollama
ansible.builtin.systemd:
name: ollama
state: restarted

View File

@ -1,41 +0,0 @@
---
- name: Vérifier que le système est Linux
assert:
that:
- ansible_facts.system == "Linux"
fail_msg: "Ollama est uniquement supporté sur Linux"
tags: ollama
- name: Vérifier si Ollama est déjà installé
ansible.builtin.stat:
path: "{{ ollama_bin }}"
register: ollama_bin_stat
tags: ollama
- name: Installer curl (prérequis)
ansible.builtin.apt:
name: curl
state: present
update_cache: yes
tags: ollama
- name: Télécharger le script dinstallation Ollama
ansible.builtin.get_url:
url: "{{ ollama_install_script }}"
dest: /tmp/ollama_install.sh
mode: '0755'
when: not ollama_bin_stat.stat.exists
tags: ollama
- name: Installer Ollama
ansible.builtin.command: /tmp/ollama_install.sh
when: not ollama_bin_stat.stat.exists
notify: Restart Ollama
tags: ollama
- name: Activer et démarrer le service Ollama
ansible.builtin.systemd:
name: "{{ ollama_service_name }}"
enabled: yes
state: started
tags: ollama

View File

@ -1,6 +0,0 @@
---
- import_tasks: install.yml
tags: ollama
- import_tasks: models.yml
tags: ollama

View File

@ -1,6 +0,0 @@
- name: Pull ollama models
become: true
command: >
{{ ollama_bin }} pull {{ item.name }}
loop: "{{ ollama_models }}"
tags: ollama

View File

@ -1,17 +0,0 @@
---
- name: Ajouter clé GPG OpenTofu
ansible.builtin.get_url:
url: "{{ opentofu_key_url }}"
dest: /usr/share/keyrings/opentofu.gpg
mode: '0644'
- name: Ajouter dépôt OpenTofu
ansible.builtin.apt_repository:
repo: "deb [signed-by=/usr/share/keyrings/opentofu.gpg] {{ opentofu_repo }} stable main"
filename: opentofu
- name: Installer OpenTofu
ansible.builtin.apt:
name: tofu
update_cache: true
state: present

View File

@ -1,3 +0,0 @@
---
opentofu_repo: https://packages.opentofu.org/opentofu/tofu/any/ any main
opentofu_key_url: https://packages.opentofu.org/opentofu/tofu/gpgkey

View File

@ -1,7 +0,0 @@
---
podman_packages:
- podman
- podman-compose
- buildah
- skopeo
- uidmap

View File

@ -1,32 +0,0 @@
---
- name: Installer Podman et outils associés
ansible.builtin.apt:
name: "{{ podman_packages }}"
state: present
tags: podman
- name: Activer linger pour l'utilisateur (rootless)
ansible.builtin.command:
cmd: "loginctl enable-linger {{ ansible_user }}"
args:
creates: "/var/lib/systemd/linger/{{ ansible_user }}"
tags: podman
- name: Créer le répertoire containers utilisateur
ansible.builtin.file:
path: "/home/{{ ansible_user }}/.config/containers"
state: directory
owner: "{{ ansible_user }}"
group: "{{ ansible_user }}"
mode: '0755'
tags: podman
- name: Configurer registries par défaut
ansible.builtin.copy:
dest: "/home/{{ ansible_user }}/.config/containers/registries.conf"
owner: "{{ ansible_user }}"
group: "{{ ansible_user }}"
mode: '0644'
content: |
unqualified-search-registries = ["docker.io", "quay.io"]
tags: podman

View File

@ -1,24 +0,0 @@
---
- name: Vérifier que le système est Debian
ansible.builtin.assert:
that:
- ansible_facts['distribution'] == "Debian"
fail_msg: "Ce rôle est prévu uniquement pour Debian"
tags: steam
- name: Ajouter larchitecture i386
ansible.builtin.command: dpkg --add-architecture i386
register: add_i386
changed_when: add_i386.rc == 0
tags: steam
- name: Mettre à jour le cache APT
ansible.builtin.apt:
update_cache: yes
tags: steam
- name: Installer Steam
ansible.builtin.apt:
name: steam
state: present
tags: steam

View File

@ -0,0 +1,10 @@
# KEYBOARD CONFIGURATION FILE
# Consult the keyboard(5) manual page.
XKBMODEL="pc105"
XKBLAYOUT="fr"
XKBVARIANT="latin9"
XKBOPTIONS=""
BACKSPACE="guess"

View File

@ -0,0 +1,135 @@
<?xml version="1.0" encoding="UTF-8"?>
<oor:items xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<item oor:path="/org.openoffice.Office.Common/Misc"><prop oor:name="FirstRun" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Common/Misc"><prop oor:name="LastTipOfTheDayID" oor:op="fuse"><value>0</value></prop></item>
<item oor:path="/org.openoffice.Office.Common/Misc"><prop oor:name="LastTipOfTheDayShown" oor:op="fuse"><value>20342</value></prop></item>
<item oor:path="/org.openoffice.Office.Common/Misc"><prop oor:name="ShowTipOfTheDay" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Common/Misc"><prop oor:name="SymbolStyle" oor:op="fuse"><value>colibre</value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/HyphenatorList"><prop oor:name="en" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.LibHnjHyphenator</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/HyphenatorList"><prop oor:name="en-US" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.LibHnjHyphenator</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundHyphenators"><prop oor:name="en" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.LibHnjHyphenator</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundHyphenators"><prop oor:name="en-US" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.LibHnjHyphenator</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundSpellCheckers"><prop oor:name="en-US" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundSpellCheckers"><prop oor:name="fr" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundSpellCheckers"><prop oor:name="fr-BE" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundSpellCheckers"><prop oor:name="fr-CA" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundSpellCheckers"><prop oor:name="fr-CH" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundSpellCheckers"><prop oor:name="fr-FR" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundSpellCheckers"><prop oor:name="fr-LU" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundSpellCheckers"><prop oor:name="fr-MC" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundThesauri"><prop oor:name="en-US" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundThesauri"><prop oor:name="fr-BE" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundThesauri"><prop oor:name="fr-CA" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundThesauri"><prop oor:name="fr-CH" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundThesauri"><prop oor:name="fr-FR" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundThesauri"><prop oor:name="fr-LU" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/LastFoundThesauri"><prop oor:name="fr-MC" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/SpellCheckerList"><prop oor:name="en-US" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/SpellCheckerList"><prop oor:name="fr" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/SpellCheckerList"><prop oor:name="fr-BE" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/SpellCheckerList"><prop oor:name="fr-CA" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/SpellCheckerList"><prop oor:name="fr-CH" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/SpellCheckerList"><prop oor:name="fr-FR" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/SpellCheckerList"><prop oor:name="fr-LU" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/SpellCheckerList"><prop oor:name="fr-MC" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.MySpellSpellChecker</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/ThesaurusList"><prop oor:name="en-US" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/ThesaurusList"><prop oor:name="fr-BE" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/ThesaurusList"><prop oor:name="fr-CA" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/ThesaurusList"><prop oor:name="fr-CH" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/ThesaurusList"><prop oor:name="fr-FR" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/ThesaurusList"><prop oor:name="fr-LU" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Linguistic/ServiceManager/ThesaurusList"><prop oor:name="fr-MC" oor:op="fuse" oor:type="oor:string-list"><value><it>org.openoffice.lingu.new.Thesaurus</it></value></prop></item>
<item oor:path="/org.openoffice.Office.Logging/Settings"><node oor:name="unopkg" oor:op="replace"><prop oor:name="LogLevel" oor:op="fuse"><value>2147483647</value></prop><prop oor:name="DefaultHandler" oor:op="fuse"><value>com.sun.star.logging.FileHandler</value></prop><node oor:name="HandlerSettings"><prop oor:name="FileURL" oor:op="fuse"><value>$(userurl)/$(loggername).log</value></prop></node><prop oor:name="DefaultFormatter" oor:op="fuse"><value>com.sun.star.logging.PlainTextFormatter</value></prop><node oor:name="FormatterSettings"></node></node></item>
<item oor:path="/org.openoffice.Office.Recovery/RecoveryInfo"><prop oor:name="SessionData" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/DeckList/org.openoffice.Office.UI.Sidebar:Deck['A11yCheckDeck']"><prop oor:name="ContextList" oor:op="fuse"><value><it>com.sun.star.text.TextDocument, any, visible</it><it>com.sun.star.text.GlobalDocument, any, visible</it><it>com.sun.star.text.WebDocument, any, visible</it><it>com.sun.star.xforms.XMLFormDocument, any, visible</it><it>com.sun.star.sdb.FormDesign, any, visible</it><it>com.sun.star.sdb.TextReportDesign, any, visible</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/DeckList/org.openoffice.Office.UI.Sidebar:Deck['FindDeck']"><prop oor:name="ContextList" oor:op="fuse"><value><it>com.sun.star.text.TextDocument, any, visible</it><it>com.sun.star.text.GlobalDocument, any, visible</it><it>com.sun.star.text.WebDocument, any, visible</it><it>com.sun.star.xforms.XMLFormDocument, any, visible</it><it>com.sun.star.sdb.FormDesign, any, visible</it><it>com.sun.star.sdb.TextReportDesign, any, visible</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/DeckList/org.openoffice.Office.UI.Sidebar:Deck['GalleryDeck']"><prop oor:name="ContextList" oor:op="fuse"><value><it>com.sun.star.sheet.SpreadsheetDocument, any, visible</it><it>com.sun.star.drawing.DrawingDocument, any, visible</it><it>com.sun.star.presentation.PresentationDocument, any, visible</it><it>com.sun.star.text.TextDocument, any, visible</it><it>com.sun.star.text.GlobalDocument, any, visible</it><it>com.sun.star.text.WebDocument, any, visible</it><it>com.sun.star.xforms.XMLFormDocument, any, visible</it><it>com.sun.star.sdb.FormDesign, any, visible</it><it>com.sun.star.sdb.TextReportDesign, any, visible</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/DeckList/org.openoffice.Office.UI.Sidebar:Deck['InspectorDeck']"><prop oor:name="ContextList" oor:op="fuse"><value><it>com.sun.star.text.TextDocument, any, visible</it><it>com.sun.star.text.GlobalDocument, any, visible</it><it>com.sun.star.text.WebDocument, any, visible</it><it>com.sun.star.xforms.XMLFormDocument, any, visible</it><it>com.sun.star.sdb.FormDesign, any, visible</it><it>com.sun.star.sdb.TextReportDesign, any, visible</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/DeckList/org.openoffice.Office.UI.Sidebar:Deck['NavigatorDeck']"><prop oor:name="ContextList" oor:op="fuse"><value><it>com.sun.star.sheet.SpreadsheetDocument, any, visible</it><it>com.sun.star.drawing.DrawingDocument, any, visible</it><it>com.sun.star.presentation.PresentationDocument, any, visible</it><it>com.sun.star.text.TextDocument, any, visible</it><it>com.sun.star.text.GlobalDocument, any, visible</it><it>com.sun.star.text.WebDocument, any, visible</it><it>com.sun.star.xforms.XMLFormDocument, any, visible</it><it>com.sun.star.sdb.FormDesign, any, visible</it><it>com.sun.star.sdb.TextReportDesign, any, visible</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/DeckList/org.openoffice.Office.UI.Sidebar:Deck['PropertyDeck']"><prop oor:name="ContextList" oor:op="fuse"><value><it>any, any, visible</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/DeckList/org.openoffice.Office.UI.Sidebar:Deck['StyleListDeck']"><prop oor:name="ContextList" oor:op="fuse"><value><it>com.sun.star.sheet.SpreadsheetDocument, any, visible</it><it>com.sun.star.drawing.DrawingDocument, any, visible</it><it>com.sun.star.presentation.PresentationDocument, any, visible</it><it>com.sun.star.text.TextDocument, any, visible</it><it>com.sun.star.text.GlobalDocument, any, visible</it><it>com.sun.star.text.WebDocument, any, visible</it><it>com.sun.star.xforms.XMLFormDocument, any, visible</it><it>com.sun.star.sdb.FormDesign, any, visible</it><it>com.sun.star.sdb.TextReportDesign, any, visible</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/DeckList/org.openoffice.Office.UI.Sidebar:Deck['SwManageChangesDeck']"><prop oor:name="ContextList" oor:op="fuse"><value><it>com.sun.star.text.TextDocument, Annotation, visible</it><it>com.sun.star.text.GlobalDocument, Annotation, visible</it><it>com.sun.star.text.WebDocument, Annotation, visible</it><it>com.sun.star.xforms.XMLFormDocument, Annotation, visible</it><it>com.sun.star.sdb.FormDesign, Annotation, visible</it><it>com.sun.star.sdb.TextReportDesign, Annotation, visible</it><it>com.sun.star.text.TextDocument, DrawText, visible</it><it>com.sun.star.text.GlobalDocument, DrawText, visible</it><it>com.sun.star.text.WebDocument, DrawText, visible</it><it>com.sun.star.xforms.XMLFormDocument, DrawText, visible</it><it>com.sun.star.sdb.FormDesign, DrawText, visible</it><it>com.sun.star.sdb.TextReportDesign, DrawText, visible</it><it>com.sun.star.text.TextDocument, Table, visible</it><it>com.sun.star.text.GlobalDocument, Table, visible</it><it>com.sun.star.text.WebDocument, Table, visible</it><it>com.sun.star.xforms.XMLFormDocument, Table, visible</it><it>com.sun.star.sdb.FormDesign, Table, visible</it><it>com.sun.star.sdb.TextReportDesign, Table, visible</it><it>com.sun.star.text.TextDocument, Text, visible</it><it>com.sun.star.text.GlobalDocument, Text, visible</it><it>com.sun.star.text.WebDocument, Text, visible</it><it>com.sun.star.xforms.XMLFormDocument, Text, visible</it><it>com.sun.star.sdb.FormDesign, Text, visible</it><it>com.sun.star.sdb.TextReportDesign, Text, visible</it><it>com.sun.star.text.TextDocument, default, visible</it><it>com.sun.star.text.GlobalDocument, default, visible</it><it>com.sun.star.text.WebDocument, default, visible</it><it>com.sun.star.xforms.XMLFormDocument, default, visible</it><it>com.sun.star.sdb.FormDesign, default, visible</it><it>com.sun.star.sdb.TextReportDesign, default, visible</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/DeckList/org.openoffice.Office.UI.Sidebar:Deck['WriterPageDeck']"><prop oor:name="ContextList" oor:op="fuse"><value><it>com.sun.star.text.TextDocument, any, visible</it><it>com.sun.star.text.GlobalDocument, any, visible</it><it>com.sun.star.text.WebDocument, any, visible</it><it>com.sun.star.xforms.XMLFormDocument, any, visible</it><it>com.sun.star.sdb.FormDesign, any, visible</it><it>com.sun.star.sdb.TextReportDesign, any, visible</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content"><prop oor:name="LastActiveDeck" oor:op="fuse"><value><it>any,PropertyDeck</it><it>com.sun.star.formula.FormulaProperties,ElementsDeck</it><it>com.sun.star.text.TextDocument,PropertyDeck</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/PanelList/org.openoffice.Office.UI.Sidebar:Panel['ParaPropertyPanel']"><prop oor:name="ContextList" oor:op="fuse"><value><it>com.sun.star.sheet.SpreadsheetDocument, DrawText, visible, .uno:ParagraphDialog</it><it>com.sun.star.sheet.SpreadsheetDocument, DrawLine, hidden, .uno:ParagraphDialog</it><it>com.sun.star.drawing.DrawingDocument, DrawLine, hidden, .uno:ParagraphDialog</it><it>com.sun.star.presentation.PresentationDocument, DrawLine, hidden, .uno:ParagraphDialog</it><it>com.sun.star.drawing.DrawingDocument, 3DObject, hidden, .uno:ParagraphDialog</it><it>com.sun.star.presentation.PresentationDocument, 3DObject, hidden, .uno:ParagraphDialog</it><it>com.sun.star.drawing.DrawingDocument, Draw, hidden, .uno:ParagraphDialog</it><it>com.sun.star.presentation.PresentationDocument, Draw, hidden, .uno:ParagraphDialog</it><it>com.sun.star.drawing.DrawingDocument, DrawFontwork, hidden, .uno:ParagraphDialog</it><it>com.sun.star.presentation.PresentationDocument, DrawFontwork, hidden, .uno:ParagraphDialog</it><it>com.sun.star.drawing.DrawingDocument, DrawText, visible, .uno:ParagraphDialog</it><it>com.sun.star.presentation.PresentationDocument, DrawText, visible, .uno:ParagraphDialog</it><it>com.sun.star.drawing.DrawingDocument, Graphic, hidden, .uno:ParagraphDialog</it><it>com.sun.star.presentation.PresentationDocument, Graphic, hidden, .uno:ParagraphDialog</it><it>com.sun.star.drawing.DrawingDocument, Table, visible, .uno:ParagraphDialog</it><it>com.sun.star.presentation.PresentationDocument, Table, visible, .uno:ParagraphDialog</it><it>com.sun.star.drawing.DrawingDocument, TextObject, visible, .uno:ParagraphDialog</it><it>com.sun.star.presentation.PresentationDocument, TextObject, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.TextDocument, Annotation, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.GlobalDocument, Annotation, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.WebDocument, Annotation, visible, .uno:ParagraphDialog</it><it>com.sun.star.xforms.XMLFormDocument, Annotation, visible, .uno:ParagraphDialog</it><it>com.sun.star.sdb.FormDesign, Annotation, visible, .uno:ParagraphDialog</it><it>com.sun.star.sdb.TextReportDesign, Annotation, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.TextDocument, DrawText, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.GlobalDocument, DrawText, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.WebDocument, DrawText, visible, .uno:ParagraphDialog</it><it>com.sun.star.xforms.XMLFormDocument, DrawText, visible, .uno:ParagraphDialog</it><it>com.sun.star.sdb.FormDesign, DrawText, visible, .uno:ParagraphDialog</it><it>com.sun.star.sdb.TextReportDesign, DrawText, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.TextDocument, Table, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.GlobalDocument, Table, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.WebDocument, Table, visible, .uno:ParagraphDialog</it><it>com.sun.star.xforms.XMLFormDocument, Table, visible, .uno:ParagraphDialog</it><it>com.sun.star.sdb.FormDesign, Table, visible, .uno:ParagraphDialog</it><it>com.sun.star.sdb.TextReportDesign, Table, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.TextDocument, Text, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.GlobalDocument, Text, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.WebDocument, Text, visible, .uno:ParagraphDialog</it><it>com.sun.star.xforms.XMLFormDocument, Text, visible, .uno:ParagraphDialog</it><it>com.sun.star.sdb.FormDesign, Text, visible, .uno:ParagraphDialog</it><it>com.sun.star.sdb.TextReportDesign, Text, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.TextDocument, default, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.GlobalDocument, default, visible, .uno:ParagraphDialog</it><it>com.sun.star.text.WebDocument, default, visible, .uno:ParagraphDialog</it><it>com.sun.star.xforms.XMLFormDocument, default, visible, .uno:ParagraphDialog</it><it>com.sun.star.sdb.FormDesign, default, visible, .uno:ParagraphDialog</it><it>com.sun.star.sdb.TextReportDesign, default, visible, .uno:ParagraphDialog</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/PanelList/org.openoffice.Office.UI.Sidebar:Panel['StylesPropertyPanel']"><prop oor:name="ContextList" oor:op="fuse"><value><it>com.sun.star.text.TextDocument, Annotation, visible, .uno:EditStyle</it><it>com.sun.star.text.GlobalDocument, Annotation, visible, .uno:EditStyle</it><it>com.sun.star.text.WebDocument, Annotation, visible, .uno:EditStyle</it><it>com.sun.star.xforms.XMLFormDocument, Annotation, visible, .uno:EditStyle</it><it>com.sun.star.sdb.FormDesign, Annotation, visible, .uno:EditStyle</it><it>com.sun.star.sdb.TextReportDesign, Annotation, visible, .uno:EditStyle</it><it>com.sun.star.text.TextDocument, DrawText, visible, .uno:EditStyle</it><it>com.sun.star.text.GlobalDocument, DrawText, visible, .uno:EditStyle</it><it>com.sun.star.text.WebDocument, DrawText, visible, .uno:EditStyle</it><it>com.sun.star.xforms.XMLFormDocument, DrawText, visible, .uno:EditStyle</it><it>com.sun.star.sdb.FormDesign, DrawText, visible, .uno:EditStyle</it><it>com.sun.star.sdb.TextReportDesign, DrawText, visible, .uno:EditStyle</it><it>com.sun.star.text.TextDocument, Table, visible, .uno:EditStyle</it><it>com.sun.star.text.GlobalDocument, Table, visible, .uno:EditStyle</it><it>com.sun.star.text.WebDocument, Table, visible, .uno:EditStyle</it><it>com.sun.star.xforms.XMLFormDocument, Table, visible, .uno:EditStyle</it><it>com.sun.star.sdb.FormDesign, Table, visible, .uno:EditStyle</it><it>com.sun.star.sdb.TextReportDesign, Table, visible, .uno:EditStyle</it><it>com.sun.star.text.TextDocument, Text, visible, .uno:EditStyle</it><it>com.sun.star.text.GlobalDocument, Text, visible, .uno:EditStyle</it><it>com.sun.star.text.WebDocument, Text, visible, .uno:EditStyle</it><it>com.sun.star.xforms.XMLFormDocument, Text, visible, .uno:EditStyle</it><it>com.sun.star.sdb.FormDesign, Text, visible, .uno:EditStyle</it><it>com.sun.star.sdb.TextReportDesign, Text, visible, .uno:EditStyle</it><it>com.sun.star.text.TextDocument, default, visible, .uno:EditStyle</it><it>com.sun.star.text.GlobalDocument, default, visible, .uno:EditStyle</it><it>com.sun.star.text.WebDocument, default, visible, .uno:EditStyle</it><it>com.sun.star.xforms.XMLFormDocument, default, visible, .uno:EditStyle</it><it>com.sun.star.sdb.FormDesign, default, visible, .uno:EditStyle</it><it>com.sun.star.sdb.TextReportDesign, default, visible, .uno:EditStyle</it><it>com.sun.star.sheet.SpreadsheetDocument, Auditing, visible, .uno:EditStyle</it><it>com.sun.star.sheet.SpreadsheetDocument, Cell, visible, .uno:EditStyle</it><it>com.sun.star.sheet.SpreadsheetDocument, default, visible, .uno:EditStyle</it><it>com.sun.star.sheet.SpreadsheetDocument, EditCell, visible, .uno:EditStyle</it><it>com.sun.star.sheet.SpreadsheetDocument, Pivot, visible, .uno:EditStyle</it><it>com.sun.star.sheet.SpreadsheetDocument, Sparkline, visible, .uno:EditStyle</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.Sidebar/Content/PanelList/org.openoffice.Office.UI.Sidebar:Panel['TextPropertyPanel']"><prop oor:name="ContextList" oor:op="fuse"><value><it>com.sun.star.sheet.SpreadsheetDocument, Auditing, visible, .uno:CellTextDlg</it><it>com.sun.star.sheet.SpreadsheetDocument, Cell, visible, .uno:CellTextDlg</it><it>com.sun.star.sheet.SpreadsheetDocument, default, visible, .uno:CellTextDlg</it><it>com.sun.star.sheet.SpreadsheetDocument, DrawText, visible, .uno:FontDialog</it><it>com.sun.star.sheet.SpreadsheetDocument, DrawLine, hidden, .uno:FontDialog</it><it>com.sun.star.sheet.SpreadsheetDocument, EditCell, visible, .uno:FontDialog</it><it>com.sun.star.sheet.SpreadsheetDocument, Pivot, visible, .uno:CellTextDlg</it><it>com.sun.star.sheet.SpreadsheetDocument, Sparkline, visible, .uno:FontDialog</it><it>com.sun.star.drawing.DrawingDocument, Draw, hidden, .uno:FontDialog</it><it>com.sun.star.presentation.PresentationDocument, Draw, hidden, .uno:FontDialog</it><it>com.sun.star.drawing.DrawingDocument, DrawFontwork, hidden, .uno:FontDialog</it><it>com.sun.star.presentation.PresentationDocument, DrawFontwork, hidden, .uno:FontDialog</it><it>com.sun.star.drawing.DrawingDocument, DrawText, visible, .uno:FontDialog</it><it>com.sun.star.presentation.PresentationDocument, DrawText, visible, .uno:FontDialog</it><it>com.sun.star.drawing.DrawingDocument, DrawLine, hidden, .uno:FontDialog</it><it>com.sun.star.presentation.PresentationDocument, DrawLine, hidden, .uno:FontDialog</it><it>com.sun.star.drawing.DrawingDocument, Graphic, hidden, .uno:FontDialog</it><it>com.sun.star.presentation.PresentationDocument, Graphic, hidden, .uno:FontDialog</it><it>com.sun.star.drawing.DrawingDocument, OutlineText, visible, .uno:FontDialog</it><it>com.sun.star.presentation.PresentationDocument, OutlineText, visible, .uno:FontDialog</it><it>com.sun.star.drawing.DrawingDocument, Table, visible, .uno:FontDialog</it><it>com.sun.star.presentation.PresentationDocument, Table, visible, .uno:FontDialog</it><it>com.sun.star.drawing.DrawingDocument, TextObject, visible, .uno:FontDialog</it><it>com.sun.star.presentation.PresentationDocument, TextObject, visible, .uno:FontDialog</it><it>com.sun.star.text.TextDocument, Annotation, visible, .uno:FontDialog</it><it>com.sun.star.text.GlobalDocument, Annotation, visible, .uno:FontDialog</it><it>com.sun.star.text.WebDocument, Annotation, visible, .uno:FontDialog</it><it>com.sun.star.xforms.XMLFormDocument, Annotation, visible, .uno:FontDialog</it><it>com.sun.star.sdb.FormDesign, Annotation, visible, .uno:FontDialog</it><it>com.sun.star.sdb.TextReportDesign, Annotation, visible, .uno:FontDialog</it><it>com.sun.star.text.TextDocument, DrawText, visible, .uno:FontDialog</it><it>com.sun.star.text.GlobalDocument, DrawText, visible, .uno:FontDialog</it><it>com.sun.star.text.WebDocument, DrawText, visible, .uno:FontDialog</it><it>com.sun.star.xforms.XMLFormDocument, DrawText, visible, .uno:FontDialog</it><it>com.sun.star.sdb.FormDesign, DrawText, visible, .uno:FontDialog</it><it>com.sun.star.sdb.TextReportDesign, DrawText, visible, .uno:FontDialog</it><it>com.sun.star.text.TextDocument, Table, visible, .uno:FontDialog</it><it>com.sun.star.text.GlobalDocument, Table, visible, .uno:FontDialog</it><it>com.sun.star.text.WebDocument, Table, visible, .uno:FontDialog</it><it>com.sun.star.xforms.XMLFormDocument, Table, visible, .uno:FontDialog</it><it>com.sun.star.sdb.FormDesign, Table, visible, .uno:FontDialog</it><it>com.sun.star.sdb.TextReportDesign, Table, visible, .uno:FontDialog</it><it>com.sun.star.text.TextDocument, Text, visible, .uno:FontDialog</it><it>com.sun.star.text.GlobalDocument, Text, visible, .uno:FontDialog</it><it>com.sun.star.text.WebDocument, Text, visible, .uno:FontDialog</it><it>com.sun.star.xforms.XMLFormDocument, Text, visible, .uno:FontDialog</it><it>com.sun.star.sdb.FormDesign, Text, visible, .uno:FontDialog</it><it>com.sun.star.sdb.TextReportDesign, Text, visible, .uno:FontDialog</it><it>com.sun.star.text.TextDocument, default, visible, .uno:FontDialog</it><it>com.sun.star.text.GlobalDocument, default, visible, .uno:FontDialog</it><it>com.sun.star.text.WebDocument, default, visible, .uno:FontDialog</it><it>com.sun.star.xforms.XMLFormDocument, default, visible, .uno:FontDialog</it><it>com.sun.star.sdb.FormDesign, default, visible, .uno:FontDialog</it><it>com.sun.star.sdb.TextReportDesign, default, visible, .uno:FontDialog</it></value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="ContextActive" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="ContextSensitive" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="DockPos" oor:op="fuse"><value>0,0</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="Docked" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="DockingArea" oor:op="fuse"><value>0</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="HideFromToolbarMenu" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="Locked" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="NoClose" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="Pos" oor:op="fuse"><value>2147483647,2147483647</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="Size" oor:op="fuse"><value>0,0</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="SoftClose" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="Style" oor:op="fuse"><value>0</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']/UIName"><value xml:lang="fr">Standard</value></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/standardbar']"><prop oor:name="Visible" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="ContextActive" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="ContextSensitive" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="DockPos" oor:op="fuse"><value>0,1</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="Docked" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="DockingArea" oor:op="fuse"><value>0</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="HideFromToolbarMenu" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="Locked" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="NoClose" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="Pos" oor:op="fuse"><value>2147483647,2147483647</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="Size" oor:op="fuse"><value>0,0</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="SoftClose" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="Style" oor:op="fuse"><value>0</value></prop></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']/UIName"><value xml:lang="fr">Formatage</value></item>
<item oor:path="/org.openoffice.Office.UI.WriterWindowState/UIElements/States/org.openoffice.Office.UI.WindowState:WindowStateType['private:resource/toolbar/textobjectbar']"><prop oor:name="Visible" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Views/Windows"><node oor:name="SplitWindow0" oor:op="replace"><prop oor:name="Visible" oor:op="fuse"><value xsi:nil="true"/></prop><node oor:name="UserData"><prop oor:name="UserItem" oor:op="fuse" oor:type="xs:string"><value>V1,2,0</value></prop></node><prop oor:name="WindowState" oor:op="fuse"><value xsi:nil="true"/></prop></node></item>
<item oor:path="/org.openoffice.Office.Views/Windows"><node oor:name="SplitWindow1" oor:op="replace"><prop oor:name="Visible" oor:op="fuse"><value xsi:nil="true"/></prop><node oor:name="UserData"><prop oor:name="UserItem" oor:op="fuse" oor:type="xs:string"><value>V1,2,0</value></prop></node><prop oor:name="WindowState" oor:op="fuse"><value xsi:nil="true"/></prop></node></item>
<item oor:path="/org.openoffice.Office.Views/Windows"><node oor:name="SplitWindow2" oor:op="replace"><prop oor:name="Visible" oor:op="fuse"><value xsi:nil="true"/></prop><node oor:name="UserData"><prop oor:name="UserItem" oor:op="fuse" oor:type="xs:string"><value>V1,2,1,0,10336</value></prop></node><prop oor:name="WindowState" oor:op="fuse"><value xsi:nil="true"/></prop></node></item>
<item oor:path="/org.openoffice.Office.Views/Windows"><node oor:name="SplitWindow3" oor:op="replace"><prop oor:name="Visible" oor:op="fuse"><value xsi:nil="true"/></prop><node oor:name="UserData"><prop oor:name="UserItem" oor:op="fuse" oor:type="xs:string"><value>V1,2,0</value></prop></node><prop oor:name="WindowState" oor:op="fuse"><value xsi:nil="true"/></prop></node></item>
<item oor:path="/org.openoffice.Office.Views/Windows/org.openoffice.Office.Views:WindowType['swriter/10336']/UserData"><prop oor:name="Data" oor:op="fuse" oor:type="xs:string"><value>V2,V,0,AL:(5,16,0/0/48/450,48;450)</value></prop></item>
<item oor:path="/org.openoffice.Office.Views/Windows/org.openoffice.Office.Views:WindowType['swriter/10336']"><prop oor:name="WindowState" oor:op="fuse"><value></value></prop></item>
<item oor:path="/org.openoffice.Office.Views/Windows"><node oor:name="swriter/10365" oor:op="replace"><prop oor:name="Visible" oor:op="fuse"><value xsi:nil="true"/></prop><node oor:name="UserData"><prop oor:name="Data" oor:op="fuse" oor:type="xs:string"><value>V2,V,128</value></prop></node><prop oor:name="WindowState" oor:op="fuse"><value></value></prop></node></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="DefaultAnchor" oor:op="fuse"><value>1</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="DrawingControl" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="FieldCode" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="GraphicObject" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="Note" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="SectionBoundaries" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="ShowBoundaries" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="ShowChangesInMargin" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="ShowContentTips" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="ShowInlineTooltips" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="ShowOutlineContentVisibilityButton" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="Table" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="TableBoundaries" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="TextBoundaries" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="TextBoundariesFull" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="TreatSubOutlineLevelsAsContent" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Display"><prop oor:name="UseHeaderFooterMenu" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/NonprintingCharacter"><prop oor:name="Bookmarks" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/NonprintingCharacter"><prop oor:name="Break" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/NonprintingCharacter"><prop oor:name="HiddenCharacter" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/NonprintingCharacter"><prop oor:name="HiddenParagraph" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/NonprintingCharacter"><prop oor:name="HiddenText" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/NonprintingCharacter"><prop oor:name="MetaCharacters" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/NonprintingCharacter"><prop oor:name="OptionalHyphen" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/NonprintingCharacter"><prop oor:name="ParagraphEnd" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/NonprintingCharacter"><prop oor:name="ProtectedSpace" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/NonprintingCharacter"><prop oor:name="Space" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/NonprintingCharacter"><prop oor:name="Tab" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Update"><prop oor:name="Chart" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Update"><prop oor:name="Field" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Update"><prop oor:name="Link" oor:op="fuse"><value>1</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Zoom"><prop oor:name="DefaultZoom" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Zoom"><prop oor:name="ZoomType" oor:op="fuse"><value>0</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/Content/Zoom"><prop oor:name="ZoomValue" oor:op="fuse"><value>100</value></prop></item>
<item oor:path="/org.openoffice.Office.Writer/FmtAidsAutocomplete"><prop oor:name="EncloseWithCharacters" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Setup/L10N"><prop oor:name="ooLocale" oor:op="fuse"><value>fr</value></prop></item>
<item oor:path="/org.openoffice.Setup/Office/Factories/org.openoffice.Setup:Factory['com.sun.star.text.TextDocument']"><prop oor:name="ooSetupFactoryWindowAttributes" oor:op="fuse"><value>0,0,1166,701;5;0,0,1281,732;</value></prop></item>
<item oor:path="/org.openoffice.Setup/Office"><prop oor:name="LastCompatibilityCheckID" oor:op="fuse"><value>520(Build:2)</value></prop></item>
<item oor:path="/org.openoffice.Setup/Office"><prop oor:name="OfficeRestartInProgress" oor:op="fuse"><value>false</value></prop></item>
<item oor:path="/org.openoffice.Setup/Office"><prop oor:name="ooSetupInstCompleted" oor:op="fuse"><value>true</value></prop></item>
<item oor:path="/org.openoffice.Setup/Product"><prop oor:name="LastTimeDonateShown" oor:op="fuse"><value>1757577607</value></prop></item>
<item oor:path="/org.openoffice.Setup/Product"><prop oor:name="LastTimeGetInvolvedShown" oor:op="fuse"><value>1757577607</value></prop></item>
<item oor:path="/org.openoffice.Setup/Product"><prop oor:name="ooSetupLastVersion" oor:op="fuse"><value>25.2</value></prop></item>
</oor:items>

View File

@ -0,0 +1,4 @@
- name: Reload NetworkManager
service:
name: networking
state: reloaded

View File

@ -0,0 +1,89 @@
---
# Freetube
- name: Installer FreeTube
become: false
block:
- name: S'assurer que ~/.local/bin existe
ansible.builtin.file:
path: "/home/{{ ansible_user }}/.local/bin"
state: directory
mode: "0755"
- name: S'assurer que ~/.local/share/applications existe
ansible.builtin.file:
path: "/home/{{ ansible_user }}/.local/share/applications"
state: directory
mode: "0755"
- name: Télécharger FreeTube AppImage
ansible.builtin.get_url:
url: "https://github.com/FreeTubeApp/FreeTube/releases/download/v{{ freetube_version }}/freetube-{{ freetube_version }}-amd64.AppImage"
dest: "/home/{{ ansible_user }}/.local/bin/freetube"
mode: "0755"
- name: Créer le desktop entry FreeTube
ansible.builtin.copy:
dest: "/home/{{ ansible_user }}/.local/share/applications/freetube.desktop"
mode: "0644"
content: |
[Desktop Entry]
Name=FreeTube
Exec=/home/{{ ansible_user }}/.local/bin/freetube
Icon=video
Type=Application
Categories=AudioVideo;Player;Video;
# Zoom
- name: Installer Zoom (paquet .deb officiel)
become: true
block:
- name: Télécharger Zoom
ansible.builtin.get_url:
url: https://zoom.us/client/latest/zoom_amd64.deb
dest: /tmp/zoom.deb
mode: "0644"
- name: Installer Zoom depuis le paquet .deb
ansible.builtin.apt:
deb: /tmp/zoom.deb
state: present
- name: Supprimer le paquet temporaire Zoom
ansible.builtin.file:
path: /tmp/zoom.deb
state: absent
# Element
- name: Activer le dépôt Element et installer Element Desktop
become: true
block:
- name: Activer le dépôt Element via extrepo
ansible.builtin.command: extrepo enable element.io
register: element_extrepo
changed_when: "'enabled' in element_extrepo.stdout or element_extrepo.rc == 0"
- name: Mettre à jour le cache APT si le dépôt a changé
ansible.builtin.apt:
update_cache: true
when: element_extrepo.changed
- name: Installer Element Desktop
ansible.builtin.apt:
name: element-desktop
state: present
# Chrome
- name: activer et installer Chrome
block:
- command: extrepo enable google_chrome
- apt:
name: google-chrome-stable
state: present
# Codium
- name: activer et installer VSCodium
block:
- command: extrepo enable vscodium
- apt:
name: codium
state: present

View File

@ -0,0 +1,23 @@
---
- name: Sauvegarder l'ancien sources.list
copy:
src: /etc/apt/sources.list
dest: /etc/apt/sources.list.backup
when: ansible_facts['distribution_file_variety'] == "Debian"
- name: Déployer sources.list standard
ansible.builtin.copy:
src: files/sources.list
dest: /etc/apt/sources.list
owner: root
group: root
mode: '0644'
backup: yes
- name: Update apt cache
apt:
update_cache: yes
- name: Upgrade les paquets
apt:
upgrade: dist

View File

@ -0,0 +1,20 @@
---
- name: Installer outils de base
apt:
name:
- libgettextpo-dev
- gettext
- git
- wget
- curl
- build-essential
- linux-image-amd64
- make
- ttf-mscorefonts-installer
- rsyslog
- unzip
- bash-completion
- flatpak
- libxdo3
- extrepo
state: present

View File

@ -0,0 +1,20 @@
---
- name: Activer configuration DNS Cloudflare
copy:
dest: /etc/NetworkManager/conf.d/90-dns-none.conf
content: |
[main]
dns=none
notify:
- Reload NetworkManager
- name: Ajuster /etc/resolv.conf avec Cloudflare
lineinfile:
path: /etc/resolv.conf
insertafter: EOF
line: "{{ item }}"
loop:
- "nameserver 1.1.1.2"
- "nameserver 2606:4700:4700::1112"
notify:
- Reload NetworkManager

View File

@ -0,0 +1,90 @@
---
- name: Vérifier si firefox-esr est installé
ansible.builtin.package_facts:
manager: apt
- name: Définir le flag firefox_esr_installed
ansible.builtin.set_fact:
firefox_esr_installed: "{{ 'firefox-esr' in ansible_facts.packages }}"
# Backup user profile
- name: Vérifier la présence du profil Firefox
ansible.builtin.stat:
path: "{{ firefox_profile_dir }}"
register: firefox_profile
- name: Sauvegarder le profil Firefox ESR
ansible.builtin.copy:
src: "{{ firefox_profile_dir }}"
dest: "{{ firefox_backup_dir }}"
remote_src: true
owner: "{{ ansible_user }}"
group: "{{ ansible_user }}"
mode: preserve
when:
- firefox_esr_installed
- firefox_profile.stat.exists
# Remove ESR
- name: Supprimer firefox-esr
ansible.builtin.apt:
name: firefox-esr
state: absent
purge: true
autoremove: true
when: firefox_esr_installed
# Add Forefox repo
- name: Créer le répertoire des keyrings APT
ansible.builtin.file:
path: /etc/apt/keyrings
state: directory
mode: "0755"
- name: Installer la clé GPG Mozilla
ansible.builtin.get_url:
url: https://packages.mozilla.org/apt/repo-signing-key.gpg
dest: "{{ mozilla_keyring }}"
mode: "0644"
- name: Ajouter le dépôt Mozilla
ansible.builtin.copy:
dest: /etc/apt/sources.list.d/mozilla.sources
content: |
Types: deb
URIs: https://packages.mozilla.org/apt
Suites: mozilla
Components: main
Signed-By: {{ mozilla_keyring }}
- name: Ajouter la priorité APT Mozilla
ansible.builtin.copy:
dest: /etc/apt/preferences.d/mozilla
content: |
Package: *
Pin: origin packages.mozilla.org
Pin-Priority: 1000
# Install
- name: Mettre à jour le cache APT
ansible.builtin.apt:
update_cache: true
- name: Installer Firefox (version Mozilla)
ansible.builtin.apt:
name: firefox
state: present
# Ublock origin
- name: Créer le dossier extensions global Firefox
ansible.builtin.file:
path: /usr/lib/firefox/distribution/extensions
state: directory
mode: "0755"
- name: Télécharger uBlock Origin
ansible.builtin.get_url:
url: "{{ ublock_download_url }}"
dest: "/usr/lib/firefox/distribution/extensions/{{ ublock_extension_id }}"
mode: "0644"

View File

@ -0,0 +1,15 @@
---
- name: Installer la configuration clavier
ansible.builtin.copy:
src: files/keyboard
dest: /etc/default/keyboard
owner: root
group: root
mode: "0644"
- name: Définir LANG=fr_FR.UTF-8 dans /etc/default/locale
ansible.builtin.lineinfile:
path: /etc/default/locale
line: "LANG=fr_FR.UTF-8"
create: true
state: present

View File

@ -0,0 +1,15 @@
---
- name: Installer réglages LibreOffice
block:
# user
- copy:
src: files/registrymodifications.xcu
dest: "/home/{{ user }}/.config/libreoffice/4/user/registrymodifications.xcu"
owner: "{{ user }}"
group: "{{ user }}"
mode: 0644
# system wide
- copy:
src: files/registrymodifications.xcu
dest: "/etc/skel/.config/libreoffice/4/user/registrymodifications.xcu"
mode: 0644

View File

@ -0,0 +1,8 @@
---
# - import_tasks: keyboard.yml
# - import_tasks: apt.yml
# - import_tasks: base_tools.yml
# - import_tasks: dns.yml
# - import_tasks: firefox.yml
# - import_tasks: libreoffice.yml
- import_tasks: apps.yml

View File

@ -0,0 +1,20 @@
---
ansible_become: true
timezone: Europe/Paris
ansible_user: "{{ lookup('env', 'USER') }}"
user: "greg"
language:
keyboard:
freetube_version: "0.23.13-beta"
element_version: "1.12.8"
element_deb_url: "https://packages.element.io/debian/pool/main/e/element-desktop/element-desktop_{{ element_version }}_amd64.deb"
firefox_profile_dir: "/home/{{ ansible_user }}/.mozilla/firefox"
firefox_backup_dir: "/home/{{ ansible_user }}/firefox_esr_backup_{{ ansible_date_time.iso8601_basic }}"
mozilla_keyring: /etc/apt/keyrings/packages.mozilla.org.asc
ublock_extension_id: "uBlock0@raymondhill.net.xpi"
ublock_download_url: "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi"

View File

@ -1,5 +0,0 @@
---
virtualbox_version: "7.0"
virtualbox_package: "virtualbox-{{ virtualbox_version }}"
virtualbox_repo_key_url: "https://www.virtualbox.org/download/oracle_vbox_2016.asc"
virtualbox_repo_url: "deb [arch=amd64] https://download.virtualbox.org/virtualbox/debian trixie contrib"

View File

@ -1,69 +0,0 @@
---
- name: Install prerequisites
apt:
name:
- apt-transport-https
- ca-certificates
- gnupg
- lsb-release
- dkms
- build-essential
state: present
update_cache: yes
- name: Disable KVM modules if present
block:
- name: Check if kvm modules are loaded
shell: |
lsmod | grep -E 'kvm_intel|kvm_amd|kvm' || true
register: kvm_modules
changed_when: false
- name: Blacklist KVM modules
copy:
dest: /etc/modprobe.d/disable-kvm.conf
content: |
# Disabled for VirtualBox compatibility
blacklist kvm
blacklist kvm_intel
blacklist kvm_amd
when: kvm_modules.stdout != ""
- name: Remove loaded KVM modules immediately
shell: |
rmmod kvm_intel || true
rmmod kvm_amd || true
rmmod kvm || true
when: kvm_modules.stdout != ""
ignore_errors: yes
- name: Add VirtualBox repository GPG key
ansible.builtin.apt_key:
url: "{{ virtualbox_repo_key_url }}"
state: present
- name: Add VirtualBox apt repository
ansible.builtin.apt_repository:
repo: "{{ virtualbox_repo_url }}"
state: present
filename: "virtualbox"
- name: Update apt cache
apt:
update_cache: yes
- name: Install VirtualBox
apt:
name: "{{ virtualbox_package }}"
state: present
- name: Ensure vboxdrv is loaded
command: /sbin/vboxconfig
register: vboxconfig
changed_when: "'done' in vboxconfig.stdout"
- name: Add user to vboxusers group
user:
name: "{{ ansible_user }}"
groups: vboxusers
append: yes

View File

@ -1,6 +0,0 @@
---
winehq_repo_url: https://dl.winehq.org/wine-builds/debian/dists/trixie/winehq-trixie.sources
winehq_key_url: https://dl.winehq.org/wine-builds/winehq.key
winehq_keyring: /etc/apt/keyrings/winehq-archive.key
winehq_packages:
- winehq-stable

View File

@ -1,55 +0,0 @@
---
- name: Vérifier que le système est Debian
ansible.builtin.assert:
that:
- ansible_facts['distribution'] == "Debian"
fail_msg: "Ce rôle est prévu uniquement pour Debian"
tags: wine
- name: Ajouter larchitecture i386
ansible.builtin.command: dpkg --add-architecture i386
register: add_i386
changed_when: add_i386.rc == 0
tags: wine
- name: Créer le dossier keyrings
ansible.builtin.file:
path: /etc/apt/keyrings
state: directory
mode: '0755'
tags: wine
- name: Télécharger et installer la clé WineHQ
ansible.builtin.get_url:
url: "{{ winehq_key_url }}"
dest: /tmp/winehq.key
mode: '0644'
tags: wine
- name: Convertir la clé en keyring GPG
ansible.builtin.command: >
gpg --dearmor
-o {{ winehq_keyring }}
/tmp/winehq.key
args:
creates: "{{ winehq_keyring }}"
tags: wine
- name: Ajouter le dépôt WineHQ
ansible.builtin.get_url:
url: "{{ winehq_repo_url }}"
dest: /etc/apt/sources.list.d/winehq-trixie.sources
mode: '0644'
tags: wine
- name: Mettre à jour le cache APT
ansible.builtin.apt:
update_cache: yes
tags: wine
- name: Installer WineHQ Stable (avec recommandations)
ansible.builtin.apt:
name: "{{ winehq_packages }}"
state: present
install_recommends: yes
tags: wine