Initial Commit

This commit is contained in:
Zachary Hall 2024-09-23 01:43:50 +00:00
commit e6f07cdc58
20 changed files with 844 additions and 0 deletions

View file

@ -0,0 +1,23 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit git-r3
DESCRIPTION="User Mode Linux utilities"
HOMEPAGE="https://user-mode-linux.sourceforge.net"
EGIT_REPO_URI="https://github.com/Lekensteyn/dmg2img.git"
LICENSE=""
SLOT="0"
KEYWORDS="~amd64"
DEPEND="sys-libs/zlib app-arch/bzip2 dev-libs/openssl"
RDEPEND="${DEPEND}"
BDEPEND=""
src_build() {
make dmg2img
}
src_install() {
make DESTDIR="${P}" install
}

1
dev-debug/tug/Manifest Normal file
View file

@ -0,0 +1 @@
DIST v1.1.0.tar.gz 1396473 BLAKE2B 7e20606cdbc103dbb1685aa9cbfee5c44f32adff0ecca0eff9a2243dc382db84b75159c5e8caa79f2bd1004b15959f8dfb37e7b9e2cb3d419cc0b2751dd87904 SHA512 d6320c4fa570dac342882445b83aa188966fb77741d78fa26b1700dac4da7b2cd8f56bb257fac7c859d9ed8965a55c571c8b015ff0b5d8a8948008a6c827beb6

View file

@ -0,0 +1,24 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="ImGui-based GDB frontend"
HOMEPAGE="https://github.com/kyle-sylvestre/Tug"
SRC_URI="https://github.com/kyle-sylvestre/Tug/archive/refs/tags/v${PV}.tar.gz"
LICENSE="GPL-3.0"
SLOT="0"
KEYWORDS="~amd64"
S="${WORKDIR}/Tug-${PV}"
DEPEND="x11-libs/libXcursor x11-libs/libXi x11-libs/libXinerama x11-libs/libXrandr dev-debug/gdb sys-devel/gcc dev-build/make"
RDEPEND="${DEPEND}"
BDEPEND=""
src_build() {
emake DEBUG=0
}
src_install() {
mkdir -p ${D}/usr/bin
cp build_release/tug ${D}/usr/bin/tug
}

View file

