Import devserver userland-software unit from Nasqueron
[wynter-salt-workstation.git] / roles / workstation / userland-software / base.sls
blobd8bd0bed64f7b1434f80e16bd9944421602df693
1 #   -------------------------------------------------------------
2 #   Salt — Provision a small local network
3 #   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
4 #   Project:        Wynter
5 #   Created:        2016-04-09
6 #   License:        Trivial work, not eligible to copyright
7 #   Keep in sync:   rOPS roles/shellserver/userland-software/base.sls
8 #   -------------------------------------------------------------
10 {% from "map.jinja" import packages, packages_prefixes with context %}
12 #   -------------------------------------------------------------
13 #   Shells
14 #   -------------------------------------------------------------
16 shells:
17   pkg:
18     - installed
19     - pkgs:
20       - bash
21       - zsh
22       {% if grains['os'] != 'FreeBSD' %}
23       - tcsh
24       {% endif %}
26 /usr/local/share/zsh/site-functions/_pm:
27   file.managed:
28     # At commit 683d331 - 2017-11-05
29     - source: https://raw.githubusercontent.com/Angelmmiguel/pm/master/zsh/_pm
30     - source_hash: deea33968be713cdbd8385d3a72df2dd09c444e42499531893133f009f0ce0ea
32 #   -------------------------------------------------------------
33 #   Editors
35 #   Disclaimer: We don't caution the views of Richard Stallman
36 #   or the Church of Emacs positions.
37 #   See http://geekfeminism.wikia.com/wiki/EMACS_virgins_joke
38 #   -------------------------------------------------------------
40 editors:
41   pkg:
42     - installed
43     - pkgs:
44       - vim
45       - nano
46       - joe
47       - {{ packages.emacs }}
49 #   -------------------------------------------------------------
50 #   General UNIX utilities
51 #   -------------------------------------------------------------
53 utilities:
54   pkg:
55     - installed
56     - pkgs:
57       - mosh
58       - cmatrix
59       - figlet
60       - grc
61       - nmap
62       - toilet
63       - tmux
64       - tree
65       - unrar
66       - whois
67       - woof
68       {% if grains['os_family'] == 'Debian' %}
69       - bsdmainutils
70       - sockstat
71       - dnsutils
72       - sysvbanner
73       - toilet-fonts
74       {% endif %}
75       {% if grains['os'] == 'FreeBSD' %}
76       - figlet-fonts
77       - bind-tools
78       - sudo
79       - coreutils
80       - gnugrep
81       - gsed
82       - wget
83       {% endif %}
85 utilities_www:
86   pkg:
87     - installed
88     - pkgs:
89       - links
90       - w3m
91       - lynx
93 #   -------------------------------------------------------------
94 #   Development
95 #   -------------------------------------------------------------
97 dev:
98   pkg:
99     - installed
100     - pkgs:
101       - autoconf
102       - automake
103       - git
104       - colordiff
105       - cmake
106       - valgrind
107       - jq
108       - {{ packages.cppunit }}
109       - {{ packages.ag }}
110       {% if grains['os'] == 'FreeBSD' %}
111       - hub
112       {% else %}
113       - arcanist
114       - clang
115       - llvm
116       - strace
117       {% endif %}
119 {% if grains['os_family'] == 'Debian' %}
120 dev_popular_libs:
121   pkg:
122     - installed
123     - pkgs:
124       - libssl-dev
125 {% endif %}
127 #   -------------------------------------------------------------
128 #   Languages
129 #   -------------------------------------------------------------
131 languages_removed:
132   pkg:
133     - removed
134     - pkgs:
135       {% if grains['os_family'] == 'Debian' %}
136       - php7.0
137       {% elif grains['os'] == 'FreeBSD' %}
138       - php70
139       {% endif %}
141 languages:
142   pkg:
143     - installed
144     - pkgs:
145       - python3
146       {% if grains['os_family'] == 'Debian' %}
147       - tcl8.6-dev
148       - php7.1
149       {% elif grains['os'] == 'FreeBSD' %}
150       - tcl86
151       - php71
152       {% endif %}
154 #   -------------------------------------------------------------
155 #   De facto standard libraries for languages
156 #   -------------------------------------------------------------
158 languages_libs:
159   pkg:
160     - installed
161     - pkgs:
162       # PHP
163       - {{ packages_prefixes.php }}bcmath
164       - {{ packages_prefixes.php }}ctype
165       - {{ packages_prefixes.php }}curl
166       - {{ packages_prefixes.php }}dom
167       - {{ packages_prefixes.php }}filter
168       - {{ packages_prefixes.php }}gd
169       - {{ packages_prefixes.php }}hash
170       - {{ packages_prefixes.php }}intl
171       - {{ packages_prefixes.php }}json
172       - {{ packages_prefixes.php }}mbstring
173       - {{ packages_prefixes.php }}mysqli
174       - {{ packages_prefixes.php }}openssl
175       - {{ packages_prefixes.php }}pcntl
176       - {{ packages_prefixes.php }}pdo
177       - {{ packages_prefixes.php }}pdo_mysql
178       - {{ packages_prefixes.php }}pdo_sqlite
179       - {{ packages_prefixes.php }}phar
180       - {{ packages_prefixes.php }}session
181       - {{ packages_prefixes.php }}simplexml
182       - {{ packages_prefixes.php }}soap
183       - {{ packages_prefixes.php }}tokenizer
184       - {{ packages_prefixes.php }}wddx
185       - {{ packages_prefixes.php }}xml
186       - {{ packages_prefixes.php }}xmlwriter
187       - {{ packages_prefixes.php }}xsl
188       - {{ packages_prefixes.php }}zlib
189       - {{ packages.composer }}
190       - {{ packages.pear }}
191       - {{ packages.phpcs }}
192       # TCL
193       - tcllib
194       - {{ packages.tcltls }}
196 #   -------------------------------------------------------------
197 #   Spelling and language utilities
198 #   -------------------------------------------------------------
200 spelling:
201   pkg:
202     - installed
203     - pkgs:
204         - {{ packages.verbiste }}
205         - {{ packages['aspell-fr'] }}
206         - {{ packages['aspell-en'] }}
208 #   -------------------------------------------------------------
209 #   Media utilities
210 #   -------------------------------------------------------------
212 media:
213   pkg:
214     - installed
215     - pkgs:
216       - {{ packages.exiftool }}
217       - {{ packages.imagemagick }}
218       - cmus
220 #   -------------------------------------------------------------
221 #   Desktop manager
222 #   -------------------------------------------------------------
224 desktop_managers:
225   pkg:
226     - installed
227     - pkgs:
228         - gnome3
229         - cinnamon