How to Configure FullPageOS on Raspberry Pi

My son likes to test different operating systems on his Raspberry Pi 3. Recently, he has been trying FullPageOS. FullPageOS loads Chromium after booting and displays a webpage. Instead of booting with a monitor and keyboard, I wanted the ability to configure the OS through SSH. Therefore, if he wanted to add a new webpage or to change a setting, we could simply access the device through SSH.

It took me a little longer than expected to set this up, so I thought I would document my process.

Start by downloading FullPageOS. Obviously, you can build it yourself, or you can download a build.

Once you have the build, you need to flash an SD card. The easiest way is to use the Raspberry Pi Imager. For the Operating System, choose “Use Custom” from the bottom of the list. In the storage, select the SD card and press write.

After writing the SD card, we need to set up the WiFi settings. In the \boot folder on the card, edit the fullpageos-wpa-supplicant.txt:

  • Change the SSID and key for the network (be careful with this file, it is open text)
  • Be sure to uncomment the correct country at the bottom

Put the card into the raspberry pi and boot. Now we can test if it is running. I like to use ping:

ping fullpageos.local

Assuming it is working, now we can SSH.

ssh [email protected]

For me, since I have connected to the raspberry pi multiple times, I received an error that the host key verification failed. I need to clear the existing entry through the following command.

ssh-keygen -R fullpageos.local

You should change the default password as soon as possible.

passwd

Change the FullPageOS Default Page

Next, we can change the default page. If you want to change the page to an existing page, such as https://harlepengren.com, you need to change the url in fullpageos.txt. The file is located in /boot. The easiest way to edit the file is to pull it out of the Raspberry Pi and to edit it through any text editor on your computer. However, if you prefer to edit while the Raspberry Pi is running, you can edit through SSH. Linux offers the Vi text editor that you can access through the command line. Given the location of the file, you will need sudo (for permissions):

sudo vi /boot/fullpageos.txt

Vi can be a little complicated to use (quick tutorial). ​Vi has two modes, command and editing. Vi starts in command mode. Press i to switch to editing mode. Once you make the changes, press esc to switch back to command mode, and type the following to write and quit:

:wq

If you want to switch between multiple pages, you can add all of the pages to the fullpageosdashboard.txt and then point fullpageos.txt to fullpageosdashboard.txt.

Creating Your Own Page

Instead of pointing to an existing page, you may want to create your own page. The web pages are located in /var/www/html. You can create a new file or folder in this location and point fullpageos.txt to this location (e.g., fullpageos.local/new_folder).

Creating a FullPageOS Presentation

Next, we need something to display on it. Reveal.js is one option. Reveal.js uses HTML to create slides. We created a sample slide deck using slides.com https://slides.com/.

Example FullPageOS slides

Slides.com offers a free plan that allows you to create up to 5 decks. Unfortunately, the decks are publicly viewable. Initially, I planned to use the slides.com file to learn more about reveal.js. However, the file created by slides.com is very heavy. It includes all CSS formatting and JavaScript code in one file, making it hard to read.

Conclusion

This post provides an overview of FullPageOS. If you found it helpful, leave a like or comment.

One Comment

Comments are closed.