Contents

Editorial



April 2018

It's been a bit of a sparse this month for articles so this edition may be a little thinner.

Another new distro called Bionic Beaver by peebee has been released. It looks interesting and a healthy gathering of enthusiasts are forming. Wiak is doing some interesting work trying to get DebianDog to run on Android devices.

This month I have featured a great little photo organiser/viewer called Geeqie. Of all the light weight viewers I find this the best. It also has great search facilities. I was a fan of Picasa when it was available for Linux but when development for Linux stopped, after much research I chose Geeqie. I have included Geeqie in the compiling section.

This month part 2 of TightVNCserver by Terry Schuster is included.

I have included some more code on gtkdialog. There is also some information on Virtual Private Networks by OscarTalks and jafadmin that most people should find quite useful.

I have included a script that will help scan photos and documents directly to Seamonkey Mail. I have included some information on commands, uname, mount and umount.

Last but not least our monthly crossword by the reliable greengeek.

Happy Easter.

smokey01

Distro's

The Puppy Linux Discussion Forum is the main source for a lot of the information repeated here. Where appropriate, links will be provided so you can read first hand about the distribution development. This section will likely just provide highlights as a starting point.

Upup Bionic Beaver

Forum member peebee has released a new pup called Bionic Beaver.

Read about it on the Puppy Linux Forum here: http://www.murga-linux.com/puppy/viewtopic.php?p=985127#985127

Link to the ISO: Upup_Bionic_Beaver-18.03.iso





Dogs & Pups on Android

Dogs and Puppies on Android Devices

Ever thought about running DebianDog or a Puppy on your Android device? It sure sounds pretty cool.
Forum member wiak has been doing some work in this area. Click on the link above to read about it.
Software

This months covers:

Geeqie - An image viewer/manager



Geeqie

Geeqie is a lightweight image viewer for Linux, BSDs and compatibles.

It can be used as a simple, fast, database-free image viewer, but equally it can be used to manage large collections of images.

The main project page will provide much more information about Geeqie.

The latest Geeqie is Version 1.4 and it can be sourced here.



Compiling instructions are here

Tutorials

TightVNCserver Part 2
GtkDialog Part 6
A simple VPN implementation
How to setup a VPN
TightVNCserver Pt 2

Written by Terry Schuster

Setting up TightVNCserver on Puppy Linux

"Virtual Network Computing (VNC) technology enables sharing a copy of one computer's screen display with another computer over a network connection. Also known as remote desktop sharing, VNC is typically used by people wanting to monitor or control a computer from a remote location rather than just accessing shared files.” #1

Why use a VNC? Well, for instance - if you have a Raspberry Pi set up as a security camera or other monitoring purposes, you can connect to the Pi on your local network and operate it using a cheap android phone, iPad or Windows/Linux desktop. Or simply access a second computer in a separate part of your house – one can watch TV while accessing Puppy Linux on an iPad!

VNC was first developed as an open source project in the late 1990s using a particular method (RFB – remote frame buffering) to transfer data between the two computers. Windows developed remote desktop software utilizing its own remote desktop protocol (RDP) which is quite different from RFB.

TightVNC was developed in 2001 as an improvement to the original VNC concept and since then newer forks or iterations have been produced including TigerVNC and TurboVNC.

In practical terms, TightVNCserver allows the client (viewing) computer to access a new workspace/window within the server/host computer, which is effectively independent from other existing workspaces on the host computer. This makes it somewhat different from Windows Remote Access, where both parties can see the same workspace/window.

The client’s keystrokes etc are sent to the host computer so that almost all the host functions, menus, drives etc are accessible to the client. Within some limitations, the viewing computer acts like a terminal for the host computer. Viewing software is required for the client computer, but is is easily downloaded and operated. Setting up the server can be a little more complicated, which is the purpose of this article.

