Contributed builds for linux.

Support and discussions for the x86/x64 Linux version of Pale Moon and specific Linux distribution questions related to the browser.

Moderator: trava90

Forum rules
If your question is about general use of the browser and not specific to Linux, then please use the General Support board.
User avatar
Drugwash
Fanatic
Fanatic
Posts: 101
Joined: 2016-01-28, 12:08
Location: Ploieşti, Romania
Contact:

Re: Contributed builds for linux.

Post by Drugwash » 2021-02-11, 22:16

Darn, how convoluted some operations are. But heck, it worked! Thank you very much for your help Kruppt! :thumbup:

User avatar
Kruppt
Hobby Astronomer
Hobby Astronomer
Posts: 23
Joined: 2018-07-23, 22:32

Re: Contributed builds for linux.

Post by Kruppt » 2021-02-11, 22:22

Ok .. Great sorry if I made it sound more difficult than it actually is. :)

User avatar
Mike_Walsh
Apollo supporter
Apollo supporter
Posts: 33
Joined: 2019-09-14, 20:09
Location: King's Lynn, UK

Re: Contributed builds for linux.

Post by Mike_Walsh » 2021-02-12, 00:58

@Moonraker :-

Well, my view is this; I - and a large part of the Puppy community - are very grateful to Steve for compiling his 32-bit Pale Moon builds. It's not an easy business, I know that much.....I certainly wouldn't attempt it myself. But it's ideal for Puppy, given the usual nature of the elderly hardware that tends to run it. :)

The only reason I convert it into a portable package is because it works so well with Puppy in that particular way.....as do all the 'portable' browser packages I maintain. And before anybody jumps in and starts bitching about "redistribution" and "brand labelling", etc, I'll say this; it hardly counts as 'redistribution', since in this particular set-up it won't work with anything except Puppy. The only access to the download link is through the Puppy Forum, and nobody except Puppy users are interested in that Forum anyway.....and everyone who does so knows what I do with browsers, etc. They all KNOW the 'Pale Moon' package is exactly that; Pale Moon, as original, unmodified, with just the addition of a couple of scripts that keep it self-contained and running from wherever it's located. And that doesn't exactly count as 'modification', now does it? :eh:

The experience it provides is untouched from its original intention.....simply re-packaged in a different way, to run in a specific fashion on one particular family of small, lightweight Linux 'hobbyist' distros.

Mike. ;)

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 29675
Joined: 2011-08-28, 17:27
Location: Tranås, SE
Contact:

Re: Contributed builds for linux.

Post by Moonchild » 2021-02-12, 11:45

Mike, It really is redistribution -- if it is shared among other users and not just yourself or a closed organization in a private sphere it does classify as redistribution, no matter how "unlikely people are to find it or use it"

There shouldn't be a problem however since you keep to the redistribution license intent, and you aren't bundling or altering the browser, merely providing a convenience repackaging specifically to run on puppy, which is explicitly allowed for Pale Moon in the redist license (point 3a-ii).
"Son, in life you do not fight battles because you expect to win, you fight them merely because they need to be fought." -- Snagglepuss
Image

User avatar
Drugwash
Fanatic
Fanatic
Posts: 101
Joined: 2016-01-28, 12:08
Location: Ploieşti, Romania
Contact:

Re: Contributed builds for linux.

Post by Drugwash » 2021-02-12, 13:20

Mike_Walsh wrote:
2021-02-12, 00:58
[...] the addition of a couple of scripts that keep it self-contained and running from wherever it's located.
Mike, would it be possible for you to create or share the very script that repackages the official PM package, along with the other two scripts, so that anyone could perform the repackaging by themselves? This would get rid of two issues: any redistribution-related nags, and quicker, easier publishing, saving storage space (a few kB or so vs dozens of MB).

Reason why I chimed in is that I'd be interested in those scripts in order to try and make a portable setup for myself on Mint Cinnamon. Since I'm dealing with many "hacked" add-ons I'm still running 28.17.0 as main browser while testing the new 29.x line, and I really really wouldn't want to accidentally corrupt the main profile. A completely portable package of v29 would ease my mind.

