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
|
class basic_software {
package {['less', 'traceroute', 'nmap', 'tree', 'tar', 'screen', 'git', 'net-tools', 'pipx', 'rsync', 'bash-completion', 'moreutils']:}
if($facts['os']['family'] == 'RedHat') {
package {'which':}
copr {'emacs-30':
user => 'mlampe',
dist => 'epel-9',
}
->
package {'emacs-nw':}
copr {'wezterm-nightly':
user => 'wezfurlong',
dist => 'rhel-9',
}
->
package {'wezterm':}
}
if ($facts['os']['family'] == 'Debian') {
package {'emacs-nox':}
if ($facts['os']['release']['major'] == 12) {
file {'/etc/apt/preferences.d/90_emacs':
content => @(EOT)
Package: src:emacs
Pin: release n=bookworm-backports
Pin-Priority: 990
| EOT
,
}
~>
Exec["/usr/bin/apt update"]
->
Package['emacs-nox']
package {'mlocate':}
}
file {'/usr/share/keyrings/wezterm-fury.armored':
content => @(EOT)
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
qR+u
=aOe5
-----END PGP PUBLIC KEY BLOCK-----
| EOT
,
}
->
exec {'/usr/bin/gpg --yes --dearmor -o /usr/share/keyrings/wezterm-fury.gpg </usr/share/keyrings/wezterm-fury.armored':
creates => '/usr/share/keyrings/wezterm-fury.gpg',
}
~>
Exec["/usr/bin/apt update"]
file {'/etc/apt/sources.list.d/wezterm.list':
content => 'deb [signed-by=/usr/share/keyrings/wezterm-fury.gpg] https://apt.fury.io/wez/ * *',
}
~>
Exec["/usr/bin/apt update"]
Exec["/usr/bin/apt update"]
->
package {'wezterm-nightly':}
}
}
|