I first became aware of the possibility of having remote access to another computer on my local network by playing around with TightVNCserver (TVS) on Ubuntu. While there are other VNC packages available for Puppy, TightVNCserver is claimed to be a better product, and is in my experience quite good to use. A significant issue using TVS is properly displaying the new desktop which TVS streams to the viewing device. Once that was solved for Ubuntu, I was able to apply a similar patch by some trial and error to other Linux systems.

However I was not initially able to make Tightvncserver operate with Puppy Linux, which is the OS I use most. In fact, one forum post implied that TVS could not be run on Puppy Linux at all. In any case, I put the project aside for a while and took it up again later, looking for more clues on the Puppy and Ubuntu forums. My persistence paid off.

It appears there is a unique issue running TVS on Puppy Linux, which is ensuring the initial password setup script runs correctly. Once this is solved the program will run as intended, although the new desktop will not be correctly displayed (or not displayed at all) on the viewing device. This latter issue occurs with other Linux distros using TVS, and is corrected by changing the default TVS script to one appropriate for the windows manager of the server OS.

So what follows is my recipe for running TVS on Puppy Linux. While the example given is for TahrPuppy 6.0.5, I have used it on more recent puppy distros, including XenialPuppy_7.5.


1) Update Puppy OS and especially Puppy Package Manager

2) Load TigntVNCserver from the Puppy Package Manager.

Tightvncserver_1.3.9 is the only option for TahrPuppy 6.0.5, as there are issues loading xauth with the latest version - 1.3.10. This is not the case with the more recent XenialPuppy_7.5, which has 1.3.10 in the Package Manager or can be downloaded as a .deb file*.

3) According to the postings, vncpasswd is meant to be run before tightvncserver in order to initiate the password settings, but when you do attempt to run tightvncserver :1 in the terminal an error message will appear -
tightvncserver: couldn't find "vncpasswd" on your PATH.

Thanks to references #2 & #3 below one can fix this issue by means of the following edit:
navigate to the file /usr/bin/tightvncserver
open this file as text (Geany should open this )
edit lines (approx) 208 and 722, changing vncpasswd to tightvncpasswd
save changes to the file

Corrections (in italics) appear in the following lines:
system("tightvncpasswd $vncUserDir/passwd");
and
foreach $cmd ("uname","xauth","Xtightvnc","tightvncpasswd") {

4) Run tightvncserver :1 again in the terminal.
(The “1” implies Port 59001 will be used by the tightvncserver.)

The terminal output should be as follows:
root# tightvncserver :1
You will require a password to access your desktops.

Password: (type yours in)
Verify: (type yours in again )
Would you like to enter a view-only password (y/n)? y ( best to enter y )
Password: (type yours in)
Verify: (type yours in again )
xauth: file /root/.Xauthority does not exist

New 'X' desktop is puppypc2062:1 ( or your puppy version)

Creating default startup script /root/.vnc/xstartup
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/puppypc2062:1.log

root#

Record the passwords set.
The view-only password will be required later to access the server using tightvncviewer.


5) If you run the VNC viewer now in the viewing computer, you will most likely be met with a grey screen. This is because the default installed script in the server is setup for GNOME rather than the standard Tahrpuppy windows manager - JWM ( Joes Window Manager).

This needs to be fixed by editing the appropriate file to reflect the Puppy Window Manager in use ( Thanks to references #4 & #5 below)

So - stop tightvncserver in the Terminal by - tightvncserver -kill :1
Navigate to /root/.vnc/xstartup.
Edit the text with Geany as follows:

#!/bin/sh

xrdb $HOME/.Xresources
xsetroot -solid grey
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &
# Fix to make GNOME work
#export XKL_XMODMAP_DISABLE=1
#/etc/X11/Xsession
#xrdb /root/.Xresources
xsetroot -cursor_name top_left_arrow
/bin/sh /root/.xinitrc &
#rox -op /root/Choices/ROX-Filer/PuppyPin (un-comment if password required )
terminal & ( apparently optional )
jwm & ( sets jwm as the Windows Manager. )

Save the script.

Please note: "terminal &" is apparently optional
"jwm &" sets jwm as the Windows Manager. If you are using another Windows Manager apart from jwm, , then there will need to be different modification, eg if using a standard LxPup OS, replace "jwm &" with “lx &” (without the quotes).

6) Run ifconfig in the terminal to get the IP address of your puppy tightvnc server.
The address may change for every boot up if the IP address is dynamically assigned.
A sample terminal result is:
root# ifconfig
eth0 Link encap:Ethernet HWaddr 08:2E:5F:02:0D:45
inet addr:192.168.2.4 Bcast:192.168.2.255 Mask:255.255.255.0
As displayed, the sample IP address is 192.168.2.4.
Record the current IP address as it will be needed to login on the viewer device.