User avatar
Mike_Walsh
Apollo supporter
Apollo supporter
Posts: 33
Joined: 2019-09-14, 20:09
Location: King's Lynn, UK

Re: Contributed builds for linux.

Post by Mike_Walsh » 2021-02-25, 18:36

Moonchild wrote:
2021-02-12, 11:45
Mike, It really is redistribution -- if it is shared among other users and not just yourself or a closed organization in a private sphere it does classify as redistribution, no matter how "unlikely people are to find it or use it"

There shouldn't be a problem however since you keep to the redistribution license intent, and you aren't bundling or altering the browser, merely providing a convenience repackaging specifically to run on puppy, which is explicitly allowed for Pale Moon in the redist license (point 3a-ii).
@ Moonchild:-

Thanks for the clarification on that point.

I do scan the Pale Moon forum quite regularly, even though I don't tend to contribute that often. The Puppy Linux Forums, and my moderating work over at BleepingComputer.com, tend to keep me fairly well occupied...

However, I have wondered about the point on a few occasions. The main reason I 'portabilize' so many browsers for use with Puppy is simple; the hardware many Puppians run Puppy ON is very often stuff that most people would have chucked in the trash years before. With Puppy being so lightweight, it'll run on gear that would balk at running even old versions of Windows. Often hard drives are non-existent - Puppy runs entirely from flash, loading fully into a virtual RAMdisk from highly-compressed read-only files for the session, so this is not really an issue. The combination of hardware 'workarounds' some of our members come up with are really rather ingenious on occasion!

Given this, the ability to run not only browsers, but many other apps as well, from another flash-drive or external HDD, totally outside the OS, is quite advantageous. I have no wish to modify PM in any way; it works fine for us, and has for years been one of the most popular browsers for Puppy by a mile.

Yes, it probably DOES count as 'redistribution', although highly localized, within a 'closed' community for a specific distro. Its main function in this format is merely to help the guys keep their old hardware functional, that's all.....as well as making it easier for them to do so.

Cheers.

Mike. ;)
Last edited by Mike_Walsh on 2021-02-25, 23:02, edited 1 time in total.

User avatar
Mike_Walsh
Apollo supporter
Apollo supporter
Posts: 33
Joined: 2019-09-14, 20:09
Location: King's Lynn, UK

Re: Contributed builds for linux.

Post by Mike_Walsh » 2021-02-25, 19:57

Drugwash wrote:
2021-02-12, 13:20
Mike_Walsh wrote:
2021-02-12, 00:58
[...] the addition of a couple of scripts that keep it self-contained and running from wherever it's located.
Mike, would it be possible for you to create or share the very script that repackages the official PM package, along with the other two scripts, so that anyone could perform the repackaging by themselves? This would get rid of two issues: any redistribution-related nags, and quicker, easier publishing, saving storage space (a few kB or so vs dozens of MB).

Reason why I chimed in is that I'd be interested in those scripts in order to try and make a portable setup for myself on Mint Cinnamon. Since I'm dealing with many "hacked" add-ons I'm still running 28.17.0 as main browser while testing the new 29.x line, and I really really wouldn't want to accidentally corrupt the main profile. A completely portable package of v29 would ease my mind.
@ Drugwash:-

Mm. Okay.

Well, I've no compunctions about sharing the actual launch script, since this has been in the public domain in various modified formats for a long time. All this is really doing is saving you a detailed web-search to find it.

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

Do bear in mind one thing, please. We do things rather differently in Puppyland. Unlike users of mainstream distros, who are used to running clever, complicated scripts that do everything for them via the terminal, this last item doesn't see that much use in Puppy. Most of us are used to diving directly into the file-system & physically moving/changing/altering/linking items to suit us. Y'see, Puppy is primarily a 'hobbyist' distro, for folks who WANT to tear their system to pieces and re-build it to suit themselves. Which probably doesn't make much sense to you.....

