From e6f07cdc588ae852b4a56c3b3d6705e16d4fabc9 Mon Sep 17 00:00:00 2001 From: Zachary Hall Date: Mon, 23 Sep 2024 01:43:50 +0000 Subject: [PATCH] Initial Commit --- app-emulation/dmg2img/dmg2img-9999.ebuild | 23 +++ dev-debug/tug/Manifest | 1 + dev-debug/tug/tug-1.1.0.ebuild | 24 +++ .../proton-mail-bridge-3.3.2-gui_gentoo.patch | 68 +++++++ .../files/proton-mail-bridge.service-r1 | 17 ++ mail-mta/proton-mail-bridge/metadata.xml | 13 ++ .../proton-mail-bridge-3.13.0-r1.ebuild | 119 ++++++++++++ media-sound/neko-player/Manifest | 1 + .../neko-player/neko-player-999.ebuild | 172 ++++++++++++++++++ metadata/layout.conf | 3 + profiles/eapi | 1 + profiles/repo_name | 1 + sys-kernel/uml_utilities/Manifest | 1 + sys-kernel/uml_utilities/files/host.patch | 10 + .../uml_utilities-20070815.ebuild | 26 +++ www-client/palemoon-bin/Manifest | 1 + .../palemoon-bin/files/palemoon-bin-r1.sh | 76 ++++++++ .../files/palemoon-bin-r3.desktop | 123 +++++++++++++ .../palemoon-bin/files/palemoon-bin.desktop | 9 + .../palemoon-bin/palemoon-bin-33.3.1.ebuild | 155 ++++++++++++++++ 20 files changed, 844 insertions(+) create mode 100644 app-emulation/dmg2img/dmg2img-9999.ebuild create mode 100644 dev-debug/tug/Manifest create mode 100644 dev-debug/tug/tug-1.1.0.ebuild create mode 100644 mail-mta/proton-mail-bridge/files/proton-mail-bridge-3.3.2-gui_gentoo.patch create mode 100644 mail-mta/proton-mail-bridge/files/proton-mail-bridge.service-r1 create mode 100644 mail-mta/proton-mail-bridge/metadata.xml create mode 100644 mail-mta/proton-mail-bridge/proton-mail-bridge-3.13.0-r1.ebuild create mode 100644 media-sound/neko-player/Manifest create mode 100644 media-sound/neko-player/neko-player-999.ebuild create mode 100644 metadata/layout.conf create mode 100644 profiles/eapi create mode 100644 profiles/repo_name create mode 100644 sys-kernel/uml_utilities/Manifest create mode 100644 sys-kernel/uml_utilities/files/host.patch create mode 100644 sys-kernel/uml_utilities/uml_utilities-20070815.ebuild create mode 100644 www-client/palemoon-bin/Manifest create mode 100644 www-client/palemoon-bin/files/palemoon-bin-r1.sh create mode 100644 www-client/palemoon-bin/files/palemoon-bin-r3.desktop create mode 100644 www-client/palemoon-bin/files/palemoon-bin.desktop create mode 100644 www-client/palemoon-bin/palemoon-bin-33.3.1.ebuild diff --git a/app-emulation/dmg2img/dmg2img-9999.ebuild b/app-emulation/dmg2img/dmg2img-9999.ebuild new file mode 100644 index 0000000..cecaa11 --- /dev/null +++ b/app-emulation/dmg2img/dmg2img-9999.ebuild @@ -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 +} diff --git a/dev-debug/tug/Manifest b/dev-debug/tug/Manifest new file mode 100644 index 0000000..1074a8d --- /dev/null +++ b/dev-debug/tug/Manifest @@ -0,0 +1 @@ +DIST v1.1.0.tar.gz 1396473 BLAKE2B 7e20606cdbc103dbb1685aa9cbfee5c44f32adff0ecca0eff9a2243dc382db84b75159c5e8caa79f2bd1004b15959f8dfb37e7b9e2cb3d419cc0b2751dd87904 SHA512 d6320c4fa570dac342882445b83aa188966fb77741d78fa26b1700dac4da7b2cd8f56bb257fac7c859d9ed8965a55c571c8b015ff0b5d8a8948008a6c827beb6 diff --git a/dev-debug/tug/tug-1.1.0.ebuild b/dev-debug/tug/tug-1.1.0.ebuild new file mode 100644 index 0000000..c49d870 --- /dev/null +++ b/dev-debug/tug/tug-1.1.0.ebuild @@ -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 +} diff --git a/mail-mta/proton-mail-bridge/files/proton-mail-bridge-3.3.2-gui_gentoo.patch b/mail-mta/proton-mail-bridge/files/proton-mail-bridge-3.3.2-gui_gentoo.patch new file mode 100644 index 0000000..6bf3462 --- /dev/null +++ b/mail-mta/proton-mail-bridge/files/proton-mail-bridge-3.3.2-gui_gentoo.patch @@ -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() diff --git a/mail-mta/proton-mail-bridge/files/proton-mail-bridge.service-r1 b/mail-mta/proton-mail-bridge/files/proton-mail-bridge.service-r1 new file mode 100644 index 0000000..8dd8980 --- /dev/null +++ b/mail-mta/proton-mail-bridge/files/proton-mail-bridge.service-r1 @@ -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 diff --git a/mail-mta/proton-mail-bridge/metadata.xml b/mail-mta/proton-mail-bridge/metadata.xml new file mode 100644 index 0000000..7b0d7b6 --- /dev/null +++ b/mail-mta/proton-mail-bridge/metadata.xml @@ -0,0 +1,13 @@ + + + + + + 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). + + + ProtonMail/proton-bridge + + diff --git a/mail-mta/proton-mail-bridge/proton-mail-bridge-3.13.0-r1.ebuild b/mail-mta/proton-mail-bridge/proton-mail-bridge-3.13.0-r1.ebuild new file mode 100644 index 0000000..1bc4f28 --- /dev/null +++ b/mail-mta/proton-mail-bridge/proton-mail-bridge-3.13.0-r1.ebuild @@ -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 +} diff --git a/media-sound/neko-player/Manifest b/media-sound/neko-player/Manifest new file mode 100644 index 0000000..cd65e3e --- /dev/null +++ b/media-sound/neko-player/Manifest @@ -0,0 +1 @@ +DIST 204adf1f3e1b267d0d78313cea4f518cd7d9d4cb.tar.gz 9587763 BLAKE2B 63ad7baa983098bc0413018463b37c121b10657952e2f8365ad6509420d1bc2885a047f6269b200f2ba488f47e700226c9d8bc61ab888f3a2aee55caa3fc6e7f SHA512 5045cd48d328ae93e5439c4d65a55c363f771d1b9df49e9d81b7838313e49a3985b373074d8e3da6a2060587b5e7a1277f6429cd92ebc0f5e130128b15c540bc diff --git a/media-sound/neko-player/neko-player-999.ebuild b/media-sound/neko-player/neko-player-999.ebuild new file mode 100644 index 0000000..42b834d --- /dev/null +++ b/media-sound/neko-player/neko-player-999.ebuild @@ -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}. +#} diff --git a/metadata/layout.conf b/metadata/layout.conf new file mode 100644 index 0000000..20fcfea --- /dev/null +++ b/metadata/layout.conf @@ -0,0 +1,3 @@ +masters = gentoo +thin-manifests = true +sign-manifests = false diff --git a/profiles/eapi b/profiles/eapi new file mode 100644 index 0000000..45a4fb7 --- /dev/null +++ b/profiles/eapi @@ -0,0 +1 @@ +8 diff --git a/profiles/repo_name b/profiles/repo_name new file mode 100644 index 0000000..555a51c --- /dev/null +++ b/profiles/repo_name @@ -0,0 +1 @@ +catmeow_repo diff --git a/sys-kernel/uml_utilities/Manifest b/sys-kernel/uml_utilities/Manifest new file mode 100644 index 0000000..7eabae1 --- /dev/null +++ b/sys-kernel/uml_utilities/Manifest @@ -0,0 +1 @@ +DIST uml_utilities_20070815.tar.bz2 50159 BLAKE2B d11e7bc92892f2f5bc655bf580d66b1364d2c1f8e97e85ff39a6aeb85ed979c33c1d7c084b0a5e442df5622f7fa657677a322748e44c7ecf67f14d6b39a7536c SHA512 a246ca04bcba2282ceb976e69399f496cc85d14ee13c1e4704f943d7fcef032eda92e9e8c4341f6e8878c6353ed97c7f77b283e62e152987c792a7a6258f1d1a diff --git a/sys-kernel/uml_utilities/files/host.patch b/sys-kernel/uml_utilities/files/host.patch new file mode 100644 index 0000000..748b410 --- /dev/null +++ b/sys-kernel/uml_utilities/files/host.patch @@ -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 + #include + #include ++#include + #include + #include + #include "output.h" diff --git a/sys-kernel/uml_utilities/uml_utilities-20070815.ebuild b/sys-kernel/uml_utilities/uml_utilities-20070815.ebuild new file mode 100644 index 0000000..7c6594d --- /dev/null +++ b/sys-kernel/uml_utilities/uml_utilities-20070815.ebuild @@ -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 +} diff --git a/www-client/palemoon-bin/Manifest b/www-client/palemoon-bin/Manifest new file mode 100644 index 0000000..d5cd197 --- /dev/null +++ b/www-client/palemoon-bin/Manifest @@ -0,0 +1 @@ +DIST palemoon-33.3.1.linux-x86_64-gtk3.tar.xz 38675144 BLAKE2B a8aac05de6cf53c50e9ebd26380f789c2295ab4235f3f9d746780cd71efd6c35a0282e5703816d6bd34a49c892311650968962b2e50d4fd0b4dbc88539c2eafd SHA512 937fba338c0e9be3c9818bdab4944b40b4b14209b033b2e86963a969a4df687e43ae73e7cae124ab35db147fcad999127a0eba02c9894d80fc8ad43fd8d74669 diff --git a/www-client/palemoon-bin/files/palemoon-bin-r1.sh b/www-client/palemoon-bin/files/palemoon-bin-r1.sh new file mode 100644 index 0000000..5f83fc7 --- /dev/null +++ b/www-client/palemoon-bin/files/palemoon-bin-r1.sh @@ -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} "${@}" diff --git a/www-client/palemoon-bin/files/palemoon-bin-r3.desktop b/www-client/palemoon-bin/files/palemoon-bin-r3.desktop new file mode 100644 index 0000000..81cdb16 --- /dev/null +++ b/www-client/palemoon-bin/files/palemoon-bin-r3.desktop @@ -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]=Cửa sổ mới +Name[wo]=Palanteer bu bees +Name[xh]=Ifestile entsha +Name[zh_CN]=新建窗口 +Name[zh_TW]=開新視窗 +Exec=@EXEC@ --new-window %u diff --git a/www-client/palemoon-bin/files/palemoon-bin.desktop b/www-client/palemoon-bin/files/palemoon-bin.desktop new file mode 100644 index 0000000..9088abe --- /dev/null +++ b/www-client/palemoon-bin/files/palemoon-bin.desktop @@ -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; diff --git a/www-client/palemoon-bin/palemoon-bin-33.3.1.ebuild b/www-client/palemoon-bin/palemoon-bin-33.3.1.ebuild new file mode 100644 index 0000000..355b111 --- /dev/null +++ b/www-client/palemoon-bin/palemoon-bin-33.3.1.ebuild @@ -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 +}