Contents

Editorial



August 2017

In the early days of Puppy Linux life seemed much simpler. There was one version of Puppy led by Barry Kauler which he controlled very closely. Life evolves and so did Puppy. Even Barry started experimenting with different flavours of Puppy mainly to satisfy his own curiosity. So all of a sudden there was choice and different packages. Some were compatible between the different flavours and some weren't.

Barry then created a build system called woof so anyone could build Puppy from the ground up and make their own distributions. Barry's long term plan was to step back from being the lead on Puppy and hand over the reins to someone else. Woof evolved even further so Puppy could use packages from other large distributions like Ubuntu and Debian. This seemed like a really good idea at the time but it really has fragmented Puppy. I'm not saying this is a good or bad thing but it's just the way it developed. Obviously this means one package or pet does not fit all and users need to be aware of this. Often new users install packages from one distribution and expect them to run on another, sometimes they work and sometime they don't.

This is not meant to be negative, rather a little bit of history from the beginning until now. It's easy to understand why new users seem more confused now than they were back in the day. I think the best idea is to try a few different flavours of Puppy until you find one that works for you and then stick to it. The problem is, if you pick the wrong one it may not be ideal tomorrow. My advice to new users is to pick a LTS (Long Term Supported) Puppy. Having said that most flavours of puppy are based on other pups so hopefully it's a LTS one.

You might have noticed even Barry has moved away from his traditional Puppy architecture. Originally it was all about layered files system, frugal installations which were small, fast and they totally loaded into memory. His new experiments still have that Puppy look and feel but he has evolved. Is this a good thing? Only time will tell. Barry has gained a lot of respect over the years and whatever he does, many will follow, me included.

Cheers

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.




Slacko R3

Developer 01micko

slack0-700 RC3 was released on 13 June 2017. If you are interested in helping 01micko test it, you can download the ISO here.

Read about it on the forum thread.

Although slacko-700 RC3 (6.9.9.9) is close to release, there have been a few issues reported. I'm sure 01micko won't release the final version until he is satisfied with it.

Please be patient, the wait will be worth it.
Tahrpup 6.0.5

Developer 666philb

The current version of tahrpup is 6.0.5 CE. It was bumped to 6.0.6 but at the time of writing this I noticed the ISO had been deleted from ibiblio. 666philb is the developer behind this very nice distro but he hasn't been seen on the forum since 17 April 2017.

666philb is also the developer of Xenialpup 32/64bit. The latest versions can be downloaded here.

The puppy community is quite a large and friendly family. Members often inquire about the welfare of others as seen on this thread: Where is 666philb?

All the best Phil.

X-Slacko-4.3

Reported by smokey01

Rg66 has commenced work on a new release of X-Slacko. I notice he has already added X-slacko-4.3 to his signature line so it might not be too far away.

Quirky Xerus64 8.2

Developer Barry Kauler

Barry released Quirky Xerus64 8.2 final on 19 July 2017. You can read all about it on his blog or on the Puppy Linux forums.

This looks like another fine creation from the Puppy Master.

Software

This months covers:

CLI - A few commands

Compare two files with comm

A short announcement about LibreOffice Draw

A little bit about Network managers

Improvements recently made to VLC

CLI software

Written by smokey01

Many think the Command Line Interface is a scary place, it really isn't but it helps if you understand it. The worst thing about the CLI (Terminal) is there are lots of switches to remember. Refresh your memory by adding a --help to the command.
EG: ls --help

If you want to see a list of all available commands, this includes scripts, press the Tab key twice.

Some of my favourite terminal commands that I use all the time:

pwd - Present Working Directory (Shows you where you are)



ls - lists files in current directory



iwconfig - will display your wireless adaptors



ifconfig - configure your networks (ifconfig --help to display help)



cd - change directory



mkdir - make a directory/folder



rmdir - remove a directory



rm - removes files (We will delete/remove a file called tuxxy.png in /root)



cp - copy directories or files (cp source destination)



There are many more commands but hopefully this will encourage new users of Linux to have a play and remove the fear.

This is a good site to get started

comm

Written by smokey01

Have you ever wanted to compare the differences between two text files?

There are many tools available to do this but I couldn't find one that did exactly what I wanted. My need was simple. All I needed was a tool to show me what text was included or excluded between the two files. The two links below provide some help on comm.