Neither would the fact that since Pup is a single-user system, we don't use 'sudo' & carefully-segregated user directories. Pup runs as /root, ALL THE TIME (*horrors!*); where's the point in needing to ask the system's permission to run your own machine..? :roll:

Anyway...

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

Place the attached 'plmn' script directly inside the 'palemoon' directory. By clicking on this - make sure it's executable, and you've got the correct permissions to do so - it'll create a directory inside the 'palemoon' directory, called, quite simply, 'profile'. Instead of creating a new, uniquely-numbered profile directory in your user directory, by means of using the '-profile' option on the exec line it will instead write the profile to this directory instead.....and provided you always start it from the 'plmn' script, it will always use the self-contained profile.

(You'll probably want to remove the 'LD_LIBRARY_PATH' bit; we use the apulse libraries in Puppy to fool the system into thinking we run PulseAudio.....where in actual fact Puppy is pure ALSA. Always has been, always will be.)

What I then do is to place the 'palemoon' directory inside a second directory along with a simple script, prominently-labelled 'LAUNCH', which merely points to the 'plmn' script one level further in. This directory is then labelled 'Pale_Moon-portable', and this is what I turn into a tarball (along with MD5sum), and share with the community.

The 'LAUNCH' script is mainly for the benefit of some of our less 'tech-savvy' users; makes it easier for them to see what they're doing!

The benefit of this arrangement is that you can run this 'Pale_Moon-portable' from literally anywhere you want.....so long as you have the ownership/exec permissions set correctly.

That's the theory, anyway.....

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

'plmn' script:-

Code: Select all

#!/bin/sh
#
#LAUNCHDIR="$(cd "$(dirname "$0")"; pwd)"
LAUNCHDIR="$(dirname "$(readlink -f "$0")")"
mkdir "$LAUNCHDIR/profile" 2> /dev/null
LD_LIBRARY_PATH=$LAUNCHDIR/apulse${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} "$LAUNCHDIR/palemoon" "$@" -profile "$LAUNCHDIR/profile"
'LAUNCH' script:-

Code: Select all

#!/bin/sh
#
# Launcher for 'portable' Pale Moon browser
#
HERE="$(dirname "$(readlink -f "$0")")"

"$HERE/palemoon/plmn" "$@"
---------------------------

If Moonchild is not happy with me publishing this, I'm quite content to remove it.

Mike. ;)
Attachments
LAUNCH.gz
Outer 'launcher'....points to 'plmn'. (Remove the fake '.gz')
(125 Bytes) Downloaded 3 times
plmn.gz
Actual 'portable' launch script... (Remove the fake'.gz')
(266 Bytes) Downloaded 2 times

User avatar
Drugwash
Fanatic
Fanatic
Posts: 101
Joined: 2016-01-28, 12:08
Location: Ploieşti, Romania
Contact:

Re: Contributed builds for linux.

Post by Drugwash » 2021-02-25, 22:27

Thank you very much Mike for your kind and detailed explanation along with the scripts. I do understand your concerns and please rest assured I would never hold you reliable for anything that may go wrong in my tests.
Off-topic:
As a funny aside, I remember an experiment run many years ago. Maybe not as many as I might think. I had downloaded a small image of a Tiger Puppy Linux and burned it to a mini CD (200MB disk). Thought it should run fine at such tiny size. But... the machine I tested it on was a non-MMX Pentium 100MHz with... dunno... 64MB of RAM and a... 1MB (?) videocard. A lame system much better suited for ancient DOS games or something. However the goddamn Puppy launched fine and tried to do its thing as best as possible. Never complained about anything. Problem is, that Tiger had compiz enabled by default. So any window operations - don't ask how much it took for any window to become visible and operational - such as move or close would take an awful lot of time and run in like slow-motion. But, I repeat: it never complained, never bailed out. So, ever since I have the uttermost respect for Puppy distros. May them live and thrive for as long as there is at least one person in this world that needs them! :clap:
Last edited by Drugwash on 2021-02-25, 23:41, edited 1 time in total.