7) If using a Linux OS to view the server window, download tightvncviewer from the Package manager in the client computer. The viewer may need to be run in the terminal as “tightvncviewer” (without the quotes) if a menu entry is not visible.
Note, in LXPup, one needs to run xtightvncviewer in the terminal.
If using another OS, download an equivalent viewer, such as vncviewer. From my experience, it works well on Windows, iOS and Android devices.

8) When the viewing device is run, the IP address of the server device is initially requested, (eg 192.168.2.4) which is then appended with “:1” (indicating port 59001 will output the data). So the requested IP address would be 192.168.2.4:1.
The password is then requested, but note that characters are not displayed as typed, which can be confusing.
All being well the remote destop will be functioning as intended.

It is hoped this article will encourage other Puppy Linux users to try Tightvncserver as it is a very effective means to remotely access your Puppy device on your local network.

References

#1 https://www.lifewire.com/vnc-virtual-network-computing-818104
#2 ahopin at http://www.murga-linux.com/puppy/viewtopic.php?t=79231&sid=ed05cca853a5c57feba410d78e80f094
#3 tony mancill at https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=575865
#4 unknown at https://www.vultr.com/docs/install-gnome-desktop-with-tightvnc-on-debian-7
#5 bobjackson at http://murga-linux.com/puppy/viewtopic.php?t=56306

https://www.tightvnc.com/
https://en.m.wikipedia.org/wiki/TightVNC

* Version 1.3.10 downloadable as a .deb from:
http://launchpadlibrarian.net/181079060/tightvncserver_1.3.10-0ubuntu1_i386.deb
GtkDialog Part 6

This month we will examine the notebook command. It looks similar to the Menu Command we looked at last month.
I'm not really sure why it's called notebook, tab seems more appropriate to me.

The example below is normally stored in /usr/share/doc/gtkdialog-514/examples/notebook if you have the devx loaded.



The code:

#!/bin/sh

[ -z $GTKDIALOG ] && GTKDIALOG=gtkdialog

TMPDIR=/tmp/gtkdialog/examples/"`basename $0`"
mkdir -p "$TMPDIR"

cat <<EOF > "$TMPDIR"/list.txt
gtk-cdrom | CD_ROM Drive | /cdrom/ | ak.tex
gtk-floppy | Floppy Disk | /floppy/ | ak.dvi
gtk-harddisk | Hard Disk | /harddisk/ | ak.ps
gtk-network | Network Drive | /network/ | ak.pdf
gtk-delete | Trash | /trash/ |
EOF

MAIN_DIALOG='
<window>
<vbox>
<notebook labels="Checkbox|Radiobutton|Tree">
<vbox>
<checkbox>
<label>This is a checkbox</label>
</checkbox>
<checkbox>
<label>Another checkbox</label>
</checkbox>
<checkbox>
<label>The third checkbox</label>
</checkbox>
</vbox>
<vbox>
<radiobutton>
<label>First radiobutton in the group</label>
</radiobutton>
<radiobutton>
<label>The second radiobutton</label>
</radiobutton>
<radiobutton>
<label>Third radiobutton</label>
<default>true</default>
</radiobutton>
</vbox>
<tree>
<input file>'"$TMPDIR"'/list.txt</input>
<label>First</label>
<item stock="gtk-floppy">This is a floppy</item>
<item stock="gtk-cdrom">This is a CD-ROM</item>
<item>This line has no icon</item>
<variable>EDITOR</variable>
</tree>
</notebook>
<hbox>
<button cancel></button>
<button ok></button>
</hbox>
</vbox>
</window>
'
export MAIN_DIALOG

