diff options
author | Bradley Taunt <bt@btxx.org> | 2025-01-04 14:24:44 -0500 |
---|---|---|
committer | Bradley Taunt <bt@btxx.org> | 2025-01-04 14:24:44 -0500 |
commit | 35de97d950cae3900bf3765c2e40d89e5d52b599 (patch) | |
tree | 1b6057e794a060fd810439fb5d22f84d99d03604 | |
parent | b29bb380261fd8712fb1d8a3b8dc54763bc86347 (diff) |
Initial install instructions concept, file tweaks, remove direct compression in build config
-rw-r--r-- | build.sh | 3 | ||||
-rw-r--r-- | build.sh~ | 3 | ||||
-rw-r--r-- | files/.exrc | 8 | ||||
-rw-r--r-- | index.md | 111 | ||||
-rw-r--r-- | index.md~ | 118 | ||||
-rw-r--r-- | public/index.html | 133 | ||||
-rw-r--r-- | public/index.html.gz | bin | 642 -> 0 bytes | |||
-rw-r--r-- | public/style.css.gz | bin | 559 -> 0 bytes |
8 files changed, 367 insertions, 9 deletions
@@ -1,3 +1,2 @@ # ! /bin/sh -(cat _header.html; multimarkdown index.md; cat _footer.html) > public/index.html -find public -type f \( -name "*.html" -o -name "*.css" \) -exec gzip -k -f {} \;
\ No newline at end of file +(cat _header.html; multimarkdown index.md; cat _footer.html) > public/index.html
\ No newline at end of file diff --git a/build.sh~ b/build.sh~ new file mode 100644 index 0000000..313f5a8 --- /dev/null +++ b/build.sh~ @@ -0,0 +1,3 @@ +# ! /bin/sh +(cat _header.html; multimarkdown index.md; cat _footer.html) > public/index.html +find public -type f \( -name "*.html" -o -name "*.css" \) -exec gzip -k -f {} \;
\ No newline at end of file diff --git a/files/.exrc b/files/.exrc new file mode 100644 index 0000000..3c3f804 --- /dev/null +++ b/files/.exrc @@ -0,0 +1,8 @@ +set showmatch +set autoindent +set number +set ruler +set tabstop=4 +set shiftwidth=4 +set expandtab +set ignorecase @@ -1,12 +1,117 @@ -Setup OpenBSD as a daily driver using only the included, base programs. +Setup OpenBSD as a daily driver using only the included, core programs. Based on OpenBSD 7.6. --- {{TOC}} -## Getting Started +## Requirements -Coming soon... +- USB device +- Ethernet connection (with active internet) +- A cup of coffee + +The real requirements are having patience and a passion for keeping things minimal. It's important to remeber that this setup isn't the most user-friendly. There will be no config files to edit or download in this guide. We will be using the `xenodm` login manager paired with the default stacked window manager `fvwm`. And that's it. + +You have been warned! + +## Installation + +Make sure you have the latest OpenBSD image formatted on a USB device (or burned to a CD if that's your cup of tea!) and that your computer/laptop is set to boot from USB via the BIOS. Also make sure you are connected to the internet via ethernet cable (don't worry, we'll setup WiFi in a minute!) + +Boot into the device and input the following when guided through the installer: + +1. Boot from USB +2. Choose `Install` +3. Keyboard layout: `us` +4. Hostname: `x220` (or whatever you choose) +5. Network: `em0` +6. IPv4: `autoconf` +7. IPv6: `none` +8. Network interface: `done` +9. Password for root +10. Start sshd by default? `yes` +11. X Window System start with xenodm? `no` +12. Setup user? `username` (follow setup user steps) +13. Allow root ssh login? `no` +14. Timezone +15. Which disk? Use internal (`sd0` etc.) +16. Encrypt root disk? `no` +17. Use `WHOLE` disk +18. Use `AUTO` layout +19. Which disk to initialize: `done` +20. Location of sets: `http` +21. HTTP Proxy URL? `none` +22. HTTP Server? `1` (Toronto) +23. Confirm again +24. Server directory? `pub/OpenBSD/7.6/amd64` +25. Set names? `done` +26. Drink some coffee while it verifies (depends on network speed) +27. Location of sets? `done` +28. Congrats! +29. Reboot and remove USB device + +## First Boot Tweaks + +### User Permissions + +Before we do anything, we should give our main user full access via `doas`. Login as `root` and run the following: + + su - + echo "permit nopass :wheel" >> /etc/doas.conf + +Now you can logout or reboot the machine. + + doas reboot + +Running any of the commands might present you with a permissions error. If that happens, simply add `doas` to the start of every command. + +### Firmware + +Once your machine reboots, login as your created user. The next steps will help you ensure you have the latest firmware. + +Simply run the command: `fw_update` + + +### WiFi + +To enable wifi on your device, run the following command (filling in the proper details where need be) + + ifconfig iwn0 up + ifconfig iwn0 scan + echo "join WIFI-NAME wpakey PASSPHRASE" >> /etc/hostname.iwn0 + echo "dhcp" >> /etc/hostname.iwn0 + echo "inet6 autoconf" >> /etc/hostname.iwn0 + echo "up powersave" >> /etc/hostname.iwn0 + dhclient iwn0 + +Take note of the `iwn0`, as this might differ on your machine. (You can check this by running `ifconfig`) + +You might also need to run `doas sh /etc/netstart` after. + + +### Performance Boost + +This step is optional and targeted towards devices with batteries (laptops, IoT devices etc). Properly setup apmd: + + rcctl enable apmd + rcctl set apmd flags -A + rcctl start apmd + +## Login Manager + +Remember when we chose `No` when the installer asked us "X Window System start with xenodm?". Well, now we want to enable that before our next reboot: + + doas rcctl enable xenodm + +Now reboot your device again. + + doas reboot + +## The First *Real* Login + +## Configs + +Okay, I *know* I said there wouldn't be any configs included in this guide. Frankly, you should be having zero problems working with all those defaults now that you've run through this guide! BUT - I wanted to include some *very minor* configuration tweaks that might make things a little more intuitive for newcomers. Feel free to ignore these entirely! ## Contribute diff --git a/index.md~ b/index.md~ new file mode 100644 index 0000000..37ba1d7 --- /dev/null +++ b/index.md~ @@ -0,0 +1,118 @@ +Setup OpenBSD as a daily driver using only the included, base programs. Based on OpenBSD 7.6. + +--- + +{{TOC}} + +## Requirements + +- USB device +- Ethernet connection (with active internet) +- A cup of coffee + +The real requirements are having patience and a passion for keeping things minimal. It's important to remeber that this setup isn't the most user-friendly. There will be no config files to edit or download in this guide. We will be using the `xenodm` login manager paired with the default stacked window manager `fvwm`. And that's it. + +You have been warned! + +## Installation + +Make sure you have the latest OpenBSD image formatted on a USB device (or burned to a CD if that's your cup of tea!) and that your computer/laptop is set to boot from USB via the BIOS. Also make sure you are connected to the internet via ethernet cable (don't worry, we'll setup WiFi in a minute!) + +Boot into the device and input the following when guided through the installer: + +1. Boot from USB +2. Choose `Install` +3. Keyboard layout: `us` +4. Hostname: `x220` (or whatever you choose) +5. Network: `em0` +6. IPv4: `autoconf` +7. IPv6: `none` +8. Network interface: `done` +9. Password for root +10. Start sshd by default? `yes` +11. X Window System start with xenodm? `no` +12. Setup user? `username` (follow setup user steps) +13. Allow root ssh login? `no` +14. Timezone +15. Which disk? Use internal (`sd0` etc.) +16. Encrypt root disk? `no` +17. Use `WHOLE` disk +18. Use `AUTO` layout +19. Which disk to initialize: `done` +20. Location of sets: `http` +21. HTTP Proxy URL? `none` +22. HTTP Server? `1` (Toronto) +23. Confirm again +24. Server directory? `pub/OpenBSD/7.6/amd64` +25. Set names? `done` +26. Drink some coffee while it verifies (depends on network speed) +27. Location of sets? `done` +28. Congrats! +29. Reboot and remove USB device + +## First Boot Tweaks + +### User Permissions + +Before we do anything, we should give our main user full access via `doas`. Login as `root` and run the following: + + su - + echo "permit nopass :wheel" >> /etc/doas.conf + +Now you can logout or reboot the machine. + + doas reboot + +Running any of the commands might present you with a permissions error. If that happens, simply add `doas` to the start of every command. + +### Firmware + +Once your machine reboots, login as your created user. The next steps will help you ensure you have the latest firmware. + +Simply run the command: `fw_update` + + +### WiFi + +To enable wifi on your device, run the following command (filling in the proper details where need be) + + ifconfig iwn0 up + ifconfig iwn0 scan + echo "join WIFI-NAME wpakey PASSPHRASE" >> /etc/hostname.iwn0 + echo "dhcp" >> /etc/hostname.iwn0 + echo "inet6 autoconf" >> /etc/hostname.iwn0 + echo "up powersave" >> /etc/hostname.iwn0 + dhclient iwn0 + +Take note of the `iwn0`, as this might differ on your machine. (You can check this by running `ifconfig`) + +You might also need to run `doas sh /etc/netstart` after. + + +### Performance Boost + +This step is optional and targeted towards devices with batteries (laptops, IoT devices etc). Properly setup apmd: + + rcctl enable apmd + rcctl set apmd flags -A + rcctl start apmd + +## Login Manager + +Remember when we chose `No` when the installer asked us "X Window System start with xenodm?". Well, now we want to enable that before our next reboot: + + doas rcctl enable xenodm + +Now reboot your device again. + + doas reboot + +## The First *Real* Login + +## Configs + +Okay, I *know* I said there wouldn't be any configs included in this guide. Frankly, you should be having zero problems working with all those defaults now that you've run through this guide! BUT - I wanted to include some *very minor* configuration tweaks that might make things a little more intuitive for newcomers. Feel free to ignore these entirely! + +## Contribute + +I'm far from an OpenBSD expert! Please [help improve this project](https://git.sr.ht/~bt/openbased)! diff --git a/public/index.html b/public/index.html index 3296cb9..89335cd 100644 --- a/public/index.html +++ b/public/index.html @@ -11,21 +11,146 @@ <body> <h1><a href="/"><span class="title"><i>Open</i><b>BASED</b></span></a></h1> <hr> - <p>Setup OpenBSD as a daily driver using only the included, base programs.</p> + <p>Setup OpenBSD as a daily driver using only the included, core programs. Based on OpenBSD 7.6.</p> <hr /> <div class="TOC"> <ul> -<li><a href="#gettingstarted">Getting Started</a></li> +<li><a href="#requirements">Requirements</a></li> +<li><a href="#installation">Installation</a></li> +<li><a href="#firstboottweaks">First Boot Tweaks</a> +<ul> +<li><a href="#userpermissions">User Permissions</a></li> +<li><a href="#firmware">Firmware</a></li> +<li><a href="#wifi">WiFi</a></li> +<li><a href="#performanceboost">Performance Boost</a></li> +</ul> +</li> +<li><a href="#loginmanager">Login Manager</a></li> +<li><a href="#thefirstreallogin">The First <em>Real</em> Login</a></li> +<li><a href="#configs">Configs</a></li> <li><a href="#contribute">Contribute</a></li> </ul> </div> -<h2 id="gettingstarted">Getting Started</h2> +<h2 id="requirements">Requirements</h2> + +<ul> +<li>USB device</li> +<li>Ethernet connection (with active internet)</li> +<li>A cup of coffee</li> +</ul> + +<p>The real requirements are having patience and a passion for keeping things minimal. It’s important to remeber that this setup isn’t the most user-friendly. There will be no config files to edit or download in this guide. We will be using the <code>xenodm</code> login manager paired with the default stacked window manager <code>fvwm</code>. And that’s it.</p> + +<p>You have been warned!</p> + +<h2 id="installation">Installation</h2> + +<p>Make sure you have the latest OpenBSD image formatted on a USB device (or burned to a CD if that’s your cup of tea!) and that your computer/laptop is set to boot from USB via the BIOS. Also make sure you are connected to the internet via ethernet cable (don’t worry, we’ll setup WiFi in a minute!)</p> + +<p>Boot into the device and input the following when guided through the installer:</p> + +<ol> +<li>Boot from USB</li> +<li>Choose <code>Install</code></li> +<li>Keyboard layout: <code>us</code></li> +<li>Hostname: <code>x220</code> (or whatever you choose)</li> +<li>Network: <code>em0</code></li> +<li>IPv4: <code>autoconf</code></li> +<li>IPv6: <code>none</code></li> +<li>Network interface: <code>done</code></li> +<li>Password for root</li> +<li>Start sshd by default? <code>yes</code></li> +<li>X Window System start with xenodm? <code>no</code></li> +<li>Setup user? <code>username</code> (follow setup user steps)</li> +<li>Allow root ssh login? <code>no</code></li> +<li>Timezone</li> +<li>Which disk? Use internal (<code>sd0</code> etc.)</li> +<li>Encrypt root disk? <code>no</code></li> +<li>Use <code>WHOLE</code> disk</li> +<li>Use <code>AUTO</code> layout</li> +<li>Which disk to initialize: <code>done</code></li> +<li>Location of sets: <code>http</code></li> +<li>HTTP Proxy URL? <code>none</code></li> +<li>HTTP Server? <code>1</code> (Toronto)</li> +<li>Confirm again</li> +<li>Server directory? <code>pub/OpenBSD/7.6/amd64</code></li> +<li>Set names? <code>done</code></li> +<li>Drink some coffee while it verifies (depends on network speed)</li> +<li>Location of sets? <code>done</code></li> +<li>Congrats!</li> +<li>Reboot and remove USB device</li> +</ol> + +<h2 id="firstboottweaks">First Boot Tweaks</h2> + +<h3 id="userpermissions">User Permissions</h3> + +<p>Before we do anything, we should give our main user full access via <code>doas</code>. Login as <code>root</code> and run the following:</p> + +<pre><code>su - +echo "permit nopass :wheel" >> /etc/doas.conf +</code></pre> + +<p>Now you can logout or reboot the machine.</p> + +<pre><code>doas reboot +</code></pre> + +<p>Running any of the commands might present you with a permissions error. If that happens, simply add <code>doas</code> to the start of every command.</p> + +<h3 id="firmware">Firmware</h3> + +<p>Once your machine reboots, login as your created user. The next steps will help you ensure you have the latest firmware.</p> + +<p>Simply run the command: <code>fw_update</code></p> + +<h3 id="wifi">WiFi</h3> + +<p>To enable wifi on your device, run the following command (filling in the proper details where need be)</p> + +<pre><code>ifconfig iwn0 up +ifconfig iwn0 scan +echo "join WIFI-NAME wpakey PASSPHRASE" >> /etc/hostname.iwn0 +echo "dhcp" >> /etc/hostname.iwn0 +echo "inet6 autoconf" >> /etc/hostname.iwn0 +echo "up powersave" >> /etc/hostname.iwn0 +dhclient iwn0 +</code></pre> + +<p>Take note of the <code>iwn0</code>, as this might differ on your machine. (You can check this by running <code>ifconfig</code>)</p> + +<p>You might also need to run <code>doas sh /etc/netstart</code> after.</p> + +<h3 id="performanceboost">Performance Boost</h3> + +<p>This step is optional and targeted towards devices with batteries (laptops, IoT devices etc). Properly setup apmd:</p> + +<pre><code>rcctl enable apmd +rcctl set apmd flags -A +rcctl start apmd +</code></pre> + +<h2 id="loginmanager">Login Manager</h2> + +<p>Remember when we chose <code>No</code> when the installer asked us “X Window System start with xenodm?”. Well, now we want to enable that before our next reboot:</p> + +<pre><code>doas rcctl enable xenodm +</code></pre> + +<p>Now reboot your device again.</p> + +<pre><code>doas reboot +</code></pre> + +<h2 id="thefirstreallogin">The First <em>Real</em> Login</h2> + +<h2 id="configs">Configs</h2> -<p>Coming soon…</p> +<p>Okay, I <em>know</em> I said there wouldn’t be any configs included in this guide. Frankly, you should be having zero problems working with all those defaults now that you’ve run through this guide! BUT - I wanted to include some <em>very minor</em> configuration tweaks that might make things a little more intuitive for newcomers. Feel free to ignore these entirely!</p> <h2 id="contribute">Contribute</h2> diff --git a/public/index.html.gz b/public/index.html.gz Binary files differdeleted file mode 100644 index 6a85762..0000000 --- a/public/index.html.gz +++ /dev/null diff --git a/public/style.css.gz b/public/style.css.gz Binary files differdeleted file mode 100644 index 7e43e1b..0000000 --- a/public/style.css.gz +++ /dev/null |