This commit is contained in:
Mario Fetka
2023-04-06 11:47:15 +02:00
parent 011cd6e696
commit 1f44a2d3b4
96 changed files with 3912 additions and 51 deletions

View File

@@ -0,0 +1,6 @@
AUX chrome-remote-desktop-91.0.4472.10-always-sudo.patch 593 BLAKE2B 4cba2a4869437d2d392274c0f0586153406480eb1614297420e161285d981eedf03a4e090a309dfe55163e13387bf4c649586847ccee64dd2e88f9c7263b6b66 SHA512 f4aa5a2473c1872d06fea2611594f63c888717cd93618587b020dcb6aaeb7889443358dbc74da5c7763fb6ef08a6ecf9345d94874c582c799abbf8db8957c790
AUX chrome-remote-desktop.conf.d 283 BLAKE2B a0146298fa2e18e16911587de10aa3dd229cfb26a2d1865637cc4c69c317f4cb303b98daa7f91b6e69cc34c6fbbab3d19332396d4f5c11eeef4958401e26ff14 SHA512 5391c4a2d5787047f773abbf1c5a9dd3842160d768122edc32f0a0275e198882a41a3ca88526d52347f89d1fb4e1a51b6dc785c4dd4a0c0b5935e1e6eff30f49
AUX chrome-remote-desktop.rc 1183 BLAKE2B d1d56ac91a2ced2c6f13019f9d5c7f1d554c2fbd3f57842d6d0b791f2e90233e4d6e8a49155b634a5e20c0bad212a5bc5f63924b1a83d45db01b1fd69445fa07 SHA512 831391b6fcaeeda476a3064d6fff1fdcebb8037aba124814a81ad4a1336a68973f319a003d1ed0938eea68f5ddad179fe29fb12efa05fd204f7fa9c5fb8dd735
DIST chrome-remote-desktop_110.0.5481.14_amd64.deb 17742536 BLAKE2B 3a010b73f786e013aa4bf358811ab306e87681860c1db12b5e915c80b653da0a7e190ff36c78c91fa7a68a8873c7f66a23bb6bdb98630fd881b30c33f12559f7 SHA512 66a374f04664c26e15c5c42b2dbd942dd9cdbc23127733f2f1c136deff868509db80c17028b5f9cae48a460b22443f39af337313dfd865705134737d72372600
EBUILD chrome-remote-desktop-110.0.5481.14.ebuild 4812 BLAKE2B 7d7be0891730a1c34a30f2ea9713b426138f4a93baeef7c5e577bbe2e9fef53c713e6f890df93c2ea768f3b70197ec5c76ef9fedb6b93278989c59878247e467 SHA512 5d5dd89039b2ae57e6535c78044c33369150fb78af609530c9f06a98f767173588b52cc1569bba6070e04be2f48ae68b8cf193f13d0c65a7c85e7cdbabe99bcd
MISC metadata.xml 248 BLAKE2B 2545c58c45b8fd57a236bab059e0bd3da47a3e0d3881d141a9b2dc2e275a2d8f0663d83366b45103b48fd257d62a4a2314a8dd6b79113f8b86c91a90524918c5 SHA512 1397e06cb2ad5941988872f37df6f54100aaa06bfc7ef30ba394f95191ddaa1e9f2180d8eb856eb10f9646d9cbc4a6f020805470633c492519e66e3de788439a

View File