https://shapeshed.com/unix-comm/ https://www.computerhope.com/unix/ucomm.htm

I must admit I had trouble with the sort function on a single line.
This command did not work for me: comm -12 <(sort set1.txt) <(sort set2.txt)

The two text files need sorting for this to work properly. I sorted both text files and saved the results then applied the comm command and it worked great.

The reason I needed this command was to determine the differences in files that had been installed for VLC. VLC-2.2.4 and VLC-2.2.6.

Once I trimmed the installed file logs of both packages to just files and paths, sorted both lists I ran the following command:

set1.txt contents sorted:
/usr/bin/program
/usr/share/applications/hello.desktop
/usr/share/doc/read.me


set2.txt contents sorted:
/usr/bin/program2
/usr/bin/uninstall
/usr/share/applications/hello.desktop
/usr/share/doc/read.me



To find the unique files in set1.txt
comm -23 set1.txt set2.txt

To find the unique files in set2.txt
comm -23 set2.txt set1.txt

It doesn't seem much use with just a few files but it is when you have hundreds.

LibreOffice Draw

Written by smokey01

Have you ever received a PDF form by email? The form then needs to be printed and filled out and returned to the sender. Now this is all very easy if you are at home and have access to a printer. You need an envelope and a stamp and if you're lucky, it will reach it's destination some time in the not too distant future.

I will explain a simpler and faster method. Open the PDF file in LibreOffice Draw. Type in the data and export it to a PDF then email it back to the sender.

This may not work on a secure PDF but it works great on unsecured.

Another application that works well for filling in PDF forms is Evince.

Network Managers

Written by smokey01

In puppy land there are a quite a few good network managers. One of the first that comes to mind is Dougal's Network Wizard which is still being used today, although I think there have been a few modifications.

I think the first time I saw Frisbee was when Jemimah introduced it in a couple of her creations. Frisbee and Network Wizard did not play nicely together so only one could be used at a time without blacklisting modules.

Another nice Network Manager was Pwireless, also developed by Jemimah. She wrote this to improve connectivity that was missing in some of the other managers.

Barry's Simple Network Setup was also a very solid Network Manager and is still included in most puppies today.

The first time I saw wpa was in Fatdog. It's a very capable Network Manager and has been the default in Fatdog for quite some time. It's one of the best but not as intuitive as it could be.

All of the above Network Managers have strengths and weakneses. When it comes to Network Managers, one size does not fit all. There are many factors that impact on network functionality like hardware, drivers, signal strength, encryption etc.

Recently I was playing with wpa in Fatdog and managed to break it. When I break something I usually do a good job of it and this time was no exception. It took me quite some time to repair the damage, with some help from forum member step, but it was a great learning experience. I now know stuff about networks I didn't know existed. You just have to push the frustration to one side, open your mind and never give up.

This experience forced me to do some more experimenting. I thought my trusty Netgear WN111v2 wireless adaptor had died so I rushed to my local computer shop and bought a TP-Link 725N. It's a nano USB, very small.



I broke one of my own rules. I never did my normal research to see whether it would work on Linux or in particular Fatdog64-710 before I bought it. I did know that Fatdog had a driver that should support it. It was the r8188eu and as soon as I plugged it in, the driver loaded and the adaptor was seen in iwconfig. I soon discovered just because a driver was loaded and the system could see the adaptor doesn't necessarily mean it will work, and it didn't.

I assumed the driver was incompatible so I went searching for the source, downloaded it and compiled a new driver. Guess what, it still didn't work. Step had a similar adaptor, TP-Link 725WN, so he downloaded the source and compiled it. He had more luck than me. His adaptor worked and so did mine with his driver. I have put step's driver package on my site. Remember this is only for Fatdog64-710 with the k4.4.35.

So after all of this I decided to look for a better Network Manager so I asked Mr Google. After about an hour I decided wicd was worth a look, so I downloaded the source and got to work. I managed to build a package for Fatdog which seems to play nice with wpa, the default Network Manager in Fatdog.



