Firefox Quantum portable with apulse All-in

Browsers, email, chat, etc.
Post Reply
Message
Author
User avatar
fredx181
Posts: 4448
Joined: Wed 11 Dec 2013, 12:37
Location: holland

#121 Post by fredx181 »

s243a wrote:1. What is the purpose of libatomic and will any version do or is there something special about this version in the way that it is compiled? (also is this specific to Firefox or do we probably want to add libatomic for any portable browser?)
From v64.0 on, libatomic1 a dependency for Firefox, AFAIK there's nothing special about the version, tested on old and new puppies and works fine
2. I'm not clear about the syntax where you assign variables before executing the command. Is this a bash short hand for the export statement? Do you have a link to documentation about this?
Don't know about documentation, it's often done that way, e.g. LANG=C <command> ...
3. I also see that you are prepending the extra-lib path to the LD_LIBRARY_PATH. It seems clear on what this does but at the same time I wouldn't mind some documentation about this in case I want to explain it to other people.
It's a variation of OscarTalks's apulse where it points LD_LIBRARY_PATH to the libs in /usr/lib/apulse
apulse script:

Code: Select all

#!/bin/sh

APULSEPATH="/usr/lib/apulse"

LD_LIBRARY_PATH=$APULSEPATH${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} exec "$@"
For exact details about how this can work, better ask OscarTalks

Fred

User avatar
6502coder
Posts: 677
Joined: Mon 23 Mar 2009, 18:07
Location: Western United States

#122 Post by 6502coder »

2. I'm not clear about the syntax where you assign variables before executing the command. Is this a bash short hand for the export statement? Do you have a link to documentation about this?
3. I also see that you are prepending the extra-lib path to the LD_LIBRARY_PATH. It seems clear on what this does but at the same time I wouldn't mind some documentation about this in case I want to explain it to other people.
2. The variable assignment (or assignments; you can have more than one) only affect the enviroment of the command that follows. This is the standard way of changing an environment variable only for a particular instance. It is documented in any of the standard BASH manuals.

https://www.gnu.org/software/bash/manua ... nvironment

3. uses 2 to change the LD_LIBRARY_PATH but only for that instance of the command that follows. It is the standard way to let an app get access to versions of libraries that are different from the versions already in the system, without running the risk of breaking things by just installing the alternative libraries and thus forcing everybody to use them.

s243a
Posts: 2580
Joined: Tue 02 Sep 2014, 04:48
Contact:

#123 Post by s243a »

6502coder wrote:
2. I'm not clear about the syntax where you assign variables before executing the command. Is this a bash short hand for the export statement? Do you have a link to documentation about this?
3. I also see that you are prepending the extra-lib path to the LD_LIBRARY_PATH. It seems clear on what this does but at the same time I wouldn't mind some documentation about this in case I want to explain it to other people.

2. The variable assignment (or assignments; you can have more than one) only affect the enviroment of the command that follows. This is the standard way of changing an environment variable only for a particular instance. It is documented in any of the standard BASH manuals.

https://www.gnu.org/software/bash/manua ... nvironment
Thankyou :)
3. uses 2 to change the LD_LIBRARY_PATH but only for that instance of the command that follows. It is the standard way to let an app get access to versions of libraries that are different from the versions already in the system, without running the risk of breaking things by just installing the alternative libraries and thus forcing everybody to use them.
It was actually the concatenation systax I was wondering about with the :+: in the middle.

Code: Select all

