@ -1,23 +1,23 @@
{ stdenv , fetchFromGitHub , makeDesktopItem
, pkgconfig , autoconf213 , alsaLib , bzip2 , cairo
, dbus , dbus-glib , file , fontconfig , freetype
, gstreamer , gst-plugins-base , gst_all_1
, gnome2 , gnum4 , g streamer , gst-plugins-base , gst_all_1
, gtk2 , hunspell , icu , libevent , libjpeg , libnotify
, libstartup_notification , libvpx , makeWrapper , libGLU_combined
, nspr , nss , pango , perl , python , libpulseaudio , sqlite
, unzip , xorg , which , yasm , zip , zlib
, unzip , xorg , wget , w hich , yasm , zip , zlib
} :
stdenv . mkDerivation rec {
name = " p a l e m o o n - ${ version } " ;
version = " 2 7 . 9 . 4 " ;
p name = " p a l e m o o n " ;
version = " 2 8 . 6 . 0 . 1 " ;
src = fetchFromGitHub {
name = " p a l e m o o n - s r c " ;
name = " ${ pname } - ${ version } " ;
owner = " M o o n c h i l d P r o d u c t i o n s " ;
repo = " P a l e - M o o n " ;
rev = version + " _ R e l e a s e " ;
sha256 = " 0 i r 5 g z h w 9 8 g f n 1 5 x 5 8 g 1 f w i 1 1 j d 7 g y s v a c q x g 1 v 0 j d j h g d l 4 m 5 s x " ;
repo = " U X P " ;
rev = " P M ${ version } _ R e l e a s e " ;
sha256 = " 1 a d g a j y 5 v s g h v j l v 2 n q y r b p 6 m n v 3 k 6 s l q x x i 8 r 9 4 9 x l b 5 h 6 d 2 1 0 b " ;
} ;
desktopItem = makeDesktopItem {
@ -40,10 +40,10 @@ stdenv.mkDerivation rec {
buildInputs = [
alsaLib bzip2 cairo dbus dbus-glib file fontconfig freetype
gst-plugins-base gstreamer gst_all_1 . gst-plugins-base gtk2
gnome2 . GConf gnum4 g st-plugins-base gstreamer gst_all_1 . gst-plugins-base gtk2
hunspell icu libevent libjpeg libnotify libstartup_notification
libvpx makeWrapper libGLU_combined nspr nss pango perl pkgconfig python
libpulseaudio sqlite unzip which yasm zip zlib
libpulseaudio sqlite unzip wget w hich yasm zip zlib
] ++ ( with xorg ; [
libX11 libXext libXft libXi libXrender libXScrnSaver
libXt pixman xorgproto
@ -52,57 +52,65 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true ;
configurePhase = ''
export AUTOCONF = $ { autoconf213 } /bin/autoconf
export MOZBUILD_STATE_PATH = $ ( pwd ) /.mozbuild
export MOZ_CONFIG = $ ( pwd ) /.mozconfig
export builddir = $ ( pwd ) /build
mkdir - p $ MOZBUILD_STATE_PATH $ builddir
echo > $ MOZ_CONFIG "
. $ src/build/mozconfig.common
ac_add_options - - prefix = $ out
ac_add_options - - with-pthreads
ac_add_options - - enable-application = browser
export MOZBUILD_STATE_PATH = $ ( pwd ) /mozbuild
export MOZCONFIG = $ ( pwd ) /mozconfig
export builddir = $ ( pwd ) /pmbuild
echo > $ MOZCONFIG "
mk_add_options AUTOCLOBBER = 1
mk_add_options MOZ_OBJDIR = $ builddir
ac_add_options - - enable-application = palemoon
ac_add_options - - enable-optimize = ' - O2'
# Please see https://www.palemoon.org/redist.shtml for restrictions when using the official branding.
ac_add_options - - enable-official-branding
ac_add_options - - enable-optimize = " - O 2 "
ac_add_options - - enable-release
ac_add_options - - enable-devtools
export MOZILLA_OFFICIAL = 1
ac_add_options - - enable-default-toolkit = cairo-gtk2
ac_add_options - - enable-jemalloc
ac_add_options - - enable-shared-js
ac_add_options - - enable-strip
ac_add_options - - with-pthreads
ac_add_options - - disable-tests
ac_add_options - - disable-installer
ac_add_options - - disable-updaters
"
'' ;
ac_add_options - - disable-eme
ac_add_options - - disable-parental-controls
ac_add_options - - disable-accessibility
ac_add_options - - disable-webrtc
ac_add_options - - disable-gamepad
ac_add_options - - disable-necko-wifi
ac_add_options - - disable-updater
ac_add_options - - x-libraries = $ { xorg . libX11 . out } /lib
patchPhase = ''
chmod u + w .
ac_add_options - - prefix = $ out
mk_add_options MOZ_MAKE_FLAGS = ' - j $ NIX_BUILD_CORES'
mk_add_options AUTOCONF = $ { autoconf213 } /bin/autoconf
"
'' ;
hardeningDisable = [ " f o r m a t " ] ;
buildPhase = ''
cd $ builddir
$ src/mach build
'' ;
installPhase = ''
$ src/mach install
mkdir - p $ out/share/applications
cp $ { desktopItem } /share/applications /* $ o u t / s h a r e / a p p l i c a t i o n s
for n in 16 22 24 32 48 256 ; do
size = $ n " x " $ n
mkdir - p $ out/share/icons/hicolor / $ size/apps
cp $ src/browser /branding/official/default $ n . png \
cp $ src/application/palemoon /branding/official/default $ n . png \
$ out/share/icons/hicolor / $ size/apps/palemoon.png
done
cd $ builddir
$ src/mach install
'' ;
meta = with stdenv . lib ; {
description = " A w e b b r o w s e r " ;
description = " A n O p e n S o u r c e , G o a n n a - b a s e d w e b b r o w s e r f o c u s i n g o n e f f i c i e n c y a n d c u s t o m i z a t i o n " ;
longDescription = ''
Pale Moon is an Open Source , Goanna-based web browser focusing on
efficiency and customization .
@ -114,9 +122,9 @@ stdenv.mkDerivation rec {
experience , while offering full customization and a growing collection of
extensions and themes to make the browser truly your own .
'' ;
homepage = https://www.palemoon.org/ ;
homepage = " h t t p s : / / w w w . p a l e m o o n . o r g / " ;
license = licenses . mpl20 ;
maintainers = with maintainers ; [ rnhmjoj AndersonTorres ] ;
maintainers = with maintainers ; [ rnhmjoj AndersonTorres OPNA2608 ] ;
platforms = platforms . linux ;
} ;
}