Wicd is very informative and provides a lot of information and is also very easy to use. It re-connects
automatically if necessary but only allows one active connection at a time which is actually a good thing.
I think this might be my favourite Network Manager but it has one big drawback, it's big. It's actually
a python application and python is about 15M in Fatdog and I assume a similar size in other distributions. It also
has a number of dependencies which tend to add to its size. The Fatdog package of wicd-1.7.4-noarch-1.txz
can be downloaded from my site.

VLC

Written by smokey01

I've written about VCL before as It's one of my favourite applications. The one thing that does annoy me about it though, its inabily to display track information of an audio CD. The information is not actually stored on the CD, it has to be sourced from elsewhere like http://www.freedb.org/. Unfortunately this seems to be broken in many versions of VCL. In version 2.2.6 this issue seems to have been fixed as it now works as you can see from the image below.



If your repository doesn't have vlc-2.2.6 you could try compiling your own. There is an article in the February 2017 edition of the newsletter. The recipe was kindy provided by billtoo.
Tutorials

A nice tutorial about unetbootin by bigpup.
unetbootin

Written by bigpup

UNetbootin can create a bootable Live USB drive, or it can make a "frugal install" on your local hard disk.
Download the source code: http://unetbootin.sourceforge.net/

To use a Puppy iso file.
Follow the directions for using an iso file you have already downloaded.
http://unetbootin.sourceforge.net/#other

Here is a pet that watchdog made.
http://www.murga-linux.com/puppy/viewtopic.php?p=851176#851176

You do not really install Unetbootin into Puppy.

Download the Linux version of Unetbootin.

It is an exec file, but it needs to be given the exec permission.

In the file manager.
Right click on the Unetbootin file and select properties.
Give it exec permissions.

Now left click on the Unetbootin file to run it.

You may need to install a version of mtools you can get from the Puppy Package Manager.

I just did not really see a need to make a pet, seeing how it is already an exec file and only a single file.
It can be moved to the desktop if you want to run it from there.

Note:
If Unetbootin is not finding your USB drive.

Sometimes you have to force the issue with Unetbootin.

Start Unetbootin from the console by using this command.
Code:
unetbootin installtype=USB targetdrive=/dev/sdb1

You tell it the target USB drive you want it to use.

My USB flash drive is sdb1

Just make the targetdrive=/dev/ (whatever your USB drive is identified as)

To do a hard drive install:

Hard drive partition is sda1

Code:
unetbootin installtype=HDD targetdrive=/dev/sda1

Seems you can also go deeper into the location on the hard drive.

Example:

Code:
unetbootin installtype=HDD targetdrive=/dev/sda1/whatever/whatever

Puppy Tweaks for installing a Puppy iso:

Unetbootin does a basic iso image burn install to a USB flash drive.
Basically it is the same as a live CD image burn install.
It does not know about the tweaks, that the Puppy Universal Installer does, to identify the install as a USB flash drive install.
These tweaks tell the boot process that Puppy is on a USB flash drive and to limit the writes to the save file or folder.

However you can manually tweak the syslinux.cfg file on the USB flash drive.

Change:

Code:
append initrd=initrd.gz pmedia=cd

To:

Code:
append initrd=initrd.gz pmedia=usbflash

Read the entire thread in the forums here.

Biography

This month the BIO is about a very interesting chap that's been around the forums and computer industry for a long time. His level of experience is quite amazing. I will disclose his identity next month but for the time being enjoy the read and see if you can identify this person.

Written by a mystery person

Smokey01: Do you mind disclosing your age?

Mystery man: I will present my age as a puzzle: born several months before the first true stored-program general-purpose digital computer began operation. This is the reason for my moniker. I can also report that I am an Army veteran who was once himself a computer, before the English language had completely changed.

Unless you count a device with rotary switches named Brainiac, the first computer I worked on was an IBM 1401, one of the early models before they had true index registers, which meant self-modifying code was de rigueur.

I was the operating system on that. Later work on an IBM 7094 involved a sort of OS called IBSYS/IBJOB. The console of this could have served in many science fiction movies, but interactions were primarily through punchcards. I saw the first IBM 360s, for which the OS was a full year late. I even saw the night when IBM engineers replaced microcode in all the floating point units at once, to end complaints about unreliable results. I still think 36-bit word single-precision was better than 32-bits, which is mainly for computations where you don't care about the results.

