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

Tue Jan 07 13:14:58 UTC 2025 - Tristan Miller <psychonaut@nothingisreal.com>

- update to SeaMonkey 2.53.20
  * Use Services.focus for bookmarking from mailnews in SeaMonkey bug
    1925033.
  * Replace the Bookmark Manager with the Firefox Library in
    SeaMonkey: Another followup bug bug 1932731.
  * Port bug 1458385 - Update SeaMonkey's confvars.sh bug 1913633.
  * Tidy up channels code in cZ bug 1920565.
  * Sometimes tag data from an IRC server doesn't contain a pair bug
    1923211.
  * Fix call to updateUsers in network onAway in cZbug 1923213.
  * Remove unused XTLabelRecord from tree-utils.js in cZbug 1923215.
  * Remove unused code from connection-xpcom.js in cZbug 1923219.
  * Remove unusued code from utils.js in cZbug 1923221.
  * Switch from using arrayContains helper to using JS Array includes
    method in cZ bug 1923224.
  * Switch from using arrayIndexOf helper to using JS Array includes
    and indexOf methods in cZ bug 1923225.
  * Switch from using arrayRemoveAt and arrayInsertAt helpers to using
    JS Array splice and unshift methods in cZbug 1923227.
  * Switch from using stringTrim helper to using JS string trim method
    in cZ bug 1923229.
  * Inline newObject function in cZ bug 1924338.
  * Remove getWindowByType function from cZ bug 1924586.
  * Inline viewCert function in cZ bug 1924587.
  * Remove getSpecialDirectory function and use Services.dirsvc in cZ
    bug 1924588.
  * Remove getNSSErrorClass function and tidy up NSS related code in
    cZ bug 1924589.
  * Tidy message manager code in cZ bug 1924592.
  * Remove getService helper and tidy up code around its callers in cZ
    bug 1924595.
  * Remove use of NSGetModule in cZ bug 1925871.
  * Tidy up chatzilla-service.js bug 1926406.
  * Use Intl.DateTimeFormat in cZ's strftime function bug 1927348.
  * Remove unused code from pref-manager.js in cZ bug 1927370.
  * Use Services.scriptloader in cZ bug 1927374.
  * Use more Services in cZ bug 1927376.
  * Tidy up some Components.* code in static.js in cZ bug 1927377.
  * Switch to using listbox instead of tree for cZ chat window bug
    1927582.
  * Away status isn't reflected correctly in channel userlist in cZ
    bug 1928749.
  * Fix too much recursion and missing variable in cmdSave in cZ bug
    1930391.
  * Replace confirm helper with Services.prompt.confirm in cZ bug
    1930396.
  * Use Services.prompt in confirmEx, prompt and promptPassword
    helpers in cZ bug 1930540.
  * Use Services.prompt.alert and remove alert helper in cZ bug
    1931705.
  * Simplify getListFIle in cZ bug 1931707.
  * Remove various const from file-utils.js in cZ bug 1931708.
  * Remove unused 2nd argument from mkdir helper in file-utils.js in
    cZ bug 1931709.
  * Use LocalFile directly rather via helper fopen in cZ bug 1931710.
  * Tidy up picker code in file-utils.js in cZ bug 1931712.
  * Remove unnecessary type attributes in cZ bug 1933043.
  * Clean up Components usage in cZ bug 1933081.
  * Remove unused encodeForXMLAttribute function for cZ utils.js bug
    1933083.
  * Move renameProperty helper into lib/irc.js for cZ bug 1933084.
  * Move formatDateOffset helper into handlers.js in cZ bug 1933085.
  * Move objectContains helper into command-manager.js in cZ bug
    1933086.
  * Move splitLongWord helper into mungers.js in cZ bug 1933087.
  * Move randomString helper into commands.js in cZ bug 1933089.
  * Move Clone helper into commands.js in cZ bug 1933090.
  * Move equalsObject helper into channels.js in cZ bug 1933092.
  * Move matchEntry helper into static.js in cZ bug 1933093.
  * Move getCommonPfx helper to handlers.js in cZ bug 1933342.
  * Remove some code duplication in getSISize and getSISpeed helpers
    and improve coding in scaleNumbersBy1024 in cZ bug 1933346.
  * UI: Link for download of Themes leads to Themes for Thunderbird
    bug 1656564.
  * Add ESR 128 links to debugQA bug 1909855.
  * Port changes needed from |Bug 1476333 - Consolidate the ways that
    we reference "browser.xul" across the tree| to SeaMonkey bug
    1911841.
  * Switch from boxObject to getBoundingClientRect in utilityOverlay
    bug 1911844.
  * Align the SeaMonkey switchToTabHavingURI() call syntax with
    Firefox and toolkit bug 1925037.
  * Empty out SeaMonkey's removed-files.in (port bug 1392913) bug
    1913579.
  * Update SeaMonkey installer to register as handler for media types
    bug 1925023.
  * Remove obsolete chat services from SeaMonkey address book part2
    bug 1909853.
  * Add UI for browser.display.prefers_color_scheme to the SeaMonkey
    colors prefpane bug 1909743.
  * Update SeaMonkey wikipedia icon bug 1925021.
  * Show specific placeholders for bookmarks and history in SeaMonkey
    sidebar search bug 1925025.
  * Adjust dragOver method of tabbrowser.xml to be closer to Firefox
    version bug 1911845.
  * Avoid boxObject where appropriate in tabbrowser bug 1911847.
  * Simplify tab drop indicator code and styling bug 1911848.
  * SeaMonkey 2.53.20 uses the same backend as Firefox and contains
    the relevant Firefox 60.8 security fixes.
  * SeaMonkey 2.53.20 shares most parts of the mail and news code with
    Thunderbird. Please read the Thunderbird 60.8.0 release notes for
    specific security fixes in this release.
  * Additional important security fixes up to Current Firefox 115.19
    and Thunderbird 115.19 ESR plus many enhancements have been
    backported. We will continue to enhance SeaMonkey security in
    subsequent 2.53.x beta and release versions as fast as we are able
    to.