case $1 in
-d | --dump) echo "$MAIN_DIALOG" ;;
*) $GTKDIALOG --program=MAIN_DIALOG ;;
esac

A Simple VPN

Written by OscarTalks from the forum.

A Simple VPN Implementation
How to setup a VPN

Information provided by jafadmin & OscarTaks from the forum

How to set up a vpn?
Compiling

This is a good section to discuss how to compile software. Compiling is not everyone's cup of tea but the more people that can manage it, the longer life Puppy will have.

The hardest part of compiling is the build recipe as there are so many options. Let's include some proven recipes here.

You must have the devx loaded as this is where most of your compiling tools reside. In some cases you may also need to have the kernel sources loaded.

Geeqie

Written by smokey01

In the software section I introduced Geeqie, a great little image viewer organiser.

It is quite easy to compile and the instructions are below.

Download Geeqie source code It's a 32Meg downlaod but don't worry the package is much smaller when compiled.

Extract the code to a working directory.

Make sure you have the Devx loaded.

Enter the geeqie-1.4 folder. In this folder open a terminal. In Rox simply press the ~ key just left of the number 1 key.

In the terminal type:

./autogen.sh

It now instructs you to type make to compile. Rather than do that type:

./configure --prefix=/usr

When finished type:

make

then

make install

I noticed a few errors displayed in the terminal when compiling but they don't seem to affect the operation of the application.

Scripts & Code

Scan2Email by smokey01

Scan2Email

Written by smokey01

Recently a friend of mine asked me how to scan documents and photo's directly to an email client. He is an elderly gentleman and a Windows refugee so the process had to be simple.

Most Pups these days come with two excellent scanning applications, Xsane and Peasyscan. Xsane is able to send emails but it's a bit kludgy so I wrote a simple little script that meets his requirements. The script can be modified to work with Peasyscan as well.

The script has two actions:

1. Loads Xsane so you can scan your documents, and

2. Loads your email client in compose mode with the scanned documents attached.

For the script to work you must create a folder named /root/scan and you must choose the save option.



Below is a copy of the script.