I was in the trenches for the minicomputer revolution, and worked for a company that seemed to try to put Data General out of business by ordering lots of machines they couldn't pay for. I still remember the day a computer salesman called to tell me his boss had told him it was alright to put me back on his list of prospects again. (In my experience you have to be glowing radioactive to drive computer salesmen away.)

I was near ground zero in the microcomputer revolution, programming the Intel 4004 and building machines with 2002 bit slices. These were a long way from what we consider computers today. We took a pass on the 8008, like several other companies, even the one for which it was designed.

(On the day I could actually hold an 8080 in my hand, I told my father to buy Intel stock. He asked his broker, who told him this was very risky, and sold him GM stock. Last time I checked Intel had not gone into bankruptcy.)

We ultimately decided we couldn't live with the original 8080 I/O methods, and used the Motorola 6800 in designs based on memory-mapped I/O. (We needed a lot of I/O.) Today everybody does this, and most deny that Intel ever did anything else. I remember that our decision was based on I/O chips we could buy from Motorola before Intel started shipping parts we could use without some extra chips.

After that experience I wouldn't let a computer in my home until the original Macintosh appeared.

Smokey01: How many computers do you currently have?

Mystery man: I don't know how many computers I own at present, and I'm sure the number will go down before current housecleaning is finished.

Smokey01: What sort of software have you developed?

Mystery man: In younger days I produced some notably cryptic programs. I once even implemented a compiler entirely with macros and an assembler. (This was not an original idea. I remember the implementation of early Fortran on the 7090 series machines using FAP.) I have bootstrapped software development on a bare machine more than once. We did this to avoid limitations imposed by licensing and copyright, plus the fact that no commercial software did anything close to what we wanted to do.

I'm not entirely proud of doing these things, but it was the usual story of the exigencies of start-up businesses. We either had to do the impossible or go out of business. ("What do you mean nobody has been working on a compiler? We just signed a contract to deliver complete systems, and the first milestone is in two weeks.")

I was an early convert to UNIX, and can even explain why Version 7 preceded System V. Also worked with BSD before it became what people now call BSD. I consider myself weak on networking, and stronger on hard real-time systems. I've written compilers, but don't tackle such projects now. I have a master's degree in computer science, but stopped short of finishing a PhD. Much of my work experience in software development came before I had any such degree.

Before I found Puppy I had bouts with SuSE Linux, Red Hat, Mandrake and raw Debian. For a time I built systems using Gentoo's development completely from source, even producing custom kernels. I've always had suspicions about libraries of precompiled binaries, and wonder when development ever ends.

Unfortunately, the atmosphere at Gentoo turned toxic with raging egos, some of which had poor underlying basis for pride. (This was not the fault of Daniel Robbins, who is really brilliant. He was working elsewhere when things went wrong.) There was also a trend toward "bigger is better", which grated on my nerves. I've seen uncontrolled complexity kill huge projects.

Current attitudes suggest the motto: "That's the last time I will shoehorn a system into one gigabyte." Previous iterations said the same about one megabyte and 64 KB. When I started even that last was inconceivably huge. The current problem is not a lack of memory, storage or computing power; it is lack of understanding of what you really need to do. Puppy came as a breath of fresh air.

As an ageing member of the general public, as well as someone trained in IT, I have tried to help other elderly people to use the wealth of technology available. I'm not thrilled with the result, nor am I sanguine about the prospects of increasing complexity and declining competence as I age. This is far more than a personal problem. I've seen all too often that everyone has a breaking point where they can't cope with information and complexity.
Axiom Zero of Human-Computer Interaction: Anyone can be overwhelmed by complexity and time-pressure. Uncontrolled complexity is certain to exceed human capacity.

Even things that don't look complicated can have surprising implications. Take the 3N+1 problem described in this video.

I've even run into programmers who thought it was safe to assume that if N == -N then N must be zero. In two's complement binary integers there is a second such number. If you don't understand integers, what does this say about your programs?

I'm also bothered by the implications of building systems with major consequences like loss of life or collapse of economies on proprietary software trusting "security through obscurity". This last year's scandals over hacked material illustrate just how dangerous current systems can be. We passed the first "billion dollar hack" long ago, and are working on trillions. Consequences for national security, democracy and individual liberty are now hot topics.

