Paul Sutton

Personal Blog

Gopher 2

As I am going to look in to hosted services for gopher. I am removing gophernicus from the Raspberry Pi

sudo apt remove gophernicus
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following package was automatically installed and is no longer required:
  python3-simpletal
Use 'sudo apt autoremove' to remove it.
The following packages will be REMOVED:
  gophernicus
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 125 kB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 77532 files and directories currently installed.)
Removing gophernicus (3.1.1-3+b1) ...
Processing triggers for man-db (2.11.2-2) ...

I may as well run auto remove to clean up further

sudo apt autoremove
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages will be REMOVED:
  python3-simpletal
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 195 kB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 77518 files and directories currently installed.)
Removing python3-simpletal (5.2-3) ...

I am leaving the gopher client installed, as this may be needed later.

So I will be looking at setting up a vern.cc account as they offer gopher as one of their services.

Tags

#Gopher,#Remove,


Mastodon ShellLabs Join Mastodon
AI statement : Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity. Consent CANNOT be assumed, it has to be granted.

Donate using Liberapay

Gopher

With lots of discussions about big tech, privacy and data protection there has been discussions on the Social Web, about using protocols such as Gopher and related software.

We are also seeing attacks on science from the USA with departments cut, and information on a range of issues; such as DEI, Climate Science, Medical Science being removed, risking this being lost forever.

The Gopher protocol (/ˈɡoʊfər/ ⓘ) is a communication protocol designed for distributing, searching, and retrieving documents in Internet Protocol networks. [1]

There are still some servers out there, some are new, and offer services such as HackerNews, Project Gutenberg and others. Thanks to Anthk @anthk@paquita.masto.host who has made a list of some of these Gopher servers

Does the web allow you to do this at 2.7 KBPS?

  • Gutenberg gopher://gopher.icu/7/gutenberg
  • Internet Archive gopher://tilde.pink/1/~bencollver/ia/
  • Huge portal gopher://magical.fish
  • News, blog and more gopher://1436.ninja
  • Reddit gopher://gopherddit.com
  • HN gopher://hngopher.com
  • Google Maps (text) gopher://tilde.pink/1/~bencollver/dir
  • Podcasts: gopher://gopher.icu/1/pod Blogs:
  • gopher://sdf.org
  • Weather (finger):
  • gopher://graph.no:79/0/London

There are still clients software out there, and yeah you can all this with good old plain text.

apt search gopher

Links

  1. Wikipedia – Gopher Protocol

DIY Gopher Server

Note the tutorial above on how to set up gopher on a Raspberry Pi, appears to be using system V, (init.d system I think) hence I have included the 3rd link which covers how to manage services on both. The 2nd link should help with setting up the actual gopher files.

I tried to install the software mentioned in the first link above and there seems to be a problem with this in my raspberry pi, so I removed this and have installed gophernicus instead.

22/4/2025

If all else fails then vern.cc members get gopher as one of the services. So I will look at a hosted service.

21/4/2025

Had issues with gophernicus as I am not sure where the config file is.

Tags

#Internet,#Communication.#Protocol,#Gopher,#Software,


Mastodon ShellLabs Join Mastodon
AI statement : Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity. Consent CANNOT be assumed, it has to be granted.

Donate using Liberapay

FediverseForFreedom – Fosdem Talk

A talk from Fosdem by Andy Piper, on the Fediverse, (Social Web) and how institutions can adopt the #SocialWeb

For those who missed my closing talk at #FOSDEM on the #SocialWebFOSDEM track (which was part of the "After Hours" event), I've recorded a standalone version. Feel free to boost for reach - and also share with civic institutions and community leaders. 

Video

Links

Tags

#SocialWeb,#Fediverse,#Fosdem,#Talk,#FediverseForFreedom


Mastodon ShellLabs Join Mastodon
AI statement : Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity. Consent CANNOT be assumed, it has to be granted.

Donate using Liberapay

Tinkerers Meeting – April 2025

Just mirroring this post here.

The next meeting of the Tor bay Tinkerers group will be on Saturday 26th April 2025 at 9:30