User avatar
Mike_Walsh
Apollo supporter
Apollo supporter
Posts: 33
Joined: 2019-09-14, 20:09
Location: King's Lynn, UK

Re: Contributed builds for linux.

Post by Mike_Walsh » 2021-02-25, 23:18

@ Drugwash :-

Just FYI, the actual launch script was, so I believe, originally developed by someone, long ago, for Firefox itself. But; since all 'zilla-based browsers (& forks) are still built in almost exactly the same way as those very early releases, when Netscape Navigator was morphing into early Firefox, you can drop this script into into any 'zilla derivative you like, of any vintage. With judicious editing, it'll work in all of them.

For the hell of it, a few months ago I turned a very early Firefox 3.6, from 2010, into a 'portable' - just to see if that principle held true. It fired straight up.....

Mike. ;)

User avatar
Drugwash
Fanatic
Fanatic
Posts: 101
Joined: 2016-01-28, 12:08
Location: Ploieşti, Romania
Contact:

Re: Contributed builds for linux.

Post by Drugwash » 2021-02-25, 23:36

Off-topic:
Mike_Walsh wrote:
2021-02-25, 23:18
For the hell of it, a few months ago I turned a very early Firefox 3.6, from 2010, into a 'portable' - just to see if that principle held true. It fired straight up.....
Funny how certain things remain the same while others - usually the critical ones - don't. ;)

I do rememeber, fuzzily, the early days when I did choose Netscape Navigator over other browsers, at that time. Seems like a lifetime ago now.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 29675
Joined: 2011-08-28, 17:27
Location: Tranås, SE
Contact:

Re: Contributed builds for linux.

Post by Moonchild » 2021-02-26, 00:07

Mike_Walsh wrote:
2021-02-25, 19:57
If Moonchild is not happy with me publishing this, I'm quite content to remove it.
Like I already said I'm fine with it.
If a "portable" setup is more advantageous for puppy users then by all means use the browser's feature to make it so.
"Son, in life you do not fight battles because you expect to win, you fight them merely because they need to be fought." -- Snagglepuss
Image

User avatar
Mike_Walsh
Apollo supporter
Apollo supporter
Posts: 33
Joined: 2019-09-14, 20:09
Location: King's Lynn, UK

Re: Contributed builds for linux.

Post by Mike_Walsh » 2021-02-26, 01:33

Moonchild wrote:
2021-02-26, 00:07
Mike_Walsh wrote:
2021-02-25, 19:57
If Moonchild is not happy with me publishing this, I'm quite content to remove it.
Like I already said I'm fine with it.
If a "portable" setup is more advantageous for puppy users then by all means use the browser's feature to make it so.
That's much appreciated, Moonchild. Fair enough. Onwards & upwards.... :thumbup:

Mike. ;)

User avatar
wdlkmpx
Newbie
Newbie
Posts: 3
Joined: 2021-03-14, 16:12

Re: Contributed builds for linux.

Post by wdlkmpx » 2021-03-14, 16:46

I guess it's about finding someone to compile the generic 32bit version, someone like Walter M. or whatever his username is.

I have a 64-bit capable machine but I mostly use a 32 bit distro, a personalized distro I haven't updated or rebuilt in more than a year. So it's selfishness in its purest form.

Last time I tried Firefox on a distro with 2012 components, it did work fine, but there was no sound (apulse fixes that issue), I think it was firefox 76, so an upgrade path for a generic 32bit distro browser is Firefox, it's a ram devourer but it works, add uBlock origin and it basically runs as fast as palemoon, but the ram issue is the biggest concern if you have less than 2GB of ram.

User avatar
Moonraker
Board Warrior
Board Warrior
Posts: 1738
Joined: 2015-09-30, 23:02
Location: uk.

Re: Contributed builds for linux.

Post by Moonraker » 2021-03-14, 17:36