I don't accept that everyone must run the same system, which can be understood only by insiders. I don't believe anyone thoroughly understands most major software products today, including those insiders. I don't see how free and fair markets can exist if it is possible to simply take assets or commit fraud. I don't see how anyone can cope with the welter of misleading news we currently experience while doing any of the other necessary jobs for a complex society. Most people have to be able to think about something other than IT and security to do useful work.

We are close to a technological singularity after which history will be quite different. I'll leave you with two thought-provoking possibilities: Tom Scott's version of a ruined singularity, a sample from a source which has recently been promoted as an alternative to "fake news". Which is more plausible? Could our technological future be a general departure from sanity?

Smokey01: Could you expand a little on some of your other experiences?

Mystery man: My experience with detailed debugging goes to a level most programmers never see. Even an example involving microinstructions inside one assembly language instruction did not require a logic analyzer.
Bringing up a bit-slice processor at the same time you are debugging the microcode is effectively impossible without a logic analyzer. Been there.

People who debug microcode are likely to never be that same afterward. This also fits with my observations on programmers who had programmed machines with recirculating memory or main memory on a drum. Don Knuth was one on those.

Even if these people are true geniuses, like Knuth, it is always difficult for them to explain their way of thinking to others. They have minds that can think around corners, but seldom proceed in a straight line. Check the dedication on The Art of Computer Programming.

(Confession: having worked with both serial main memory and microcode, I am thus impaired in at least two ways.)

Most people can blithely ignore the manifold possibilities for misbehavior in the equipment they are depending on to run their programs, etc. This is especially easy if they simply don't know what goes on inside machines, or during program development. Here we come to another aspect of my mental weirdness: experience with bugs that cause explosions.

This came about when the U.S. Army joined me, (rather than vice versa,) and decided I was just the thing to act as a human computer for artillery. (They had an electronic computer named FADAC, but this tended to break down in hot and humid southeast Asia. Soldiers were not permitted to break down.) I could have told them that an understanding of math had little to do with skill at arithmetic, had anyone wanted to listen. They did not. Nor were they concerned that I might slip into octal or hexadecimal at a critical moment.

I had some close-up views of the results of minor problems in artillery fire direction, complete with sound effects. N.B. artillery does not have "mistakes", "errors" or "accidents", I can say this because there was a time when I knew people who investigated "incidents".

During a period of "on-the-job" training on the staff at the artillery school, I thought I saw about every way it was possible to screw things up. Later I learned this was overly optimistic.

While my attitude to computational errors involving artillery gave me some preparation for what could go wrong when you turn things over to computers, it still fell short of what I learned dealing with some projects like the Strategic Petroleum Reserve. ("What happens if one of these salt domes collapses because you didn't balance volume, temperature, salinity and pressure?" "Ever hear of Lake Peigneur?" ) There are also videos of the disaster.

I'm glad I didn't learn that some of the valves my code controlled weighed 2 tons until after the job was over.

Still more awareness of unlikely errors kept popping up in my later experience. I've actually spent a solid week watching a simulator, waiting for it to hiccup, before I caught one bug. That was my limit back then. Today it would be much less.

I wasn't working on the Space Shuttle when they were ready for the first launch, but through contacts I knew that code had been tested so thoroughly that any new changes would result in about 6 months delay while it was requalified. On that first launch a "one in a million" chance happened that meant those five computers grabbed the wrong time slot, with one left out, as in musical chairs. I was very interested in how NASA management would deal with this setback. The answer was to change the manual: if the computers end up in the wrong time slot, press reset. In familiar terms: "have you tried turning it off and back on?" Naturally, the situation which caused this problem had never turned up in months of testing.

Just in case code in all the computers on that flight had the same bug there was a sixth machine stowed away separately which had a program written by a competing team of programmers. If the Orbiter survived long enough, the crew could pull this out and plug it in in place of machines that were misbehaving.

Aside: the original computers in the "fly-by-wire" flight controls of the Space Shuttle Orbiter were basically like minicomputers from the 1970s, plus voting circuitry. No microprocessor had been around long enough to meet reliability requirements.

I can report that the loss of Space Shuttles Challenger and Columbia were not due to any error in computer code. Ordinary human stupidity and complacency produced predictable results. I was one of a quite a number of people saying a loss due to failure of the Thermal Protection System was inevitable. Even then I did not expect it to be failure of the RCC tiles bolted onto the leading edge. Then again, I didn't expect a chunk of foam the size of a suitcase to break off the External Tank ramp. I suppose this was another example of my unrealistic optimism.

