commit: d37910acf4c2b503e3f4816d15329197c6b964ed
Author: Pavel Sobolev <contact <AT> paveloom <DOT> dev>
AuthorDate: Wed Mar 11 19:17:43 2026 +0000
Commit: Pavel Sobolev <contact <AT> paveloom <DOT> dev>
CommitDate: Sat Mar 14 09:54:07 2026 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=d37910ac
www-apps/flaresolverr: new package, add 3.4.6
Signed-off-by: Pavel Sobolev <contact <AT> paveloom.dev>
www-apps/flaresolverr/Manifest | 1 +
www-apps/flaresolverr/files/flaresolverr.service | 30 ++++++++++++
www-apps/flaresolverr/flaresolverr-3.4.6.ebuild | 60 ++++++++++++++++++++++++
www-apps/flaresolverr/metadata.xml | 12 +++++
4 files changed, 103 insertions(+)
diff --git a/www-apps/flaresolverr/Manifest b/www-apps/flaresolverr/Manifest
new file mode 100644
index 0000000000..fb0776edca
--- /dev/null
+++ b/www-apps/flaresolverr/Manifest
@@ -0,0 +1 @@
+DIST flaresolverr-3.4.6.tar.gz 93752 BLAKE2B
673d339c074c3e45dc089975d0a48300c2fd3e27129f463a025da99567ed47b94358db90827904b578b06195d284f52dffb37310f9d5ccd6412483e423c2418c
SHA512
741fcd36f65ba086bfef6497349bff32fb08cac3976d2caebb37ef406c9d1b08150207277fef0da9eec3cc74bb6e0632063f9a366bfc62c3b44aa20255ebc775
diff --git a/www-apps/flaresolverr/files/flaresolverr.service
b/www-apps/flaresolverr/files/flaresolverr.service
new file mode 100644
index 0000000000..b3ba4fd498
--- /dev/null
+++ b/www-apps/flaresolverr/files/flaresolverr.service
@@ -0,0 +1,30 @@
+[Unit]
+Description=Proxy server to bypass Cloudflare protection.
+After=syslog.target network.target network-online.target
+
+[Service]
+User=flaresolverr
+Group=flaresolverr
+
+Type=simple
+ExecStart=/usr/bin/flaresolverr
+TimeoutStopSec=20
+Restart=on-failure
+
+PrivateTmp=yes
+PrivateDevices=yes
+PrivateMounts=yes
+ProtectHome=yes
+ProtectSystem=full
+NoNewPrivileges=yes
+ProtectHostname=yes
+ProtectClock=yes
+ProtectKernelTunables=yes
+ProtectKernelModules=yes
+ProtectKernelLogs=yes
+ProtectControlGroups=yes
+RestrictRealtime=yes
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/www-apps/flaresolverr/flaresolverr-3.4.6.ebuild
b/www-apps/flaresolverr/flaresolverr-3.4.6.ebuild
new file mode 100644
index 0000000000..a6b516f368
--- /dev/null
+++ b/www-apps/flaresolverr/flaresolverr-3.4.6.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=no
+DISTUTILS_SINGLE_IMPL=1
+PYTHON_COMPAT=( python3_{12..14} )
+
+inherit distutils-r1 systemd
+
+DESCRIPTION="Proxy server to bypass Cloudflare protection"
+HOMEPAGE="https://github.com/FlareSolverr/FlareSolverr"
+SRC_URI="https://github.com/FlareSolverr/FlareSolverr/archive/refs/tags/v${PV}.tar.gz
-> ${P}.tar.gz"
+
+S="${WORKDIR}/FlareSolverr-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="test"
+
+RDEPEND="
+ acct-group/flaresolverr
+ acct-user/flaresolverr
+
+ || (
+ www-client/google-chrome
+ www-client/chromium
+ )
+
+ $(python_gen_cond_dep '
+ dev-python/bottle[${PYTHON_USEDEP}]
+ dev-python/func-timeout[${PYTHON_USEDEP}]
+ dev-python/prometheus-client[${PYTHON_USEDEP}]
+ dev-python/selenium[${PYTHON_USEDEP}]
+ dev-python/waitress[${PYTHON_USEDEP}]
+
+ dev-python/certifi[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/websockets[${PYTHON_USEDEP}]
+
+ dev-python/xvfbwrapper[${PYTHON_USEDEP}]
+ ')
+"
+
+python_install() {
+ sed -i -e "1i#!${EPREFIX}/usr/bin/${EPYTHON}" "src/flaresolverr.py" ||
die
+
+ python_moduleinto flaresolverr
+ python_domodule src/* package.json
+
+ fperms +x "/usr/lib/${EPYTHON}/site-packages/${PN}/flaresolverr.py"
+ dosym -r "$_" "/usr/bin/flaresolverr"
+
+ dodoc LICENSE
+
+ systemd_newunit "${FILESDIR}/flaresolverr.service"
"flaresolverr.service"
+}
diff --git a/www-apps/flaresolverr/metadata.xml
b/www-apps/flaresolverr/metadata.xml
new file mode 100644
index 0000000000..1042a6c8a9
--- /dev/null
+++ b/www-apps/flaresolverr/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Pavel Sobolev</name>
+ <email>[email protected]</email>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/FlareSolverr/FlareSolverr/issues</bugs-to>
+ <remote-id type="github">FlareSolverr/FlareSolverr</remote-id>
+ </upstream>
+</pkgmetadata>