Ferdium: Add Puppy 'service' for quick forum access

Instructional HowTo section


Locked
User avatar
wiak
Posts: 3627
Joined: Tue Dec 03, 2019 6:10 am
Location: Packing - big job
Has thanked: 56 times
Been thanked: 994 times
Contact:

Ferdium: Add Puppy 'service' for quick forum access

Post by wiak »

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

Attachments
Screenshot_ferdium_puppyforum.jpg
Screenshot_ferdium_puppyforum.jpg (56.54 KiB) Viewed 2207 times
puppy.tar.gz
this is an actual tar.gz so need to uncompress it
(1.67 KiB) Downloaded 57 times

https://www.tinylinux.info/
DOWNLOAD wd_multi for hundreds of 'distros' at your fingertips: viewtopic.php?p=99154#p99154
Αξίζει να μεταφραστεί;

User avatar
wiak
Posts: 3627
Joined: Tue Dec 03, 2019 6:10 am
Location: Packing - big job
Has thanked: 56 times
Been thanked: 994 times
Contact:

Re: Add Puppy Forum 'service' to Ferdium

Post by wiak »

In case anyone isn't sure how to use it, and it is easy actually, here is reply I gave to PM asking me about suitable place(s) to put the AppImage:

You just need the AppImage...You can put it anywhere you like, so one good place might be inside ~/.local/bin/
As I said in forum post, you can fetch most recent daily AppImage simply from: https://github.com/ferdium/ferdium-app/releases Find the AppImage release you want via its build 'Assets' link. The version I used was: Ferdium-6.0.0-nightly.69.AppImage but I'd probably always go for the latest daily build in hope more bugs fixed...

(currently, myself) I just have it where I downloaded at the moment (in ~/Downloads) and clicking on that opens up Ferdium and you can just start using it (adding services and so on) straight away via Services -> Add New Service (e.g. WhatsApp), or Custom Services will include Puppy Forum if you add that per below.

You should examine all the potential settings (File -> Settings) to see what notifications and effects you want to have (for example, you can include back, forward navigation bar at top of received browser page if you wish - I use that).