I'm not quite as pessimistic about engineering failures as one man I know. We once spent 10 minutes trying to find a way to the hospital room where a friend was recovering without using an elevator. Why? I asked. It turned out he had been employed by Underwriters Laboratory to test commercial designs for UL approval, up until they insisted he take an airplane, not a train. He didn't trust elevators. I never did tell him that my father, who designed airplanes, wouldn't fly on some commercial designs.

It is probably not a good idea to suggest something in my presence, and then say "what could possibly go wrong?"

I'll leave you to imagine what goes through my head when I see computer security or software reliability affecting economics or national politics.

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.

This month I have included:
Deadbeef - Audio player
Deadbeef

Written by smokey01

Deadbeef is a very popular audio player. Over the years it has been found in various versions of Puppy.

Deadbeef development seems to have slowed as the last version is 0.7.2 was released on 24 April 2016.

You can get the source code here: http://deadbeef.sourceforge.net/ Click on the Download link.

This month I compiled Deadbeef in slacko-6.9.9.9 and it only required one dependency, jansson.

Jansson needs to be compiled and installed prior to compiling Deadbeef.

Download jansson, extract it, enter the source directory. Open a terminal in the source directory.

Make sure you have the devx loaded.

In the terminal type:

./configure --prefix=/usr

when it returns to a prompt type:

make

When it returns to a prompt type:

Make install

This will install jansson into your system.

Now do exactly the same with Deadbeef after you have downloaded the source code.

Sometimes you find after compiling software there is no menu entry. This is generally due to category names in the desktop file. If you open the deadbeef.desktop file in /usr/share/applications you will see Categories=AudioVideo;Player;GTK;
You can replace this with: Categories=Audio;
This will put the Menu entry under Multimedia, where it should be.

Another problem may be an icon missing on the Menu entry. Puppy sometimes does not find the icon where different applications put them. An easy way to fix this problem is to copy the deadbeef.png icon from:
/usr/share/icons/hicolor/48x48/apps/deadbeef.png to /usr/share/pixmaps.
If it's still not visible open a terminal and type: fixmenus.
If it's still not visible restart the X server.

Job done, Enjoy.

Scripts & Code

Geany Template

A nice search script using grep by Edi Amin

Script Template

Written by smokey01

In Geany you can create scripts for various languages by clicking the down arrow on the right of the New Icon. There is an important one missing, Bash script is not there. I know it's easy enough to add #!/bin/sh to the beginning of a script you are creating, but it should be there right!

Open Rox and navigate to /root/.config/geany/templates/files

In the files directory Right-click > New > Script then click the create button.

Next time you click on the down arrow next to New, select Script then continue constructing your script.

Search

Script written by Edi Amin

Search is a script that will search for an expression in all files in the current directory. Create the script below and place it in one of the /bins. I like to put additional scripts like this in /usr/local/bin

#---------------------------------Cut-----------------------------------------------

#!/bin/bash

# Edi Amin <to.ediamin@gmail.com>
# Search files in the current directory containing string using grep
# usage:
# search mystring
# search -i php mystring // search only in php files
# search -i js mystring // search only in js files

while getopts "i:" OPTION
do
case $OPTION in
i)
grep -nr --color --include=\*${OPTARG} ${3} .
exit;
esac
done

grep -nr --color $1 .


#----------------------------------Cut------------------------------------


Search files in the current directory containing string using grep

search mystring

search only in php files

search -i php mystring

search only in js files

search -i js mystring

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.

Multiple Desktops

Written by smokey01

Puppy Linux comes with multiple desktops as standard. There are usually two or three configured for immediate use but you can add more if you wish. I'm often amazed how many people are not aware of additional desktops and many of the people that are aware never use them. In a nutshell, additional desktops increase your screen real estate. It's difficult working with a cluttered screen where many applications are hidden behind others.

One option is to use multiple monitors. I have two twenty two inch monitors sitting side by side and sometimes I still need to use an extra desktop as well. It's not practical or affordable for everyone to have multiple monitors but if you already have multiple desktops, why not use them.