#!/bin/sh
[ -d /root/scan ] || mkdir /root/scan # Create scan directory if it doesn't exist
rm /root/scan/* 2> /dev/null # Remove the scanned files
rm -f /tmp/newfiles # Remove the scanned file list
xsane -s # Start Xsane
cd /root/scan # change directory (into our temp dir)
ls -1 $PWD/*.* >> /tmp/newfiles # create a list of our NEW images (full path and filename)
files=`awk -vORS=, '{ print $0 }' /tmp/newfiles | sed 's/,$//'` # create our comma seperated list of files, to pass to seamonkey-mail
seamonkey -compose "attachment='$files'" # start seamonkey-mail with our files as attachments

A good place for the script is in /usr/local/bin.

To make the process very easy, drag and drop a copy of the script to your desktop.

When you click on the script Xsane will search for your scanner. Make sure you have it turned on. Be aware your WebCam may be discovered, if so don't choose it, choose your scanner. Xsane normally opens up a number of dialogs. The only one you need to keep open is the main one as displayed above.

Place your documents/photos on the scanner and click the scan button. Repeat the process until you've finished scanning. Once finished close the scanner dialog and Seamonkey Mail will open will all of your scanned documents/Photos attached.

If you don't use Seamonkey Mail then you may need to modify the script to suit your email client.

Tips & Tricks

Tips & Tricks are simple little actions you can take to make your life easier when using Puppy. You will probably know most of the tips but there are always new users that don't.

uname - smokey01
Mount/Unmount - smokey01

uname

The command uname is run from a terminal and will identify your Operating System.

If you run uname with the -a option you receive additional information.



Mount/Unmount

Written by smokey01

There are many graphical tools to help you mount and unmound logical and physical drives.

Drives can also be mounted and unmounted from a terminal using the mount and umount commands. Notice that was umount, not unmount.

Let's assume you have a drive called sdd1.

Open a terminal and type mount /dev/sdd1 /mnt/sdd1 and your drive will mount.

To unmount the drive type umount /mnt/sdd1

Why would you want to do this when simply clicking on the drive icon on the desktop does the same action? Maybe you want to boot your system with a particular drive mounted so it can be used straight away without having to mount it first. To achieve this you could create a script, lets call it mount-sdd1, the name doesn't matter, and place the script in /root/Startup.

Script name: mount-sdd1
Contents: mount /dev/sdd1 /mnt/sdd1

You don't need to unmount the script as the Operating System will take care of this at shutdown.

Entertainment

The April crossword by greengeek.

Crossword

Puppy Crossword (April 2018)
(Formatted by greengeek using the "Puzzlefast" website)

"Pups and cubs"

This month we have pictorial clues. The answers are all about animals whose young
are called "pups".

There are a couple of exceptions that I threw in for good measure.

(See clues below image)











DOWN:



Scroll further down for answers:








Useful Links

Puppy Linux Forums USA

Ibiblio repository USA

nluug repository Netherlands

Internode repository Australia

University of Crete repository Greece

aarnet repository Australia

Internet archive repository USA

Puppy Linux Tips by smokey01

Puppy Linux wikka Puppy sites

Bookmarkos provided by kerl

Search the Puppy Linux Forums

Barry Kauler's News Blog

labbe5 Report

Contributors this month

Not all of the people below have physically given me the information to publish. If I find information I will give the credit where it is due. So if you see your name on the list below please don't be alarmed or upset. You are not losing your mind.

smokey01
greengeek
Terry Schuster
OscarTalks
jafadmin

Proof reading - russoodle

Newsletter Information

Display tip:
To improve the Notecase display format please press F7 then:
- Tick the "Restore last position/size" checkbox.
- Select the "Display" tab and tick "Wrap text".

Newsletter index written by 6502coder can be found here:
http://www.murga-linux.com/puppy/viewtopic.php?p=945962#945962

Contributions

If you have information you would like to see in the newsletter please email it to smokey01 at smokey01@internode.on.net. I prefer it to be created in Notecase otherwise it makes my job a bit more difficult. I don't intend doing any significant editing but I will attempt to read all of the articles and ask a couple of others to do some proof reading. If you would like to assist in proof reading please let me know on the email address above.

Notecase is very easy to learn and use. Try and keep your articles to less than 1000 words. Photos and images should be no bigger than 1024 x 768. I can always make them smaller.

The deadline for articles is the 20th of each month. Let's not worry about time zones. I know it may be the 20th in Australia and only the 19th in the USA but I can live with this. If it's more than 24 hours late with respect to Australian CST then your article may be pushed right, into the next edition. I expect proof reading to take less than a week which will provide about four days to publish at the beginning of each month.

I will upload the Newsletter to my site at http://smokey01.com/newsletters. There will be two versions. One will be an xz compressed Notecase file and the other will be a html file so it can be read in a browser.

I have changed the original naming convention to 0001-PuppyLinuxNewsletter-Jan2017.ncd.xz and 0001-PuppyLinuxNewsletter-Jan2017.html respectively. The formatting of the html is not brilliant but readable. The newsletter is intended to be downloaded and read in Notecase.

Disclaimer

The editor has the right to veto any articles that he/she considers inappropriate. A reasonable effort will be made to avoid spelling and grammatical errors however, I'm sure some may slip through. This newsletter is published by volunteers, and is free, so please be kind. Constructive criticism and positive suggestions are welcomed.

smokey01

Entertainment
Expand "entertainment" subsections for crossword etc