As I said, for including Puppy Forum as a service just download the puppy.tar.gz file I provided (in first post of this thread) and uncompress it into its ~/.config/Franz/recipes/dev/ directory (that directory gets auto-created first time you run the AppImage; that should result in you then having directory ~/.config/Franz/recipes/dev/puppy/. Next time you start Ferdium it will be there under Custom Services.

I guess you could make a .desktop file (to store in ~/.local/share/applications/ or in global /usr/share/applications/ directory so Ferdium appears in the Start Menu.

Ferdium is under development so looking at its github page there are daily bugs being fixed, but interesting to use for sure and potentially saves having lots of separate electron chromium-based apps all being started independently so big resource savings as well as maintaining some cookies such that, for example, WhatsApp web remains logged in for next start of Ferdium (or can be auto-started; I tend to prefer manual starting of Ferdium each time - personal choice).

EDIT: Turns out you can use Ferdium as an almost 'normal' Chromium browser for general browsing too. I did right-click on my Puppy service icon in left panel and selected 'Edit' and from there turned on "Open URLs within Ferdium"; that and put navigation bar on top with Settings -> Show navigation bar on all services. Not sure of first part of that required (EDIT: yes it was) but browsed to bbc.co.uk from within my Puppy service displayed page so best of both worlds: no need to use my usual Chromium browser so saving CPU/RAM and the further saving of not using individual electron chromium-based apps for all the alternative services (such as Whatsapp, Messenger, Facebook, Discord, Zoom and so on).
You get the same sort of resource usage as a normal Chromium browser running with same number of tabs as the enabled services. Note you can temporary disable services by right-clicking on their icons (and that frees up the equivalent-tab resource usage and just right-click re-enable anytime, or simply leave the services enabled if not short on resources anyway...). I'm currently posting her from Ferdium by the way.

Cookies seem encrypted though (nice security, but I'm trying to make Puppy Forum cookie long-persistence so not needing to re-login for that either... still trying... whatsapp login gets remembered somehow and the likes of Facebook and Skype, so very handy.

https://www.tinylinux.info/
DOWNLOAD wd_multi for hundreds of 'distros' at your fingertips: viewtopic.php?p=99154#p99154
Αξίζει να μεταφραστεί;

User avatar
wiak
Posts: 3627
Joined: Tue Dec 03, 2019 6:10 am
Location: Packing - big job
Has thanked: 56 times
Been thanked: 994 times
Contact:

Re: Add Puppy Forum 'service' to Ferdium

Post by wiak »

So trying to use Ferdium as my main browser (when I don't desire multiple tabs visible aside from the enabled services). One nuisance was that I wanted to google or duckduckgo often.
Simple solution that took me less than one minute to implement:
I quickly made a copy of my ~/.config/Ferdium/recipes/dev/puppy/ directory, naming the copy as ~/.config/Ferdium/recipes/dev/duckduckgo/
Then inside that duckduckgo directory, I used geany Search/Replace on the two files: index.js and package.json, to replace all occurrences of puppy, Puppy, and PUPPY to duckduckgo, Duckduckgo, and DUCKDUCKGO, and replaced the puppy forum url in package.json with https://duckduckgo.com, and finally replaced puppy.svg with a duckduckgo.svg file.

Then restarted Ferdium, and had a new Duckduckgo service (enabled from Services -> Add New Service -> Custom Services).

So now I can click on that enabled service duckduckgo and browse from there anytime (rather than browsing from my Puppy Forum service, or I can use both...). And I can right click either service and temporarily Disable it anytime and similarly re-Enable it anytime I need it. I also have my 'normal' Chromium install, which I can use if really needing it, which is probably very rare really. So, yes, this is workable solution to make one AppImage browser plus services multi-app combiner, with significant resource savings and great convenience in terms of always available logged in messaging services.

EDIT: Note you can also create different 'Workspaces' allowing you to enable some of All your services onto separate workspaces to segregate them and still have the power to disable any service whenever you feel like saving resources (remembering that a 'service' is very much like a tab in normal browser but with lots of user control over it). Originally I wondered what the point/attraction of Ferdium (and its ancestor Franz) was, but now I see what a useful resource-saving mechanism and multi-messaging-service-logged-in-always facility it is, plus okay as a 'Chromium' browser once you get used to best way to utilize it that way (and yes, you can play Youtube videos just as per normal Chromium browser use... and so on). It may be my imagination, but right-click on service icon and turning off "Enable Progress Bar" gives me impression of faster page loading.

It is so easy to try Ferdium (since an AppImage available as described in my posts above) so I thoroughly recommend trying it and especially if you tend to use several AppImages for certain Internet services - might save you a lot of effort and computer resources. Not so surprisingly, perhaps, if you quickly disable all the services running in Ferdium (simple right-click action) you can reduce resource usage to next to nothing CPU-wise, yet can almost instantly get the browser page back by quick Enable... virtually no load time involved. I'm rather impressed and think this could also be useful on lowish resourced computer (but great anyway). TBH, in some ways as a browser it is a bit weird - for example, it doesn't keep track of what you already clicked I think (which can be an advantage, but not usually...) - maybe some setting gives it more memory of what has been clicked, I don't know, but still, I like the app. (one good thing about thus loss of memory is that it doesn't auto-log me out when I'm typing a long post and then try to submit and lose the whole message!; in fact I can keep navigating back and forwards and still find the edit message stuff for re-submitting, until I close the app that is).

https://www.tinylinux.info/
DOWNLOAD wd_multi for hundreds of 'distros' at your fingertips: viewtopic.php?p=99154#p99154
Αξίζει να μεταφραστεί;

User avatar
wiak
Posts: 3627
Joined: Tue Dec 03, 2019 6:10 am
Location: Packing - big job
Has thanked: 56 times
Been thanked: 994 times
Contact:

Re: Add Puppy Forum 'service' to Ferdium

Post by wiak »

So I told my 10 year old about Ferdium and he put the AppImage on his system.

A few minutes later he came to me and basically told me 'I'm an idiot' cause absolutely easy to add a Custom service (none of that stupid editing of files I did needed...).

All you need to do is open Ferdium app and go to Add New Service, and start typing name of non-existent service:

For example: puppy
Then a new service template button appears, click that and choose what options you want, and enter the url (in this case https://forum.puppylinux.com
where it has a box for that. You can also choose or drop-in icon you want to use for the service. Okay, so I am old-fashioned in my approach and always start text editing files even when, as in this case, was totally unnecessary!!!

I'm becoming increasingly impressed with Ferdium and close to ditching my use of conventional Internet Browser since Ferdium improves my productivity and can greatly reduce CPU/RAM usage (especially for messaging apps that often come in the form of electron-Chromium-based AppImages.

https://www.tinylinux.info/
DOWNLOAD wd_multi for hundreds of 'distros' at your fingertips: viewtopic.php?p=99154#p99154
Αξίζει να μεταφραστεί;

User avatar
wiak
Posts: 3627
Joined: Tue Dec 03, 2019 6:10 am
Location: Packing - big job
Has thanked: 56 times
Been thanked: 994 times
Contact:

Ferdium: Add Puppy 'service' for quick forum access

Post by wiak »

Ferdium was my recommended 'tip' of last month and now:

https://github.com/ferdium/ferdium-app/ ... tag/v6.0.0

What's Changed
First public release of Ferdium! tadatadatada

As I've said, Ferdium is based on Electron, which is based on Chromium, so using Ferdium is like using a special version of Chromium specially crafted to aggregate most all social media apps (with no extra code required other than the Electron-built Ferdium itself). So personally I use Ferdium particularly for Whatsapp (like Whatsapp Desktop), Messenger, Facebook, Skype, Microsoft Teams, and Zoom. But I also use it as a quick access to Puppy Linux forum, my Gmail, and also my Gdrive... and even for one-click access to BBC news. In a way it is like having bookmarks specially set up in Chromium, but it is more automatic than that - hard to explain, you'd have to try it. But good example is Whatsapp, once you have scanned in the QR code (which you'd do if using normal Chromium) you never need to do it again, even if your phone if off, it just connects fine.

In terms of resource usage, I find it basically like starting up Chromium, which doesn't use many resources at all actually until you open some greedy websites. In Ferdium it is a one-click action to deactivate any of the selected apps, so usage next to nothing, but just one-click to check or activate any of them. Like I say, I mainly have WhatsApp only activated, so same resource usage as Whatsapp Desktop electron app, but with the power to activate similar such as Zoom, or Discord, or Microsoft Teams in but a one-click action. Originally I wondered if it was going to actually be 'useful' and not just an extra waste of resources, but in practice the answer for me is that is really convenient and great to use and overall saves resource usage for me whilst giving me a lot of control over how I browse and copy and paste between sites and my cherrytree notebook and so on.

I still use nightly builds AppImages via https://github.com/ferdium/ferdium-app/releases since I like to try out the latest Ferdium ideas/fixes and just run the AppImage via /usr/local/bin via a desktop file I keep in ~/.local/share/applications/Ferdium.desktop
However, the new first public release would be fine (for example, the deb release), which you can get here:

https://ferdium.org/download

Homesite and general info/blurb for Ferdium simply here: https://ferdium.org
Screenshots: https://github.com/ferdium/ferdium-app#screenshots

Honestly, I believe Ferdium is going to be a major must-have app for most people sooner or later - lots of people supporting it and so likely to be well-maintained, which is key to longevity in Open Source world. So even if you use Firefox, or Palemoon, or Seamonkey or whatever as you main go-to browser, you can use Ferdium for all the Chromium-like social media site running 'tricks'. And available for Mac, and Mic Windows too.

https://www.tinylinux.info/
DOWNLOAD wd_multi for hundreds of 'distros' at your fingertips: viewtopic.php?p=99154#p99154
Αξίζει να μεταφραστεί;

Locked

Return to “HowTo”