How-to: build Pale Moon browser on antiX

Forum Forums General Tips and Tricks How-to: build Pale Moon browser on antiX

  • This topic has 16 replies, 5 voices, and was last updated May 11-6:38 pm by blur13.
Viewing 15 posts - 1 through 15 (of 17 total)
  • Author
    Posts
  • #82808
    Member
    andyprough

      This how-to isn’t necessary, as the antiX package installer will install a perfectly good copy of Pale Moon with just a couple of mouse clicks. However, I have built it, and while I’ve got it all fresh in my mind I’m going to write down the steps here for my own future reference if nothing else.

      1. Install dependencies:
      sudo apt install libgtk2.0-dev libdbus-glib-1-dev autoconf2.13 yasm libegl1-mesa-dev libasound2-dev libxt-dev zlib1g-dev libssl-dev libsqlite3-dev libbz2-dev libpulse-dev libgconf2-dev libx11-xcb-dev zip python2.7 python-dbus-dev python3-dbus build-essential binutils git make cmake

      2. I upgraded the kernel version to the 5.10 LTS from the antiX package installer – I’m not certain this was necessary, but seemed to work well.

      3. Reboot

      4. Download the Pale Moon source tarball to an appropriate location and untar it (I’m using the 29.4.6 tarball here – you should grab the most recent one from http://archive.palemoon.org/source/):

      mkdir ~/git/
      cd ~/git/
      wget http://archive.palemoon.org/source/palemoon-29.4.6.source.tar.xz
      tar xf palemoon-29.4.6.source.tar.xz

      5. We need to fix the “mach” shell script to run with bash instead of “sh” on antix:

      cd ~/git/palemoon-source/
      geany mach

      Inside the geany text editor, change the first line of mach from
      #!/bin/sh
      to say instead
      #!/bin/bash
      or it will throw up an error immediately when we try to build.

      6. We need to create a file called “.mozconfig” in the same ~/git/palemoon-source/ directory, and populate it with typical Pale Moon Linux config options:
      geany .mozconfig
      Inside the geany text editor, add the following text and then save and close:

      # Clear this if not a 64bit build
      _BUILD_64=1
      
      # Set GTK Version to 2 or 3
      _GTK_VERSION=2
      
      # Standard build options for Pale Moon
      ac_add_options --enable-application=palemoon
      ac_add_options --enable-optimize="-O2 -w"
      ac_add_options --enable-default-toolkit=cairo-gtk$_GTK_VERSION
      ac_add_options --enable-jemalloc
      ac_add_options --enable-strip
      ac_add_options --enable-devtools
      ac_add_options --enable-av1
      ac_add_options --disable-gamepad
      ac_add_options --disable-tests
      ac_add_options --disable-debug
      ac_add_options --disable-necko-wifi
      ac_add_options --disable-updater
      ac_add_options --with-pthreads
      
      # Please see https://www.palemoon.org/redist.shtml for restrictions when using the official branding.
      ac_add_options --enable-official-branding
      export MOZILLA_OFFICIAL=1
      
      # Processor architecture specific build options
      if [ -n "$_BUILD_64" ]; then
        ac_add_options --x-libraries=/usr/lib64
      else
        ac_add_options --x-libraries=/usr/lib
      fi
      
      export MOZ_PKG_SPECIAL=gtk$_GTK_VERSION

      7. Build it (make sure you have at least 6GB of memory – check other requirements at http://developer.palemoon.org/build/linux/)
      ./mach build

      8. At this point we can take it for a test run:
      ./mach run

      8. Package it:
      ./mach package

      9. Now we will have a new tarball at ~/git/palemoon-source/obj-x86_64-pc-linux-gnu/dist/palemoon-29.4.6.linux-x86_64-gtk2.tar.xz. Copy it to a new directory, untar it, and run your new browser:

      mkdir ~/git/palemoon/
      cd ~/git/palemoon/
      cp ~/git/palemoon-source/obj-x86_64-pc-linux-gnu/dist/palemoon-29.4.6.linux-x86_64-gtk2.tar.xz .
      tar xf palemoon-29.4.6.linux-x86_64-gtk2.tar.xz
      cd ~/git/palemoon/palemoon/
      ./palemoon

      10. We can manually install it and the icons so that it shows up in our antiX menus (“USER” in the place of your user name):

      sudo ln -s /home/USER/git/palemoon/palemoon/palemoon /usr/local/bin/palemoon
      sudo ln -s /home/USER/git/palemoon/palemoon/browser/chrome/icons/default/default16.png /usr/share/icons/hicolor/16x16/apps/palemoon.png
      sudo ln -s /home/USER/git/palemoon/palemoon/browser/chrome/icons/default/default32.png /usr/share/icons/hicolor/32x32/apps/palemoon.png
      sudo ln -s /home/USER/git/palemoon/palemoon/browser/chrome/icons/default/default48.png /usr/share/icons/hicolor/48x48/apps/palemoon.png
      sudo ln -s /home/USER/git/palemoon/palemoon/browser/icons/mozicon128.png /usr/share/icons/hicolor/128x128/apps/palemoon.png

      Create a .desktop file for it:
      sudo geany /usr/share/applications/palemoon.desktop
      Inside the geany text editor, add the following text and then save and close:

      [Desktop Entry]
      GenericName=Web Browser
      Name=Pale Moon
      Comment=Web browser
      MimeType=text/html;text/xml;application/xhtml+xml;
      Exec=palemoon
      Terminal=false
      Type=Application
      Categories=Network;WebBrowser;
      Icon=palemoon

      Edit: to get it to show up in the IceWM menu I had to use the antiX “menu-manager” program:
      Main menu – Applications – Preferences – Menu Manager
      Select the Applications menu
      Select “Show”
      Double click on “Pale Moon”

      • This topic was modified 1 year ago by andyprough.
      #82809
      Moderator
      Brian Masinick
        Helpful
        Up
        0
        ::

        Nice instructions!

        I didn’t verify them, but they look good.

        --
        Brian Masinick

        #82810
        Member
        andyprough
          Helpful
          Up
          0
          ::

          Nice instructions!

          I didn’t verify them, but they look good.

          It’s extremely fast. I did not expect to see a speed difference from the typical Pale Moon binary package, but this is pretty noticeable so far. I’ll have to play around with it for awhile and see if it still feels different.

          #82816
          Member
          ModdIt
            Helpful
            Up
            0
            ::

            Thanks andyprough , nice howto,
            will have a go at building next rainy day. And while doing so see if i can find the option for switching to native
            alsa.

            I have also noticed that self builds are often lighter and faster than the universal binarys. Out of interest
            what did you build on and build time. My I5 box is pretty powerful but took all night to build a
            stripped down firefox, after that I started using libreWolf or UngoogledChromium where Palemoon is rejected by sites.

            #82823
            Member
            oops
              Helpful
              Up
              0
              ::

              7. Build it (make sure you have at least 6GB of memory – check other requirements at http://developer.palemoon.org/build/linux/)

              Too big for me … 6GB, is my total memory.

              #82961
              Member
              andyprough
                Helpful
                Up
                0
                ::

                Thanks andyprough , nice howto,
                will have a go at building next rainy day. And while doing so see if i can find the option for switching to native
                alsa.

                I have also noticed that self builds are often lighter and faster than the universal binarys. Out of interest
                what did you build on and build time. My I5 box is pretty powerful but took all night to build a
                stripped down firefox, after that I started using libreWolf or UngoogledChromium where Palemoon is rejected by sites.

                I built it on a 4-year-old i7, but I only gave it 1 core. It did take about 3 hours to build. Next time I will probably give it 2 cores, it should hopefully build in less than 2 hours.

                #82962
                Member
                andyprough
                  Helpful
                  Up
                  0
                  ::

                  7. Build it (make sure you have at least 6GB of memory – check other requirements at http://developer.palemoon.org/build/linux/)

                  Too big for me … 6GB, is my total memory.

                  It should work – 6 GB is the total memory on the system I built it on. antiX was only taking up about 150mb for the system, and I did have the Seamonkey browser open to copy the build commands from, so I probably had about 5.7 GB available.

                  #82963
                  Member
                  oops
                    Helpful
                    Up
                    0
                    ::

                    Hi andyprough,

                    Thanks. So I will try if a real benefice exist, or with some extra customizations (or for fun) … but Stevo do this job into MX very often (I guess the antiX GTK2 versions are from MX too?).

                    • This reply was modified 12 months ago by oops.
                    #82985
                    Moderator
                    Brian Masinick
                      Helpful
                      Up
                      0
                      ::

                      I have

                      CPU: dual core Intel Core i7-5500U (-MT MCP-)
                      speed/min/max: 2610/500/3000 MHz Kernel: 5.17.5-arch1-1 x86_64 Up: 25m
                      Mem: 2447.6/7860.6 MiB (31.1%) Storage: 447.13 GiB (3.2% used)
                      Machine:
                        Type: Laptop System: Dell product: Inspiron 5558 v: 01
                          serial: <superuser required>
                        Mobo: Dell model: 086DKN v: A00 serial: <superuser required> UEFI: Dell
                          v: A04 date: 08/06/2015
                      CPU:
                        Info: dual core model: Intel Core i7-5500U bits: 64 type: MT MCP
                          arch: Broadwell rev: 4 cache: L1: 128 KiB L2: 512 KiB L3: 4 MiB
                        Speed (MHz): avg: 2551 high: 2561 min/max: 500/3000 cores: 1: 2547
                          2: 2542 3: 2561 4: 2554 bogomips: 19160
                        Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx

                      and I happen to be running on Endeavour OS, (though I was using antiX 21 Base runit just prior to this.
                      I decided to try pulling Palemoon in and allowing the “yay” tool to automatically build Palemoon for me.

                      As of this moment, it has completed the configure, pre-export, and export phases and it is currently roughly 20 minutes into the compile phase, with
                      misc, libs, and tools phases to continue after the compile phase completes. At this point it’s still building various “lib” packages in the a.desc section; it did get through quite a few already; I wouldn’t be surprised if this ends up taking a couple of hours on this system too, so it’s not your “every day” task, by any means.

                      You did a GREAT job building this yourself. I don’t know if there was a document somewhere explaining the process, or if just the source code comments and a lot of digging (and experimentation) was necessary. However you did it, just the fact that this is a lengthy process here, EVEN WITH a super handy tool to take care of the mechanics.

                      I will say that the Arch Linux environment has vastly improved over the years and the Endeavour OS makes the Arch stuff that takes place behind the scenes safe and effective. It’s nice to see another distribution that does a good job with packaging, stability, and efficiency. Endeavour OS is NOT as small and nimble as antiX, but I have had success with it on a few systems in the 5-12 year age range, and being a big “fan” of choice, it’s one of the 3-4 distributions that I choose when I multi-boot on a few of my computers. Naturally, antiX is too, except on my newest system, which I haven’t managed to successfully boot an antiX image on (that was a FIRST, by the way; every other system I’ve ever tried antiX on has worked BEAUTIFULLY well).

                      Checking back on the Palemoon build – it’s now 37 minutes into the compilation phase of the build.

                      --
                      Brian Masinick

                      #82987
                      Moderator
                      Brian Masinick
                        Helpful
                        Up
                        0
                        ::

                        Between 90 and 100 minutes on my Dell Inspiron 5558, Dual Core with plenty of memory, the compilation completed and the build and installation process took place. I now have a compiled version of Palemoon 31.0.0, 64-bit. So far, it looks good.

                        --
                        Brian Masinick

                        #82988
                        Moderator
                        Brian Masinick
                          Helpful
                          Up
                          0
                          ::

                          Time to go back to antiX 21, then log off for the evening!

                          --
                          Brian Masinick

                          #83001
                          Member
                          andyprough
                            Helpful
                            Up
                            0
                            ::

                            Between 90 and 100 minutes on my Dell Inspiron 5558, Dual Core with plenty of memory, the compilation completed and the build and installation process took place. I now have a compiled version of Palemoon 31.0.0, 64-bit. So far, it looks good.

                            Hi, that’s so cool Brian, share a screenshot please!!

                            I was very pleasantly surprised to see that when I built Pale Moon on antiX, it adopted the Numix icons I had themed antiX with. I think it looks much nicer this way.

                            Pale Moon version 31 was just released today – guess it’s time to start building again!

                            #83021
                            Member
                            ModdIt
                              Helpful
                              Up
                              0
                              ::

                              Thanks andyprough and Brian,
                              Will try and build this evening, I5 2500K Quad core 8 GB Ram, will copy the notes from andyprough post in to leadfpad and use all cores for building. Be interesting to
                              see how high temperatures go.

                              OT on Building but I thought this place is best fitting for below info. Can be moved if considered out of place.

                              Announcement on Palemoon site: v31.0.0 (2022-05-10) This is a new milestone release.

                              After our unacceptable and recalled release of v30.0.0 and 30.0.1 with the departure of one of the core devs from our team requiring us to rewind and re-do several months of work to exclude undesired code changes and what likely lay at the root of the plethora of stability and run-time issues of the recalled versions, we’re back on track with a new milestone building on UXP and Goanna (v5.1) with many improvements and additional user-requested features.
                              To prevent user confusion, we’re skipping from 29 to 31.
                              Nice points
                              Removed the Marionette automated testing framework.
                              Removed most of the last vestiges of the invasive Mozilla Telemetry code from the platform. This potentially improves performance on some systems.
                              Removed all Google SafeBrowsing/URLClassifier service code.
                              Security issues addressed: CVE-2022-29915, CVE-2022-29911, and several issues that do not have a CVE number.
                              UXP Mozilla security patch summary: 4 fixed, 1 DiD, 19 not applicable.

                              #83027
                              Moderator
                              Brian Masinick
                                Helpful
                                Up
                                0
                                ::

                                @Moddit: It was indeed the Palemoon 31.0.0 release that I built. I’d caution anyone attempting to build it from sources to only do so if you have adequate cooling.

                                My Dell Inspiron has a traditional fan and that fan was running continuously for nearly two hours.

                                For most people just grabbing the binary image makes a lot more sense.

                                In my UNIX days I used to build code from sources nearly every day so I was curious once again. The yay tool in EndeavourOS made the process for me much simpler than the excellent instructions that Andy provided, but that’s an Arch tool that works for software from the AUR collection. That collection is probably the most complete of any major distribution these days but it’s still not for the typical novice, nor the faint of heart.

                                However, for the truly adventurous I believe that Andy’s thorough instructions will work, based on my past software installation background.

                                Either way, Palemoon is a worthy alternative to Firefox.

                                --
                                Brian Masinick

                                #83041
                                Member
                                ModdIt
                                  Helpful
                                  Up
                                  0
                                  ::

                                  Brian wrote: regarding building palemoon: only do so if you have adequate cooling.
                                  That is what I want to find out, I fitted an advanced air cooling system a couple of weeks ago, wanting
                                  less noise as the intel boxed fan was getting loud. Will be watching core temps carefully.
                                  Will also be running at standard core frequency rather than overclocked as a precaution.

                                  I miss the AUR quite often, used to use yaourt most of the time, what killed arch based for me was
                                  a longer series of update fails.

                                Viewing 15 posts - 1 through 15 (of 17 total)
                                • You must be logged in to reply to this topic.