Puppy Forum 'service' file is attached to this post. Running Ferdium AppImage (just click on it) for the first time creates Ferdium config files. After that has occurred just untar the provided puppy forum service file into directory: ~/.config/Franz/recipes/dev/
Ferdium is a desktop app that helps you organize how you use your favourite apps by combining them into one application.
I started an off-topic thread on subject of "Combining messaging apps" such as Messenger, Whatsapp Web, Zoom, Discord and so on here:
https://forum.puppylinux.com/viewtopic. ... 200#p60200
But this post is no longer "Off-topic" since I have made a new Puppy Linux Forum service for Ferdium so that I can more conveniently access my WeeDog subforum (and indeed the rest of the Forum).
The following details how I did that. As I say, below, same method could be used to add any website/service to Ferdium...
EDIT: As it turns out, the following is completely unnecessary. Ferdium provides an inbuilt wizard that makes adding new service simple, as my 10 year old son pointed out to me... see here:
https://forum.puppylinux.com/viewtopic. ... 476#p60476
METHOD:
Since electron apps like Franz, Ferdium, Whatsapp desktop and similar all basically use chromium (or chrome?) under the hood, it struck me that I should be able to get Ferdium to load any webpage, including Puppy Linux, and once logged in to that Ferdium can 'remember' that login so next time I start Ferdium I am immediately logged in if I so wish. In practice I set Settings in Ferdium such that closing its window closes Ferdium and starting it up requires me to enter one password (but no further passwords needed for all the services I use in it).
So based on the following quick info I found here:
https://meetfranz.com/developer
How do I install a Franz Recipe?
...
Linux: ~/.config/Franz/recipes/
I made a copy of one of my existing services, which just happened to be 'discord', but any would do, and put that copy into ~/.config/Franz/recipes/dev/ directory. Then I renamed that discord directory to puppy, and quickly edited only two files inside that: index.js and package.json
I had no idea what I was doing, but it worked anyway... All I did to edit them was to change all occurences of discord to puppy and Discord to Puppy and put in url of Puppy forum instead of Discord url.
Here is what I ended up with for these two files:
index.js
Code: Select all
module.exports = Ferdium => class Puppy extends Ferdium {
overrideUserAgent() {
const useragent = window.navigator.userAgent;
const parts = useragent.split('(KHTML, like Gecko)');
return parts.join('(KHTML, like Gecko) puppy/0.0.250').replace('Electron', 'PUPPY').replace('Ferdium', 'PUPPY');
}
};
package.json
Code: Select all
{
"id": "puppy",
"name": "Puppy",
"version": "1.7.4",
"license": "MIT",
"config": {
"serviceURL": "https://forum.puppylinux.com/",
"hasNotificationSound": true,
"hasIndirectMessages": true
}
}
Of course the above was a quick hack, with me having no idea if it would work - no doubt could be refined, but seems fine.
I also replaced the discord.svg icon with a puppy.svg icon in that same ~/.config/Franz/recipes/dev/puppy/ directory.
Then starting up Ferdium, I went to Add New Service and choose Custom Services, where Puppy was shown as a service, and enabling that service immediately opened Puppy forum website in Ferdium! After logging in with my Puppy forum login and quiting Ferdium, starting it up again I no longer needed to re-enter my Puppy forum login.
No reason I can't add BBC website to this in similar manner even though that is not a chat/comms service.
Big advantage to just using my normal Chromium browser is that I have that and all my other social media type services configured, with logins done, and ready to switch between anytime (and receive automatic notifications for any new messages coming in). Pretty useful and powerful really.
Uses far less computer resources than separate electron apps for each such service. Of course you could carefully arrange bookmarks in normal Chromium for some of the same advantages, but not all, and I'd say Ferdium (just one electron-based AppImage) is also more convenient.
Screenshot of the result is attached along with actual tar.gz of the resulting puppy folder. I haven't here covered installing Ferdium (a free fork of Franz) itself but just visit Ferdium github site and download AppImage (I used most recent daily one for amd64): https://github.com/ferdium/ferdium-app/releases Find the AppImage via the build 'Assets' link. The version I used was: Ferdium-6.0.0-nightly.69.AppImage