I generally run palemoon from mnt/home so my savefile does not become convoluted.
For firefox esr which i only use for spybook occasionally is run via a self created script so it runs as spot and has sound.
Firefox swaps like mad and sometimes puppy is left motionless and a hard reset is required.

I only have 2gb of ram on this old laptop and palemoon runs far better.
Xenial puppy linux 32-bit.

Pale moon 29.0.0.

User avatar
wdlkmpx
Newbie
Newbie
Posts: 3
Joined: 2021-03-14, 16:12

Re: Contributed builds for linux.

Post by wdlkmpx » 2021-03-14, 18:16

Performance and RAM consumption depends on how you run the operating system.

I actually ran firefox 76 in a pentium4 pc made in 2004 - 1GB ram + 1GB swap, I think it was usable and the key factor is uBlock Origin, browsed a little, it was all fine, I tried to avoid heavy pages.

Now I'm using a laptop made in 2009 with 2GB ram, I can add more RAM, but I guess that's enough for now, I'm using it very conservatively, not compiling stuff.

I boot the OS from a hard disk, the main SFS files are not loaded in RAM (pfix=nocopy), only the running programs are in RAM. So basically there's 2GB of RAM + 2GB of swap (file).

In fact I just created firefox-83.0-i686-x86_64-ubo.sfs and I'm about to use it, and I know there will be no performance or RAM issues. But I'm used to use Palemoon, but I have to let the 32bit version go.

Walter Dnes
Astronaut
Astronaut
Posts: 634
Joined: 2015-07-30, 20:29
Location: Vaughan, ON, Canada

Re: Contributed builds for linux.

Post by Walter Dnes » 2021-03-14, 23:49

wdlkmpx wrote:
2021-03-14, 16:46
I guess it's about finding someone to compile the generic 32bit version, someone like Walter M. or whatever his username is.
I think you're referring to me. There are problems to that...
  • CentOS 6.9 and 6.10 are no longer supported, so no security updates. Any Pale Moon built on them will be insecure.
  • A 32-bit community-supported (AltArch) CentOS 7.X is available https://blog.centos.org/2015/10/centos- ... -released/ It requires PAE-capable machines and will receive maintenace updates until June 30th, 2024 https://wiki.centos.org/About/Product
  • Because CentOS 7 is being security-updated, it uses newer libs. Pale Moon built on CentOS 7 will be incompatable with older libs as used in older Puppy Linux.
  • As per viewtopic.php?f=62&t=19416 Pale Moon from version 28.0 onwards does not support the stdcxx_compat hack, let alone non-SSE2 machines
  • 3 gigabytes (non-PAE machines) is not enough ram to consistently build Pale Moon in a 32-bit distro. Assuming gcc supports PAE, it could be done on a PAE-capable machine and distro with say 8 gigs of ram or more.
Short summary... assuming Moonchild approves 32-bit AltArch CentOS 7.X as a build platform it'll be possible to build current Pale Moon as 32-bit (assuming gcc can use PAE memory access), but it's NOT going to run on older Puppy, especially older non-SSE2 machines. There may be interest in other newer distros that still support 32-bit. If they want to go that route, I assume the Pale Moon team would take the project in-house.
There's a right way
There's a wrong way
And then there's my way

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 29675
Joined: 2011-08-28, 17:27
Location: Tranås, SE
Contact:

Re: Contributed builds for linux.

Post by Moonchild » 2021-03-15, 00:09

We won't be taking any 32-bit Linux releases in-house. Any of those will have to be independent contributor builds supported by those contributors. That was already clearly communicated when we dropped 32-bit mainline binaries from our release engineering.
So it will have to be up to a Puppy Linux volunteer (or someone else amenable) to build 32-bit binaries for Puppy Linux from source.
"Son, in life you do not fight battles because you expect to win, you fight them merely because they need to be fought." -- Snagglepuss
Image

User avatar
New Tobin Paradigm
Knows the dark side
Knows the dark side
Posts: 9284
Joined: 2012-10-09, 19:37
Location: Seriphia Galaxy