We meet at:-

STEAM Cafe & Discovery Centre 13 Torbay Road, Paignton.

Possible topics

  • Dragster Race Car update
  • Update from Helen's visit to Event in Stratford Upon Avon
  • Show and tell – Arduino CNC Control

To give you an idea of what we have been up to, please see the write-ups on this blog.

I have also reached out to the Open Street Map community to see if anyone there would be interested in meeting up at the same time.

If you would like to ask any questions, please see our Facebook page

Tags

#Torbay,#Tinkerers


Mastodon ShellLabs Join Mastodon
AI statement : Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity. Consent CANNOT be assumed, it has to be granted.

Donate using Liberapay

Bash scripting 19 – checking user is root

If we want to run a script that requires root privileges, then we can check if a user is logged in as root. There is a detailed guide by TechAdmin

I am not going to reproduce here, as there are some useful pointers within that article.

Tags

#Bash,#BashScripting,#Bashscripting,#User,#Root,#NonRoot


Mastodon ShellLabs Join Mastodon
AI statement : Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity. Consent CANNOT be assumed, it has to be granted.

Donate using Liberapay

VFsync

If you don't have access (direct or remote) to a computer running GNU/Linux there are several options, one of which is vfsync.

VFsync (for Virtual File Synchronization) is a secure file synchronization system.

 *   In a web based virtual machine. The files can be manipulated with all the standard Unix commands and imported or exported to the host system.
 *  In a small Desktop based virtual machine. It is faster than the web based virtual machine and unlike other virtual machines, no disk image needs to be downloaded.
 *  With a small standalone client directly running on the host system. 

Links

Notes

You won't't be able to do everything in the posts on this site, or tutorials elsewhere, however you can still do quite a lot, so this should be a good opportunity to learn until you can find other solutions. There are a few links below. I am not going to recommend or endorse a particular solution..

As there is a demand for technical skills in areas such as cloud compiuting and cybersecurity then knowing how to use GNU/Linux and similar unix systems is probably essential, as would be understanding powershell, I am not sure if this is the case, but AI needs to run on servers, which are mostly likely to be powered by GNU/Linux. I will leave readers to do their own reserach.

More Links

There are numerous options at

Chat

I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.

Tags

#Learning,#GNU,#Linux,#Remote,#Shell,#Vfsync,#vern,#Virtual,#VirtualMacine,#VM#BASH,#Bash


Mastodon ShellLabs Join Mastodon
AI statement : Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity. Consent CANNOT be assumed, it has to be granted.

Donate using Liberapay

Bash scripting 18 – Using data files 4

So, carrying on from the previous article(s).

Using the guide at [2]. We can set a few labels up so the graph looks nicer.

Once in gnu plot you can issue commands, then run replot to redraw the graph.

gnuplot> plot 'log.csv'
gnuplot> plot 'log.csv' with lines
gnuplot> set title 'Example Plot'
gnuplot> set xlabel 'x axis'
gnuplot> set ylabel 'y axis' 
gnuplot> replot
gnuplot> set key top right
gnuplot> replot

By running replot we can see the results are what we want before carrying on.

All this is just a small sample of what can be done, I will explore more on this once I have some useful, rather than randomly generated data to plot or do things with.

References

1 gnuplot 2 gnuplot examples

Chat

I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.

Tags

#Bash,#Bashscripting,#BashScripting,#Files,#UsingDataFiles,#Data,#gnuplot,#graphs


Mastodon ShellLabs Join Mastodon
AI statement : Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity. Consent CANNOT be assumed, it has to be granted.

Donate using Liberapay

Bash scripting 17 – Using data files 3

So, carrying on from the previous article(s). I am going to be using gnuplot to display the data. I found a useful site, that has examples of how to use the software, from basic to more advanced examples.

Notes: As with bash gnu plot has command history, so you can use arrow keys to move up / down between previously entered commands.

Based on the information at [2] we can produce a very basic plot of what is in log.csv

Load GNUPlot

gnuplot

and enter

plot 'log.csv'

This example isn't all that good really, but it at least produces some output. I have modified one of the examples further down that page

