PiPresents is some pretty cool software that will run a PowerPoint-like presentation. But with lots more flexibility. It was originally written for the Raspberry Pi.

However.... perhaps someone else has your Pi. Perhaps you don't even have one. It is possible to run a PiPresents show on  your good ol' desktop computer (Windows, Linux, or Mac). Here's how.

First an overview: We're gonna run Linux Mint in a VIrtualBox. Then we're gonna install PiPresents and use the MPV player with the right combination of command line options, instead of the Pi's omxplayer.

OK, here goes.

  • Download Linux Mint Debian Edition, a.k.a LMDE (linuxmint-201403-connamon-dvd.iso): 
  • In VirtualBox, create a new virtual machine (VM) with default settings and these selections along the way..
    • Linux, Debian, 64bit
    • 10G VDI, dynamic disk
    • 128M video memory, 3D acceleration enabled
    • 1024 system memory
    • Add the downloaded iso to the DVD drive in storage options and select "live CD"
  • Start the new machine and install Linux Mint (desktop icon)
    • Follow all prompts. The only tricky point may be at the partition setup page, you need to right click the sda partition and select the '\' item.
    • Installation takes about 15 minutes.
    • Reboot the VM when it asks at the end of the install
    • When it says to eject the disc and then press Enter... just press enter.
  • Add the 'pi' user
    • At the start menu, type in 'users' and select the "Users and Groups" item
    • Add a user named 'pi'. I made mine Administrator instead of Standard. Click OK.
    • Add a password (if you want one shorter than 6 characters, we'll do that below)
    • Below the account picture, click on the groups (where it says "pi" or "pi, sudo")
    • You can select what groups you want, but I chose these to be similar to my main user:
    • adm, audio, cdrom, lpadmin, plugdev, sambashare, sudo, video, vboxsf
    • For a short password, open a terminal and type this in and press enter. 
      • > sudo passwd pi
      • It will prompt you to type in a password. This first one is for your admin account.
      • Then it will prompt you for the new password for the 'pi' user.
      • The terminal doesn't display anything as you are entering passwords, so you have to type it in 'blind' and press Enter. For the new password, you'll have to enter it twice and if it doesn't match, it will ask you to do it again.
  • Switch to the 'pi' user.
  • Install required items for PiPresents (according to PP readme). 
    • > sudo apt-get update
    • Some of the requirements are already included in Mint, so we just need....
    • > sudo apt-get install python-imaging-tk mplayer unclutter uzbl
    • Note: The pexpect stuff described in the PP readme is already installed in Mint as the python-pexpect package.
  • Install some other stuff 
    • > sudo apt-get install  git mpv
    • git for easy download/extraction/updating
    • MPV is the player we are going to use instead of the omxplayer which is specific to the Raspberry Pi (arm processor).
  • Download PiPresents
    • Open a terminal and type in (all on one line if it looks wrapped)...
    • Open a file browser and go to the pipresents folder.
      • CTRL-SHIFT-drag the pp_editor.desktop file onto your desktop
      • Right click on the icon, select properties, and set the permission to allow execution
      • Right click on the pipresents.py file, select properties, and in permissions, allow execution
  • Create and test a PiPresents show that has video

As a side note... I found that using the hardware accelerated command line options for the MPV player either didn't work or gave me a bunch of OpenGL errors. Apparently, VirtualBox doesn't have the hardware acceleration completely implemented yet. If they do fix it, different command line options (--vo) can be used for better performance. The command line that is used to start the player is near the top of the pp_mpvdriver.pp file. Of course, if you're already using Linux as the native desktop OS (not in a VM) you surely have hardware acceleration working already.

Selecting PHP command line version on HostGator shared host

This took me a while to find, so I'm saving it somewhere I can find it again.

The easy way to select the PHP version used for web applications is to use the CPanel configuration tool. However, that doesn't work if you're using SSH and need PHP on the command line. Also, on HostGator, you can't create a symlink outside of your directory (such as to the global php).

You can find out what version you have with

$ php --version

If that's not the version you want, try a specific version like this (php55 is 5.5, etc):

Book Scanning Process

 

Just to document this for next time. For reference, my books are 8 x 10.75 inches and other dimension below work for this. For approximately 100 pages, It takes me about 45 minutes to scan, an hour to crop and rotate, and 30 minutes to organize and generate the PDF.

Fixing features for hotfolder

Here is some documentation about the process I used to solve some issues with hotfolder and the features module. I was doing this partly through the web interface and partly through a console, so this is a reconstruction of what I remember and the console log. 

 

I was getting the following error message when I tried to check hotfolder watches (see https://www.drupal.org/node/2453659):

Notice: Undefined property: stdClass::$field_watch_config_scheme

 

GIMP for Kids

 

My daughter likes to draw on the computer. I don't remember exactly how it started, but she draws in GIMP using my Genius pen tablet, on my secondary monitor. I used to have Linux running in a VirtualBox with GIMP running on my second monitor for her, but VB doesn't completely work in Windows 10 yet. A while back I tried running GIMP on one of my Raspberry Pi's but it was just too sluggish to be useful, frustratingly slow for a (then) 3-year-old. It runs much better on a Raspberry Pi 2. It still lags if she goes crazy with a big brush, but it works.

Die Fly: Designing a better fly swatter

I was looking through some of my old stuff for something and ran across this gem. If you need to put together a quick flyswatter, try this one I designed for a class in college (the famous Rube Goldberg project).

Here are a few excerpts from the attached PDF. If this doesn't convince you to build one (perhaps with several improvements as noted in the document), I don't know what will.