Re: Contributed builds for linux.

Post by New Tobin Paradigm » 2021-03-15, 02:35

And if I recall, someone who is NOT Dnes and someone who is NOT creating generic builds or binary repacks there of.

Legit targeted system packages only.
You know I have the greatest enthusiasm possible for the mission.
Image

User avatar
wdlkmpx
Newbie
Newbie
Posts: 3
Joined: 2021-03-14, 16:12

Re: Contributed builds for linux.

Post by wdlkmpx » 2021-03-15, 04:50

Walter Dnes wrote:
2021-03-14, 23:49
wdlkmpx wrote:
2021-03-14, 16:46
I guess it's about finding someone to compile the generic 32bit version, someone like Walter M. or whatever his username is.
I think you're referring to me. There are problems to that...
  • CentOS 6.9 and 6.10 are no longer supported, so no security updates. Any Pale Moon built on them will be insecure.
  • A 32-bit community-supported (AltArch) CentOS 7.X is available https://blog.centos.org/2015/10/centos- ... -released/ It requires PAE-capable machines and will receive maintenace updates until June 30th, 2024 https://wiki.centos.org/About/Product
  • Because CentOS 7 is being security-updated, it uses newer libs. Pale Moon built on CentOS 7 will be incompatable with older libs as used in older Puppy Linux.
  • As per viewtopic.php?f=62&t=19416 Pale Moon from version 28.0 onwards does not support the stdcxx_compat hack, let alone non-SSE2 machines
  • 3 gigabytes (non-PAE machines) is not enough ram to consistently build Pale Moon in a 32-bit distro. Assuming gcc supports PAE, it could be done on a PAE-capable machine and distro with say 8 gigs of ram or more.
Short summary... assuming Moonchild approves 32-bit AltArch CentOS 7.X as a build platform it'll be possible to build current Pale Moon as 32-bit (assuming gcc can use PAE memory access), but it's NOT going to run on older Puppy, especially older non-SSE2 machines. There may be interest in other newer distros that still support 32-bit. If they want to go that route, I assume the Pale Moon team would take the project in-house.
Yes, I was talking about you, I think security is not really a big issue (it's never an issue when dealing with retro stuff), as Palemoon seems to use less and less system packages, I guess the resulting stuff is controlled by compiler flags or something, so compiling in a fast and modern machine running a somewhat old operating system is enough. Even in a VM.

I guess it's also possible to compile the needed external packages and include them in the Palemoon package (statically compiled perhaps). It could happen in ubuntu precise or slackware 14.0 or the live distro equivalents... 2012 was a good year.

I've compiled the linux kernel and cross-compilers with a modest hardware combination, but I'm sure compiling a big browser would kill a modest machine. So that's something I'm not gonna do... my script downloads tarballs, repackages the zip files with 0 compression, adds launchers, configs and addons, then a gzipped sfs is created, and a custom firefox is ready. An also a custom Palemoon.

Theoretically, Firefox would be too heavy for this 2009 laptop with 2GB ram but I avoid using xz compression for all SFS files, avoid copying entire filesystems into RAM, and use a hard drive, all the RAM is available.

Certain forum seems to be offline, that's where I'd go to hunt a new unofficial version compiled by Walter Dnes, but I guess when something becomes difficult to find, there's no other choice than to use alternatives.

I was running firefox 86.0 for a few hours and I didn't see issues, but I can't integrate addons, only the ESR version seems to support that, so I'm using firefox 78.8.0 ESR.

So overall, I should be running a 64bit distro right now, hopefully that will happen one of these months.

User avatar
New Tobin Paradigm
Knows the dark side
Knows the dark side
Posts: 9284
Joined: 2012-10-09, 19:37
Location: Seriphia Galaxy

Re: Contributed builds for linux.

Post by New Tobin Paradigm » 2021-03-15, 08:31

No.
You know I have the greatest enthusiasm possible for the mission.
Image

Post Reply