Finish Rasbperry Pi Accessibility article

master
Tait Hoyem 4 years ago
parent 15f81774c2
commit 7a51e7b931

@ -1,63 +0,0 @@
---
title: "Orca, Emacspeak and Chromium Accessibility on A Raspberry Pi Running Manjaro ARM"
keywords: "orca linux raspberry-pi rpi raspberry pi screen reader screen-reader 64 bit 64-bit 64bit aarch64 emacs emacspeak manjaro manjaro-arm manjaro-aarch64"
layout: post
draft: true
---
I wanted to get a gift for my blind friend who has been interested in learning Linux for a while now.
Just when I was about to start looking for a gift I decided to take a look at [Brian Lunduke's newest video](https://lbry.tv/@Lunduke:e/raspberry-pi-400-looks-rad:c) featuring the [Raspberry Pi 400](https://www.raspberrypi.org/products/raspberry-pi-400/?resellerType=home).
The Raspberry Pi 400 has come full circle in terms of computing.
It is a keyboard. All the computing is done from within the keyboard.
Much like the Comodore64, this computer comes without a screen but is still technically fully functional without one.
I had my 'Aha!' moment and decided that could be a very cool gift.
## Distribution
I wanted to choose something which will age well, and run the latest and greatest.
Some Raspberry Pi Orca installation guides [like this one](https://techesoterica.com/getting-the-orca-screen-reader-working-on-a-raspberry-pi-4-with-raspbian-buster-and-the-mate-desktop/),
have actually asked the user to _compile from source_ to get the latest Orca version due to how out-of-date Debian's package repositories are.
A distribution which has none of these fusses was top priority,
especially because Orca receives a lot of updates and it would make sense to not lag behind for the most critical piece of software.
I decided to go with [Manjaro ARM Xfce](https://manjaro.org/download/#raspberry-pi-4-xfce):
* Xfce is lightweight (especially good for a VI user who will be using the screen reader).
* Runs the 64-bit kernel instead of Raspberry Pi OS's 32-bit kernel.
* Is based on Arch Linux, so receives very frequent package updates.
* Has the AUR ([with some effort](#aur), as we'll see).
The only downside of Manjaro ARM, and likewise other Aarch64 architecture kernels is that it did not have HEVC nor H264 hardware decoding available.
Apparently this is getting mainlined in Linux kernel 5.10, but I still don't quite understand how it works as using 5.10-rc4 did not activate it.
I suppose time will tell by end of year how this will be implemented.
## Orca
The minimum requirement for a visually impaired desktop Linux user is a screen reader.
The most used screen reader for Linux is Orca, headed by the [GNOME Project](https://wiki.gnome.org/Projects/Orca).
This is relatively easy to install with standard `pacman` commands.
<pre class="terminal">
# pacman -S orca
</pre>
If logged in via SSH, you can start Orca with the `orca` command. This will start reading the screen to you so you can do the next parts.
To activate Orca on login and on LightDM activation, add it to the LightDM GTK+ Greeter Settings application on the Misc. menu.
This will start it when the LightDM login system starts.
LightDM's Orca will not help us once we are logged in however.
To activate Orca on login, open the Session And Startup application, and add Orca to the "startup" list of apps.
### TODO: add commands
And now Orca will be activated on boot and login.
## AUR
To get the AUR working, we need to install the `pacaur` helper.
This merited its own article, so check that out here:
[How to Install Pacaur on Manjaro ARM](/2020/12/01/pacaur-rpi.html)
##

@ -0,0 +1,148 @@
---
title: "Orca, Emacspeak and Chromium Accessibility on A Raspberry Pi Running Manjaro ARM"
keywords: "orca linux raspberry-pi rpi raspberry pi screen reader screen-reader 64 bit 64-bit 64bit aarch64 emacs emacspeak manjaro manjaro-arm manjaro-aarch64"
layout: post
draft: true
---
I wanted to get a gift for my blind friend who has been interested in learning Linux for a while now.
Just when I was about to start looking for something I decided to take a look at [Brian Lunduke's newest video](https://lbry.tv/@Lunduke:e/raspberry-pi-400-looks-rad:c) featuring the [Raspberry Pi 400](https://www.raspberrypi.org/products/raspberry-pi-400/?resellerType=home).
The Raspberry Pi 400 has come full circle in terms of computing.
It is a keyboard. All the computing is done from within the keyboard.
Much like the Comodore64, this computer comes without a screen but is still technically fully functional without one.
I had my 'Aha!' moment, and decided that the Raspberry Pi 400 would be a very cool present.
## No Headphone Jack
My first problem was that the Raspberry Pi 400 does not come with a headphone jack,
even though every other Raspberry Pi A/B/B+ board with the exception of the compute modules and Zero series have included one.
That said, the Raspberry Pi audio jacks are also known to crackle and pop due to either bad drivers or cheap manufacturing.
To compensate, I got an external USB audio card.
I ended up going with the [DuKabel USB to 3.5mm Jack Adapter (Amazon)](https://www.amazon.ca/DuKabel-ProSeries-Mic-Supported-Headphone-External/dp/B07RS11M1T/).
There are cheaper options for sure, but when I was looking around Raspberry Pi forums and Amazon reviews, this specific model seemed to come out on top in terms of performance.
It costed me around 40 Canadian dollars.
I figure this isn't too bad considering my friend doesn't need a screen, haha!
## Distribution
I wanted to choose something which will age well, and run the latest and greatest.
For visually impaired users, the most important piece of software is the screen reader. If the screen reader doesn't work, the rest of the work is toast!
Some Raspberry Pi Orca installation guides [like this one](https://techesoterica.com/getting-the-orca-screen-reader-working-on-a-raspberry-pi-4-with-raspbian-buster-and-the-mate-desktop/),
have actually asked the user to _compile Orca from source_ to get the latest version due to how out-of-date Debian's package repositories are.
A distribution which has none of these fusses was top priority,
especially because Orca receives frequent updates.
I decided to go with [Manjaro ARM Xfce](https://manjaro.org/download/#raspberry-pi-4-xfce):
* Xfce is lightweight.
* Runs a 64-bit kernel.
* Is based on Arch Linux, so receives very frequent package updates.
* Has the AUR ([with some effort](#aur), as we'll see).
The only downside of Manjaro ARM, and likewise other Aarch64 (ARM 64-bit) architecture kernels is that it did not have HEVC nor H264 hardware decoding available.
Apparently, support for the Raspberry Pi's VC4 graphics is getting mainlined [in Linux kernel 5.10](https://www.debugpoint.com/2020/12/linux-kernel-5-10-features/).
Unfortunately, running the release candidate (RC) kernel did not make the Raspberry Pi 400 use hardware decoding.
Perhaps other applications like `ffmpeg` and Chromium need to add support as well before this works.
## Orca
As stated before, minimum requirement for a visually impaired desktop Linux user is a screen reader.
The most used screen reader for Linux is Orca, headed by the [GNOME Project](https://wiki.gnome.org/Projects/Orca).
This is relatively easy to install with a standard `pacman` command.
<pre class="terminal">
# pacman -S orca
</pre>
If logged in via SSH, you can start Orca with the `orca` command. This will start reading the screen to you so you can do the next parts.
To activate Orca on login with LightDM, enable it in the 'LightDM GTK+ Greeter Settings' application. The 'Misc.' tab will have a drop-down for asking which screen reader you want to use.
This will start Orca when the LightDM login system starts.
LightDM's Orca will not help us once we are logged in however.
To activate Orca on login, open the 'Session And Startup application' program, then add Orca to the "startup" list of apps.
And now Orca will be activated on boot and login.
## AUR
The AUR, or the Arch User Repository has community maintained and distributed packages.
Basically, you download a file which will tell your computer how to download, build and install a package for you.
To get the AUR working in a more automatic way, we need to install the `pacaur` helper.
This merited its own article, so check that out here:
[How to Install Pacaur on Manjaro ARM](/2020/12/01/pacaur-rpi.html)
The TL;DR is that we need to open the `/etc/makepkg.conf` file and replace any mention of `-march=armv8-a` with `-march=armv8-a+crypto`.
This can be done as a oneliner, thanks to the `sed` command.
<pre class="terminal">
# sed -i 's/-march=armv8-a/-march=armv8-a+crypto/' /etc/makepkg.conf
</pre>
## Emacspeak
[Emacs](https://www.gnu.org/software/emacs/) is a scriptable document editor run by the [GNU Project](https://gnu.org/).
Infamous for its high learning curve though it may be,
there is a very extensive speech extension for it called [Emacspeak](http://emacspeak.sourceforge.net/).
Emacspeak is built entirely by [T. V. Ramen](https://tvraman.github.io/vita/resume.html) and has been freely available since its inception in 1999.
Due to its age (and thus maturity), Emacspeak is an important tool in any "eyes-free" software developer toolkit.
Lucky for me, Emacspeak appears to not only to be available in the AUR,
but also compilable with the Aarch64 architecture---the architecture of the Raspberry Pi 400.
So this is as easy to install as:
<pre class="terminal">
$ pacaur -S emacspeak
</pre>
## Web Browsers
I'll cover a couple web browsers here based on how they worked.
### Firefox
Firefox will run in accessibility mode with [caret browsing](https://en.wikipedia.org/wiki/Caret_navigation) enabled automatically when it detects Orca is running.
This makes Firefox _by far_ the best browser for the job.
### Chromium
Chromium... Ugh. So it works, sort of.
You need to enable two special flags, and add an environment variable.
To do this, I suggest editing the main profile in `/etc/profile`.
Add the following line to the end of that file:
<pre class="file">
export ENABLE_ACCESSIBILITY=1
</pre>
Next, add two flags to the `$HOME/.config/chromium-flags.conf` file.
<pre class="file">
--force-renderer-accessibility
--enable-caret-browsing
</pre>
You will need to relog to set the ENABLE_ACCESSIBILITY environment variable. Now Chromium should work with Orca.
### Badwolf
The [Badwolf browser](https://www.mankier.com/1/badwolf)
is based on the WebkitGTK engine, as opposed to Firefox's Gecko and Google's Blink engines.
It _almost_ works out of the box. It is really fast compared to the other two,
but it lacks some features like announcing a page is done loading and it doesn't appear to support caret browsing,
which will cause some other problems.
Interesting though for such a young browser to have a minimal level of accessibility so early!
I would be interested where this goes in the future.
## Conclusion
It took a bit of messing around to get this working, but I'm glad I did!
Now I can nerd out with another Linux friend and given how well they seem to find problems with accessibility, hopefully a few upstream patches can be made.
Happy hacking, for everyone!

@ -1,3 +0,0 @@
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Orca, Emacspeak and Chromium Accessibility on A Raspberry Pi Running Manjaro ARM | tait.tech</title> <link rel="stylesheet" href="/assets/css/style.css"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="author" content="Tait Hoyem"> <meta name="keywords" content="orca linux raspberry-pi rpi raspberry pi screen reader screen-reader 64 bit 64-bit 64bit aarch64 emacs emacspeak manjaro manjaro-arm manjaro-aarch64"> <meta name="description" content=""> </head> <body> <div id="wrapper"> <header> <nav> <input type="checkbox" id="menu"> <label for="menu">&#9776;</label> <div class="menu-content"> <a href="/" class="nav-link">Home</a> <a href="/blog/" class="nav-link">Blog</a> <a href="https://github.com/TTWNO/" class="nav-link" target="_blank" rel="noopener noreferrer">Github</a> </div> </nav> </header> <main> <article> <header> <h1 class="post-title">Orca, Emacspeak and Chromium Accessibility on A Raspberry Pi Running Manjaro ARM</h1> <time datetime="" class="post-date"></time> </header> <hr> <p>I wanted to get a gift for my blind friend who has been interested in learning Linux for a while now. Just when I was about to start looking for a gift I decided to take a look at <a href="https://lbry.tv/@Lunduke:e/raspberry-pi-400-looks-rad:c">Brian Lundukes newest video</a> featuring the <a href="https://www.raspberrypi.org/products/raspberry-pi-400/?resellerType=home">Raspberry Pi 400</a>. The Raspberry Pi 400 has come full circle in terms of computing. It is a keyboard. All the computing is done from within the keyboard. Much like the Comodore64, this computer comes without a screen but is still technically fully functional without one. I had my Aha! moment and decided that could be a very cool gift.</p> <h2 id="distribution">Distribution</h2> <p>I wanted to choose something which will age well, and run the latest and greatest. Some Raspberry Pi Orca installation guides <a href="https://techesoterica.com/getting-the-orca-screen-reader-working-on-a-raspberry-pi-4-with-raspbian-buster-and-the-mate-desktop/">like this one</a>, have actually asked the user to <em>compile from source</em> to get the latest Orca version due to how out-of-date Debians package repositories are. A distribution which has none of these fusses was top priority, especially because Orca receives a lot of updates and it would make sense to not lag behind for the most critical piece of software.</p> <p>I decided to go with <a href="https://manjaro.org/download/#raspberry-pi-4-xfce">Manjaro ARM Xfce</a>:</p> <ul> <li>Xfce is lightweight (especially good for a VI user who will be using the screen reader).</li> <li>Runs the 64-bit kernel instead of Raspberry Pi OSs 32-bit kernel.</li> <li>Is based on Arch Linux, so receives very frequent package updates.</li> <li>Has the AUR (<a href="#aur">with some effort</a>, as well see).</li> </ul> <p>The only downside of Manjaro ARM, and likewise other Aarch64 architecture kernels is that it did not have HEVC nor H264 hardware decoding available. Apparently this is getting mainlined in Linux kernel 5.10, but I still dont quite understand how it works as using 5.10-rc4 did not activate it. I suppose time will tell by end of year how this will be implemented.</p> <h2 id="orca">Orca</h2> <p>The minimum requirement for a visually impaired desktop Linux user is a screen reader. The most used screen reader for Linux is Orca, headed by the <a href="https://wiki.gnome.org/Projects/Orca">GNOME Project</a>. This is relatively easy to install with standard <code class="language-plaintext highlighter-rouge">pacman</code> commands.</p> <pre class="terminal">
# pacman -S orca
</pre> <p>If logged in via SSH, you can start Orca with the <code class="language-plaintext highlighter-rouge">orca</code> command. This will start reading the screen to you so you can do the next parts.</p> <p>To activate Orca on login and on LightDM activation, add it to the LightDM GTK+ Greeter Settings application on the Misc. menu. This will start it when the LightDM login system starts.</p> <p>LightDMs Orca will not help us once we are logged in however. To activate Orca on login, open the Session And Startup application, and add Orca to the “startup” list of apps.</p> <h3 id="todo-add-commands">TODO: add commands</h3> <p>And now Orca will be activated on boot and login.</p> <h2 id="aur">AUR</h2> <p>To get the AUR working, we need to install the <code class="language-plaintext highlighter-rouge">pacaur</code> helper. This merited its own article, so check that out here:</p> <p><a href="/2020/12/01/pacaur-rpi.html">How to Install Pacaur on Manjaro ARM</a></p> <p>##</p> </article> </main> <hr> <footer> This page is mirrored on <a href="https://beta.tait.tech/2020-12-02-orca-raspberry-pi-aarch64.html">beta.tait.tech</a>. </footer> </div> </body> </html>

@ -0,0 +1,12 @@
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Orca, Emacspeak and Chromium Accessibility on A Raspberry Pi Running Manjaro ARM | tait.tech</title> <link rel="stylesheet" href="/assets/css/style.css"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="author" content="Tait Hoyem"> <meta name="keywords" content="orca linux raspberry-pi rpi raspberry pi screen reader screen-reader 64 bit 64-bit 64bit aarch64 emacs emacspeak manjaro manjaro-arm manjaro-aarch64"> <meta name="description" content=""> </head> <body> <div id="wrapper"> <header> <nav> <input type="checkbox" id="menu"> <label for="menu">&#9776;</label> <div class="menu-content"> <a href="/" class="nav-link">Home</a> <a href="/blog/" class="nav-link">Blog</a> <a href="https://github.com/TTWNO/" class="nav-link" target="_blank" rel="noopener noreferrer">Github</a> </div> </nav> </header> <main> <article> <header> <h1 class="post-title">Orca, Emacspeak and Chromium Accessibility on A Raspberry Pi Running Manjaro ARM</h1> <time datetime="20-12-14" class="post-date">Monday, December 14 2020</time> </header> <hr> <p>I wanted to get a gift for my blind friend who has been interested in learning Linux for a while now. Just when I was about to start looking for something I decided to take a look at <a href="https://lbry.tv/@Lunduke:e/raspberry-pi-400-looks-rad:c">Brian Lundukes newest video</a> featuring the <a href="https://www.raspberrypi.org/products/raspberry-pi-400/?resellerType=home">Raspberry Pi 400</a>. The Raspberry Pi 400 has come full circle in terms of computing. It is a keyboard. All the computing is done from within the keyboard. Much like the Comodore64, this computer comes without a screen but is still technically fully functional without one. I had my Aha! moment, and decided that the Raspberry Pi 400 would be a very cool present.</p> <h2 id="no-headphone-jack">No Headphone Jack</h2> <p>My first problem was that the Raspberry Pi 400 does not come with a headphone jack, even though every other Raspberry Pi A/B/B+ board with the exception of the compute modules and Zero series have included one. That said, the Raspberry Pi audio jacks are also known to crackle and pop due to either bad drivers or cheap manufacturing.</p> <p>To compensate, I got an external USB audio card. I ended up going with the <a href="https://www.amazon.ca/DuKabel-ProSeries-Mic-Supported-Headphone-External/dp/B07RS11M1T/">DuKabel USB to 3.5mm Jack Adapter (Amazon)</a>.</p> <p>There are cheaper options for sure, but when I was looking around Raspberry Pi forums and Amazon reviews, this specific model seemed to come out on top in terms of performance. It costed me around 40 Canadian dollars. I figure this isnt too bad considering my friend doesnt need a screen, haha!</p> <h2 id="distribution">Distribution</h2> <p>I wanted to choose something which will age well, and run the latest and greatest. For visually impaired users, the most important piece of software is the screen reader. If the screen reader doesnt work, the rest of the work is toast! Some Raspberry Pi Orca installation guides <a href="https://techesoterica.com/getting-the-orca-screen-reader-working-on-a-raspberry-pi-4-with-raspbian-buster-and-the-mate-desktop/">like this one</a>, have actually asked the user to <em>compile Orca from source</em> to get the latest version due to how out-of-date Debians package repositories are. A distribution which has none of these fusses was top priority, especially because Orca receives frequent updates.</p> <p>I decided to go with <a href="https://manjaro.org/download/#raspberry-pi-4-xfce">Manjaro ARM Xfce</a>:</p> <ul> <li>Xfce is lightweight.</li> <li>Runs a 64-bit kernel.</li> <li>Is based on Arch Linux, so receives very frequent package updates.</li> <li>Has the AUR (<a href="#aur">with some effort</a>, as well see).</li> </ul> <p>The only downside of Manjaro ARM, and likewise other Aarch64 (ARM 64-bit) architecture kernels is that it did not have HEVC nor H264 hardware decoding available. Apparently, support for the Raspberry Pis VC4 graphics is getting mainlined <a href="https://www.debugpoint.com/2020/12/linux-kernel-5-10-features/">in Linux kernel 5.10</a>. Unfortunately, running the release candidate (RC) kernel did not make the Raspberry Pi 400 use hardware decoding. Perhaps other applications like <code class="language-plaintext highlighter-rouge">ffmpeg</code> and Chromium need to add support as well before this works.</p> <h2 id="orca">Orca</h2> <p>As stated before, minimum requirement for a visually impaired desktop Linux user is a screen reader. The most used screen reader for Linux is Orca, headed by the <a href="https://wiki.gnome.org/Projects/Orca">GNOME Project</a>. This is relatively easy to install with a standard <code class="language-plaintext highlighter-rouge">pacman</code> command.</p> <pre class="terminal">
# pacman -S orca
</pre> <p>If logged in via SSH, you can start Orca with the <code class="language-plaintext highlighter-rouge">orca</code> command. This will start reading the screen to you so you can do the next parts.</p> <p>To activate Orca on login with LightDM, enable it in the LightDM GTK+ Greeter Settings application. The Misc. tab will have a drop-down for asking which screen reader you want to use. This will start Orca when the LightDM login system starts.</p> <p>LightDMs Orca will not help us once we are logged in however. To activate Orca on login, open the Session And Startup application program, then add Orca to the “startup” list of apps.</p> <p>And now Orca will be activated on boot and login.</p> <h2 id="aur">AUR</h2> <p>The AUR, or the Arch User Repository has community maintained and distributed packages. Basically, you download a file which will tell your computer how to download, build and install a package for you.</p> <p>To get the AUR working in a more automatic way, we need to install the <code class="language-plaintext highlighter-rouge">pacaur</code> helper. This merited its own article, so check that out here: <a href="/2020/12/01/pacaur-rpi.html">How to Install Pacaur on Manjaro ARM</a></p> <p>The TL;DR is that we need to open the <code class="language-plaintext highlighter-rouge">/etc/makepkg.conf</code> file and replace any mention of <code class="language-plaintext highlighter-rouge">-march=armv8-a</code> with <code class="language-plaintext highlighter-rouge">-march=armv8-a+crypto</code>.</p> <p>This can be done as a oneliner, thanks to the <code class="language-plaintext highlighter-rouge">sed</code> command.</p> <pre class="terminal">
# sed -i 's/-march=armv8-a/-march=armv8-a+crypto/' /etc/makepkg.conf
</pre> <h2 id="emacspeak">Emacspeak</h2> <p><a href="https://www.gnu.org/software/emacs/">Emacs</a> is a scriptable document editor run by the <a href="https://gnu.org/">GNU Project</a>. Infamous for its high learning curve though it may be, there is a very extensive speech extension for it called <a href="http://emacspeak.sourceforge.net/">Emacspeak</a>. Emacspeak is built entirely by <a href="https://tvraman.github.io/vita/resume.html">T. V. Ramen</a> and has been freely available since its inception in 1999. Due to its age (and thus maturity), Emacspeak is an important tool in any “eyes-free” software developer toolkit.</p> <p>Lucky for me, Emacspeak appears to not only to be available in the AUR, but also compilable with the Aarch64 architecture—the architecture of the Raspberry Pi 400. So this is as easy to install as:</p> <pre class="terminal">
$ pacaur -S emacspeak
</pre> <h2 id="web-browsers">Web Browsers</h2> <p>Ill cover a couple web browsers here based on how they worked.</p> <h3 id="firefox">Firefox</h3> <p>Firefox will run in accessibility mode with <a href="https://en.wikipedia.org/wiki/Caret_navigation">caret browsing</a> enabled automatically when it detects Orca is running. This makes Firefox <em>by far</em> the best browser for the job.</p> <h3 id="chromium">Chromium</h3> <p>Chromium… Ugh. So it works, sort of. You need to enable two special flags, and add an environment variable.</p> <p>To do this, I suggest editing the main profile in <code class="language-plaintext highlighter-rouge">/etc/profile</code>. Add the following line to the end of that file:</p> <pre class="file">
export ENABLE_ACCESSIBILITY=1
</pre> <p>Next, add two flags to the <code class="language-plaintext highlighter-rouge">$HOME/.config/chromium-flags.conf</code> file.</p> <pre class="file">
--force-renderer-accessibility
--enable-caret-browsing
</pre> <p>You will need to relog to set the ENABLE_ACCESSIBILITY environment variable. Now Chromium should work with Orca.</p> <h3 id="badwolf">Badwolf</h3> <p>The <a href="https://www.mankier.com/1/badwolf">Badwolf browser</a> is based on the WebkitGTK engine, as opposed to Firefoxs Gecko and Googles Blink engines. It <em>almost</em> works out of the box. It is really fast compared to the other two, but it lacks some features like announcing a page is done loading and it doesnt appear to support caret browsing, which will cause some other problems. Interesting though for such a young browser to have a minimal level of accessibility so early!</p> <p>I would be interested where this goes in the future.</p> <h2 id="conclusion">Conclusion</h2> <p>It took a bit of messing around to get this working, but Im glad I did! Now I can nerd out with another Linux friend and given how well they seem to find problems with accessibility, hopefully a few upstream patches can be made.</p> <p>Happy hacking, for everyone!</p> </article> </main> <hr> <footer> This page is mirrored on <a href="https://beta.tait.tech/2020/12/14/orca-raspberry-pi-manjaro.html">beta.tait.tech</a>. </footer> </div> </body> </html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -1 +1 @@
<?xml version="1.0" encoding="UTF-8"?> <urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc>/2020/01/22/padding-and-margin.html</loc> <lastmod>2020-01-22T00:00:00-07:00</lastmod> </url> <url> <loc>/2020/01/26/rsa1.html</loc> <lastmod>2020-01-26T00:00:00-07:00</lastmod> </url> <url> <loc>/2020/02/19/rsa2.html</loc> <lastmod>2020-02-19T00:00:00-07:00</lastmod> </url> <url> <loc>/2020/04/02/rsa3.html</loc> <lastmod>2020-04-02T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/04/06/rsa4.html</loc> <lastmod>2020-04-06T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/04/12/nas1.html</loc> <lastmod>2020-04-12T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/04/21/rfi.html</loc> <lastmod>2020-04-21T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/04/25/xss.html</loc> <lastmod>2020-04-25T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/05/01/nginx-socket-io-projects.html</loc> <lastmod>2020-05-01T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/05/19/clue-announcement.html</loc> <lastmod>2020-05-19T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/06/04/site-update.html</loc> <lastmod>2020-06-04T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/06/25/tmux-minecraft.html</loc> <lastmod>2020-06-25T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/07/12/independence.html</loc> <lastmod>2020-07-12T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/07/19/multicraft-php-gentoo.html</loc> <lastmod>2020-07-19T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/07/30/canadian-parliament.html</loc> <lastmod>2020-07-30T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/08/15/openbsd1.html</loc> <lastmod>2020-08-15T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/08/18/django-deployment.html</loc> <lastmod>2020-08-18T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/09/09/lamegames.html</loc> <lastmod>2020-09-09T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/09/12/minesweeper.html</loc> <lastmod>2020-09-12T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/10/26/curiosity.html</loc> <lastmod>2020-10-26T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/11/15/nas2.html</loc> <lastmod>2020-11-15T00:00:00-07:00</lastmod> </url> <url> <loc>/2020/12/01/pacaur-rpi.html</loc> <lastmod>2020-12-01T00:00:00-07:00</lastmod> </url> <url> <loc>/2020-04-27-quiz-your-friends-xss.html</loc> </url> <url> <loc>/2020-12-02-orca-raspberry-pi-aarch64.html</loc> </url> <url> <loc>/blog/</loc> </url> <url> <loc>/tests/live-label/</loc> </url> <url> <loc>/tests/chess/</loc> </url> <url> <loc>/</loc> </url> <url> <loc>/tutoring/</loc> </url> <url> <loc>/cover-letters/bloombase/</loc> </url> <url> <loc>/resume/</loc> </url> <url> <loc>/links/</loc> </url> <url> <loc>/cover-letter-vcc/</loc> </url> <url> <loc>/contact/</loc> </url> <url> <loc>/about/</loc> </url> <url> <loc>/scholarships/2020/cnib/</loc> </url> <url> <loc>/test.html</loc> </url> <url> <loc>/test2.html</loc> </url> </urlset>
<?xml version="1.0" encoding="UTF-8"?> <urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc>/2020/01/22/padding-and-margin.html</loc> <lastmod>2020-01-22T00:00:00-07:00</lastmod> </url> <url> <loc>/2020/01/26/rsa1.html</loc> <lastmod>2020-01-26T00:00:00-07:00</lastmod> </url> <url> <loc>/2020/02/19/rsa2.html</loc> <lastmod>2020-02-19T00:00:00-07:00</lastmod> </url> <url> <loc>/2020/04/02/rsa3.html</loc> <lastmod>2020-04-02T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/04/06/rsa4.html</loc> <lastmod>2020-04-06T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/04/12/nas1.html</loc> <lastmod>2020-04-12T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/04/21/rfi.html</loc> <lastmod>2020-04-21T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/04/25/xss.html</loc> <lastmod>2020-04-25T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/05/01/nginx-socket-io-projects.html</loc> <lastmod>2020-05-01T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/05/19/clue-announcement.html</loc> <lastmod>2020-05-19T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/06/04/site-update.html</loc> <lastmod>2020-06-04T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/06/25/tmux-minecraft.html</loc> <lastmod>2020-06-25T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/07/12/independence.html</loc> <lastmod>2020-07-12T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/07/19/multicraft-php-gentoo.html</loc> <lastmod>2020-07-19T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/07/30/canadian-parliament.html</loc> <lastmod>2020-07-30T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/08/15/openbsd1.html</loc> <lastmod>2020-08-15T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/08/18/django-deployment.html</loc> <lastmod>2020-08-18T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/09/09/lamegames.html</loc> <lastmod>2020-09-09T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/09/12/minesweeper.html</loc> <lastmod>2020-09-12T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/10/26/curiosity.html</loc> <lastmod>2020-10-26T00:00:00-06:00</lastmod> </url> <url> <loc>/2020/11/15/nas2.html</loc> <lastmod>2020-11-15T00:00:00-07:00</lastmod> </url> <url> <loc>/2020/12/01/pacaur-rpi.html</loc> <lastmod>2020-12-01T00:00:00-07:00</lastmod> </url> <url> <loc>/2020/12/14/orca-raspberry-pi-manjaro.html</loc> <lastmod>2020-12-14T00:00:00-07:00</lastmod> </url> <url> <loc>/2020-04-27-quiz-your-friends-xss.html</loc> </url> <url> <loc>/blog/</loc> </url> <url> <loc>/tests/live-label/</loc> </url> <url> <loc>/tests/chess/</loc> </url> <url> <loc>/</loc> </url> <url> <loc>/tutoring/</loc> </url> <url> <loc>/cover-letters/bloombase/</loc> </url> <url> <loc>/resume/</loc> </url> <url> <loc>/links/</loc> </url> <url> <loc>/cover-letter-vcc/</loc> </url> <url> <loc>/contact/</loc> </url> <url> <loc>/about/</loc> </url> <url> <loc>/scholarships/2020/cnib/</loc> </url> <url> <loc>/test.html</loc> </url> <url> <loc>/test2.html</loc> </url> </urlset>
Loading…
Cancel
Save