-
-
Notifications
You must be signed in to change notification settings - Fork 14
/
Copy pathindex.html
353 lines (332 loc) · 12.3 KB
/
index.html
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
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
<!DOCTYPE html>
<html lang="en-US">
<head>
<title>archibold.io</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimal-ui">
<meta property="og:site_name" content="archibold">
<meta property="og:url" content="https://archibold.io">
<meta property="og:title" content="archibold, by Andrea Giammarchi">
<meta property="og:image" content="https://archibold.io/img/archibold.jpg">
<meta name="twitter:image" content="https://archibold.io/img/archibold.jpg">
<meta name="twitter:card" content="summary">
<meta name="twitter:url" content="https://archibold.io">
<meta name="twitter:title" content="archibold">
<meta name="twitter:description" content="archibold, by Andrea Giammarchi">
<meta name="twitter:site" content="@WebReflection">
<meta name="twitter:creator" content="@WebReflection">
<style>
html, body {
font-family: monospace;
color: #eeeeec;
background-color: #232729;
padding: 0;
margin: 0;
}
body, #logo, div.img, footer {
text-align: center;
}
body > div {
padding: 8px;
max-width: 720px;
}
body > div, #logo > pre, img {
display: inline-block;
margin: auto;
}
pre, p > code, li > code {
color: #dddddb;
background-color: #0b0c0c;
}
pre {
padding: 8px;
}
p > code, li > code {
padding: 0 2px;
}
section {
text-align: left;
margin-top: 48px;
}
footer > img {
width: 60%;
margin: auto;
margin: 48px 0;
}
pre strong {
color: inherit;
}
body {
font-size: 1em;
}
h1 {
font-size: 1.6em;
}
h2 {
font-size: 1.4em;
margin-top: 24px;
}
h1:before {
content: '# ';
}
h2:before {
content: '## ';
}
h3:before {
content: '### ';
}
a, h1:before, h2:before {
color: #FFF;
}
a {
text-decoration: none;
border-bottom: 1px solid #232729;
transition: all .3s ease-in;
}
a:hover {
color: #EEE;
border-bottom: 1px solid #dddddb;
}
img {
margin-top: 16px;
max-width: 640px;
}
#logo {
cursor: default;
}
#logo > h2 {
display: none;
}
#logo > pre {
padding: 0;
background-color: inherit;
color: inherit;
}
@media (max-width: 820px) {
#logo > pre, pre {
font-size: .8em;
}
pre {
overflow: auto;
}
}
@media (max-width: 620px) {
#logo > pre, pre {
font-size: .6em;
}
}
@media (max-width: 480px) {
#logo > pre, pre {
font-size: .4em;
}
}
</style>
</head>
<body>
<div>
<section id="logo"><h2>archibold</h2><pre>
_| _| _| _| _| _|
_|_|_| _| _|_| _|_|_| _|_|_| _|_|_| _|_| _| _|_|_| _|_|
_| _| _|_| _| _| _| _| _| _| _| _| _| _| _| _| _| _|
_| _| _| _| _| _| _| _| _| _| _| _| _| _| _| _| _|
_|_|_| _| _|_|_| _| _| _| _|_|_| _|_| _| _|_|_| _| _| _|_|
</pre>
<p>by Andrea Giammarchi - <a href="https://twitter.com/WebReflection">@WebReflection</a></p>
</section>
<section id="about">
<h1><a href="#about">About</a></h1>
<p>
<strong>archibold.io</strong> is a zero hassle <a href="https://www.archlinux.org/">Arch Linux</a> installer and a <code>Bash</code> based utility belt.
</p>
<p>
Previously a <em>one-shot</em> <a href="https://www.gnome.org/">GNOME</a> on Arch Linux automatic installation procedure,
archibold has evolved into a <a href="https://github.com/WebReflection/archibold.io/tree/gh-pages">fully GitHub hosted</a> Open Source service based on <code>curl</code> requests.
</p>
<h2 id="using-utilities">
<a href="#using-utilities">Using Utilities</a>
</h2>
<p>
Inspired by <a href="http://www.commonjs.org/">CommonJS</a>, it is possible to <code>require</code> archibold utilities in a similar fashion.
</p>
<pre><code># archibold.io/require to access utilities
source <(curl -s https://archibold.io/require)
# at this point, all utilities and install
# will be available via require
require echomd
require server
# utilities are instantly available
echomd '*Browse* this project via *http://localhost:8000/*'
server
</code></pre>
<h2 id="software-install">
<a href="#software-install">Installing Software</a>
</h2>
<p>
Configuring software can be tedious and verbose. Here archibold can help as well.
</p>
<pre><code># install Chromium, Widevine and Pepperflash
bash <(curl -s https://archibold.io/install/chromium)
# install pakku (or pamac, or yay, or yaourt)
bash <(curl -s https://archibold.io/install/pakku)
</code></pre>
<h2 id="aur-install">
<a href="#aur-install">Installing AUR Packages</a>
</h2>
<p>
There is a little helper that performs the most basic AUR operations to install a package.
</p>
<pre><code># install the utility
bash <(curl -s https://archibold.io/install/aur)
# or use it as one-off
source <(curl -s https://archibold.io/utils/aur)
# install pakku (or pamac, or yay, or yaourt)
aur pakku
</code></pre>
<h2 id="base-install">
<a href="#base-install">Installing basic Arch Linux from scratch</a>
</h2>
<p>
I strongly suggest to consider <strong><a href="https://endeavouros.com/">EndeavourOS</a></strong> installer,
which is far more user friendly than anything archibold will ever be.
</p>
<hr/>
<p>
Finally, the original achievement of archibold has been improved all over.
</p>
<p>
It is now possible to simply type the following:
</p>
<pre><code># install from scratch Arch Linux
bash <(curl -s https://archibold.io/get)</code></pre>
<p>
After you've booted Arch Linux through its image,
the command will start installing Arch Linux from the scratch in such machine or,
in case you are already running Arch Linux, into an SD card or USB one.
</p>
<p>
Remember, a fresh install will format and erase the target disk: choose the right one.
</p>
<p>
Read the <a href="#how-to">How To</a> to know even more.
</p>
<h2 id="help">
<a href="#help">There is an Helper too</a>
</h2>
<p>
You can read a quick <em>How To</em> at any time through the helper.
</p>
<pre><code># read the helper
bash <(curl -Ls https://archibold.io/help)</code></pre>
<p>Please note the <code>-Ls</code> curl's flags, needed to follow redirects.</p>
</section>
<section id="how-to">
<h1><a href="#how-to">How To Install From Scratch</a></h1>
<p>
As very first step, we need a bootable version of <a href="https://www.archlinux.org/download/">ArchLinux iso</a> through USB stick or DVD.<br/>
We can learn how to burn it in the <a href="https://wiki.archlinux.org/index.php/USB_flash_installation_media#BIOS_and_UEFI_Bootable_USB">dedicated page</a>.<br/>
Following the Linux/Mac summary where <code>/dev/sdX</code> is the USB path.
</p>
<pre><code># just bs=4M in Linux, older OSX has no M option
dd if=~/Downloads/archlinux-2015.02.01-dual.iso of=/dev/sdX bs=4194304</code></pre>
<p>
Please note it might take 5 minutes or more to complete above operation, be patient.
</p>
<p>
Once <code>dd</code> has finished, we can use the USB stick from any USB port of the target machine.<br/>
Some target might require some extra step and it depends on the <strong>bios</strong>.<br/>
Usually keeping pressed <strong>Esc</strong>, <strong>F2</strong>, <strong>F10</strong>, or <strong>F12</strong>
during boot should help reaching the boot menu.
</p>
<p>
The boot option we are interested about is the <strong>UEFI ArchLinux</strong> one.<br/>
If everything goes OK, we should bootstrap into a terminal/console.
</p>
<p>
As <strong>extra requirement</strong> the target machine will need to be <strong>connected to the Internet</strong>.<br/>
The preferred connection type is via <strong>network cable</strong>, but we could use WiFi too.<br/>
However, WiFi initial configuration is a bit more advanced, I can give a hint thought:
</p>
<p>
Recent ArchLinux installer does <strong>not</strong> offer <code>wifi-menu</code> but <a href="https://wiki.archlinux.org/index.php/Iwd#iwctl">iwctl</a> instead.
</p>
<pre><code># verify wifi path
iw dev # or ip addr
# wifi path will look similar to wlp2s0
# use such name after wifi-menu
wifi-menu wlp2s0
# choose your WiFi network and enter password
# verify you are connected
ping 8.8.8.8
# PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
# 64 bytes from 8.8.8.8: icmp_seq=1 ttl=53 time=8.15 ms
# 64 bytes from 8.8.8.8: icmp_seq=2 ttl=53 time=9.36 ms
# 64 bytes from 8.8.8.8: icmp_seq=3 ttl=53 time=7.92 ms
# ...
# press Ctrl+C to stop the ping
# if not, try to start the service manually
#> netctl start wlp2s0-YourWiFi-NAME</code></pre>
<p>
Once we have a usable network, we can use the installer.
</p>
<pre><code>bash <(curl -s https://archibold.io/get)</code></pre>
<p>
Follow instructions and you'll be ready in 10 minutes.
</p>
</section>
<section id="problem-solving">
<h1>
<a href="#problem-solving">Problem Solving & Setup</a>
</h1>
<p>
Following a list of known gotchas that could make <em>archibold</em> journey not so nice.
</p>
<ul>
<!-- li>
<strong>VirtualBox EFI Boot Loader</strong><br/>
If your VBox doesn't remember how to load archibold,
type the following on the EFI v2 Shell:
<pre><code>FS0:\syslinux\loader.efi</code></pre>
To make this change permanent you can create the structure VBox search by default.<br/>
Once in archibold, open a terminal session and:
<pre><code># create folder structure and copy the loader
sudo mkdir -p /boot/EFI/BOOT
sudo cp /boot/syslinux/loader.efi /boot/EFI/BOOT/bootx64.efi
</code></pre>
</li -->
<!-- li>
<strong>Broadcom WiFi</strong> problems. The hybrid driver works quite OK if patched and it's available via AUR.
</li -->
<li>
<strong>how to manually install and remove software</strong>. Our best friend here is <a href="https://wiki.archlinux.org/index.php/pacman">pacman</a>!<br/>
A <i>way-too-quick</i> introduction would be the following, to be typed via the Terminal:
<pre><code># to install sudo for your generic user
# bash <(curl -s https://archibold.io/install/sudo)
# to update everything in the system
sudo pacman -Syu
# to search a specific package online
sudo pacman -Ss <i>package-name</i>
# to install a specific package
sudo pacman -S <i>package-name</i>
# to install a specific package
# without reinstalling it or its dependencies
sudo pacman -S --needed <i>package-name</i>
# to know if a package is installed or search one locally
sudo pacman -Qs <i>package-name</i>
# to remove a package and its dependencies
sudo pacman -Rsc <i>package-name</i>
# to clean old packages cache
sudo pacman -Sc</code></pre>
</li>
</ul>
<h2 id="bootfix">
<a href="#bootfix">Legacy Installer: Syslinux boot failure</a>
</h2>
<p>
If after an update your system doesn't boot anymore, try switching to systemd-boot instead, like latest archibold does too.
Simply start your PC through an ArchLinux ISO and type the following to fix your boot.
</p>
<pre><code>bash <(curl -s archibold.io/install/bootfix)</code></pre>
</section>
</div>
</body>
</html>