@ -0,0 +1,68 @@
--- a/internal/frontend/bridge-gui/bridge-gui/CMakeLists.txt
+++ b/internal/frontend/bridge-gui/bridge-gui/CMakeLists.txt
@@ -165,12 +165,9 @@
WIN32_EXECUTABLE TRUE
MACOSX_BUNDLE TRUE)
-install(TARGETS bridge-gui
- RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}"
- BUNDLE DESTINATION "${CMAKE_INSTALL_PREFIX}"
- LIBRARY DESTINATION "${CMAKE_INSTALL_PREFIX}"
- )
+install(TARGETS bridge-gui)
+if(0)
qt_generate_deploy_app_script(
TARGET bridge-gui
FILENAME_VARIABLE deploy_script
@@ -185,3 +182,4 @@
endif()
include(Deploy${DEPLOY_OS}.cmake)
+endif()
--- a/internal/frontend/bridge-gui/bridge-gui/main.cpp
+++ b/internal/frontend/bridge-gui/bridge-gui/main.cpp
@@ -53,7 +53,7 @@
QString const bridgeLock = "bridge-v3.lock"; ///< The file name used for the bridge-gui lock file.
QString const bridgeGUILock = "bridge-v3-gui.lock"; ///< The file name used for the bridge-gui lock file.
-QString const exeName = "bridge" + exeSuffix; ///< The bridge executable file name.*
+QString const exeName = "proton-mail-bridge" + exeSuffix; ///< The bridge executable file name.*
qint64 const grpcServiceConfigWaitDelayMs = 180000; ///< The wait delay for the gRPC config file in milliseconds.
QString const waitFlag = "--wait"; ///< The wait command-line flag.
--- a/internal/frontend/bridge-gui/bridgepp/CMakeLists.txt
+++ b/internal/frontend/bridge-gui/bridgepp/CMakeLists.txt
@@ -161,6 +161,9 @@
target_precompile_headers(bridgepp PRIVATE Pch.h)
+install(TARGETS bridgepp)
+
+if(0)
#*****************************************************************************************************************************************************
# GoogleTest
#*****************************************************************************************************************************************************
@@ -198,3 +201,4 @@
include(GoogleTest)
gtest_discover_tests(bridgepp-test)
+endif()
--- a/internal/frontend/bridge-gui/BridgeSetup.cmake
+++ b/internal/frontend/bridge-gui/BridgeSetup.cmake
@@ -45,6 +45,7 @@
endif()
+if(0)
#****************************************************************************************************************************************************
# vcpkg, toolchain, and architecture
#****************************************************************************************************************************************************
@@ -87,4 +88,5 @@
set(VCPKG_TARGET_TRIPLET x64-windows)
endif()
-set(CMAKE_TOOLCHAIN_FILE "${VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake" CACHE STRING "toolchain")
\ No newline at end of file
+set(CMAKE_TOOLCHAIN_FILE "${VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake" CACHE STRING "toolchain")
+endif()

View file

@ -0,0 +1,17 @@
[Unit]
Description=Proton Mail IMAP/SMTP bridge
Documentation=https://proton.me/mail/bridge/
[Service]
ExecStart=/usr/bin/proton-mail-bridge --noninteractive
Restart=on-failure
# Hardening
ProtectSystem=full
PrivateTmp=true
SystemCallArchitectures=native
MemoryDenyWriteExecute=true
NoNewPrivileges=true
[Install]
WantedBy=default.target

View file

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription>
ProtonMail bridge has been Open Source since April 2020. Note that this package
is CLI-only for now, as we have run into some problems with Qt vendoring
(see https://github.com/ProtonMail/proton-bridge/issues/16).
</longdescription>
<upstream>
<remote-id type="github">ProtonMail/proton-bridge</remote-id>
</upstream>
</pkgmetadata>

View file

@ -0,0 +1,119 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake desktop go-module systemd xdg-utils
MY_PN="${PN/-mail/}"
MY_P="${MY_PN}-${PV}"
DESCRIPTION="Serves Proton Mail to IMAP/SMTP clients"
HOMEPAGE="https://proton.me/mail/bridge https://github.com/ProtonMail/proton-bridge/"
SRC_URI="https://github.com/ProtonMail/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
https://dev.gentoo.org/~marecki/dists/${CATEGORY}/${PN}/${P}-deps.tar.xz"
LICENSE="Apache-2.0 BSD BSD-2 GPL-3+ ISC LGPL-3+ MIT MPL-2.0 Unlicense"
SLOT="catmeow"
KEYWORDS="~amd64"
IUSE="gui"
# Quite a few tests require Internet access
PROPERTIES="test_network"
RESTRICT="test"
RDEPEND="app-crypt/libsecret
gui? (
>=dev-libs/protobuf-21.12:=
>=dev-libs/sentry-native-0.6.5-r1
dev-qt/qtbase:6=[gui,icu,widgets]
dev-qt/qtdeclarative:6=[widgets]
dev-qt/qtsvg:6=
media-libs/mesa
net-libs/grpc:=
)
"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${PN}-3.3.2-gui_gentoo.patch
)
S="${WORKDIR}"/${MY_P}
src_prepare() {
xdg_environment_reset
default
if use gui; then
local PATCHES=()
BUILD_DIR="${WORKDIR}"/gui_build \
CMAKE_USE_DIR="${S}"/internal/frontend/bridge-gui/bridge-gui \
cmake_src_prepare
fi
}
src_configure() {
if use gui; then
local mycmakeargs=(
-DBRIDGE_APP_FULL_NAME="Proton Mail Bridge"
-DBRIDGE_APP_VERSION="${PV}+git"
-DBRIDGE_REPO_ROOT="${S}"
-DBRIDGE_TAG="NOTAG"
-DBRIDGE_VENDOR="Gentoo Linux"
-DCMAKE_DISABLE_PRECOMPILE_HEADERS=OFF
)
BUILD_DIR="${WORKDIR}"/gui_build \
CMAKE_USE_DIR="${S}"/internal/frontend/bridge-gui/bridge-gui \
cmake_src_configure
fi
}
src_compile() {
emake build-nogui
if use gui; then
BUILD_DIR="${WORKDIR}"/gui_build \
CMAKE_USE_DIR="${S}"/internal/frontend/bridge-gui/bridge-gui \
cmake_src_compile
fi
}
src_test() {
emake test
}
src_install() {
exeinto /usr/bin
newexe bridge ${PN}
if use gui; then
BUILD_DIR="${WORKDIR}"/gui_build \
CMAKE_USE_DIR="${S}"/internal/frontend/bridge-gui/bridge-gui \
cmake_src_install
mv "${ED}"/usr/bin/bridge-gui "${ED}"/usr/bin/${PN}-gui || die
newicon "${S}"/dist/bridge.svg ${PN}.svg
make_desktop_entry ${PN}-gui "Proton Mail Bridge" ${PN}.svg "Email;Network"
fi
systemd_newuserunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
einstalldocs
}
pkg_postinst() {
if [[ -n "${REPLACING_VERSIONS}" ]]; then
local oldver
for oldver in ${REPLACING_VERSIONS}; do
if ver_test "${oldver}" -lt 3.2.0; then
ewarn "Please note that since version 3.2.0, ${PN} by default shares usage statistics with upstream."
ewarn "For details, please see"
ewarn
ewarn " https://proton.me/support/share-usage-statistics"
ewarn
ewarn "This behaviour can be disabled through ${PN}-gui, under Advanced Settings."
ewarn
break
fi
done
fi
}

View file

@ -0,0 +1 @@
DIST 204adf1f3e1b267d0d78313cea4f518cd7d9d4cb.tar.gz 9587763 BLAKE2B 63ad7baa983098bc0413018463b37c121b10657952e2f8365ad6509420d1bc2885a047f6269b200f2ba488f47e700226c9d8bc61ab888f3a2aee55caa3fc6e7f SHA512 5045cd48d328ae93e5439c4d65a55c363f771d1b9df49e9d81b7838313e49a3985b373074d8e3da6a2060587b5e7a1277f6429cd92ebc0f5e130128b15c540bc

View file

@ -0,0 +1,172 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# NOTE: The comments in this file are for instruction and documentation.
# They're not meant to appear with your final, production ebuild. Please
# remember to remove them before submitting or committing your ebuild. That
# doesn't mean you can't add your own comments though.
# The EAPI variable tells the ebuild format in use.
# It is suggested that you use the latest EAPI approved by the Council.
# The PMS contains specifications for all EAPIs. Eclasses will test for this
# variable if they need to use features that are not universal in all EAPIs.
# If an eclass doesn't support latest EAPI, use the previous EAPI instead.
EAPI=8
# inherit lists eclasses to inherit functions from. For example, an ebuild
# that needs the eautoreconf function from autotools.eclass won't work
# without the following line:
inherit cmake git-r3
#
# Eclasses tend to list descriptions of how to use their functions properly.
# Take a look at the eclass/ directory for more examples.
# Short one-line description of this package.
DESCRIPTION="Audio player that supports looping audio metadata"
# Homepage, not used by Portage directly but handy for developer reference
HOMEPAGE="https://complecwaft.com/catmeow/neko-player/"
# Point to any required sources; these will be automatically downloaded by
# Portage.
EGIT_REPO_URI="https://complecwaft.com/catmeow/neko-player.git"
EGIT_SUBMODULES=(subprojects/vgmstream subprojects/SDL-Mixer-X backends/ui/imgui/imgui backends/imgui/IconFontsCppHeaders subprojects/jsoncpp)
EGIT_COMMIT="HEAD^1"
# Source directory; the dir where the sources can be found (automatically
# unpacked) inside ${WORKDIR}. The default value for S is ${WORKDIR}/${P}
# If you don't need to change it, leave the S= line out of the ebuild
# to keep it tidy.
#S="${WORKDIR}/${P}"
# License of the package. This must match the name of file(s) in the
# licenses/ directory. For complex license combination see the developer
# docs on gentoo.org for details.
LICENSE=""
# The SLOT variable is used to tell Portage if it's OK to keep multiple
# versions of the same package installed at the same time. For example,
# if we have a libfoo-1.2.2 and libfoo-1.3.2 (which is not compatible
# with 1.2.2), it would be optimal to instruct Portage to not remove
# libfoo-1.2.2 if we decide to upgrade to libfoo-1.3.2. To do this,
# we specify SLOT="1.2" in libfoo-1.2.2 and SLOT="1.3" in libfoo-1.3.2.
# emerge clean understands SLOTs, and will keep the most recent version
# of each SLOT and remove everything else.
# Note that normal applications should use SLOT="0" if possible, since
# there should only be exactly one version installed at a time.
# Do not use SLOT="", because the SLOT variable must not be empty.
SLOT="0"
# Using KEYWORDS, we can record masking information *inside* an ebuild
# instead of relying on an external package.mask file. Right now, you
# should set the KEYWORDS variable for every ebuild so that it contains
# the names of all the architectures with which the ebuild works.
# All of the official architectures can be found in the arch.list file
# which is in the profiles/ directory. Usually you should just set this
# to "~amd64". The ~ in front of the architecture indicates that the
# package is new and should be considered unstable until testing proves
# its stability. So, if you've confirmed that your ebuild works on
# amd64 and ppc, you'd specify:
# KEYWORDS="~amd64 ~ppc"
# Once packages go stable, the ~ prefix is removed.
# For binary packages, use -* and then list the archs the bin package
# exists for. If the package was for an x86 binary package, then
# KEYWORDS would be set like this: KEYWORDS="-* x86"
# Do not use KEYWORDS="*"; this is not valid in an ebuild context.
KEYWORDS="amd64"
# Comprehensive list of any and all USE flags leveraged in the ebuild,
# with some exceptions, e.g., ARCH specific flags like "amd64" or "ppc".
# Not needed if the ebuild doesn't use any USE flags.
IUSE=""
# A space delimited list of portage features to restrict. man 5 ebuild
# for details. Usually not needed.
RESTRICT="network-sandbox"
# Run-time dependencies. Must be defined to whatever this depends on to run.
# Example:
# ssl? ( >=dev-libs/openssl-1.0.2q:0= )
# >=dev-lang/perl-5.24.3-r1
# It is advisable to use the >= syntax show above, to reflect what you
# had installed on your system when you tested the package. Then
# other users hopefully won't be caught without the right version of
# a dependency.
#RDEPEND=""
# Build-time dependencies that need to be binary compatible with the system
# being built (CHOST). These include libraries that we link against.
# The below is valid if the same run-time depends are required to compile.
DEPEND="media-libs/libsdl2 media-libs/sdl2-image media-libs/libsoundtouch dev-libs/jsoncpp media-sound/fluidsynth media-sound/mpg123 media-libs/libogg media-libs/opus media-libs/flac media-sound/wavpack media-libs/libmodplug dev-cpp/sdbus-c++"
# Build-time dependencies that are executed during the emerge process, and
# only need to be present in the native build system (CBUILD). Example:
BDEPEND="virtual/pkgconfig"
MYCMAKEARGS=( "-DDISABLE_GTK_UI=ON" )
# The following src_configure function is implemented as default by portage, so
# you only need to call it if you need a different behaviour.
#src_configure() {
# Most open-source packages use GNU autoconf for configuration.
# The default, quickest (and preferred) way of running configure is:
#econf
#
# You could use something similar to the following lines to
# configure your package before compilation. The "|| die" portion
# at the end will stop the build process if the command fails.
# You should use this at the end of critical commands in the build
# process. (Hint: Most commands are critical, that is, the build
# process should abort if they aren't successful.)
#./configure \
# --host=${CHOST} \
# --prefix=/usr \
# --infodir=/usr/share/info \
# --mandir=/usr/share/man || die
# Note the use of --infodir and --mandir, above. This is to make
# this package FHS 2.2-compliant. For more information, see
# https://wiki.linuxfoundation.org/lsb/fhs
#}
# The following src_compile function is implemented as default by portage, so
# you only need to call it, if you need different behaviour.
#src_compile() {
# emake is a script that calls the standard GNU make with parallel
# building options for speedier builds (especially on SMP systems).
# Try emake first. It might not work for some packages, because
# some makefiles have bugs related to parallelism, in these cases,
# use emake -j1 to limit make to a single process. The -j1 is a
# visual clue to others that the makefiles have bugs that have been
# worked around.
#emake
#}
# The following src_install function is implemented as default by portage, so
# you only need to call it, if you need different behaviour.
#src_install() {
# You must *personally verify* that this trick doesn't install
# anything outside of DESTDIR; do this by reading and
# understanding the install part of the Makefiles.
# This is the preferred way to install.
#emake DESTDIR="${D}" install
# When you hit a failure with emake, do not just use make. It is
# better to fix the Makefiles to allow proper parallelization.
# If you fail with that, use "emake -j1", it's still better than make.
# For Makefiles that don't make proper use of DESTDIR, setting
# prefix is often an alternative. However if you do this, then
# you also need to specify mandir and infodir, since they were
# passed to ./configure as absolute paths (overriding the prefix
# setting).
#emake \
# prefix="${D}"/usr \
# mandir="${D}"/usr/share/man \
# infodir="${D}"/usr/share/info \
# libdir="${D}"/usr/$(get_libdir) \
# install
# Again, verify the Makefiles! We don't want anything falling
# outside of ${D}.
#}

3
metadata/layout.conf Normal file
View file

@ -0,0 +1,3 @@
masters = gentoo
thin-manifests = true
sign-manifests = false

1
profiles/eapi Normal file
View file

@ -0,0 +1 @@
8

1
profiles/repo_name Normal file
View file

@ -0,0 +1 @@
catmeow_repo

View file

@ -0,0 +1 @@
DIST uml_utilities_20070815.tar.bz2 50159 BLAKE2B d11e7bc92892f2f5bc655bf580d66b1364d2c1f8e97e85ff39a6aeb85ed979c33c1d7c084b0a5e442df5622f7fa657677a322748e44c7ecf67f14d6b39a7536c SHA512 a246ca04bcba2282ceb976e69399f496cc85d14ee13c1e4704f943d7fcef032eda92e9e8c4341f6e8878c6353ed97c7f77b283e62e152987c792a7a6258f1d1a

View file

@ -0,0 +1,10 @@
--- a/uml_net/host.c 2024-09-19 18:19:18.936522210 -0700
+++ b/uml_net/host.c 2024-09-19 18:19:09.076332138 -0700
@@ -8,6 +8,7 @@
#include <errno.h>
#include <string.h>
#include <ctype.h>
+#include <sys/sysmacros.h>
#include <sys/wait.h>
#include <sys/stat.h>
#include "output.h"

View file

@ -0,0 +1,26 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="User Mode Linux utilities"
HOMEPAGE="https://user-mode-linux.sourceforge.net"
SRC_URI="https://user-mode-linux.sourceforge.net/uml_utilities_20070815.tar.bz2"
PATCHES=("${FILESDIR}/host.patch")
LICENSE=""
SLOT="0"
KEYWORDS="~amd64"
S="${WORKDIR}/tools-20070815"
DEPEND="fuse"
RDEPEND="${DEPEND}"
BDEPEND=""
src_prepare() {
default
}
src_build() {
make
}
src_install() {
make DESTDIR="${P}" install
}

View file

@ -0,0 +1 @@
DIST palemoon-33.3.1.linux-x86_64-gtk3.tar.xz 38675144 BLAKE2B a8aac05de6cf53c50e9ebd26380f789c2295ab4235f3f9d746780cd71efd6c35a0282e5703816d6bd34a49c892311650968962b2e50d4fd0b4dbc88539c2eafd SHA512 937fba338c0e9be3c9818bdab4944b40b4b14209b033b2e86963a969a4df687e43ae73e7cae124ab35db147fcad999127a0eba02c9894d80fc8ad43fd8d74669

View file

@ -0,0 +1,76 @@
#!/bin/bash
##
## Usage:
##
## $ palemoon-bin
##
## This script is meant to run Pale Moon in Gentoo.
cmdname=$(basename "$0")
##
## Variables
##
MOZ_ARCH=$(uname -m)
case ${MOZ_ARCH} in
x86_64|s390x|sparc64)
MOZ_LIB_DIR="@PREFIX@/lib64"
SECONDARY_LIB_DIR="@PREFIX@/lib"
;;
*)
MOZ_LIB_DIR="@PREFIX@/lib"
SECONDARY_LIB_DIR="@PREFIX@/lib64"
;;
esac
MOZ_FIREFOX_FILE="palemoon-bin"
MOZILLA_FIVE_HOME="@MOZ_FIVE_HOME@"
MOZ_PROGRAM="${MOZILLA_FIVE_HOME}/${MOZ_FIREFOX_FILE}"
##
## Set MOZ_APP_LAUNCHER for gnome-session
##
export MOZ_APP_LAUNCHER="@PREFIX@/bin/${cmdname}"
##
## Disable the GNOME crash dialog, Mozilla has its own
##
if [[ "${XDG_CURRENT_DESKTOP}" == "GNOME" ]]; then
GNOME_DISABLE_CRASH_DIALOG=1
export GNOME_DISABLE_CRASH_DIALOG
fi
##
## Enable Xinput2 (#617344)
##
# respect user settings
MOZ_USE_XINPUT2=${MOZ_USE_XINPUT2:-auto}
if [[ ${MOZ_USE_XINPUT2} == auto && -n ${WAYLAND_DISPLAY} ]]; then
# enabling XINPUT2 should be safe for all wayland users
MOZ_USE_XINPUT2=1
elif [[ ${MOZ_USE_XINPUT2} == auto && ${XDG_CURRENT_DESKTOP^^} == KDE ]]; then
# XINPUT2 is known to cause problems for KWin users
MOZ_USE_XINPUT2=0
elif [[ ${MOZ_USE_XINPUT2} == auto && ${XDG_CURRENT_DESKTOP^^} == LXQT ]]; then
# LXQt uses KWin
MOZ_USE_XINPUT2=0
elif [[ ${MOZ_USE_XINPUT2} == auto ]]; then
# should work on Mate, Xfce, FluxBox, OpenBox and all the others ...
MOZ_USE_XINPUT2=1
fi
[[ ${MOZ_USE_XINPUT2} != 0 ]] && export MOZ_USE_XINPUT2=${MOZ_USE_XINPUT2}
# Don't throw "old profile" dialog box.
export MOZ_ALLOW_DOWNGRADE=1
##
## Set special variables for -bin
export LD_LIBRARY_PATH="${MOZILLA_FIVE_HOME}"
export GTK_PATH="${MOZ_LIB_DIR}/gtk-3.0"
# Run the browser
exec ${MOZ_PROGRAM} "${@}"

