falkorlib 0.8.10 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +60 -117
  3. data/README.md +46 -10
  4. data/binscripts/bootstrap.sh +8 -10
  5. data/completion/_falkor +16 -1
  6. data/falkorlib.gemspec +14 -14
  7. data/lib/falkorlib/bootstrap/base.rb +37 -32
  8. data/lib/falkorlib/bootstrap/git.rb +19 -4
  9. data/lib/falkorlib/bootstrap/latex.rb +7 -2
  10. data/lib/falkorlib/bootstrap/vagrant.rb +17 -10
  11. data/lib/falkorlib/cli.rb +16 -1
  12. data/lib/falkorlib/common.rb +3 -3
  13. data/lib/falkorlib/config.rb +3 -3
  14. data/lib/falkorlib/gem_tasks.rb +1 -1
  15. data/lib/falkorlib/git_tasks.rb +1 -1
  16. data/lib/falkorlib/puppet_tasks.rb +1 -1
  17. data/lib/falkorlib/version.rb +2 -1
  18. data/spec/falkorlib/bootstrap_latex_spec.rb +6 -5
  19. data/spec/falkorlib/bootstrap_spec.rb +45 -1
  20. data/spec/falkorlib/git_spec.rb +2 -2
  21. data/spec/falkorlib/gitflow_spec.rb +5 -4
  22. data/templates/gitignore/All.gitignore +2 -0
  23. data/templates/gitignore/Python.gitignore +162 -0
  24. data/templates/gitignore/TeX.gitignore +309 -0
  25. data/templates/latex/beamer/.Makefile.local +1 -0
  26. data/templates/latex/beamer/_content.md.erb +1 -1
  27. data/templates/latex/beamer/main.tex.erb +20 -8
  28. data/templates/latex/images/logo_ANSSI.png +0 -0
  29. data/templates/latex/images/logo_RF.png +0 -0
  30. data/templates/motd/motd.erb +2 -2
  31. data/templates/vagrant/.gitignore +14 -0
  32. data/templates/vagrant/Vagrantfile.erb +53 -15
  33. data/templates/vagrant/vagrant/config.yaml.sample +9 -6
  34. data/templates/vagrant/vagrant/scripts/bootstrap.sh +32 -14
  35. metadata +86 -79
  36. data/templates/latex/images/logo_UL.pdf +0 -0
  37. data/templates/latex/images/logo_ULHPC.pdf +0 -0