Desktops may work differently depending on the window manager. To switch desktops in JWM click on any part of a desktop, not an application, and move the scroll wheel forward or backwards and you will notice them change. It may not be all that obvious unless you have a few applications loaded. When you switch desktops you should notice your applications disappear.

You can also switch desktops by clicking on the desktop icons in the task bar at the bottom left of your screen.

You can move applications between desktops by dragging the application to the left or right off the screen. I bet you have done this in the past by accident and wondered where your application disappeared to. The other way is to right-click on the title bar and send the application to the other desktop/s.

Once you start using multiple desktops you will wonder how you survived previously. People with small screens such as laptops and net-books should find this very useful.
App won't run

Written by smokey01

Sometimes when you install new applications they don't work. When this happens there are a couple of things you can do to try and determine why not. Open a terminal and type the name of the application and press the [Enter] key. You should see some errors in the terminal.

If you don't know the name of the application binary or script, open the desktop file. Lets assume the application is called Viewnior. You need to navigate to where the desktop files are located in /usr/share/applications/viewnior.desktop. Right-click on the desktop file and select Open As Text. Look for the line that begins with Exec= and, as confirmation, you will see Exec=viewnior. This is the name you need to type in the terminal. In some cases there may be a parameter like %F. It's not necessary to include this for fault finding. We are trying to determine if or what dependencies are missing. You may be trying to run an application that was packaged for a different operating system. Sometimes they work and sometimes they don't. It's usually best practice to run packages that are made for your operating system.

Sometimes applications won't run because of dependency version differences. For example: The binary might require a dependency called libXext.so.6 but the one in your system is called libXext.so.5. Do not rename the file as that may break other applications that require it. What you can try is to make a symlink called libXext.so.6 and point it to your existing libXext.so.5. The easiest way to do this is with Rox. Right-click on libXext.so.5 and select link then change the name to libXext.so.6 and click on the symlink button. Run the application again from a terminal to see if it works. If it didn't you will see more errors. If you get more errors then you may have a lot of dependencies to satisfy. A good way to check all the required dependencies at once is with ldd.
In a terminal type: ldd /usr/bin/viewnior if you have any more missing dependencies you should see them.

Forum user radky made a nice little application to make this task easier. It's called ListDD. Download it here:
http://www.smokey01.com/radky/ListDD-2.0.pet and read about it in the forums here.

Once you have satisfied all of the required dependencies your application should run. If it does not, you may have to go searching for the correct dependencies for your operating system. Often they can be found in the package manager.

Syncing files

Written by Mike Walsh

Here is an interesting snippet from Mike Walsh about syncing files across all of your devices.
http://www.murga-linux.com/puppy/viewtopic.php?t=111026
Notecase Links

Written by smokey01

One of the few things that I find annoying about Notecase is the lack of tool-tips when you hover over a link.

If you click once on a link then click on the Link wizard icon on the tool bar you can view the URL. Not as good as a tool-tip but at least you can see where you are about to be redirected.
Entertainment

August crossword. Unfortunately greengeek was unable to provide a crossword this month so it was done by smokey01.

New year resolution
I’ve given up social media for the New Year and am trying to make friends outside Facebook while applying the same principles. Every day, I walk down the street and tell passersby what I’ve eaten, how I feel, what I did the night before, and what I will do tomorrow. Then I give them pictures of my family, my dog, and me gardening. I also listen to their conversations and tell them I love them. And it works. I already have three people following me—two police officers and a psychiatrist.

Passwords
I was in a couple’s home trying to fix their Internet connection. The husband called out to his wife in the other room for the computer password. “Start with a capital S, then 123,” she shouted back.

We tried S123 several times, but it didn’t work. So we called the wife in. As she input the password, she muttered, “I really don’t know what’s so difficult about typing Start123.”
Crossword

Puppy Crossword (August)
(Formatted by smokey01 using the "Puzzlefast" website)

This month, Name the developers.




Scroll down for the answers.

















































The labbe5 report

Forum Links provided by labbe5

popcorn-time

Common Social Engineering Attack Tactics

mp3 diags

4K Video Downloader

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

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
01micko
666philb
rg66
Barry Kauler
bigpup
Edi Amin
radky
Mike Walsh
labbe5

Proof reading - russoodle +1

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. It must be created in Notecase otherwise it makes my job far too 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