View file

@ -0,0 +1,123 @@
[Desktop Entry]
Version=1.0
Name=@NAME@
GenericName=Web Browser
Comment=Browse the Web
Exec=@EXEC@ %u
Icon=@ICON@
Terminal=false
Type=Application
MimeType=application/pdf;application/vnd.mozilla.xul+xml;application/xhtml+xml;text/html;text/mml;text/xml;x-scheme-handler/http;x-scheme-handler/https;
StartupNotify=true
Categories=Network;WebBrowser;
Keywords=web;browser;internet;
Actions=new-window;
StartupWMClass=palemoon
[Desktop Action new-window]
Name=Open a New Window
Name[ach]=Dirica manyen
Name[af]=Nuwe venster
Name[an]=Nueva finestra
Name[ar]=نافذة جديدة
Name[as]=
Name[ast]=Ventana nueva
Name[az]=Yeni Pəncərə
Name[be]=Новае акно
Name[bg]=Нов прозорец
Name[bn_BD]= (N)
Name[bn_IN]=
Name[br]=Prenestr nevez
Name[brx]= '(N)
Name[bs]=Novi prozor
Name[ca]=Finestra nova
Name[cak]=K'ak'a' tzuwäch
Name[cs]=Nové okno
Name[cy]=Ffenestr Newydd
Name[da]=Nyt vindue
Name[de]=Neues Fenster
Name[dsb]=Nowe wokno
Name[el]=Νέο παράθυρο
Name[en_GB]=New Window
Name[en_US]=New Window
Name[en_ZA]=New Window
Name[eo]=Nova fenestro
Name[es_AR]=Nueva ventana
Name[es_CL]=Nueva ventana
Name[es_ES]=Nueva ventana
Name[es_MX]=Nueva ventana
Name[et]=Uus aken
Name[eu]=Leiho berria
Name[fa]=پنجره جدید
Name[ff]=Henorde Hesere
Name[fi]=Uusi ikkuna
Name[fr]=Nouvelle fenêtre
Name[fy_NL]=Nij finster
Name[ga_IE]=Fuinneog Nua
Name[gd]=Uinneag ùr
Name[gl]=Nova xanela
Name[gn]=Ovetã pyahu
Name[gu_IN]= િ
Name[he]=חלון חדש
Name[hi_IN]= ि
Name[hr]=Novi prozor
Name[hsb]=Nowe wokno
Name[hu]=Új ablak
Name[hy_AM]=Նոր Պատուհան
Name[id]=Jendela Baru
Name[is]=Nýr gluggi
Name[it]=Nuova finestra
Name[ja]=
Name[ja_JP-mac]=
Name[ka]=
Name[kk]=Жаңа терезе
Name[km]=
Name[kn]= ಿಿ
Name[ko]=
Name[kok]=
Name[ks]=نئئ وِنڈو
Name[lij]=Neuvo barcon
Name[lo]=
Name[lt]=Naujas langas
Name[ltg]=Jauns lūgs
Name[lv]=Jauns logs
Name[mai]= ि
Name[mk]=Нов прозорец
Name[ml]=ി
Name[mr]=
Name[ms]=Tetingkap Baru
Name[my]=
Name[nb_NO]=Nytt vindu
Name[ne_NP]=
Name[nl]=Nieuw venster
Name[nn_NO]=Nytt vindauge
Name[or]= ି
Name[pa_IN]= ਿ
Name[pl]=Nowe okno
Name[pt_BR]=Nova janela
Name[pt_PT]=Nova janela
Name[rm]=Nova fanestra
Name[ro]=Fereastră nouă
Name[ru]=Новое окно
Name[sat]= ि (N)
Name[si]=
Name[sk]=Nové okno
Name[sl]=Novo okno
Name[son]=Zanfun taaga
Name[sq]=Dritare e Re
Name[sr]=Нови прозор
Name[sv_SE]=Nytt fönster
Name[ta]=ி
Name[te]= ి
Name[th]=
Name[tr]=Yeni pencere
Name[tsz]=Eraatarakua jimpani
Name[uk]=Нове вікно
Name[ur]=نیا دریچہ
Name[uz]=Yangi oyna
Name[vi]=Ca s mi
Name[wo]=Palanteer bu bees
Name[xh]=Ifestile entsha
Name[zh_CN]=
Name[zh_TW]=
Exec=@EXEC@ --new-window %u