@@ -0,0 +1,144 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Base URL: https://dl.google.com/linux/chrome-remote-desktop/deb/
# Fetch the Release file:
# https://dl.google.com/linux/chrome-remote-desktop/deb/dists/stable/Release
# Which gives you the Packages file:
# https://dl.google.com/linux/chrome-remote-desktop/deb/dists/stable/main/binary-i386/Packages
# https://dl.google.com/linux/chrome-remote-desktop/deb/dists/stable/main/binary-amd64/Packages
# And finally gives you the file name:
# pool/main/c/chrome-remote-desktop/chrome-remote-desktop_29.0.1547.32_amd64.deb
#
# Use curl to find the answer:
# curl -q https://dl.google.com/linux/chrome-remote-desktop/deb/dists/stable/main/binary-amd64/Packages | grep ^Filename
EAPI="7"
PYTHON_COMPAT=( python3_{9,10,11} )
PLOCALES="am ar bg bn ca cs da de el en_GB en es_419 es et fa fil fi fr gu he hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt_BR pt_PT ro ru sk sl sr sv sw ta te th tr uk vi zh_CN zh_TW"
inherit unpacker python-single-r1 optfeature plocale
DESCRIPTION="access remote computers via Chrome!"
PLUGIN_URL="https://chrome.google.com/remotedesktop"
HOMEPAGE="https://support.google.com/chrome/answer/1649523
https://chrome.google.com/remotedesktop"
BASE_URI="https://dl.google.com/linux/chrome-remote-desktop/deb/pool/main/c/${PN}/${PN}_${PV}"
SRC_URI="amd64? ( ${BASE_URI}_amd64.deb )"
LICENSE="google-chrome"
SLOT="0"
KEYWORDS="-* ~amd64"
IUSE=""
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RESTRICT="bindist mirror"
# Packages we execute, but don't link.
RDEPEND="app-admin/sudo
${PYTHON_DEPS}"
# All the libs this package links against.
RDEPEND+="
>=dev-libs/expat-2
dev-libs/glib:2
dev-libs/nspr
dev-libs/nss
$(python_gen_cond_dep 'dev-python/psutil[${PYTHON_USEDEP}]')
media-libs/fontconfig
media-libs/freetype:2
sys-apps/dbus
sys-devel/gcc
sys-libs/glibc
sys-libs/libutempter
sys-libs/pam
x11-apps/xdpyinfo
x11-apps/setxkbmap
x11-libs/cairo
x11-libs/gtk+:3
x11-libs/libX11
x11-libs/libxcb
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libxkbcommon
x11-libs/libXrandr
x11-libs/libXtst
x11-libs/pango"
# Settings we just need at runtime.
# TODO: Look at switching to xf86-video-dummy & xf86-input-void instead of xvfb.
# - The env var (CHROME_REMOTE_DESKTOP_USE_XORG) seems to be stripped before being checked.
# - The Xorg invocation uses absolute paths with -logfile & -config which are rejected.
# - The config takes over the active display in addition to starting up a virtual one.
RDEPEND+="
x11-base/xorg-server[xvfb]"
BDEPEND="$(unpacker_src_uri_depends)"
S=${WORKDIR}
QA_PREBUILT="/opt/google/chrome-remote-desktop/*"
PATCHES=(
"${FILESDIR}"/${PN}-91.0.4472.10-always-sudo.patch #541708
)
src_prepare() {
default
gunzip usr/share/doc/${PN}/*.gz || die
cd opt/google/chrome-remote-desktop
python_fix_shebang chrome-remote-desktop
cd remoting_locales
# These isn't always included.
rm -f fake-bidi* || die
PLOCALES=${PLOCALES//_/-} plocale_find_changes "${PWD}" '' '.pak'
}
src_install() {
pushd opt/google/chrome-remote-desktop/remoting_locales >/dev/null || die
rm_pak() { local l=${1//_/-}; rm "${l}.pak" "${l}.pak.info"; }
plocale_for_each_disabled_locale rm_pak
popd >/dev/null
insinto /etc
doins -r etc/opt
dosym ../opt/chrome/native-messaging-hosts /etc/chromium/native-messaging-hosts #581754
insinto /opt
doins -r opt/google
chmod a+rx "${ED}"/opt/google/${PN}/* || die
fperms +s /opt/google/${PN}/user-session
dodir /etc/pam.d
dosym system-remote-login /etc/pam.d/${PN}
dodoc usr/share/doc/${PN}/changelog*
newinitd "${FILESDIR}"/${PN}.rc ${PN}
newconfd "${FILESDIR}"/${PN}.conf.d ${PN}
}
pkg_postinst() {
optfeature "Dynamic resolution changes" "x11-apps/xrandr"
if [[ -z ${REPLACING_VERSIONS} ]] ; then
elog "Two ways to launch the server:"
elog "(1) access an existing desktop"
elog " (a) install the Chrome plugin on the server & client:"
elog " ${PLUGIN_URL}"
elog " (b) on the server, run the Chrome plugin & enable remote access"
elog " (c) on the client, connect to the server"
elog "(2) headless system"
elog " (a) install the Chrome plugin on the client:"
elog " ${PLUGIN_URL}"
elog " (b) run ${EPREFIX}/opt/google/chrome-remote-desktop/start-host --help to get the auth URL"
elog " (c) when it redirects you to a blank page, look at the URL for a code=XXX field"
elog " (d) run start-host again, and past the code when asked for an authorization code"
elog " (e) on the client, connect to the server"
elog
elog "Configuration settings you might want to be aware of:"
elog " ~/.${PN}-session - shell script to start your session"
elog " /etc/init.d/${PN} - script to auto-restart server"
fi
}

View File

@@ -0,0 +1,20 @@
https://bugs.gentoo.org/541708
just use `sudo` for everything
--- a/opt/google/chrome-remote-desktop/chrome-remote-desktop
+++ b/opt/google/chrome-remote-desktop/chrome-remote-desktop
@@ -1092,12 +1092,7 @@
def run_command_as_root(command):
- if os.getenv("DISPLAY"):
- # TODO(rickyz): Add a Polkit policy that includes a more friendly
- # message about what this command does.
- command = ["/usr/bin/pkexec"] + command
- else:
- command = ["/usr/bin/sudo", "-k", "--"] + command
+ command = ["/usr/bin/sudo", "-k", "--"] + command
return subprocess.call(command)

View File

@@ -0,0 +1,7 @@
# /etc/conf.d/chrome-remote-desktop: config file for /etc/init.d/chrome-remote-desktop
# List of users to start Chrome Remote Desktop for.
CHROME_REMOTING_USERS=''
# Options to pass to chrome-remote-desktop. Only the -s option is interesting.
#OPTIONS='-s 1600x1200 -s 3840x1600'

View File

@@ -0,0 +1,65 @@
#!/sbin/openrc-run
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
extra_started_commands="checkconfig reload"
CRD=/opt/google/chrome-remote-desktop/chrome-remote-desktop
depend() {
need net
use logger
}
checkconfig() {
local ret=0
if [ -z "${CHROME_REMOTING_USERS}" ] ; then
eerror "You must set CHROME_REMOTING_USERS in /etc/conf.d/${SVCNAME} first"
ret=1
else
local user
for user in ${CHROME_REMOTING_USERS} ; do
if ! id "${user}" >/dev/null ; then
eerror "Invalid user found in CHROME_REMOTING_USERS: ${user}"
ret=1
fi
done
fi
return ${ret}
}
for_users() {
local user ret msg log
msg=$1; shift
for user in ${CHROME_REMOTING_USERS} ; do
ebegin "${msg} ${SVCNAME} for ${user}"
# We need to background the app as it won't fork until the network
# (including DNS) is available.
start-stop-daemon \
-b \
-u "${user}" \
-x "${CRD}" \
-- \
${OPTIONS} \
"$@"
eend $?
: $(( ret |= $? ))
done
return ${ret}
}
start() {
checkconfig || return
for_users Starting --start
}
stop() {
for_users Stopping --stop
}
reload() {
for_users Reloading --reload
}

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<name>Mike Frysinger</name>
<email>vapier@gentoo.org</email>
</maintainer>
</pkgmetadata>

View File

@@ -1,4 +1,8 @@
DIST RemoteDesktopManager_2022.3.0.8_amd64.deb 163403232 BLAKE2B 685b3985a2c97275f6feb4ab66f97486d0e9d4e3b6f937934ae9e2be952554a666616a332dd5a0886a4ce86d15d1bacfc9bfe3ce053d76468c326f0f24e887a5 SHA512 431f27927abd5c32f645d5d47917083ee039878fd3b54992ce6429de9e135835cff630238002d6134fd84ecb23c47fe0536067e0f392f98e585ed834716bfe22
DIST RemoteDesktopManager_2023.1.0.3_amd64.deb 196774640 BLAKE2B 7a6dd3dc02f13c1e5443e02dfee66aa99fecdd0c80cd06ddf4c91e1970b369f9b754d6cec23f7c5637f7d8f3851940e91d9f92224e142e5cf6146df16dbfda3f SHA512 be02df55ec54223af0d93e61a87342ebe6843bb489447cf27b0e2f423e4280cd4485cb98be1374cae0bd26b5a0ac487f579d44c731b2d76d863a068af4174db8
DIST RemoteDesktopManager_2023.1.0.4_amd64.deb 176039816 BLAKE2B e953d15a87499dcc66101a4a672bf2ed06e62360ee020df2ae191ef2de50a9b54df929c9e84dbf67486ace3d4d564a69b6b999cc9ea8343194691cc34b8b81ec SHA512 86189a9639016b1c482c131c7d44fcec285bb6c08d58e9cafcdd1e88bf6fb51a308ec4bdcc7bff8548a193d589bd5492601d27f42ecaeb027ed7989edfb171b7
EBUILD remotedesktopmanager-2022.3.0.8.ebuild 1255 BLAKE2B c60bd29885c0d26c43315aa54fe00f721c86364ed3f8e061dd9a3fe040680c6b3f252262ea209cb2e32221e630e74bc910e4308a1eaaa6c82e17d0bb3d45024b SHA512 4ca7cdfdfcea791a890b182f1e1460e20b6cc5c76a5cf165b43df675d77722123aa03c9ff7b544665f7cb98478c307077a114cdab6ed3e8f09a754231fa2eb58
EBUILD remotedesktopmanager-2023.1.0.3.ebuild 1255 BLAKE2B c60bd29885c0d26c43315aa54fe00f721c86364ed3f8e061dd9a3fe040680c6b3f252262ea209cb2e32221e630e74bc910e4308a1eaaa6c82e17d0bb3d45024b SHA512 4ca7cdfdfcea791a890b182f1e1460e20b6cc5c76a5cf165b43df675d77722123aa03c9ff7b544665f7cb98478c307077a114cdab6ed3e8f09a754231fa2eb58
EBUILD remotedesktopmanager-2023.1.0.4.ebuild 1255 BLAKE2B c60bd29885c0d26c43315aa54fe00f721c86364ed3f8e061dd9a3fe040680c6b3f252262ea209cb2e32221e630e74bc910e4308a1eaaa6c82e17d0bb3d45024b SHA512 4ca7cdfdfcea791a890b182f1e1460e20b6cc5c76a5cf165b43df675d77722123aa03c9ff7b544665f7cb98478c307077a114cdab6ed3e8f09a754231fa2eb58
MISC ChangeLog 889 BLAKE2B 216bbbfe9b264ef06f5b56748af1ea7366fa49f2406604264b7d22ce8f464ffd7491a57912d7cf1be7d3dc030578960acca895236d6e06fd017f02a9138f0b7f SHA512 09aa97933a9709827b6e3c01ce8a3829cb3d494f7fdac570faa30da6fac440c752391d8dcaf7d03c5cd1163686e8921c1bf4ad75827e4b8df05bbcde03548488
MISC metadata.xml 408 BLAKE2B 66a3e2838d5c5f95c7463733cd13b1230ef3ca005ec0c5dac797561be30f950da98dfa41eeb4d43cf97500c9a2e0d04c57b0b084d60107072a988dd7c4d16ded SHA512 9cac3e4a07c425e87274de776e03d243e462341168235cd3991ef4706aa1a902cf6591ae8e965b9c4ed370fc2ebef3ca805a9c761d05c4b994ae8667198b267c

View File

@@ -0,0 +1,48 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils unpacker pam
DESCRIPTION="Remote DesktopManager"
HOMEPAGE="https://remotedesktopmanager.com"
#SRC_URI="https://cdn.devolutions.net/download/Linux/RDM/${PV}/RemoteDesktopManager.Free_${PV}_amd64.deb"
SRC_URI="https://cdn.devolutions.net/download/Linux/RDM/${PV}/RemoteDesktopManager_${PV}_amd64.deb"
LICENSE="Devolution"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
RESTRICT="strip mirror test"
DEPEND="|| ( sys-devel/base-gcc sys-devel/gcc )
sys-apps/dbus
sys-apps/systemd
sys-libs/glibc
sys-libs/pam"
RDEPEND="${DEPEND}"
S=${WORKDIR}
src_unpack() {
unpack_deb ${A}
}
src_install() {
dodir /opt/devolutions/RemoteDesktopManager
cp -aR usr/lib/devolutions/RemoteDesktopManager/* "${D}/opt/devolutions/RemoteDesktopManager"
dodir /opt/bin
sed -e 's!usr/lib!opt!g' bin/remotedesktopmanager > "${D}/opt/bin/remotedesktopmanager"
chmod +x "${D}/opt/bin/remotedesktopmanager"
dodir /usr/share/applications
sed -e "s!usr/lib!opt!g" usr/share/applications/remotedesktopmanager.desktop > "${D}/usr/share/applications/remotedesktopmanager.desktop"
dodir /usr/share/icons
cp -aR usr/share/icons/* "${D}/usr/share/icons"
}

View File

@@ -0,0 +1,48 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils unpacker pam
DESCRIPTION="Remote DesktopManager"
HOMEPAGE="https://remotedesktopmanager.com"
#SRC_URI="https://cdn.devolutions.net/download/Linux/RDM/${PV}/RemoteDesktopManager.Free_${PV}_amd64.deb"
SRC_URI="https://cdn.devolutions.net/download/Linux/RDM/${PV}/RemoteDesktopManager_${PV}_amd64.deb"
LICENSE="Devolution"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
RESTRICT="strip mirror test"
DEPEND="|| ( sys-devel/base-gcc sys-devel/gcc )
sys-apps/dbus
sys-apps/systemd
sys-libs/glibc
sys-libs/pam"
RDEPEND="${DEPEND}"
S=${WORKDIR}
src_unpack() {
unpack_deb ${A}
}
src_install() {
dodir /opt/devolutions/RemoteDesktopManager
cp -aR usr/lib/devolutions/RemoteDesktopManager/* "${D}/opt/devolutions/RemoteDesktopManager"
dodir /opt/bin
sed -e 's!usr/lib!opt!g' bin/remotedesktopmanager > "${D}/opt/bin/remotedesktopmanager"
chmod +x "${D}/opt/bin/remotedesktopmanager"
dodir /usr/share/applications
sed -e "s!usr/lib!opt!g" usr/share/applications/remotedesktopmanager.desktop > "${D}/usr/share/applications/remotedesktopmanager.desktop"
dodir /usr/share/icons
cp -aR usr/share/icons/* "${D}/usr/share/icons"
}