@@ -0,0 +1,309 @@
1
+ ## Core latex/pdflatex auxiliary files:
2
+ *.aux
3
+ *.lof
4
+ *.log
5
+ *.lot
6
+ *.fls
7
+ *.out
8
+ *.toc
9
+ *.fmt
10
+ *.fot
11
+ *.cb
12
+ *.cb2
13
+ .*.lb
14
+
15
+ ## Intermediate documents:
16
+ *.dvi
17
+ *.xdv
18
+ *-converted-to.*
19
+ # these rules might exclude image files for figures etc.
20
+ # *.ps
21
+ # *.eps
22
+ # *.pdf
23
+
24
+ ## Generated if empty string is given at "Please type another file name for output:"
25
+ .pdf
26
+
27
+ ## Bibliography auxiliary files (bibtex/biblatex/biber):
28
+ *.bbl
29
+ *.bcf
30
+ *.blg
31
+ *-blx.aux
32
+ *-blx.bib
33
+ *.run.xml
34
+
35
+ ## Build tool auxiliary files:
36
+ *.fdb_latexmk
37
+ *.synctex
38
+ *.synctex(busy)
39
+ *.synctex.gz
40
+ *.synctex.gz(busy)
41
+ *.pdfsync
42
+
43
+ ## Build tool directories for auxiliary files
44
+ # latexrun
45
+ latex.out/
46
+
47
+ ## Auxiliary and intermediate files from other packages:
48
+ # algorithms
49
+ *.alg
50
+ *.loa
51
+
52
+ # achemso
53
+ acs-*.bib
54
+
55
+ # amsthm
56
+ *.thm
57
+
58
+ # beamer
59
+ *.nav
60
+ *.pre
61
+ *.snm
62
+ *.vrb
63
+
64
+ # changes
65
+ *.soc
66
+
67
+ # comment
68
+ *.cut
69
+
70
+ # cprotect
71
+ *.cpt
72
+
73
+ # elsarticle (documentclass of Elsevier journals)
74
+ *.spl
75
+
76
+ # endnotes
77
+ *.ent
78
+
79
+ # fixme
80
+ *.lox
81
+
82
+ # feynmf/feynmp
83
+ *.mf
84
+ *.mp
85
+ *.t[1-9]
86
+ *.t[1-9][0-9]
87
+ *.tfm
88
+
89
+ #(r)(e)ledmac/(r)(e)ledpar
90
+ *.end
91
+ *.?end
92
+ *.[1-9]
93
+ *.[1-9][0-9]
94
+ *.[1-9][0-9][0-9]
95
+ *.[1-9]R
96
+ *.[1-9][0-9]R
97
+ *.[1-9][0-9][0-9]R
98
+ *.eledsec[1-9]
99
+ *.eledsec[1-9]R
100
+ *.eledsec[1-9][0-9]
101
+ *.eledsec[1-9][0-9]R
102
+ *.eledsec[1-9][0-9][0-9]
103
+ *.eledsec[1-9][0-9][0-9]R
104
+
105
+ # glossaries
106
+ *.acn
107
+ *.acr
108
+ *.glg
109
+ *.glo
110
+ *.gls
111
+ *.glsdefs
112
+ *.lzo
113
+ *.lzs
114
+ *.slg
115
+ *.slo
116
+ *.sls
117
+
118
+ # uncomment this for glossaries-extra (will ignore makeindex's style files!)
119
+ # *.ist
120
+
121
+ # gnuplot
122
+ *.gnuplot
123
+ *.table
124
+
125
+ # gnuplottex
126
+ *-gnuplottex-*
127
+
128
+ # gregoriotex
129
+ *.gaux
130
+ *.glog
131
+ *.gtex
132
+
133
+ # htlatex
134
+ *.4ct
135
+ *.4tc
136
+ *.idv
137
+ *.lg
138
+ *.trc
139
+ *.xref
140
+
141
+ # hyperref
142
+ *.brf
143
+
144
+ # knitr
145
+ *-concordance.tex
146
+ # TODO Uncomment the next line if you use knitr and want to ignore its generated tikz files
147
+ # *.tikz
148
+ *-tikzDictionary
149
+
150
+ # listings
151
+ *.lol
152
+
153
+ # luatexja-ruby
154
+ *.ltjruby
155
+
156
+ # makeidx
157
+ *.idx
158
+ *.ilg
159
+ *.ind
160
+
161
+ # minitoc
162
+ *.maf
163
+ *.mlf
164
+ *.mlt
165
+ *.mtc[0-9]*
166
+ *.slf[0-9]*
167
+ *.slt[0-9]*
168
+ *.stc[0-9]*
169
+
170
+ # minted
171
+ _minted*
172
+ *.pyg
173
+
174
+ # morewrites
175
+ *.mw
176
+
177
+ # newpax
178
+ *.newpax
179
+
180
+ # nomencl
181
+ *.nlg
182
+ *.nlo
183
+ *.nls
184
+
185
+ # pax
186
+ *.pax
187
+
188
+ # pdfpcnotes
189
+ *.pdfpc
190
+
191
+ # sagetex
192
+ *.sagetex.sage
193
+ *.sagetex.py
194
+ *.sagetex.scmd
195
+
196
+ # scrwfile
197
+ *.wrt
198
+
199
+ # svg
200
+ svg-inkscape/
201
+
202
+ # sympy
203
+ *.sout
204
+ *.sympy
205
+ sympy-plots-for-*.tex/
206
+
207
+ # pdfcomment
208
+ *.upa
209
+ *.upb
210
+
211
+ # pythontex
212
+ *.pytxcode
213
+ pythontex-files-*/
214
+
215
+ # tcolorbox
216
+ *.listing
217
+
218
+ # thmtools
219
+ *.loe
220
+
221
+ # TikZ & PGF
222
+ *.dpth
223
+ *.md5
224
+ *.auxlock
225
+
226
+ # titletoc
227
+ *.ptc
228
+
229
+ # todonotes
230
+ *.tdo
231
+
232
+ # vhistory
233
+ *.hst
234
+ *.ver
235
+
236
+ # easy-todo
237
+ *.lod
238
+
239
+ # xcolor
240
+ *.xcp
241
+
242
+ # xmpincl
243
+ *.xmpi
244
+
245
+ # xindy
246
+ *.xdy
247
+
248
+ # xypic precompiled matrices and outlines
249
+ *.xyc
250
+ *.xyd
251
+
252
+ # endfloat
253
+ *.ttt
254
+ *.fff
255
+
256
+ # Latexian
257
+ TSWLatexianTemp*
258
+
259
+ ## Editors:
260
+ # WinEdt
261
+ *.bak
262
+ *.sav
263
+
264
+ # Texpad
265
+ .texpadtmp
266
+
267
+ # LyX
268
+ *.lyx~
269
+
270
+ # Kile
271
+ *.backup
272
+
273
+ # gummi
274
+ .*.swp
275
+
276
+ # KBibTeX
277
+ *~[0-9]*
278
+
279
+ # TeXnicCenter
280
+ *.tps
281
+
282
+ # auto folder when using emacs and auctex
283
+ ./auto/*
284
+ *.el
285
+
286
+ # expex forward references with \gathertags
287
+ *-tags.tex
288
+
289
+ # standalone packages
290
+ *.sta
291
+
292
+ # Makeindex log files
293
+ *.lpz
294
+
295
+ # xwatermark package
296
+ *.xwm
297
+
298
+ # REVTeX puts footnotes in the bibliography by default, unless the nofootinbib
299
+ # option is specified. Footnotes are the stored in a file with suffix Notes.bib.
300
+ # Uncomment the next line to have this generated file ignored.
301
+ #*Notes.bib
302
+
303
+ ### Custom additions by Falkor
304
+ # GNU Texinfo
305
+ .texinfo/*
306
+
307
+ # Don't consider generated PDF - they must be probably committed at the end
308
+ # somewhere else
309
+ /*.pdf
@@ -0,0 +1 @@
1
+ BIBTEX = biber
@@ -155,7 +155,7 @@ The classical markdown syntax `![](<path/to/image>)` does not allow any control
155
155
 
156
156
  So you probaby wish to do it in \LaTeX\ directly
157
157
 
158
- \centerline{\includegraphics[width=4em]{logo_ULHPC.pdf}}
158
+ \centerline{\includegraphics[width=4em]{logo_ANSSI.png}}
159
159
 
160
160
  A normal (left aligned) text afterward
161
161
 
@@ -1,4 +1,4 @@
1
- % Time-stamp: <Thu 2017-08-17 22:22 svarrette>
1
+ % Time-stamp: <Thu 2023-11-23 17:53 svarrette>
2
2
  % =============================================================================
3
3
  % File: <%= config[:name] %>.tex --
4
4
  % Author(s): <%= config[:author] %> (<%= config[:mail] %>)
@@ -15,6 +15,16 @@
15
15
  \documentclass[aspectratio=169]{beamer}
16
16
  % \documentclass[draft]{beamer}
17
17
  \usepackage{_style}
18
+ \usepackage[
19
+ backend=biber,
20
+ maxnames=999,
21
+ giveninits=true,
22
+ style=verbose,
23
+ ]{biblatex}
24
+ % \addbibresource{biblio.bib}
25
+ \setbeamerfont{footnote}{size=\tiny}
26
+ % Usage in slides: \footfullcite{<bibentry>}
27
+
18
28
 
19
29
  % The key part to use my theme -- if you precise nothing, the image that
20
30
  % illustrate the slides is assumed to be images/slides_image.jpg
@@ -41,8 +51,11 @@
41
51
  \author[<%= config[:author] %> \& al.]{
42
52
  \underline{<%= config[:author] %>}
43
53
  }
44
- \institute[University of Luxembourg]{
45
- \myurl{https://hpc.uni.lu}
54
+ \institute[ANSSI/SDE/DST/LAM]{
55
+ ANSSI/SDE/DST/LAM
56
+ Agence nationale de la sécurité des systèmes d'information / French National Cybersecurity Agency
57
+ Laboratoire Architectures Matérielles et logicielles (LAM)
58
+ \myurl{<%= config[:url] %>}
46
59
  }
47
60
 
48
61
  % Mandatory to **declare** a logo to be placed on the bottom right -- normally the
@@ -80,11 +93,10 @@
80
93
  \column{0.5\textwidth}
81
94
  % \emph{Contact}\\
82
95
  {\tiny
83
- \emph{<%= config[:author] %>}\\
84
- ~~~~ \structure{University of Luxembourg, Belval Campus}:\\
85
- ~~~~ Maison du Nombre, 4th floor\\
86
- ~~~~ 2, avenue de l'Universit\'e\\
87
- ~~~~ L-4365 Esch-sur-Alzette\\
96
+ \emph{ANSSI/SDE/DST/LAM}\\
97
+ ~~~~ \structure{Laboratoire Architectures Matérielles et logicielles}\\
98
+ \emph{Contacts:}\\
99
+ ~~~~\emph{<%= config[:author] %>}\\
88
100
  ~~~~ \textit{mail:} \href{mailto:<%= config[:mail] %>}{<%= config[:mail] %>}\\
89
101
  }
90
102
  \column{0.5\textwidth}
Binary file
@@ -8,11 +8,11 @@ Welcome to <%= config[:hostname].chomp %>
8
8
  <%= ("=" * config[:width]) + "\n" %>
9
9
  Hostname: <%= config[:hostname].chomp %>
10
10
  OS: <%= config[:os] %>
11
- IP: <%= Facter.value(:ipaddress) %> (@mac: <%= Facter.value(:macaddress) %>)
11
+ IP: <%= Facter.value('networking.ip') %> (@mac: <%= Facter.value('networking.mac') %>)
12
12
  Support: <%= config[:support] %>
13
13
 
14
14
  === <%= config[:desc] %> ===
15
15
  <%= config[:nodemodel] %>
16
- RAM: <%= Facter.value(:memorysize) %> -- Swap size: <%= Facter.value(:swapsize) %>
16
+ RAM: <%= Facter.value('memory.system.total') %> -- Swap size: <%= Facter.value('memory.swap.total') %>
17
17
 
18
18
  <%= ("=" * config[:width]) + "\n" %>
@@ -0,0 +1,14 @@
1
+ # Created by https://www.toptal.com/developers/gitignore/api/vagrant
2
+ # Edit at https://www.toptal.com/developers/gitignore?templates=vagrant
3
+
4
+ ### Vagrant ###
5
+ # General
6
+ .vagrant/
7
+
8
+ # Log files (if you are creating logs in debug mode, uncomment this)
9
+ # *.log
10
+
11
+ ### Vagrant Patch ###
12
+ *.box
13
+
14
+ # End of https://www.toptal.com/developers/gitignore/api/vagrant
@@ -1,6 +1,6 @@
1
1
  # -*- mode: ruby -*-
2
2
  # vi: set ft=ruby :
3
- # Time-stamp: <Mon 2020-04-20 15:32 svarrette>
3
+ # Time-stamp: <Mon 2023-12-04 17:12 svarrette>
4
4
  ###########################################################################################
5
5
  # __ __ _ __ _ _
6
6
  # \ \ / /_ _ __ _ _ __ __ _ _ __ | |_ / _(_) | ___
@@ -25,7 +25,7 @@ require 'erb'
25
25
  [ 'vagrant-hosts',
26
26
  'vagrant-vbguest',
27
27
  'vagrant-cachier',
28
- # 'vagrant-libvirt',
28
+ 'vagrant-libvirt',
29
29
  'deep_merge',
30
30
  'terminal-table' ].each do |plugin|
31
31
  abort "Install the '#{plugin}' plugin with 'vagrant plugin install #{plugin}'" unless Vagrant.has_plugin?("#{plugin}")
@@ -53,9 +53,10 @@ DEFAULT_SETTINGS = {
53
53
  # Default images settings
54
54
  :defaults => {
55
55
  :os => :<%= config[:os] %>,
56
+ :provider => :<%= config[:provider] %>,
56
57
  :ram => <%= config[:ram] %>,
57
58
  :vcpus => <%= config[:vcpus] %>,
58
- :vbguest_auto_update => true,
59
+ :vbguest_auto_update => false,
59
60
  :role => 'default',
60
61
  # :nodes => 1,
61
62
  },
@@ -66,10 +67,18 @@ DEFAULT_SETTINGS = {
66
67
  },
67
68
  # Default Boxes
68
69
  :boxes => {
69
- :centos8 => '<%= config[:boxes][:centos8] %>',
70
- :centos7 => '<%= config[:boxes][:centos7] %>',
71
- :debian8 => '<%= config[:boxes][:debian8] %>',
72
- :ubuntu14 => '<%= config[:boxes][:ubuntu14] %>'
70
+ :debian12 => '<%= config[:boxes][:debian12] %>',
71
+ :debian12_uefi => '<%= config[:boxes][:debian12_uefi] %>',
72
+ :almalinux9 => '<%= config[:boxes][:almalinux9] %>',
73
+ :almalinux8 => '<%= config[:boxes][:almalinux8] %>',
74
+ :almalinux8_uefi => '<%= config[:boxes][:almalinux8_uefi] %>',
75
+ :rockylinux8 => '<%= config[:boxes][:rockylinux8] %>',
76
+ :centosstream9 => '<%= config[:boxes][:centosstream9] %>',
77
+ :centosstream8 => '<%= config[:boxes][:centosstream8] %>',
78
+ :ubuntu22 => '<%= config[:boxes][:ubuntu22] %>',
79
+ :ubuntu20 => '<%= config[:boxes][:ubuntu20] %>',
80
+ :fedora38 => '<%= config[:boxes][:fedora38] %>',
81
+ :archlinux => '<%= config[:boxes][:archlinux] %>'
73
82
  },
74
83
  # virtual images to deploy
75
84
  # <name>:
@@ -126,18 +135,21 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
126
135
  # set auto_update to false, if you do NOT want to check the correct
127
136
  # additions version when booting these boxes
128
137
  config.vbguest.auto_update = defaults[:vbguest_auto_update]
138
+ config.vbguest.installer_options = { allow_kernel_upgrade: true }
139
+
129
140
  end
130
141
 
131
142
  # Shell provisioner, to bootstrap each box with the minimal settings/packages
132
143
  DEFAULT_PROVISIONING_SCRIPTS.each do |script|
133
144
  config.vm.provision "shell", path: "#{script}", keep_color: true
134
145
  end
135
- config.vm.synced_folder ".", "/vagrant", type: "virtualbox"
146
+
147
+ # config.vm.synced_folder ".", "/vagrant", type: "virtualbox" # done by default
136
148
  ## Uncomment the below part if you want and additional shared directory
137
149
  # config.vm.synced_folder "vagrant/shared", "/shared", mount_options: ['dmode=777','fmode=777'],
138
150
  # type: "virtualbox" # Shared directory for users
139
151
  if Dir.exist?(File.join(TOP_PUPPETDIR, 'hieradata'))
140
- config.vm.synced_folder "#{puppet_dir}/hieradata", "/tmp/vagrant-puppet/hieradata", type: "virtualbox"
152
+ config.vm.synced_folder "#{puppet_dir}/hieradata", "/tmp/vagrant-puppet/hieradata" #, type: "virtualbox"
141
153
  end
142
154
 
143
155
  # network settings
@@ -161,12 +173,14 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
161
173
  boxname = defaults[:os].to_s.downcase.gsub(/([^\d]+)(\d+)/, '\\1-\\2')
162
174
  name = boxname if name == 'default'
163
175
  os = node[:os] ? node[:os].to_sym : defaults[:os].to_sym
176
+ provider = (os =~ /_uefi$/)? 'libvirt' : defaults[:provider]
177
+ provider = node[:provider] if node[:provider]
164
178
  ram = node[:ram] ? node[:ram] : defaults[:ram]
165
179
  vcpus = node[:vcpus] ? node[:vcpus] : defaults[:vcpus]
166
180
  role = node[:role] ? node[:role] : 'default'
167
181
  desc = node[:desc] ? node[:desc] : 'n/a'
168
182
  puppet_modules = node[:puppet_modules] ? node[:puppet_modules] : []
169
-
183
+ warn "provider: #{provider}"
170
184
  abort "Non-existing box OS '#{os}' for the VM '#{name}'" if settings[:boxes][os.to_sym].nil?
171
185
  abort "Empty IP address range" if ip_range.empty?
172
186
  ip = ip_range[ ip_index.to_i ].to_s
@@ -175,13 +189,36 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
175
189
  config.vm.define "#{name}" do |c|
176
190
  c.vm.box = settings[:boxes][os.to_sym]
177
191
  c.vm.hostname = "#{fqdn}"
178
- c.vm.network :private_network, :ip => ip
192
+ c.vm.network :private_network,
193
+ :ip => ip,
194
+ :libvirt__network_address => network[:range], # ip_range[0].to_s + '/24',
195
+ :libvirt__forward_mode => 'nat'
196
+
179
197
  c.vm.provision :hosts, :sync_hosts => true
198
+ # (eventually) Force default provider
199
+ c.vm.provider :"#{provider}" if provider != 'virtualbox'
180
200
 
181
- c.vm.provider "virtualbox" do |v|
201
+ # Custom VM configs for virtualbox provider
202
+ c.vm.provider 'virtualbox' do |v|
182
203
  v.customize [ 'modifyvm', :id, '--name', hostname, '--memory', ram.to_s ]
183
204
  v.customize [ 'modifyvm', :id, '--cpus', vcpus.to_s ] if vcpus.to_i > 1
184
205
  #v.customize [ 'setextradata', :id, 'VBoxInternal2/SharedFoldersEnableSymlinksCreate/v-root', '1']
206
+ v.customize ["modifyvm", :id, "--firmware", "efi"]
207
+ end
208
+ # Custom VM configs for libvirt provider
209
+ # see https://vagrant-libvirt.github.io/vagrant-libvirt/configuration.html
210
+ c.vm.provider :libvirt do |lv|
211
+ lv.uri = 'qemu:///system'
212
+ lv.host = hostname
213
+ lv.cpus = vcpus
214
+ lv.memory = ram
215
+ # lv.nested = true
216
+
217
+ # Emulated TPM
218
+ lv.tpm_model = "tpm-crb"
219
+ lv.tpm_type = "emulator"
220
+ lv.tpm_version = "2.0"
221
+
185
222
  end
186
223
 
187
224
  # role specialization
@@ -201,8 +238,9 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
201
238
  end
202
239
 
203
240
  # A role fact MUST be defined (default: 'default') as it is used in Hiera config
241
+ facts_dir = '/etc/facter/facts.d/'
204
242
  c.vm.provision "shell",
205
- inline: "echo '{ \"role\": \"#{role}\" }' > /opt/puppetlabs/facter/facts.d/custom.json",
243
+ inline: "mkdir -p #{facts_dir}; echo '{ \"role\": \"#{role}\" }' > #{facts_dir}/custom.json",
206
244
  keep_color: true
207
245
  ################ Puppet install ##############
208
246
  c.vm.provision "puppet" do |puppet|
@@ -222,14 +260,14 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
222
260
 
223
261
  __table[:rows] << [ name, fqdn, os.to_sym, "#{vcpus}/#{ram}", role, desc, ip]
224
262
 
225
- if settings[:vms].keys.last == name
263
+ #if settings[:vms].keys.last == name
226
264
  c.trigger.after :up do |trigger|
227
265
  trigger.info = (Terminal::Table.new __table).to_s
228
266
  trigger.warn = <<-EOF
229
267
  - Virtual Vagrant infrastructure successfully deployed!
230
268
  EOF
231
269
  end
232
- end
270
+ #end
233
271
 
234
272
  end # config.vm.define
235
273
  end # settings
@@ -1,5 +1,5 @@
1
1
  # -*- mode: yaml; -*-
2
- # Time-stamp: <Sat 2020-04-18 18:00 svarrette>
2
+ # Time-stamp: <Sat 2023-11-18 16:59 svarrette>
3
3
  ################################################################################
4
4
  # Complementary configuration for Vagrant
5
5
  # You can overwrite here the default settings defined in ../Vagrantfile and
@@ -11,15 +11,18 @@
11
11
  # Format:
12
12
  # :<os><version>: <username>/<box> # see https://vagrantcloud.com
13
13
  # :boxes:
14
- # :centos8: 'centos/8'
15
- # :centos7: 'centos/7'
16
- # :debian8: 'debian/contrib-jessie64'
17
- # :ubuntu14: 'ubuntu/trusty64'
14
+ # :debian12: 'debian/bookworm64'
15
+ # :rockylinux9: 'rockylinux/9'
16
+ # :rockylinux8: 'rockylinux/8'
17
+ # :ubuntu22: 'ubuntu/jammy64'
18
+ # :ubuntu20: 'ubuntu/focal64'
19
+ # :fedora38: 'generic/fedora38'
20
+ # :archlinux: 'archlinux/archlinux'
18
21
 
19
22
  #_________________
20
23
  # Default settings
21
24
  # :defaults:
22
- # :os: :centos7 # Default OS from the above box definition
25
+ # :os: :debian12 # Default OS from the above box definition
23
26
  # :ram: 512 # Default RAM
24
27
  # :vcpus: 1 # Default number of virtual CPUs
25
28
  # :vbguest_auto_update: 1 # check/update box guest additions