View file

@ -0,0 +1,9 @@
[Desktop Entry]
Name=Pale Moon (bin)
Comment=Pale Moon Browser
Exec=/usr/bin/palemoon-bin %u
Icon=palemoon-bin
Terminal=false
Type=Application
MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
Categories=Network;WebBrowser;

View file

@ -0,0 +1,155 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MOZ_PV=${PV}
MOZ_PV_SUFFIX=
MOZ_PN="${PN%-bin}"
MOZ_P="${MOZ_PN}-${MOZ_PV}"
MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
inherit desktop linux-info optfeature pax-utils xdg
SRC_URI="https://rm-us.palemoon.org/release/${MOZ_PN}-${MOZ_PV}.linux-x86_64-gtk3.tar.xz"
DESCRIPTION="Fork of Firefox"
KEYWORDS="-* amd64"
LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
SLOT=0
IUSE="+alsa +gmp-autoupdate +pulseaudio selinux wayland"
RESTRICT="strip"
BDEPEND="app-arch/unzip"
RDEPEND="${DEPEND}
!www-client/firefox-bin:0
>=app-accessibility/at-spi2-core-2.46.0:2
>=dev-libs/glib-2.26:2
media-libs/alsa-lib
media-libs/fontconfig
>=media-libs/freetype-2.4.10
sys-apps/dbus
virtual/freedesktop-icon-theme
>=x11-libs/cairo-1.10[X]
x11-libs/gdk-pixbuf:2
>=x11-libs/gtk+-3.11:3[X,wayland?]
x11-libs/libX11
x11-libs/libXcomposite
x11-libs/libXcursor
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXi
x11-libs/libXrandr
x11-libs/libXrender
x11-libs/libxcb
>=x11-libs/pango-1.22.0
alsa? (
!pulseaudio? ( media-sound/apulse )
)
pulseaudio? ( media-libs/libpulse )
selinux? ( sec-policy/selinux-mozilla )
"
QA_PREBUILT="opt/${MOZ_PN}/*"
pkg_setup() {
CONFIG_CHECK="~SECCOMP"
WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
linux-info_pkg_setup
}
src_unpack() {
local _lp_dir="${WORKDIR}/language_packs"
local _src_file
mkdir "${S}" || die
if [[ ! -d "${_lp_dir}" ]] ; then
mkdir "${_lp_dir}" || die
fi
for _src_file in ${A} ; do
if [[ ${_src_file} == *.xpi ]]; then
cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
else
MY_SRC_FILE=${_src_file}
fi
done
}
src_install() {
# Set MOZILLA_FIVE_HOME
local MOZILLA_FIVE_HOME="/opt/${MOZ_PN}"
dodir /opt
pushd "${ED}"/opt &>/dev/null || die
unpack "${MY_SRC_FILE}"
popd &>/dev/null || die
# Install policy (currently only used to disable application updates)
local icon_srcdir="${ED}/${MOZILLA_FIVE_HOME}/browser/chrome/icons/default"
insinto /usr/share/icons/hicolor/symbolic/apps
local icon size
for icon in "${icon_srcdir}"/default*.png ; do
size=${icon%.png}
size=${size##*/default}
if [[ ${size} -eq 48 ]] ; then
newicon "${icon}" ${PN}.png
fi
newicon -s ${size} "${icon}" ${PN}.png
done
# Install menu
local app_name="Pale Moon (bin)"
local desktop_file="${FILESDIR}/${PN}-r3.desktop"
local desktop_filename="${PN}.desktop"
local icon="${PN}"
local use_wayland="false"
local exec_command="${PN}"
cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
# Add apulse support through our wrapper shell launcher, patchelf-method broken since 119.0.
# See bgo#916230
local apulselib=
if use alsa && ! use pulseaudio ; then
apulselib="${EPREFIX}/usr/$(get_libdir)/apulse"
fi
sed -i \
-e "s:@NAME@:${app_name}:" \
-e "s:@EXEC@:${exec_command}:" \
-e "s:@ICON@:${icon}:" \
"${WORKDIR}/${PN}.desktop-template" \
|| die
newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
rm "${WORKDIR}/${PN}.desktop-template" || die
# Install wrapper script
[[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
# Update wrapper
sed -i \
-e "s:@PREFIX@:${EPREFIX}/usr:" \
-e "s:@MOZ_FIVE_HOME@:${EPREFIX}${MOZILLA_FIVE_HOME}:" \
"${ED}/usr/bin/${PN}" \
|| die
}
pkg_postinst() {
xdg_pkg_postinst
}