plot 'log.csv' using 1:2 with lines, 'log.csv' using 1:2 with lines

So the following data set

0, 1
1, 10
2, 10
3, 7
4, 2
5, 1
6, 15
7, 0
8, 19
9, 3

Should produce something like

gnuplot 1

Adding extra columns

We probably need more than two columns. This is easily done by modifying the loop in the script gendata1.csv. It is a good idea to copy this to a new script so it keeps the original as is

cp gendata1.sh gendata2.sh

As gendata1.sh has write permissions, these will be preserved in the new copy of the file. We can now edit gendata2.sh

echo "number" "data" # for reference, not written to file 
for ((i = 0 ; i < 10 ; i++)); do
    echo $i, $((RANDOM % 20)), $((RANDOM % 20)) # echo to screen (stdout)
	echo $i, $((RANDOM % 20)), $((RANDOM % 20)) >> log.csv # write to file
    #write_csv $(($i, $RANDOM % 10))
done

So all we are doing here is adding in, note the comma

, $((RANDOM % 20))

As the only difference between the lines

echo $i, $((RANDOM % 20)), $((RANDOM % 20)) # echo to screen (stdout)
echo $i, $((RANDOM % 20)), $((RANDOM % 20)) >> log.csv # write to file

Is that the first line, writes to the screen, it may be better to test the script out, check it does what you want, then modify the line that writes to a file once you are happy.

References

1 gnuplot 2 gnuplot examples 3. GNU Plot and LaTeX, included for reference

Chat

I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.

Tags

#Bash,#Bashscripting,#Files,#UsingDataFiles,#Data,#gnuplot,#graphs,#BashScripting


Mastodon ShellLabs Join Mastodon
AI statement : Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity. Consent CANNOT be assumed, it has to be granted.

Donate using Liberapay

Open Street map 5

OSM

So, further to my previous post, I have now made further edits to the map. STEAM Café and Music shop next door are now added, I am trying to change Peacocks, which is listed as a vacant building to the map. I need to add it as a clothes shop or shop, but can't find in the list, so have asked on Matrix for help.

I have also suggested on the UK community forum that we can perhaps use the Tinkerers meetings to meet up with other OSM hackers. It just needs something to start this off, then a group can be formed, and a more formal schedule can be agreed upon.

There are now some OSM flyers in the STEAM Café,
You should be able to tag me on OSM/Forum and Matrix with @zleap

If you are a local business, then it is in your interest to be on the map accurately, as the OSM data can be used as part of Apps that point to local information, keeping the map updated is really vital.

Links

Tags

#Community,#Open,#StreetMap,#Cartograpy,#CrowdScource, #OpenStreetMap


Mastodon ShellLabs Join Mastodon
AI statement : Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity. Consent CANNOT be assumed, it has to be granted.

Donate using Liberapay

Bash scripting 16 – Using data files 2

So, carrying on from the previous article(s). I am going to be using gnuplot and awk, and see what I can do with the data generated by my script.

It would be useful to be able to remove content in the file we are using with awk, so new data is not added to existing data.

We can do this by running:-

echo " " > log.csv

This should ensure the file is empty

we can then rerun

./gencsv1.sh 

And check contents with

echo csv.log

So according to the article, we can list the data in the 2nd column

awk -F, '{ print $2}' log.csv

 2
 7
 14
 4
 5
 7
 17
 19
 0
 19

and on a similar note, to list what is in the first column

awk -F, '{ print $1}' log.csv

and we can calculate the sum using

awk -F, '{ sum +=$2} END { print sum }' log.csv
94

and the average

awk -F, '{ sum +=$2} END { print sum/NR }' log.csv
8.54545

Chat

I am on the Devon and Cornwall Linux user group mailing list and also their matrix channel as zleap, it is better to ask there, that way others can answer too.

Tags

#Bash,#Bashscripting,#Files,#UsingDataFiles,#Data,#BashScripting


Mastodon ShellLabs Join Mastodon
AI statement : Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity. Consent CANNOT be assumed, it has to be granted.

Donate using Liberapay