- Adapt seamonkey-man-page.patch for SeaMonkey 2.53.20
- Adapt seamonkey-GNUmakefile to set MOZBUILD_STATE_PATH and to fix
  post-configure stamping per
  https://bugzilla.mozilla.org/show_bug.cgi?id=1692516#c13
- Update minimum build requirements for SeaMonkey 2.53.20
- Remove .mozconfig options no longer recognized in SeaMonkey 2.53.20
- request inclusion in Leap 15.6:
  https://bugzilla.opensuse.org/show_bug.cgi?id=1235392

OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/seamonkey?expand=0&rev=70
This commit is contained in:
Tristan Miller 2025-01-07 20:22:24 +00:00 committed by Git OBS Bridge
commit d1e2d8755c
26 changed files with 31005 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

23
_constraints Normal file
View File

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<constraints>
<hardware>
<disk>
<size unit="G">25</size>
</disk>
<memory>
<size unit="G">16</size>
</memory>
</hardware>
<overwrite>
<conditions>
<arch>armv6l</arch>
<arch>armv7l</arch>
<arch>ppc64le</arch>
</conditions>
<hardware>
<memory>
<size unit="G">5</size>
</memory>
</hardware>
</overwrite>
</constraints>

16
mozilla-bmo1862601.patch Normal file
View File