${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
I haven't scene this syntax before. Anyway, google seems to work better these days at finding obsure coding syntax. I searched ":+:" and stackoverflow led me to the answer:

Code: Select all

${parameter:+word}

    If parameter is null or unset, nothing is substituted, otherwise the expansion of word is substituted.
https://www.gnu.org/software/bash/manua ... -Expansion

User avatar
6502coder
Posts: 677
Joined: Mon 23 Mar 2009, 18:07
Location: Western United States

#124 Post by 6502coder »

(Crossed messages with you!)
Ah, I overlooked that. That's not so much a concatenation as a conditional expansion; it's explained in section 3.5.3 of the same online manual I referenced before. (I wasn't familiar with it either.)
${parameter:+word}

If parameter is null or unset, nothing is substituted, otherwise the expansion of word is substituted.

User avatar
fredx181
Posts: 4448
Joined: Wed 11 Dec 2013, 12:37
Location: holland

#125 Post by fredx181 »

Hi All, mostly for fun and because of my interest in portable appimages, I tried to find easiest way to make a portable AppImage from this Firefox-portable folder.
One disadvantage can be that Firefox cannot update itself when running as appimage (mounted read-only in /tmp) but maybe for some it's an advantage, also start time is a little bit longer.
Anyway, here's how:
- download attached cr-appimage32.tar.gz or cr-appimage64.tar.gz and extract in the portable firefox directory (contains 2 files: cr-appimage and runtime32 (or runtime64 for 64-bit)
- Run in terminal from portable firefox directory:

Code: Select all

./cr-appimage
And the portable appimage will be created in the parent folder
On top of the script cr-appimage, the name of the appimage or name of profile folder can be set, e.g:

Code: Select all

# set appimage name
NAME="Firefox-Portable32"
# set profile name (will be in same dir as appimage)
PROFILE=profile
When running the appimage, the profile folder will be in same dir as the appimage itself. (see pic)

EDIT: I'm not sure if this can be useful for someone, probably it can be improved with e.g. more choices etc...
EDIT2: or possibly containing what s243a is working on:
http://murga-linux.com/puppy/viewtopic. ... 92#1025692

Fred
Attachments
2019-04-19-162415_266x116_scrot.png
(21.87 KiB) Downloaded 518 times
cr-appimage64.tar.gz
Create appimage for 64-bit
(72.67 KiB) Downloaded 163 times
cr-appimage32.tar.gz
Create appimage for 32-bit
(77.21 KiB) Downloaded 161 times

B.K. Johnson
Posts: 807
Joined: Mon 12 Oct 2009, 17:11

#126 Post by B.K. Johnson »

Hello all
You may want to take a look at this development, Fred's response and my unfinished rebuttal. I urge Mike Walsh not to stay on the sidelines, but to use his linguistic skills because he appears to be an avowed "portable" disciple.

Please keep the discussion in this thread, not the other. Thanks.
[color=blue]B.K. Johnson
tahrpup-6.0.5 PAE (upgraded from 6.0 =>6.0.2=>6.0.3=>6.0.5 via quickpet/PPM=Not installed); slacko-5.7 occasionally. Frugal install, pupsave file, multi OS flashdrive, FAT32 , SYSLINUX boot, CPU-Dual E2140, 4GB RAM[/color]

wanderer
Posts: 1098
Joined: Sat 20 Oct 2007, 23:17

#127 Post by wanderer »

hi fredx

just wanted to post this thank you
for setting up both apulse for the firefox tcz
and your portable firefox
in corepup

just used your script to build another firefox
worked great

thanks again

wanderer

User avatar
Mike Walsh
Posts: 6351
Joined: Sat 28 Jun 2014, 12:42
Location: King's Lynn, UK.

#128 Post by Mike Walsh »

B.K. Johnson wrote:Hello all
You may want to take a look at this development, Fred's response and my unfinished rebuttal. I urge Mike Walsh not to stay on the sidelines, but to use his linguistic skills because he appears to be an avowed "portable" disciple.

Please keep the discussion in this thread, not the other. Thanks.
@ BKJ:-

Well, now...

The reason I like 'portables' - especially Mozilla-based 'portables' (FF-Quantum, FF-esr, Palemoon, Seamonkey, Thunderbird, et al) - is not so much because of the sound issue as the main profile, which determines your entire set-up; bookmarks, extensions, themes, etc.

I know for a fact (because I've proved it!), that you can install any of these to a flash-drive, and actually run it from there, regardless of which of your machines you plug it into. That, to my mind, denotes the true 'essence' of portability.

Originally, of course, 'portable' applications for Puppy were simply developed as a means of moving the entire set-up to an alternate location outside of the save-file, thereby preventing the app from occupying valuable space. In my own case, I have a number of these 'portable' Mozilla-based applications set-up on a remote data partition, auto-mounted at boot, from where I share them between Puppies.....along with custom Menu entries, pointing to these specific locations. (My own 'kennels' expands & contracts as the mood and the inclination take me; at its largest, I was running around 14 Puppies on the big Compaq desktop; currently, after extensive and considered 'pruning', it stands at 8 Pups.....some of the older Puppies have fallen by the wayside, since I can no longer do a lot of things that I want to with them; the system software, deps, etc., is just too old.)

With the advent of the save-folder, and the gradual adoption by most of us of newer, more capable hardware, the original premise behind Puppy-portables is probably something of a moot point nowadays. :P

----------------------------------------------

It's probably true to say that not so many of us are these days running the kind of limited-resource hardware which was common-place when Puppy first appeared on the public stage; certainly, I don't have RAM or storage issues myself, nor particular CPU limitations. A dual-core Athlon64 and 3 GB of RAM is a perfectly usable combo for modern Puppies. And nearly 5 TB of storage, in various media, means that overall space isn't a problem.

However, some individuals are still using very elderly, limited-resource hardware. These portables just have so many applications, from 'space-saving' to overall versatility. That's why I decided to create all the variants I have, taking my cue from Fred's original 'portable' version of Firefox Quantum.

TBH, I don't see that I really need to justify the packages I build to anyone. They're there, and freely available; it's entirely up to the individual 'Puppian' what he/she may decide to do with them. My motto, as far as software availability for Puppy is concerned, is simple; 'Choice in all things'. (The more, the merrier..!) :)

Hope that 'clarifies' my personal position.


Mike. :wink:
Last edited by Mike Walsh on Tue 30 Apr 2019, 14:43, edited 5 times in total.

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

#129 Post by mikeslr »

Although irked by B.K. Johson's criticism, my initial inclination was to ignore it as too picayune to warrant a response. But as t'other Mike has taken it seriously, pointing out their 'complete portability' in that they can be run from a flash-drive by a Frugal Puppy on a hard-drive:

port·a·ble
/ˈpôrdəb(ə)l/
adjective
adjective: portable

1.
able to be easily carried or moved...

It is true that firefox and Seamonkey as published by mozilla, and the palemoon fork published by moonchild productions can be unpacked and run from a folder placed anywhere and so may be considered 'portables'. But they were not marketed as such. And, in fact, they are not as their production of sound depends on libraries installed in the operating system which runs them. Current versions of firefox now expect those libraries to be pulse-audio. If it is possible to include those libraries in Puppies, it is not easy. Fred's inclusion of the apulse alternative enabled the continuation of portability in Puppies which the original publisher's version now lacked.

I suppose it may be true that firefox still depends on the operating system it runs under to provide the graphic, video or display-rendering libraries it uses. Currently, Puppies do. There is time enough to worry about those pre-requisites when they don't.

But if B.K. Johnson has a better, more clearly understood, adjective for an application you can run from anywhere, I'd like to know it so that I can add it to my vocabulary.

User avatar
Mike Walsh
Posts: 6351
Joined: Sat 28 Jun 2014, 12:42
Location: King's Lynn, UK.

#130 Post by Mike Walsh »

@ BKJ:-

Y'know, you have in fact completely lost me here! :lol: Using your very own link to Merriam-Webster, it states (quite clearly) in the definitions:-


Image


Unless my comprehension of the English language has drastically 'mutated' over-night, that high-lighted definition is exactly what I expounded at length about in my previous post...

What's NOT to understand..?


Image


Mike. :wink:

User avatar
Mike Walsh
Posts: 6351
Joined: Sat 28 Jun 2014, 12:42
Location: King's Lynn, UK.

#131 Post by Mike Walsh »

A further 'tip' about 'portables'.

I don't know how many of you are aware of this, but profiles are completely interchangeable between architectures. There are no architecture-specific 'binaries' in there; it's all databases, Javascript, CSS stuff, etc.

Thus, if you're running the same portable-browser in Puppies of both architectures, you can use the same 'profile' directory in both. Just copy it across from one to t'other before firing up for the first time, and your browser is already set-up to your liking!

(Or, go one step further; move the profile to a remote location, and sym-link it back to all instances of that particular browser, 32-bit & 64-bit alike.)

Image


Mike. :wink:
Last edited by Mike Walsh on Tue 30 Apr 2019, 23:24, edited 1 time in total.

User avatar
fredx181
Posts: 4448
Joined: Wed 11 Dec 2013, 12:37
Location: holland

#132 Post by fredx181 »

I can't wait for B.K. Johnson's reply, hopefully he will use his "linguistic skills" to complete his "unfinished rebuttal" 8) :lol:

Anyway, thanks for the replies, Mike & Mike !!

Fred

B.K. Johnson
Posts: 807
Joined: Mon 12 Oct 2009, 17:11

#133 Post by B.K. Johnson »

@Mike Walsh
Long before the sound issue arose, some members were installing firefox to their flash drive/boot drive to eliminate the cache build up in /root and pupsave warning. Would that not constitute a "portable firefox" as you define it? But we always ran firefox, NEVER portable firefox. I could move that flash drive to any puppy o/s, provided the .desktop execs were the same (and normally they would be so) and there was a link from the firefox binary to somewhere in the path. Some people use /usr/lib/bin, others /usr/local/bin -- doesn't matter which. So what changed? It could have been sound for firefox, but it wouldn't be for the others. Whatever the justification, it raises the question as to why is the same thinking not true for every other application? Why not Chrome, for instance? Hasn't got a cache in /root? And no other app saves so much data. With dilligence, it can be controlled.

I suspect it is the introduction of "profile", to which you allude with this statemnt, MW.
is not so much because of the sound issue as the main profile, which determines your entire set-up; bookmarks, extensions, themes, etc.
Has it not always been so? I don't use any profile other than the default and have not yet seen the necessity for multiple profiles. I have some vague ideas as to name and appropriate settings for bookmarks, extensions, themes, etc.

Tell me Mike, how many profiles does your "portable" firefox have, their names if descriptive, and settings (without divulging aspects of security, of course) :wink: .
Originally, of course, 'portable' applications for Puppy were simply developed as a means of moving the entire set-up to an alternate location outside of the save-file, ...
The action you describe agrees wholly with mine at the beginning of this post. What we disagree on is the appelation of portable. I know of no such nomenclature ever used to describe the action. I have never heard it so described and I dare you to post a link that does so. Don't try to rewrite history. And calling it so three times in your post aint gonna make it so.

I have not installed any "portables" and saw no discussion in the thread on the idea. The name just appeared out of the blue and gobbled up by those who never question anything. There was nothing about portability except for the name. Fred was defensive rather than informative. But I saw a post from you MW that it was portable. That's why I asked specifically that you not stay on the sidelines. I'm glad you didn't. There is still unfinished business as noted above.
[color=blue]B.K. Johnson
tahrpup-6.0.5 PAE (upgraded from 6.0 =>6.0.2=>6.0.3=>6.0.5 via quickpet/PPM=Not installed); slacko-5.7 occasionally. Frugal install, pupsave file, multi OS flashdrive, FAT32 , SYSLINUX boot, CPU-Dual E2140, 4GB RAM[/color]

User avatar
fredx181
Posts: 4448
Joined: Wed 11 Dec 2013, 12:37
Location: holland

#134 Post by fredx181 »

B.K. Johnson wrote:Fred was defensive rather than informative
Well.. I think that I explained briefly my point of view in the other thread you referred to.
Defensive... maybe.. I just see no value in discussing about whether or not it should be called "portable".
I have the Firefox folder on a partition and have created a symlink to the executable script "ff" in the OS's I use, so then I have exactly the same profile settings from every system that I boot. Very handy.
...some members were installing firefox to their flash drive/boot drive...
....
But we always ran firefox, NEVER portable firefox.
I guess you mean the newest firefox downloaded from mozilla website, extract it and run the firefox binary ? If so, yes, it was portable, worked OK back then, but not anymore (sound issue, as you know)

Fred

User avatar
jrb
Posts: 1536
Joined: Tue 11 Dec 2007, 19:56
Location: Smithers, BC, Canada

#135 Post by jrb »

Hi Fred,

I have appended some script to the beginning and end of your excellent ffportable-inst script to use in both my Bionic32-light and my Precise-light projects. I thought you might be interested.

It will be activated from the Internet menu by a launch script that will run Firefox if already installed or run the install script. It can also be used to update Firefox-portable.

Thanks for the good work, J
Attachments
ffportable-inst-0.2.gz
modified ffportable-inst
(3.28 KiB) Downloaded 158 times

User avatar
Mike Walsh
Posts: 6351
Joined: Sat 28 Jun 2014, 12:42
Location: King's Lynn, UK.

#136 Post by Mike Walsh »

As far as I'm concerned, 'portable' is a useful descriptor for newer members to remember. And if 'portable', as in running from a flash drive that you can move from machine to machine, isn't a perfectly apt description of its abilities, then I don't know what is.

I refuse to get drawn into a long-running, pointless argument over semantics. BKJ, you call it what you like. Nobody is forcing you to do otherwise. And I, for one, see no merit in continuing this particular 'subject' any further. I can't for one moment imagine what put this particular 'bee' in your 'bonnet', nor why you appear to be pursuing it with such vigour. I wash my hands of it. :roll:


Mike. :wink:

B.K. Johnson
Posts: 807
Joined: Mon 12 Oct 2009, 17:11

#137 Post by B.K. Johnson »

I note with interest jrb's recent post approving the use of Fred's work, but I also note and you all should note too
your excellent ffportable-inst script
my emphasis. Note no reference to portable firefox, but calls it more properly Firefox-portable (indicating, I suggest, a condition of Firefox rather than portable firefox, indicating a new application with possible copyright infringement). He who intended to ignore my post because he considered it picyaune may also want to ignore this one as a quibble.
[color=blue]B.K. Johnson
tahrpup-6.0.5 PAE (upgraded from 6.0 =>6.0.2=>6.0.3=>6.0.5 via quickpet/PPM=Not installed); slacko-5.7 occasionally. Frugal install, pupsave file, multi OS flashdrive, FAT32 , SYSLINUX boot, CPU-Dual E2140, 4GB RAM[/color]

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

On a more serious note

#138 Post by mikeslr »

Dan_472 reported: "I can't watch "television" sites like cbs.com, fox.com, nbc.com, etc. The error message will be something like "video unavailable", though I can play it on the Ubuntu installation on this same laptop." http://www.murga-linux.com/puppy/viewto ... 38#1026738

Ignore my post to that thread. Promos and adds displayed, episodes similarly generated an "Code 2004" Error.

I think it has to do with the "woodbyn" --spelling? library.

Seems to be a problem for ALL web-browsers built for Puppies.

User avatar
fredx181
Posts: 4448
Joined: Wed 11 Dec 2013, 12:37
Location: holland

#139 Post by fredx181 »

jrb wrote:Hi Fred,

I have appended some script to the beginning and end of your excellent ffportable-inst script to use in both my Bionic32-light and my Precise-light projects. I thought you might be interested.

It will be activated from the Internet menu by a launch script that will run Firefox if already installed or run the install script. It can also be used to update Firefox-portable.

Thanks for the good work, J
Nice jrb !
From what I understand looking at your script there's also script /usr/local/bin/ffUUID needed, so I guess it works only on your light projects ?
In case that's true, if you like, maybe make a script or pet that works on all puppies ? (if possible)

EDIT; Ah, I see now how it's set up, /root/Choices/Templates/Script (you use to copy to /usr/local/bin/ffUUID and add some lines) , so ignore above, thanks again !

Fred

User avatar
jrb
Posts: 1536
Joined: Tue 11 Dec 2007, 19:56
Location: Smithers, BC, Canada

#140 Post by jrb »

fredx181 wrote:
jrb wrote:Hi Fred,

I have appended some script to the beginning and end of your excellent ffportable-inst script to use in both my Bionic32-light and my Precise-light projects. I thought you might be interested.

It will be activated from the Internet menu by a launch script that will run Firefox if already installed or run the install script. It can also be used to update Firefox-portable.

Thanks for the good work, J
Nice jrb !
From what I understand looking at your script there's also script /usr/local/bin/ffUUID needed, so I guess it works only on your light projects ?
In case that's true, if you like, maybe make a script or pet that works on all puppies ? (if possible)

EDIT; Ah, I see now how it's set up, /root/Choices/Templates/Script (you use to copy to /usr/local/bin/ffUUID and add some lines) , so ignore above, thanks again !

Fred
Hi Fred, Just finished revising and building into a .pet. That "/root/Choices/Templates/Script" business was too Puppycentric so I changed that to a more universal process. I'm attaching the .pet. Do feel free to make suggestions, use any or all of it, make it into a .deb, etc.

Quoting the info in /usr/share/doc/ffportable:
You are about to install Firefox-portable.

It can be installed on harddrive (ssd) or any removeable drive,
it will survive changes of drive name (usb).

To reinstall or change drive locations just type ffinst in
a terminal or go to /usr/local/bin and click on ffinst

The first click on Menu->Internet->Firefox-portable will ask
you to install and then it will start Firefox. From then on
clicking Menu->Internet->Firefox-portable
will start Firefox.

To use this as your defaultbrowser change to:

Code: Select all

ffportable_launch "$@"
in /usr/local/bin/defautbrowser
Have tried this in Bionic32, Stretch, Precise-light, Tahr. I think it should work in all Puppies, we'll find out.

Cheers, J

Warning!!! If you do a reinstall to a different drive with firefox_portable-0.6.pet in Precise it will delete the contents of your drive. :oops: :cry: . Seems to be OK in Bionic32. Luckily I found this out on a usb test drive. Corrected in firefox_portable-0.7.pet
Attachments
firefox_portable-0.7.pet
Install and run Firefox-portable from the internet menu. (Safer version)
(6.33 KiB) Downloaded 173 times
Last edited by jrb on Sat 04 May 2019, 13:20, edited 3 times in total.

Post Reply