1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
|
---
- name: Import other tools
include_role:
name: "{{ tool_import_item }}"
loop:
- git
- gnupg
loop_control:
loop_var: tool_import_item
- name: Config dirs
file:
state: directory
path: "$XDG_CONFIG_HOME/{{ item }}"
loop:
- htop
- mplayer
- psql
- vim
- tmux
- youtube-viewer
- remind
- systemd/user
- name: config files
copy:
src: "{{ item }}"
dest: "$XDG_CONFIG_HOME/{{ item }}"
loop:
- htop/htoprc
- mplayer/config
- name: template config files
template:
src: "{{ item }}.j2"
dest: "$XDG_CONFIG_HOME/{{ item }}"
loop:
- wgetrc
- name: postgresql
block:
- name: psql config file
copy:
src: psqlrc
dest: $XDG_CONFIG_HOME/psql/psqlrc
- name: psql history directory
file:
path: $XDG_STATE_HOME/psql
state: directory
- name: vim config file
copy:
src: vimrc
dest: $XDG_CONFIG_HOME/vim/vimrc
notify:
- run PlugInstall
- meta: flush_handlers
- name: tmux config file
template:
src: tmux.conf.j2
dest: $XDG_CONFIG_HOME/tmux/tmux.conf
- name: youtube viewer config file
template:
src: youtube-viewer.conf.j2
dest: $XDG_CONFIG_HOME/youtube-viewer/youtube-viewer.conf
- name: remind config file
copy:
src: "remind/commands/{{ item }}"
dest: "$XDG_CONFIG_HOME/remind/{{ item }}"
loop:
- work
- name: remind service file
copy:
src: remind/remind@.service
dest: $XDG_CONFIG_HOME/systemd/user/
notify:
- reload systemd
- name: monitor home service file
copy:
src: monitor_home.service
dest: "$XDG_CONFIG_HOME/systemd/user/"
notify:
- reload systemd
- meta: flush_handlers
- name: enable monitor home
systemd:
state: started
scope: user
name: monitor_home.service
enabled: true
- name: Clone password store
git:
dest: "$XDG_DATA_HOME/pass"
repo: gitolite@git.immae.eu:perso/Immae/Prive/Password_store
- name: dconf configuration
# check: `dconf dump /` or `dconf-editor`
dconf:
key: "{{ item.0 }}"
value: "{{ item.1 }}"
loop:
- ["/org/gnome/evince/default/continuous", "true"]
- ["/org/gnome/evince/default/fullscreen", "true"]
- ["/org/gtk/settings/file-chooser/sort-column", "'name'"]
- ["/org/gtk/settings/file-chooser/show-size-column", "true"]
- ["/org/gtk/settings/file-chooser/show-hidden", "true"]
- ["/org/gtk/settings/file-chooser/location-mode", "'path-bar'"]
- ["/org/gtk/settings/file-chooser/sort-directories-first", "false"]
- ["/org/gtk/settings/file-chooser/sort-order", "'ascending'"]
- ["/org/gtk/settings/file-chooser/startup-mode", "'recent'"]
- name: gtk2 configuration
ini_file:
path: "$XDG_CONFIG_HOME/gtk-2.0/gtkfilechooser.ini"
section: "Filechooser Settings"
option: "{{ item.0 }}"
value: "{{ item.1 }}"
no_extra_spaces: true
loop:
- [ "SortColumn", "name" ]
- [ "ShowSizeColumn", "true" ]
- [ "ShowHidden", "true" ]
- [ "LocationMode", "path-bar" ]
- [ "SortOrder", "ascending" ]
- [ "StartupMode", "recent" ]
- name: pavucontrol configuration
ini_file:
path: "$XDG_CONFIG_HOME/pavucontrol.ini"
section: "window"
option: "{{ item.0 }}"
value: "{{ item.1 }}"
no_extra_spaces: true
loop:
- [ "sinkInputType", "0" ]
- [ "sourceOutputType", "0" ]
- [ "sinkType", "0" ]
- [ "sourceType", "0" ]
- [ "showVolumeMeters", "1" ]
- name: ssh config dirs
file:
state: directory
path: "$HOME/.ssh"
- name: ssh files
copy:
src: "ssh/{{ item }}"
dest: "$HOME/.ssh/{{ item }}"
loop:
- known_hosts
- rc
- name: ssh configuration
template:
src: ssh_config.j2
dest: $HOME/.ssh/config
|