@ -0,0 +1,16 @@
--- a/intl/lwbrk/LineBreaker.cpp
+++ b/intl/lwbrk/LineBreaker.cpp
@@ -559,7 +559,12 @@
/* REGIONAL_INDICATOR = 39, [RI] */ CLASS_CHARACTER,
/* E_BASE = 40, [EB] */ CLASS_BREAKABLE,
/* E_MODIFIER = 41, [EM] */ CLASS_CHARACTER,
- /* ZWJ = 42, [ZWJ]*/ CLASS_CHARACTER
+ /* ZWJ = 42, [ZWJ]*/ CLASS_CHARACTER,
+ /* AKSARA = 43, [AK] */ CLASS_CHARACTER,
+ /* AKSARA_PREBASE = 44, [AP] */ CLASS_CHARACTER,
+ /* AKSARA_START = 45, [AS] */ CLASS_CHARACTER,
+ /* VIRAMA_FINAL = 46, [VF] */ CLASS_CHARACTER,
+ /* VIRAMA = 47, [VI] */ CLASS_CHARACTER,
};
static_assert(U_LB_COUNT == mozilla::ArrayLength(sUnicodeLineBreakToClass),

24886
mozilla-bmo1896958.patch Normal file

File diff suppressed because one or more lines are too long

33
mozilla-bmo531915.patch Normal file
View File

@ -0,0 +1,33 @@
# HG changeset patch
# User Wolfgang Rosenauer <wr@rosenauer.org>
# Parent fa8a5832a374ccd7af5db927b992b5d9f15273ef
diff --git a/modules/fdlibm/src/math_private.h b/modules/fdlibm/src/math_private.h
--- a/modules/fdlibm/src/math_private.h
+++ b/modules/fdlibm/src/math_private.h
@@ -25,19 +25,24 @@
#include "fdlibm.h"
/*
* Emulate FreeBSD internal double types.
* Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t
*/
+#ifdef __i386__
+typedef long double __double_t;
+typedef long double __float_t;
+#else
typedef double __double_t;
+typedef float __float_t;
+#endif
typedef __double_t double_t;
-typedef float __float_t;
/*
* The original fdlibm code used statements like:
* n0 = ((*(int*)&one)>>29)^1; * index of high word *
* ix0 = *(n0+(int*)&x); * high word of x *
* ix1 = *((1-n0)+(int*)&x); * low word of x *
* to dig two 32 bit words out of the 64 bit IEEE floating point
* value. That is non-ANSI, and, moreover, the gcc instruction

View File

@ -0,0 +1,25 @@
From: Wolfgang Rosenauer, Tristan Miller
Subject: Do not use gconf for proxy settings if not running within Gnome
diff -ruN seamonkey-2.53.17b1.orig/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp seamonkey-2.53.17b1/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
--- seamonkey-2.53.17b1.orig/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp 2023-06-10 12:41:26.000000000 +0200
+++ seamonkey-2.53.17b1/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp 2023-07-12 09:41:08.047344985 +0200
@@ -55,10 +55,14 @@
nsresult
nsUnixSystemProxySettings::Init()
{
- mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
- if (mGSettings) {
- mGSettings->GetCollectionForSchema(NS_LITERAL_CSTRING("org.gnome.system.proxy"),
- getter_AddRefs(mProxySettings));
+ // only use GSettings if that is a GNOME session
+ const char* sessionType = PR_GetEnv("DESKTOP_SESSION");
+ if (sessionType && !strcmp(sessionType, "gnome")) {
+ mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
+ if (mGSettings) {
+ mGSettings->GetCollectionForSchema(NS_LITERAL_CSTRING("org.gnome.system.proxy"),
+ getter_AddRefs(mProxySettings));
+ }
}
return NS_OK;

View File

@ -0,0 +1,18 @@
# HG changeset patch
# User Petr Cerny <pcerny@novell.com>
# Parent 7308e4a7c1f769f4bbbc90870b849cadd99495a6
# Parent 03565086f1e230cf6f0f6c01bf9a792c732de50b
Bug 634334 - call to the ntlm_auth helper fails
diff -ruN seamonkey/mozilla/extensions/auth/nsAuthSambaNTLM.cpp seamonkey.new/mozilla/extensions/auth/nsAuthSambaNTLM.cpp
--- seamonkey/mozilla/extensions/auth/nsAuthSambaNTLM.cpp 2020-02-18 00:37:50.000000000 +0100
+++ seamonkey.new/mozilla/extensions/auth/nsAuthSambaNTLM.cpp 2020-03-02 12:53:27.147346423 +0100
@@ -174,7 +174,7 @@
return NS_ERROR_FAILURE;
const char* const args[] = {
- "ntlm_auth",
+ "/usr/bin/ntlm_auth",
"--helper-protocol", "ntlmssp-client-1",
"--use-cached-creds",
"--username", username,

143
mozilla.sh.in Normal file
View File

@ -0,0 +1,143 @@
#!/bin/sh
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org Code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Wolfgang Rosenauer <wolfgang.rosenauer@suse.de>
# <wr@rosenauer.org>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
##
## Usage:
##
## $ mozilla [args]
##
## This script is meant to run a mozilla program from the mozilla
## rpm installation.
##
## The script will setup all the environment voodoo needed to make
## mozilla work.
cmdname=`basename $0`
##
## Variables
##
MOZ_DIST_BIN="%PREFIX"
MOZ_DIST_LIB="%PROGDIR"
MOZ_APPNAME="%APPNAME"
MOZ_PROGRAM="$MOZ_DIST_LIB/$MOZ_APPNAME-bin"
MOZ_APP_LAUNCHER="$MOZ_DIST_LIB/$MOZ_APPNAME.sh"
if [ "$0" = "$MOZ_APP_LAUNCHER" ]; then
[ -h "/usr/bin/$MOZ_APPNAME" ] && \
_link=$(readlink -f "/usr/bin/$MOZ_APPNAME")
if [ "$_link" = "$MOZ_APP_LAUNCHER" ]; then
export MOZ_APP_LAUNCHER="/usr/bin/$MOZ_APPNAME"
fi
else
export MOZ_APP_LAUNCHER="/usr/bin/$MOZ_APPNAME"
fi
mozilla_lib=`file $MOZ_PROGRAM`
LIB=lib
echo $mozilla_lib | grep -q -E 'ELF.64-bit.*(x86-64|S/390|PowerPC)' && LIB=lib64
BROWSER_PLUGIN_DIR=/usr/$LIB/browser-plugins
if [ ! -d $BROWSER_PLUGIN_DIR ]; then
BROWSER_PLUGIN_DIR=/opt/netscape/plugins
fi
MOZILLA_FIVE_HOME="$MOZ_DIST_LIB"
export MOZILLA_FIVE_HOME
LD_LIBRARY_PATH=$MOZ_DIST_LIB${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
export LD_LIBRARY_PATH
# needed for SUN Java under Xorg >= 7.2
export LIBXCB_ALLOW_SLOPPY_LOCK=1
##
if [ -z "$MOZ_PLUGIN_PATH" ]; then
export MOZ_PLUGIN_PATH=$BROWSER_PLUGIN_DIR
else
# make sure that BROWSER_PLUGIN_DIR is in MOZ_PLUGIN_PATH
echo "$MOZ_PLUGIN_PATH" | grep "$BROWSER_PLUGIN_DIR" 2>&1 >/dev/null
_retval=$?
if [ ${_retval} -ne 0 ]; then
export MOZ_PLUGIN_PATH=$MOZ_PLUGIN_PATH:$BROWSER_PLUGIN_DIR
fi
fi
# disable Gnome crash dialog (doesn't make sense anyway)
export GNOME_DISABLE_CRASH_DIALOG=1
moz_debug=0
script_args=""
pass_arg_count=0
while [ $# -gt $pass_arg_count ]
do
case "$1" in
-d | --debugger)
moz_debugger=$2;
if [ "${moz_debugger}" != "" ]; then
shift 2
moz_debug=1
else
echo "-d requires an argument"
exit 1
fi
;;
*)
# Move the unrecognized argument to the end of the list.
arg="$1"
shift
set -- "$@" "$arg"
pass_arg_count=`expr $pass_arg_count + 1`
;;
esac
done
if [ $moz_debug -eq 1 ]; then
tmpfile=`mktemp /tmp/mozargs.XXXXXX` || { echo "Cannot create temporary file" >&2; exit 1; }
trap " [ -f \"$tmpfile\" ] && /bin/rm -f -- \"$tmpfile\"" 0 1 2 3 13 15
echo "set args ${1+"$@"}" > $tmpfile
echo "run" >> $tmpfile
echo "$moz_debugger $MOZ_PROGRAM -x $tmpfile"
$moz_debugger "$MOZ_PROGRAM" -x $tmpfile
else
$MOZ_PROGRAM "$@"
fi
exitcode=$?
exit $exitcode

63
reproducible.patch Normal file
View File

@ -0,0 +1,63 @@
https://github.com/mozilla/gecko-dev/commit/025982b6714051c747dcb9600d6e5c92d2dcaf7b
From 025982b6714051c747dcb9600d6e5c92d2dcaf7b Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Date: Thu, 16 Mar 2023 14:01:58 +0000
Subject: [PATCH] Bug 1817032 - Honor SOURCE_DATE_EPOCH to build langpacks
reproducibly. r=eemeli@mozilla.com
Differential Revision: https://phabricator.services.mozilla.com/D169979
---
.../mozbuild/action/langpack_manifest.py | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/python/mozbuild/mozbuild/action/langpack_manifest.py b/python/mozbuild/mozbuild/action/langpack_manifest.py
index f82a329cc..10e42fe99 100644
--- a/python/mozbuild/mozbuild/action/langpack_manifest.py
+++ b/python/mozbuild/mozbuild/action/langpack_manifest.py
@@ -16,6 +16,7 @@ import os
import json
import io
import datetime
+import time
import requests
import mozversioncontrol
import mozpack.path as mozpath
@@ -36,9 +37,17 @@ def write_file(path, content):
pushlog_api_url = "{0}/json-rev/{1}"
+def get_build_date():
+ """Return the current date or SOURCE_DATE_EPOCH, if set."""
+ return datetime.datetime.utcfromtimestamp(
+ int(os.environ.get("SOURCE_DATE_EPOCH", time.time()))
+ )
+
+
###
-# Retrievers a UTC datetime of the push for the current commit
-# from a mercurial clone directory.
+# Retrieves a UTC datetime of the push for the current commit from a
+# mercurial clone directory. The SOURCE_DATE_EPOCH environment
+# variable is honored, for reproducibility.
#
# Args:
# path (str) - path to a directory
@@ -54,7 +63,7 @@ def get_dt_from_hg(path):
with mozversioncontrol.get_repository_object(path=path) as repo:
phase = repo._run("log", "-r", ".", "-T" "{phase}")
if phase.strip() != "public":
- return datetime.datetime.utcnow()
+ return get_build_date()
repo_url = repo._run("paths", "default")
repo_url = repo_url.strip().replace("ssh://", "https://")
repo_url = repo_url.replace("hg://", "https://")
@@ -99,7 +108,7 @@ def get_timestamp_for_locale(path):
dt = get_dt_from_hg(path)
if dt is None:
- dt = datetime.datetime.utcnow()
+ dt = get_build_date()
dt = dt.replace(microsecond=0)
return dt.strftime("%Y%m%d%H%M%S")

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3d029110e7eddb895a70e0ee146e160ea2952005e18be71f49cdd7f3c04bbb79
size 13419252

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2422e824dbec0cb268d3741dcbf3f2b23a477437052300f181fa7b6c7c364fef
size 252310768

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a9c7d6aff6cb0c084c14aa8c1261b80b2b32c7f03e8910658db037671b893e25
size 13430044

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a6c9a44d2a167f04fff5d4175ad61e934c6177852ab8ab56c319f242a73146e2
size 249145892

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0806539ebce8ffe4bba0efd856d3fbb19ef69118e338335b890533ca7d075c5a
size 13727360

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c64a3e8e9082c71ed46a962a96c6a937932a466a6487ffc575a9ba9688f66c5b
size 248121808

197
seamonkey-GNUmakefile Normal file
View File

@ -0,0 +1,197 @@
#
# Front-end based on GNU make, intended for a more friendly
# integration of the build system with Linux/UNIX distributions,
# as well as for those who still allergy using mach command.
#
# Place it as `mozilla/GNUmakefile' (instead of the existing stub),
# and work under `mozilla/' dir.
#
#
# For build, just use
#
# make
#
# (If you want to separate config stage, use "make configure" and then "make",
# but normally it is done automatically).
#
# For install, use
#
# make install DESTDIR=where_you_want_to_install
#
#
# Additionally, before install you can use:
#
# make locales
#
# to provide all the shipped locales (will appear in a form of langpack extensions).
# If irc and/or calendar are built, their data will be included too.
# (See below for more details about locales target).
#
#
# For clarity, some comparison with the other build methods
# (assume `-jN' is the option for parallel builds, ie. `-j4' for 4-cpu system):
#
# Build stage:
#
# client.mk: make -f client.mk build MOZ_MAKE_FLAGS=-jN
# mach: ./mach build -jN
# THIS: make -jN
#
# Install stage:
#
# client.mk: DESTDIR=where... make -f client.mk install
# mach: DESTDIR=where... make -C $OBJDIR... install
# THIS: make install DESTDIR=where...
#
ifeq (,$(wildcard .mozconfig))
$(error Cannot find .mozconfig file in the current directory)
endif
export MACH_USE_SYSTEM_PYTHON = 1
export MOZBUILD_STATE_PATH=$(CURDIR)/.mozbuild
MACH_CMD = env MACH_USE_SYSTEM_PYTHON=1 MOZBUILD_STATE_PATH=$(CURDIR)/.mozbuild ./mach --log-no-times
OBJDIR := $(shell $(MACH_CMD) environment --format=json | sed -n -e 's/.*"topobjdir": "//' -e 's/".*//p')
OBJDIR_TARGETS = install distribution source-package package clobber
.PHONY: all configure build clean distclean $(OBJDIR_TARGETS)
all: build
configure: $(OBJDIR)/Makefile
$(OBJDIR)/Makefile: .mozconfig
$(MACH_CMD) configure
# Since the bug #1671424, a separate "mach configure" no longer creates $(OBJDIR)/CLOBBER stamp file
# (as full "mach build" does), so do it manually as before.
[ -f $(OBJDIR)/CLOBBER ] || touch -r $(OBJDIR)/.mozconfig.json $(OBJDIR)/CLOBBER
build: $(OBJDIR)/Makefile
$(MAKE) -C $(OBJDIR)
$(OBJDIR_TARGETS):
$(MAKE) -C $(OBJDIR) $@
clean:
$(MACH_CMD) clobber
distclean: clean
rm -f configure js/src/configure
rm -rf $(OBJDIR)
#
# LOCALES
#
#
# The target `locales' creates all the needed langpacks.
#
# By default, all available locales will be used. You can change it
# by overriding SHIPPED_LOCALES variable on the command line.
#
# Additionally, you can use `make locale-LANG' to create one (or several)
# langpack separately.
#
# For example, to build `fr' and 'it' only, use:
#
# make locales SHIPPED_LOCALES="fr it"
#
# to create just `ru' langpack:
#
# make locale-ru
#
# Use `clear-locales' for clearing.
#
#
# NOTE! NOTE! NOTE!
#
# Do NOT use parallel builds (-jN) for locale targets!
#
# It is better to use `-j1' explicitly (`make -j1 locales') to avoid issues.
#
.PHONY: locales clear-locales dictionaries clear-dictionaries
drop_extra := $(if $(or $(filter Windows_NT,$(OS)),$(filter-out Darwin,$(shell uname))),ja-JP-mac,ja)
SHIPPED_LOCALES := $(shell while read loc rest; do echo $$loc; done <comm/suite/locales/shipped-locales)
SHIPPED_LOCALES := $(filter-out en-US $(drop_extra),$(sort $(SHIPPED_LOCALES)))
locales: $(SHIPPED_LOCALES:%=locale-%)
PACKAGE_MANIFEST = $(OBJDIR)/comm/suite/installer/package-manifest
$(PACKAGE_MANIFEST):
cp comm/suite/installer/package-manifest.in $@
sed -i '/MOZ_PKG_MANIFEST =/ s,.*,MOZ_PKG_MANIFEST = $$(topobjdir)/comm/suite/installer/package-manifest,' \
$(OBJDIR)/comm/suite/installer/Makefile
stage := $(OBJDIR)/dist/xpi-stage/locale
.PRECIOUS: $(stage)-%
$(stage)-%:
$(MAKE) -C $(OBJDIR)/comm/suite/locales langpack-$*
# Cleanup of old manifest files
find $@ -name "*.manifest" -print | xargs rm -f
find $@ -name ".mkdir.done" -print | xargs rm -f
find $@/extensions -name "defaults" -type d -print | xargs rm -rf
# Spanish locales other than es-ES are from Latam, where the es-AR langpack is most preferred
[ $* = es-AR ] && sed -i '/"es-AR": {/ s/es-AR/es/' $@/manifest.json || :
locale-%: REL_NAME = extensions/langpack-$*@seamonkey.mozilla.org.xpi
locale-%: DEST_NAME = $(OBJDIR)/dist/bin/$(REL_NAME)
locale-%: manifest_entry = @RESPATH@/$(REL_NAME)
# To avoid performance issues in multi-locale installs, put manifest.json file
# into the beginning of the archive, and do not compress them.
locale-%: $(stage)-% $(PACKAGE_MANIFEST)
rm -f $(DEST_NAME)
cd $<; zip -0 -D -X $(DEST_NAME) manifest.json
cd $<; zip -g -r -9 -D -X $(DEST_NAME) chrome extensions
fgrep $(manifest_entry) $(PACKAGE_MANIFEST) || echo $(manifest_entry) >>$(PACKAGE_MANIFEST)
clear-locales:
sed -i '/langpack-.*@seamonkey.mozilla.org.xpi/ d' $(PACKAGE_MANIFEST)
rm -f $(OBJDIR)/dist/bin/extensions/langpack-*@seamonkey.mozilla.org.xpi
#
# Dictionaries
#
# It is better to use system dictionaries, specifying directory path for them
# by "spellchecker.dictionary_path" preference (or even use symlink when possible).
#
DICT_DEST := $(OBJDIR)/dist/bin/dictionaries
dictionaries: $(SHIPPED_LOCALES:%=$(stage)-%)
cp -f -d $(wildcard $(foreach loc,$(SHIPPED_LOCALES),$(stage)-$(loc)/dictionaries/$(loc).aff $(stage)-$(loc)/dictionaries/$(loc).dic)) $(DICT_DEST)
clear-dictionaries:
rm -f $(filter-out $(DICT_DEST)/en-US.%,$(wildcard $(DICT_DEST)/*.aff $(DICT_DEST)/*.dic))

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f3cb87e82e2f21d04417ed5313275f39c6d6c4164563560c3ce43f6e26306ede
size 3025

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:992d36c915ac5362dfbd0f057c81937d3133fb97fbbea4b51f83bfc19e97696f
size 22975

12
seamonkey-lto.patch Normal file
View File

@ -0,0 +1,12 @@
diff -ruN seamonkey-2.53.17b1.orig/security/sandbox/linux/moz.build seamonkey-2.53.17b1/security/sandbox/linux/moz.build
--- seamonkey-2.53.17b1.orig/security/sandbox/linux/moz.build 2023-06-10 12:41:21.000000000 +0200
+++ seamonkey-2.53.17b1/security/sandbox/linux/moz.build 2023-07-12 09:48:50.099448143 +0200
@@ -101,7 +101,7 @@
# forcing there to be only one partition.
for f in CONFIG['OS_CXXFLAGS']:
if f.startswith('-flto') and CONFIG['CC_TYPE'] != 'clang':
- LDFLAGS += ['--param lto-partitions=1']
+ LDFLAGS += ['--param=lto-partitions=1']
DEFINES['NS_NO_XPCOM'] = True
DisableStlWrapping()

23
seamonkey-man-page.patch Normal file
View File

@ -0,0 +1,23 @@
--- build/moz.configure/old.configure 2024-12-12 18:30:12.000000000 -0600
+++ build/moz.configure/old.configure 2024-12-30 17:18:44.383356721 -0600
@@ -112,6 +112,7 @@
'--enable-zipwriter',
'--includedir',
'--libdir',
+ '--mandir',
'--prefix',
'--with-branding',
'--with-debug-label',
--- comm/suite/installer/Makefile.in 2021-08-08 15:29:32.000000000 +0200
+++ comm/suite/installer/Makefile.in 2022-07-11 14:04:44.710104711 +0200
@@ -145,6 +145,10 @@
include $(topsrcdir)/toolkit/mozapps/installer/packager.mk
+install::
+ $(NSINSTALL) -D $(DESTDIR)$(mandir)/man1
+ $(SYSINSTALL) $(IFLAGS1) $(DIST)/man/man1/$(MOZ_APP_NAME).1 $(DESTDIR)$(mandir)/man1
+
ifeq (Darwin, $(OS_ARCH))
BINPATH = $(_BINPATH)
DEFINES += -DAPPNAME=$(_APPNAME)

1
seamonkey-rpmlintrc Normal file
View File

@ -0,0 +1 @@
addFilter("no-jar-manifest")

5010
seamonkey.changes Normal file

File diff suppressed because it is too large Load Diff

492
seamonkey.spec Normal file
View File

@ -0,0 +1,492 @@
#
# spec file for package seamonkey
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
# 2006-2018 Wolfgang Rosenauer
# 2018-2024 Tristan Miller
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# upstream default is clang (to use gcc for large parts set to 0)
%define clang_build 0
Name: seamonkey
BuildRequires: Mesa-devel
BuildRequires: alsa-devel
BuildRequires: autoconf213
BuildRequires: dbus-1-glib-devel
BuildRequires: fdupes
# Use GCC 13 on Tumbleweed because builds fail with GCC 14:
# <https://bugzilla.mozilla.org/show_bug.cgi?id=1916827>
%if 0%{?suse_version} > 1600
BuildRequires: gcc13-c++
%else
BuildRequires: gcc-c++
%endif
BuildRequires: hunspell-devel
# Using system AV1 decoder depends on pending patch from
# https://bugzilla.mozilla.org/show_bug.cgi?id=1559213
#BuildRequires: dav1d5-devel
BuildRequires: libiw-devel
BuildRequires: libnotify-devel
BuildRequires: libproxy-devel
#BuildRequires: libvpx-devel # Compile errors with 1.10.0
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150200 && 0%{?is_opensuse}
BuildRequires: libwebp-devel >= 1.0.0
# --system-icu builds are failing on Tumbleweed; see https://bugzilla.mozilla.org/show_bug.cgi?id=193317
#BuildRequires: libicu-devel >= 63.1
%endif
BuildRequires: makeinfo
BuildRequires: memory-constraints
BuildRequires: python3-base
BuildRequires: startup-notification-devel
BuildRequires: unzip
BuildRequires: update-desktop-files
BuildRequires: xorg-x11-libXt-devel
BuildRequires: yasm
BuildRequires: zip
BuildRequires: pkgconfig(gdk-x11-2.0)
BuildRequires: pkgconfig(glib-2.0) >= 2.56
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(gtk+-2.0) >= 2.24
BuildRequires: pkgconfig(gtk+-3.0) >= 3.22.30
BuildRequires: pkgconfig(gtk+-unix-print-2.0)
BuildRequires: pkgconfig(gtk+-unix-print-3.0)
BuildRequires: pkgconfig(libffi) > 3.0.9
BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(xcomposite)
BuildRequires: cargo
BuildRequires: rust >= 1.47
BuildRequires: rust-cbindgen
BuildRequires: git
BuildRequires: nasm >= 2.13
#BuildRequires: llvm-devel
%if 0%{?suse_version} > 1600
BuildRequires: clang18-devel
%else
BuildRequires: clang-devel
%endif
Provides: web_browser
Provides: browser(npapi)
Version: 2.53.20
Release: 0
%define releasedate 20250107000000
Summary: An integrated web browser, composer, mail/news client, and IRC client
License: MPL-2.0
Group: Productivity/Networking/Web/Browsers
Url: https://www.seamonkey-project.org/
Source: https://archive.mozilla.org/pub/seamonkey/releases/%{version}/source/seamonkey-%{version}.source.tar.xz
Source1: seamonkey-desktop.tar.bz2
Source2: spellcheck.js
Source3: mozilla.sh.in
Source4: suse-default-prefs.js
Source5: https://archive.mozilla.org/pub/seamonkey/releases/%{version}/source/seamonkey-%{version}.source-l10n.tar.xz
Source7: seamonkey-rpmlintrc
Source11: seamonkey-appdata.tar.bz2
Source12: seamonkey-GNUmakefile
Patch1: mozilla-nongnome-proxies.patch
Patch2: mozilla-ntlm-full-path.patch
Patch3: seamonkey-lto.patch
Patch4: seamonkey-man-page.patch
Patch5: reproducible.patch
Patch6: mozilla-bmo531915.patch
Patch7: mozilla-bmo1896958.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
PreReq: /bin/sh coreutils
Provides: seamonkey-mail = %{version}
Obsoletes: seamonkey-mail <= 2.0
Provides: seamonkey-spellchecker = %{version}
Obsoletes: seamonkey-spellchecker <= 2.0
# venkman is discontinued and removed (not merged)
Provides: seamonkey-venkman = %{version}
Obsoletes: seamonkey-venkman <= 2.29
Recommends: libcanberra0
Recommends: libpulse0
# libavcodec is required for H.264 support but the
# openSUSE version is currently not able to play H.264
# therefore the Packman version is required
# minimum version of libavcodec is 53
Recommends: libavcodec-full >= 0.10.16
%define progname %{name}
%define sources_subdir %{name}-%{version}
%define prefix /usr
%define progdir %_libdir/%{progname}
%define libgssapi libgssapi_krb5.so.2
### build options
%define has_system_cairo 0
%define localize 1
%define with_chatzilla 1
%define with_domi 1
### build options end
# It no longer makes sense to include separate language packs because these
# apply only to the main SeaMonkey suite, but not to the integrated Chatzilla
# or Calendar
%if %localize
Provides: seamonkey-translations-common = %{version}
Obsoletes: seamonkey-translations-common < 2.53.6
Provides: seamonkey-translations-other = %{version}
Obsoletes: seamonkey-translations-other < 2.53.6
Provides: locale(%{name}:cs;de;el;en_GB;es_AR;es_ES;fi;fr;hu;it;ja;ka;nb_NO;nl;pl;pt_BR;pt_PT;ru;sk;sv_SE;zh_CN;zh_TW)
%endif
%if 0%{?with_chatzilla} == 0
Provides: seamonkey-irc = %{version}
%endif
%if 0%{?with_domi} == 0
Provides: seamonkey-dom-inspector = %{version}
%endif
%define __provides_exclude ^lib.*\\.so.*$
%define __requires_exclude ^(libmoz.*|liblgpllibs.*|libxul.*|libld.*|libprldap.*)$
# the following conditions are always met in Factory by definition
BuildRequires: mozilla-nspr-devel >= 4.13.1
PreReq: mozilla-nspr >= %(rpm -q --queryformat '%%{VERSION}' mozilla-nspr)
%if 0%{?sle_version} != 150500 && 0%{?is_opensuse}
BuildRequires: mozilla-nss-devel >= 3.28.6
PreReq: mozilla-nss >= %(rpm -q --queryformat '%%{VERSION}' mozilla-nss)
%endif
%description
SeaMonkey is an all-in-one Internet application suite containing a web
browser, an e-mail and newsgroup client with an included web feed
reader and calendar, an HTML editor and web development tools, and an
IRC client. SeaMonkey is a successor to the popular Netscape
Communicator and Mozilla Application Suite, and (unlike its siblings,
Firefox and Thunderbird) retains Mozilla's more traditional-looking
interface. Many Thunderbird and (legacy) Firefox extensions are
compatible with SeaMonkey.
%package irc
Summary: IRC for SeaMonkey
Group: Productivity/Networking/IRC
PreReq: %{name} = %{version}
%description irc
An IRC client (Chatzilla) for SeaMonkey.
%package venkman
Summary: The SeaMonkey JavaScript Debugger
Group: Development/Tools/Debuggers
PreReq: %{name} = %{version}
%description venkman
A JavaScript debugger for the SeaMonkey web browser.
%package dom-inspector
Summary: The SeaMonkey DOM Inspector
Group: Development/Tools/Navigators
PreReq: %{name} = %{version}
%description dom-inspector
This is a tool that allows you to inspect the DOM for web pages in
SeaMonkey. This is of great use to people who are doing SeaMonkey
chrome development or web page development.
%if %localize
%package translations-common
Summary: Common translations for SeaMonkey
Group: System/Localization
Provides: locale(%{name}:cs;de;el;en_GB;es_AR;es_ES;fi;fr;hu;it;ja;nb_NO;nl;pl;pt_BR;pt_PT;ru;sv_SE;zh_CN;zh_TW)
PreReq: %{name} = %{version}
%description translations-common
This package contains several optional languages for the user interface
of SeaMonkey.
%package translations-other
Summary: Extra translations for SeaMonkey
Group: System/Localization
Provides: locale(%{name}:ka;sk)
PreReq: %{name} = %{version}
%description translations-other
This package contains several optional languages for the user interface
of SeaMonkey.
%endif
%prep
%setup -q -b 1 -b 11 -c
mv %{sources_subdir} mozilla
%if %localize
%setup -q -T -D -c -n %{name}-%{version}/l10n -a 5
%setup -q -T -D
%endif
cd mozilla
cp %{SOURCE12} GNUmakefile
%patch -P 1 -p1
%patch -P 2 -p2
%patch -P 3 -p1
%patch -P 4 -p0
%patch -P 5 -p1
%patch -P 6 -p1
%patch -P 7 -p1
cat << EOF > .mozconfig
mk_add_options MOZILLA_OFFICIAL=1
mk_add_options BUILD_OFFICIAL=1
mk_add_options MOZ_MILESTONE_RELEASE=1
mk_add_options MOZ_MAKE_FLAGS=%{?jobs:-j%jobs}
#mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../obj
ac_add_options --enable-application=comm/suite
ac_add_options --libdir=%{_libdir}
ac_add_options --prefix=%{_prefix}
ac_add_options --mandir=%{_mandir}
%if %localize
ac_add_options --with-l10n-base=$RPM_BUILD_DIR/seamonkey-%{version}/l10n
%endif
ac_add_options --disable-tests
ac_add_options --disable-install-strip
ac_add_options --enable-release
ac_add_options --enable-default-toolkit=cairo-gtk3
# Removed for SeaMonkey 2.53.20
#ac_add_options --disable-gconf
# Elfhack fails on ix86: https://bugzilla.mozilla.org/show_bug.cgi?id=1706264
%ifarch aarch64 ppc %arm %ix86
ac_add_options --disable-elf-hack
%endif
ac_add_options --disable-debug
ac_add_options --with-system-nspr
%if 0%{?sle_version} != 150500 && 0%{?is_opensuse}
ac_add_options --with-system-nss
%endif
ac_add_options --with-system-zlib
# Removed for SeaMonkey 2.53.20
#ac_add_options --with-system-bz2
%if 0%{?suse_version} > 1600 || 0%{?sle_version} >= 150200 && 0%{?is_opensuse}
ac_add_options --with-system-webp
# --system-icu builds are failing on Tumbleweed; see https://bugzilla.mozilla.org/show_bug.cgi?id=193317
#ac_add_options --with-system-icu
%endif
# Compile errors with system libvpx-1.10.0
#ac_add_options --with-system-libvpx
# Using system AV1 decoder depends on pending patch from
# https://bugzilla.mozilla.org/show_bug.cgi?id=1559213
# ac_add_options --with-system-av1
# Mozilla's internal JPEG library is used because of the "turbo" patches
# that make it more efficient than the stock system libjpeg:
# https://bugzilla.mozilla.org/show_bug.cgi?id=573948
#ac_add_options --with-system-jpeg
# The stock system libpng lacks support for APNG, whereas Mozilla's
# internal version suports APNG
#ac_add_options--with-system-png
ac_add_options --disable-crashreporter
ac_add_options --disable-updater
# Removed for SeaMonkey 2.53.20
#ac_add_options --enable-startup-notification
ac_add_options --enable-alsa
%if %has_system_cairo
ac_add_options --enable-system-cairo
%endif
ac_add_options --enable-libproxy
%if 0%{?with_chatzilla}
ac_add_options --with-irc
%endif
%if %with_domi
ac_add_options --with-dominspector
%endif
ac_add_options --enable-calendar
EOF
%build
# no need to add build time to binaries
modified="$(sed -n '/^----/n;s/ - .*$//;p;q' "%{_sourcedir}/%{name}.changes")"
DATE="\"$(date -d "${modified}" "+%%b %%e %%Y")\""
TIME="\"$(date -d "${modified}" "+%%R")\""
find . -regex ".*\.c\|.*\.cpp\|.*\.h" \
-exec sed -i "s/__DATE__/${DATE}/g;s/__TIME__/${TIME}/g" {} +
# As of 2.53.3, i586 builds are failing due to out-of-memory issues,
# so we disable LTO. (This workaround is still necessary as of
# 2.53.7.1.)
%ifarch %ix86
%define _lto_cflags %{nil}
%endif
#
# As of 2.53.13, Tumbleweed builds are failing due to the linker
# issue <https://bugzilla.mozilla.org/show_bug.cgi?id=1778981>
# so we disable LTO.
%if 0%{?suse_version} > 1600
%define _lto_cflags %{nil}
%endif
export SUSE_ASNEEDED=0
export MOZ_BUILD_DATE=%{releasedate}
export MOZILLA_OFFICIAL=1
export BUILD_OFFICIAL=1
export CFLAGS="%{optflags} -fno-strict-aliasing"
%if 0%{?clang_build} == 0
# Use GCC 13 on Tumbleweed because builds fail with GCC 14:
# <https://bugzilla.mozilla.org/show_bug.cgi?id=1916827>
%if 0%{?suse_version} > 1600
export CC=gcc-13
export CXX=g++-13
%else
export CC=gcc
export CXX=g++
%endif
%if 0%{?gcc_version:%{gcc_version}} >= 12
export CFLAGS="$CFLAGS -fimplicit-constexpr"
%endif
%endif
if [ $(gcc -dumpversion | awk -F. '{print $1}') -ge 6 ]; then
export CFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
fi
%ifarch %arm
export CFLAGS="${CFLAGS/-g / }"
%endif
%ifarch %arm %ix86
# Limit RAM usage during link
export LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
%endif
%ifarch ppc64 ppc64le
%if 0%{?clang_build} == 0
export CFLAGS="$CFLAGS -mminimal-toc"
%endif
%endif
export CXXFLAGS="$CFLAGS"
#
%limit_build -m 2000
cd mozilla
make %{?_smp_mflags}
%if %localize
make -j1 locales
%endif
#
%install
cd mozilla
make install DESTDIR=$RPM_BUILD_ROOT
for ext in $RPM_BUILD_ROOT/%{progdir}/extensions/langpack-*@seamonkey.mozilla.org.xpi
do
lang=${ext##*langpack-}
lang=${lang%@*}
lang=${lang/-/_}
echo "%%lang($lang) ${ext#$RPM_BUILD_ROOT}"
done >../seamonkey.lang
# overwrite the mozilla start-script and link it to /usr/bin
mkdir --parents $RPM_BUILD_ROOT%{_bindir}
sed "s:%%PREFIX:%{prefix}:g
s:%%PROGDIR:%{progdir}:g
s:%%APPNAME:seamonkey:g" \
%{SOURCE3} > $RPM_BUILD_ROOT%{progdir}/%{progname}.sh
chmod 755 $RPM_BUILD_ROOT%{progdir}/%{progname}.sh
ln -sf ../..%{progdir}/%{progname}.sh $RPM_BUILD_ROOT%{_bindir}/%{progname}
# apply SUSE defaults
sed -e 's,RPM_VERSION,%{version}-%{release},g
#s,GSSAPI,%{libgssapi},g' \
%{SOURCE4} > suse-default-prefs
cp suse-default-prefs $RPM_BUILD_ROOT%{progdir}/defaults/pref/all-openSUSE.js
rm suse-default-prefs
install -m 644 %{SOURCE2} %{buildroot}%{progdir}/defaults/pref/
# Desktop definition
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
install -m 644 $RPM_BUILD_DIR/*.desktop \
$RPM_BUILD_ROOT%{_datadir}/applications
mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps/
install -m 644 $RPM_BUILD_DIR/*.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/
#
%suse_update_desktop_file seamonkey Network WebBrowser GTK
%suse_update_desktop_file seamonkey-mail Network Email GTK
%suse_update_desktop_file seamonkey-composer Network WebDevelopment GTK
# excludes
rm -f $RPM_BUILD_ROOT%{progdir}/license.txt
rm -f $RPM_BUILD_ROOT%{progdir}/README
rm -f $RPM_BUILD_ROOT%{progdir}/removed-files
rm -f $RPM_BUILD_ROOT%{progdir}/run-mozilla.sh
rm -f $RPM_BUILD_ROOT%{progdir}/seamonkey
rm -f $RPM_BUILD_ROOT%{progdir}/precomplete
rm -f $RPM_BUILD_ROOT%{progdir}/updater
rm -f $RPM_BUILD_ROOT%{progdir}/updater.ini
rm -f $RPM_BUILD_ROOT%{progdir}/update.locale
rm -f $RPM_BUILD_ROOT%{progdir}/update-settings.ini
rm -f $RPM_BUILD_ROOT%{progdir}/icons/updater.png
rm -f $RPM_BUILD_ROOT%{progdir}/dictionaries/*
# Some sites use different partitions for /usr/(lib|lib64) and /usr/share. Since you
# can't create hardlinks across partitions, we'll do this more than once.
%fdupes $RPM_BUILD_ROOT%{progdir}
%fdupes $RPM_BUILD_ROOT%{_datadir}
#INSTALL APPDATA FILES
mkdir -p %{buildroot}%{_datadir}/appdata
install -m0644 -t %{buildroot}%{_datadir}/appdata/ $RPM_BUILD_DIR/*.appdata.xml
%files -f seamonkey.lang
%defattr(-,root,root)
%{_bindir}/%{progname}
%dir %{progdir}
%{progdir}/defaults/
%dir %{progdir}/dictionaries/
%dir %{progdir}/extensions/
%dir %{progdir}/chrome/
%{progdir}/chrome/icons
%{progdir}/extensions/modern@themes.mozilla.org.xpi
%{progdir}/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}.xpi
%{progdir}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}.xpi
%{progdir}/fonts/
%{progdir}/isp/
%{progdir}/application.ini
%{progdir}/blocklist.xml
%{progdir}/chrome.manifest
%{progdir}/dependentlibs.list
%{progdir}/*.so
%{progdir}/omni.ja
%{progdir}/platform.ini
%{progdir}/plugin-container
%{progdir}/%{progname}.sh
%{progdir}/seamonkey-bin
%{progdir}/libmozgtk.so
%{_datadir}/applications/*.desktop
%{_datadir}/pixmaps/*.png
%dir %{_datadir}/appdata
%{_datadir}/appdata/*.appdata.xml
%{_mandir}/*/*
%if 0%{?with_chatzilla}
%files irc
%defattr(-,root,root)
%{progdir}/extensions/{59c81df5-4b7a-477b-912d-4e0fdf64e5f2}.xpi
%endif
%if 0%{?with_domi}
%files dom-inspector
%defattr(-,root,root)
%{progdir}/extensions/inspector*.xpi
%endif
%changelog

1
spellcheck.js Normal file
View File

@ -0,0 +1 @@
pref("spellchecker.dictionary_path", "/usr/share/myspell");

14
suse-default-prefs.js Normal file
View File

@ -0,0 +1,14 @@
pref("browser.display.use_system_colors", true);
pref("browser.startup.homepage_override.mstone", "ignore");
pref("general.smoothScroll", true);
pref("font.default", "sans-serif");
pref("network.negotiate-auth.gsslib", "GSSAPI");
pref("print.print_edge_top", 14); // 1/100 of an inch
pref("print.print_edge_left", 16); // 1/100 of an inch
pref("print.print_edge_right", 16); // 1/100 of an inch
pref("print.print_edge_bottom", 14); // 1/100 of an inch
pref("intl.locale.requested", "");
// do not disable system-global or app-global extensions
pref("extensions.autoDisableScopes", 3);
pref("extensions.shownSelectionUI", true);