diff options
Diffstat (limited to 'x11-wm/xpra')
-rw-r--r-- | x11-wm/xpra/Manifest | 10 | ||||
-rw-r--r-- | x11-wm/xpra/files/xpra-3.0.2-dbus.patch | 29 | ||||
-rw-r--r-- | x11-wm/xpra/files/xpra-4.0.6-r28363.patch | 238 | ||||
-rw-r--r-- | x11-wm/xpra/metadata.xml | 8 | ||||
-rw-r--r-- | x11-wm/xpra/xpra-3.0.2-r1.ebuild | 144 | ||||
-rw-r--r-- | x11-wm/xpra/xpra-4.0.6_p28363.ebuild (renamed from x11-wm/xpra/xpra-4.0.4.ebuild) | 85 |
6 files changed, 299 insertions, 215 deletions
diff --git a/x11-wm/xpra/Manifest b/x11-wm/xpra/Manifest index 422d68181ddc..ed9cdbe94977 100644 --- a/x11-wm/xpra/Manifest +++ b/x11-wm/xpra/Manifest @@ -1,14 +1,12 @@ AUX xpra-2.0-suid-warning.patch 617 BLAKE2B dc7f1ba0ec9e30e260601f1151edb43855619a1c34bc29c05536c4dea30c8131179ea17ca30ce3ae2c87d7b374f7a02a5afcde89b6bf29921fc0a9de457e3d54 SHA512 f0d69a6e57435d6c9ef1ecb10e9fa6916b2a8b11f5979b7dffcc37c0a8ec387306b651d50ca3fe10a489cb28f6c2384fbe578510bd7f9bc7a51249e66c4d17ab -AUX xpra-3.0.2-dbus.patch 1128 BLAKE2B c908950df22a16174c7885543e93277902826b8b0273472e8e70ea563d1fe24a0c9ca624e65fe1b312e27d093a7d24acda8db685cd3bdae29bd712a23b5d0d2d SHA512 c2d913ccb82cac41bd16271a878459fc4468620d9f235c2aaab3af7d327a666c8830cea43ba49da7a4faf9b609e6b3b8bbbf02f377399778af01139af4a38c88 AUX xpra-3.0.2-ldconfig.patch 1270 BLAKE2B b4eaa81610899c16a43b43c5f11f93335ca48add1302ed2bc2d6f1d6a1df3c234a65562c42b19b7ad53b0d267d9763606d43ba3ce18cfb6d70565d2f684dbe7c SHA512 09684ac0ac9626d1a441fb17a61919b3b1685520affcc72aa59e64c24ad55ffc7712af57e2ec392710e7dc412039daa6c76456ee6d5464a3e4057fb61d9ad7b1 AUX xpra-3.0.2_ignore-gentoo-no-compile.patch 610 BLAKE2B 963b3b61602f6a7ad7c8247109932d0da7eeef2762eaa8a987a8f10178a13cec3255000661bc7e3344319a555c9f0ed41b6383be7728af543cb5d2e004c377b2 SHA512 ff16637dca766ba2d36351e1aeeb87f2bab02e73e8da8fdb566051727b0c6fec6df1925318eee8d1c87580196ec78f0303da56d3439b4b4bace3105a914251e8 AUX xpra-4.0.3-suid-warning.patch 731 BLAKE2B 6e576c088bc59ee7a52e15a8fbceb9117a47e4bf818b6777ffe977b5db1f9e72077ffeea07570312603f160d5556d2980914887f56d9733b1b6bf49ae385d0e4 SHA512 d3a3c2a2510159e83d6d6bda11f37b5500ce80d4bac059d3bcee8293caa93652a132d074f46a728204b012c61707994ebb87e0e02afd0c4efeab7a705ba5ea69 -DIST xpra-3.0.2.tar.xz 2749196 BLAKE2B 3c8745657a12637704fb88ac7b867ab387ef7ed2250396d9e534aecf81e40f85332a2c51ba49638834012f4a4d85c03bd7e49ee259bb2400aeb60fb06abf8b59 SHA512 115f606ff5886d99a906f318cb1a7a4a86e80ebf23e4336e67938267d92ef624de577cc8fc06c6ce541b7c44a0cef58d930b5928f32e24dfc67c72127c7b623c +AUX xpra-4.0.6-r28363.patch 10454 BLAKE2B 8385dc347edf9e3464784cf0d9bb8450696b66bb66af3b14e3a3440fb2b6ffea9f1d7c640f1973e8d37084eced58daad451162ac2b6798a7b5e7fb8f6f89b430 SHA512 a75534371a391fe1fbf6cd327e0df9eeb1fc7b65376de734f523984ea124ad95c7782af380735b95500cc63002e065c9684bb92095c5850f2cf42e7b15d661f8 DIST xpra-3.0.5.tar.xz 2752016 BLAKE2B a36d6a4ebb0b14665014da92d510c0d5f978c96db653709ddc09a1015426d6ac6f71f9a221db68ee1114c95eeaca6600f9e49102ce9f936d9b0ee298ac432647 SHA512 3dbc122ebc8c4aa67154acfe92668ac364d8469022b03e28946d763e4d396f8c707690b2a4dbf07b55545259a53b46c9dd94e6e40131289ccc3dce6a88107681 -DIST xpra-4.0.4.tar.xz 2792512 BLAKE2B e16c47e82cf9f8712521c8f9c436b7bb819d9469fc0135ade1f2c9fc6f2a8a0fecf417caae87a1eca9c4b6daec1a82add5d6547208caee1a1d681ebc7b3d3d3b SHA512 91a90cdab775ec2501ef1601188b97ca4aa741e541f8d941add8d509767790a144b67f094177dda7539eff305710f2c834b90a93e9441437dac615677963094c DIST xpra-4.0.5.tar.xz 2795828 BLAKE2B fed6514d75dbb08f386325e30e375fd2077db1dad91602e575e3955a622a52ade2fc8e0c6c823d8a495684afb3a2f55f27e28abdf8734d0eca25275a3d358193 SHA512 d2aa2b70b6ec702bca5b0c2b06378107d45c4cad79f83ee2a1ed27fd5f66474e2d8e1d28d5111e60417ed089f91bab0b1566b0c9b3dcf6f0cb5e204ff5c42c92 -EBUILD xpra-3.0.2-r1.ebuild 3989 BLAKE2B 32811ece71f24899d5a133946044ba54587fa2817da62205211fb4bf67184b44c51297f7c4c44853d39aee3709d1c75d07cb8376c5dcfbc3981b7e77e49dd2ce SHA512 ceb14272f61547d15def0d22c2440748ea144a832d89e7e9086d0dde8b394dc29041945c32a9a38fdca14d53a3f0545e6b74086c1ba60c771135dfcf4ecf3e9a +DIST xpra-4.0.6.tar.xz 2797752 BLAKE2B 3f2d4108fec1f1b5c0cd38a26f1a2c41af253fd234427e8e54104ff3742b9f7ae3e1863db837addd76acc6856b6f3cfcbde97edc2bc75314b215d4ca46a816f8 SHA512 e3dc66040898ed40ef12b8cdb89e5f42c2f36edc071afb435334389e727f376ddc116dbee47018468bff24f2cdd7be35750b58bc108ba73c5558bd9eccbd04ea EBUILD xpra-3.0.5-r2.ebuild 3843 BLAKE2B 9be5685148f89315a8b715034a00a4c83947ce561ea08cf43af02352aa1c6f057fe71aa4000500421a41edac3a6f190179de1d325c50e92c9a19c3752db49ce3 SHA512 15ca9c77547f7e0c0388e3217aa908e000b8a2b3c0360ec32c54c8a2d2a31344f6940c9496b66624c96a2e4328ca0fc281291452f61b6cf9c20c0d63de33d6e4 -EBUILD xpra-4.0.4.ebuild 3664 BLAKE2B ba0a5c10d9ad9333045b4b40d1e0d068386b43645b5aab3b132fe980be7fa41c3f9b20520701d01646dbd53c69c70735afd3fcf2ccef8fc50a5add38f9b4e028 SHA512 3c08b19f7ccd12ccefae3d516132fa079980e9bc18fc7f30562ce2ce9f2fbd324f4cd59638d52c76a48e8cd50d55a1e2fb40c404099f8523eaae87cefa6581cb EBUILD xpra-4.0.5.ebuild 3797 BLAKE2B 322c682c2ae128daea027289932ef37f31288888f75ee4eda53cf71a4ba71a3ed624234202462e46d8f563ec2c2d56e283dbabf5d0d2e2a4fcd4e747f734338f SHA512 ab99366ab8802d5feb9cbef14f7bfb817524e233db651ce37f87ccf5a55002a6dd4e79931484cb84179ccbe90df294999ad6bf203f0da3a438b396d80e2414cc -MISC metadata.xml 1245 BLAKE2B afa173eb082c199aae4f79ba9687c1162678a3a80cca8b19f140a210f0d029f3fa3f857e02e6fa1daa96794b586d1e0e9c1f03cddd8a8b10987ac1a96a9f292d SHA512 bcde5f696375a6294e668adae79607c0313414906d8bd647e99a38898a48d360ccdeaf4236da2aba1486e8a3f7783b8bb92c7da5b71fc31906d7ec932820d1bd +EBUILD xpra-4.0.6_p28363.ebuild 3905 BLAKE2B 1fd2c5d09354373731b479edb58d61e050a59144db78306775724cb7483447f8bc54c3fb4ec8b24cd9d6bb372390af4275c48833d6e7735ef4bca4b130b41ebe SHA512 61b223aed0397ccdd255536e32a8ed382938336dbda1493ccc7ef7fdb9fcebeba39afa47915d9044f08ce463e8612ad6710431c2b5719b2d154f809afd592669 +MISC metadata.xml 1090 BLAKE2B 51b66f86c4858f3c6081e03ee5444b0fd84de0db0355e7538a507ae6290b82f09407acef6e335ac7c5d7dfa2801da5e6b0f0b904daea6fd5c34f19d17492007a SHA512 99dde78c6a33dbbb890b071165c9e0ca57ea3d7a6866abfccda2d976006dcf17b531b2dd464a2c0e312c181d1a3561ba61316a8c5c9c27976281965673aca55d diff --git a/x11-wm/xpra/files/xpra-3.0.2-dbus.patch b/x11-wm/xpra/files/xpra-3.0.2-dbus.patch deleted file mode 100644 index e0f14b8ba59d..000000000000 --- a/x11-wm/xpra/files/xpra-3.0.2-dbus.patch +++ /dev/null @@ -1,29 +0,0 @@ -Remove dbus functionality if USE=dbus is not specified. - -Index: xpra-3.0.2/xpra/scripts/server.py -=================================================================== ---- xpra-3.0.2.orig/xpra/scripts/server.py -+++ xpra-3.0.2/xpra/scripts/server.py -@@ -748,14 +748,9 @@ def do_run_server(error_cb, opts, mode, - log("chdir(%s)", opts.chdir) - os.chdir(opts.chdir) - -- dbus_pid, dbus_env = 0, {} - if not shadowing and POSIX and not OSX and not clobber: - no_gtk() - assert starting or starting_desktop or proxying -- from xpra.server.dbus.dbus_start import start_dbus -- dbus_pid, dbus_env = start_dbus(opts.dbus_launch) -- if dbus_env: -- os.environ.update(dbus_env) - - display = None - if not proxying: -@@ -835,7 +830,6 @@ def do_run_server(error_cb, opts, mode, - app.display_name = display_name - app.init(opts) - app.init_sockets(sockets) -- app.init_dbus(dbus_pid, dbus_env) - if not shadowing and (xvfb_pid or clobber): - app.init_display_pid(xvfb_pid) - app.original_desktop_display = desktop_display diff --git a/x11-wm/xpra/files/xpra-4.0.6-r28363.patch b/x11-wm/xpra/files/xpra-4.0.6-r28363.patch new file mode 100644 index 000000000000..5187b700c0df --- /dev/null +++ b/x11-wm/xpra/files/xpra-4.0.6-r28363.patch @@ -0,0 +1,238 @@ +Index: selinux/xpra_socketactivation/xpra_socketactivation.te +=================================================================== +--- a/selinux/xpra_socketactivation/xpra_socketactivation.te (revision 28285) ++++ b/selinux/xpra_socketactivation/xpra_socketactivation.te (revision 28363) +@@ -27,6 +27,7 @@ + type unconfined_t; + type bin_t; + type avahi_t; ++ type config_home_t; + + attribute can_read_shadow_passwords; + } +@@ -55,6 +56,9 @@ + allow xpra_t xpra_conf_t:dir { getattr open read search }; + files_search_etc(xpra_t) + ++allow xpra_t config_home_t:dir { getattr search }; ++allow xpra_t config_home_t:file { getattr ioctl open read }; ++ + type xpra_socket_t; + files_type(xpra_socket_t) + +Index: setup.py +=================================================================== +--- a/setup.py (revision 28285) ++++ b/setup.py (revision 28363) +@@ -1533,8 +1533,9 @@ + for k,v in subs.items(): + data = data.replace(k, v) + with open(dst_file, "wb") as f: +- return f.write(data) ++ f.write(data) + if chmod: ++ print("chmod(%s, %s)" % (dst_file, oct(chmod))) + os.chmod(dst_file, chmod) + + if printing_ENABLED and POSIX: +Index: unittests/unit/net/crypto_test.py +=================================================================== +--- a/unittests/unit/net/crypto_test.py (revision 28285) ++++ b/unittests/unit/net/crypto_test.py (revision 28363) +@@ -88,7 +88,7 @@ + start = monotonic_time() + self.do_test_backend(data, enc_iterations, dec_iterations) + end = monotonic_time() +- elapsed = end-start ++ elapsed = max(0.0001, end-start) + speed = (asize*16) * (enc_iterations + dec_iterations) / elapsed + iter_time = elapsed*1000/(enc_iterations + dec_iterations) + print("%10iKB: %5.1fms: %16iMB/s" % (asize*16//1024, iter_time, speed//1024//1024)) +Index: win32/MINGW_BUILD.sh +=================================================================== +--- a/win32/MINGW_BUILD.sh (revision 28285) ++++ b/win32/MINGW_BUILD.sh (revision 28363) +@@ -286,6 +286,8 @@ + #why is it shipping those files?? + find lib/ -name "*dll.a" -exec rm {} \; + #only keep the actual loaders, not all the other crap cx_Freeze put there: ++#but keep librsvg ++mv lib/gdk-pixbuf-2.0/2.10.0/loaders/librsvg* ./ + mkdir lib/gdk-pixbuf-2.0/2.10.0/loaders.tmp + mv lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-*.dll lib/gdk-pixbuf-2.0/2.10.0/loaders.tmp/ + rm -fr lib/gdk-pixbuf-2.0/2.10.0/loaders +@@ -326,6 +328,9 @@ + #and keep pdfium: + mv lib/*pdfium*.dll ./ + pushd lib > /dev/null ++#cx_Freeze forgets these two!? ++cp $MINGW_PREFIX/bin/libatk-*dll ./ ++cp $MINGW_PREFIX/bin/libgtk-*dll ./ + #remove all the pointless duplication: + for x in `ls *dll`; do + find ./ -mindepth 2 -name "${x}" -exec rm {} \; +Index: xpra/client/gtk_base/gtk_client_window_base.py +=================================================================== +--- a/xpra/client/gtk_base/gtk_client_window_base.py (revision 28285) ++++ b/xpra/client/gtk_base/gtk_client_window_base.py (revision 28363) +@@ -1806,10 +1806,16 @@ + + def _set_backing_size(self, ww, wh): + b = self._backing ++ bw = self._client.cx(ww) ++ bh = self._client.cy(wh) ++ if max(ww, wh)>=32000 or min(ww, wh)<0: ++ raise Exception("invalid window size %ix%i" % (ww, wh)) ++ if max(bw, bh)>=32000: ++ raise Exception("invalid window backing size %ix%i" % (bw, bh)) + if b: +- b.init(ww, wh, self._client.cx(ww), self._client.cy(wh)) ++ b.init(ww, wh, bw, bh) + else: +- self.new_backing(self._client.cx(ww), self._client.cy(wh)) ++ self.new_backing(bw, bh) + + def resize(self, w, h, resize_counter=0): + ww, wh = self.get_size() +Index: xpra/net/file_transfer.py +=================================================================== +--- a/xpra/net/file_transfer.py (revision 28285) ++++ b/xpra/net/file_transfer.py (revision 28363) +@@ -580,6 +580,10 @@ + + def _process_open_url(self, packet): + url, send_id = packet[1:3] ++ try: ++ url = strtobytes(url).decode("utf8") ++ except UnicodeDecodeError: ++ url = bytestostr(url) + if not self.open_url: + filelog.warn("Warning: received a request to open URL '%s'", url) + filelog.warn(" but opening of URLs is disabled") +@@ -670,12 +674,12 @@ + filelog("process send-data-request: send_id=%s, url=%s, printit=%s, openit=%s", s(send_id), url, printit, openit) + def cb_answer(accept): + filelog("accept%s=%s", (url, printit, openit), accept) ++ self.send("send-data-response", send_id, accept) + #filenames and url are always sent encoded as utf8: + try: + url = strtobytes(url).decode("utf8") + except: + url = bytestostr(url) +- self.send("send-data-response", send_id, accept) + if dtype==b"file": + if not self.file_transfer: + cb_answer(False) +Index: xpra/net/socket_util.py +=================================================================== +--- a/xpra/net/socket_util.py (revision 28285) ++++ b/xpra/net/socket_util.py (revision 28363) +@@ -622,7 +622,7 @@ + log.info(" %s does not exist", dirname) + #only show extra information if the socket permissions + #would have been accessible by the group: +- if POSIX and (sperms & 0o40): ++ elif POSIX and (sperms & 0o40): + uid = getuid() + username = get_username_for_uid(uid) + groups = get_groups(username) +Index: xpra/platform/xposix/paths.py +=================================================================== +--- a/xpra/platform/xposix/paths.py (revision 28285) ++++ b/xpra/platform/xposix/paths.py (revision 28363) +@@ -102,12 +102,12 @@ + + def do_get_user_conf_dirs(uid): + #per-user configuration location: +- #(but never use /root/.xpra) ++ #(but never use /root/.xpra or /root/.config/xpra) + if uid is None: + uid = os.getuid() + dirs = [] +- dirs += [os.path.join(os.environ.get("XDG_CONFIG_HOME", "~/.config"), "xpra")] + if uid>0: ++ dirs += [os.path.join(os.environ.get("XDG_CONFIG_HOME", "~/.config"), "xpra")] + dirs.append("~/.xpra") + return dirs + +Index: xpra/platform/xposix/sd_listen.pyx +=================================================================== +--- a/xpra/platform/xposix/sd_listen.pyx (revision 28285) ++++ b/xpra/platform/xposix/sd_listen.pyx (revision 28363) +@@ -52,7 +52,7 @@ + return sockets + + def get_sd_socket_type(fd): +- from xpra.net.common import TCP_SOCKTYPES ++ from xpra.net.bytestreams import TCP_SOCKTYPES + socktype = os.environ.get("XPRA_SD%i_SOCKET_TYPE" % fd) + if not socktype: + socktype = os.environ.get("XPRA_SD_SOCKET_TYPE", "tcp") +Index: xpra/server/mixins/audio_server.py +=================================================================== +--- a/xpra/server/mixins/audio_server.py (revision 28285) ++++ b/xpra/server/mixins/audio_server.py (revision 28363) +@@ -121,7 +121,7 @@ + from xpra.platform.xposix.paths import _get_xpra_runtime_dir, get_runtime_dir + rd = osexpand(get_runtime_dir()) + if not os.path.exists(rd) or not os.path.isdir(rd): +- log.warn("Warning: the runtime directory '%s' does not exist,") ++ log.warn("Warning: the runtime directory '%s' does not exist,", rd) + log.warn(" cannot start a private pulseaudio server") + else: + xpra_rd = _get_xpra_runtime_dir() +Index: xpra/server/window/motion.pyx +=================================================================== +--- a/xpra/server/window/motion.pyx (revision 28285) ++++ b/xpra/server/window/motion.pyx (revision 28363) +@@ -79,7 +79,7 @@ + for i,v in enumerate(arr): + self.a2[i] = <uint64_t> abs(v) + +- def update(self, pixels, int16_t x, int16_t y, uint16_t width, uint16_t height, uint16_t rowstride, uint8_t bpp=4): ++ def update(self, pixels, int16_t x, int16_t y, uint16_t width, uint16_t height, uint32_t rowstride, uint8_t bpp=4): + """ + Add a new image to compare with, + checksum its rows into a2, +Index: xpra/server/window/window_video_source.py +=================================================================== +--- a/xpra/server/window/window_video_source.py (revision 28285) ++++ b/xpra/server/window/window_video_source.py (revision 28363) +@@ -1785,6 +1785,13 @@ + scrolllog("no scrolling: detection has already been used on this image") + #we've already checked + return False ++ x = image.get_target_x() ++ y = image.get_target_y() ++ w = image.get_width() ++ h = image.get_height() ++ if w>=32000 or h>=32000: ++ scrolllog("no scrolling: the image is too large, %ix%i", w, h) ++ return False + #don't download the pixels if we have a GPU buffer, + #since that means we're likely to be able to compress on the GPU too with NVENC: + if not image.has_pixels(): +@@ -1792,10 +1799,6 @@ + if self.content_type=="video" or not self.non_video_encodings: + scrolllog("no scrolling: content is video") + return False +- x = image.get_target_x() +- y = image.get_target_y() +- w = image.get_width() +- h = image.get_height() + if w<MIN_SCROLL_IMAGE_SIZE or h<MIN_SCROLL_IMAGE_SIZE: + scrolllog("no scrolling: image size %ix%i is too small, minimum is %ix%i", + w, h, MIN_SCROLL_IMAGE_SIZE, MIN_SCROLL_IMAGE_SIZE) +Index: xpra/x11/x11_server_core.py +=================================================================== +--- a/xpra/x11/x11_server_core.py (revision 28285) ++++ b/xpra/x11/x11_server_core.py (revision 28363) +@@ -687,7 +687,7 @@ + #we can use XRRSetScreenSize: + try: + with xsync: +- RandR.xrr_set_screen_size(w, h, self.xdpi or self.dpi, self.ydpi or self.dpi) ++ RandR.xrr_set_screen_size(w, h, self.xdpi or self.dpi or 96, self.ydpi or self.dpi or 96) + except XError: + screenlog("XRRSetScreenSize failed", exc_info=True) + screenlog("calling RandR.get_screen_size()") diff --git a/x11-wm/xpra/metadata.xml b/x11-wm/xpra/metadata.xml index 349c6f4b186e..ce472786e3ab 100644 --- a/x11-wm/xpra/metadata.xml +++ b/x11-wm/xpra/metadata.xml @@ -13,6 +13,10 @@ <email>alexxy@gentoo.org</email> <name>Alexey Shvetsov</name> </maintainer> +<maintainer type="person"> + <email>chewi@gentoo.org</email> + <name>James Le Cuirot</name> +</maintainer> <upstream> <bugs-to>https://www.xpra.org/trac/report</bugs-to> </upstream> @@ -21,10 +25,6 @@ <flag name="client">Build client-side code</flag> <flag name="clipboard">Enable clipboard support</flag> <flag name="csc">Enable csc softscaler support</flag> - <flag name="dec_avcodec2">Enable avcodec2 decoder support</flag> - <flag name="enc_ffmpeg">Enable advanced ffmpeg/libav encoder support</flag> - <flag name="enc_x264">Enable x264 encoder support</flag> - <flag name="enc_x265">Enable x265 encoder support</flag> <flag name="pillow">Enable pillow support</flag> <flag name="server">Build server-side code</flag> <flag name="vpx">Enable vpx image format support</flag> diff --git a/x11-wm/xpra/xpra-3.0.2-r1.ebuild b/x11-wm/xpra/xpra-3.0.2-r1.ebuild deleted file mode 100644 index f518280f02d7..000000000000 --- a/x11-wm/xpra/xpra-3.0.2-r1.ebuild +++ /dev/null @@ -1,144 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -# PyCObject_Check and PyCObject_AsVoidPtr vanished with python 3.3 -PYTHON_COMPAT=( python3_{6,7} ) -inherit xdg distutils-r1 eutils flag-o-matic user tmpfiles prefix - -DESCRIPTION="X Persistent Remote Apps (xpra) and Partitioning WM (parti) based on wimpiggy" -HOMEPAGE="http://xpra.org/ http://xpra.org/src/" -SRC_URI="http://xpra.org/src/${P}.tar.xz" - -LICENSE="GPL-2 BSD" -SLOT="0" -KEYWORDS="amd64 x86" -IUSE="+client +clipboard csc cups dbus dec_avcodec2 enc_ffmpeg enc_x264 enc_x265 jpeg +lz4 lzo opengl pillow pulseaudio server sound test vpx webcam webp" - -REQUIRED_USE="${PYTHON_REQUIRED_USE} - clipboard? ( || ( server client ) ) - cups? ( dbus ) - opengl? ( client ) - || ( client server ) - client? ( enc_x264? ( dec_avcodec2 ) enc_x265? ( dec_avcodec2 ) )" - -COMMON_DEPEND="${PYTHON_DEPS} - dev-python/pygobject:3[${PYTHON_USEDEP}] - x11-libs/gtk+:3[introspection] - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXfixes - x11-libs/libXrandr - x11-libs/libXtst - x11-libs/libxkbfile - csc? ( >=media-video/ffmpeg-1.2.2:0= ) - dec_avcodec2? ( >=media-video/ffmpeg-2:0=[x264,x265] ) - enc_ffmpeg? ( >=media-video/ffmpeg-3.2.2:0= ) - enc_x264? ( media-libs/x264 - >=media-video/ffmpeg-1.0.4:0=[x264] ) - enc_x265? ( media-libs/x265 - >=media-video/ffmpeg-2:0=[x264] ) - jpeg? ( media-libs/libjpeg-turbo ) - opengl? ( dev-python/pyopengl ) - pulseaudio? ( media-sound/pulseaudio ) - sound? ( media-libs/gstreamer:1.0 - media-libs/gst-plugins-base:1.0 - dev-python/gst-python:1.0 ) - vpx? ( media-libs/libvpx media-video/ffmpeg ) - webp? ( media-libs/libwebp )" - -RDEPEND="${COMMON_DEPEND} - dev-python/netifaces[${PYTHON_USEDEP}] - dev-python/rencode[${PYTHON_USEDEP}] - dev-python/pillow[jpeg?,${PYTHON_USEDEP}] - virtual/ssh - x11-apps/xmodmap - cups? ( dev-python/pycups[${PYTHON_USEDEP}] ) - dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] ) - lz4? ( dev-python/lz4[${PYTHON_USEDEP}] ) - lzo? ( >=dev-python/python-lzo-0.7.0[${PYTHON_USEDEP}] ) - opengl? ( - client? ( dev-python/pyopengl_accelerate[${PYTHON_USEDEP}] ) - ) - server? ( x11-base/xorg-server[-minimal,xvfb] - x11-drivers/xf86-input-void - ) - webcam? ( dev-python/numpy[${PYTHON_USEDEP}] - media-libs/opencv[python] - dev-python/pyinotify[${PYTHON_USEDEP}] )" -DEPEND="${COMMON_DEPEND} - virtual/pkgconfig - >=dev-python/cython-0.16[${PYTHON_USEDEP}]" - -RESTRICT="!test? ( test )" - -PATCHES=( - "${FILESDIR}"/${PN}-3.0.2_ignore-gentoo-no-compile.patch - "${FILESDIR}"/${PN}-2.0-suid-warning.patch - "${FILESDIR}"/${PN}-3.0.2-ldconfig.patch -) - -pkg_postinst() { - enewgroup ${PN} - tmpfiles_process /usr/lib/tmpfiles.d/xpra.conf - - xdg_pkg_postinst -} - -python_prepare_all() { - use dbus || eapply "${FILESDIR}/${PN}-3.0.2-dbus.patch" - - hprefixify -w '/os.path/' setup.py - hprefixify tmpfiles.d/xpra.conf xpra/server/server_util.py \ - xpra/platform{/xposix,}/paths.py xpra/scripts/server.py - - distutils-r1_python_prepare_all -} - -python_configure_all() { - sed -e "/'pulseaudio'/s:DEFAULT_PULSEAUDIO:$(usex pulseaudio True False):" \ - -i setup.py || die - - mydistutilsargs=( - --without-PIC - --without-Xdummy - $(use_with client) - $(use_with clipboard) - $(use_with csc csc_swscale) - --without-csc_libyuv - --without-cuda_rebuild - --without-cuda_kernels - $(use_with cups printing) - --without-debug - $(use_with dbus) - $(use_with dec_avcodec2) - $(use_with enc_ffmpeg) - $(use_with enc_x264) - $(use_with enc_x265) - --without-gtk2 - --with-gtk3 - --without-html5 - $(use_with jpeg jpeg_encoder) - $(use_with jpeg jpeg_decoder) - --without-mdns - --without-minify - $(use_with opengl) - $(use_with server shadow) - $(use_with server) - $(use_with sound) - --with-strict - $(use_with vpx) - --with-warn - $(use_with webcam) - $(use_with webp) - --with-x11 - ) - - # see https://www.xpra.org/trac/ticket/1080 - # and http://trac.cython.org/ticket/395 - append-cflags -fno-strict-aliasing - - export XPRA_SOCKET_DIRS="${EPREFIX}/run/xpra" -} diff --git a/x11-wm/xpra/xpra-4.0.4.ebuild b/x11-wm/xpra/xpra-4.0.6_p28363.ebuild index ff3e6b932135..01ec69226daf 100644 --- a/x11-wm/xpra/xpra-4.0.4.ebuild +++ b/x11-wm/xpra/xpra-4.0.6_p28363.ebuild @@ -1,20 +1,22 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 PYTHON_COMPAT=( python3_{6,7,8,9} ) +DISTUTILS_SINGLE_IMPL=yes DISTUTILS_USE_SETUPTOOLS=no -inherit xdg distutils-r1 eutils flag-o-matic tmpfiles prefix +inherit xdg distutils-r1 tmpfiles prefix +MY_P="${PN}-${PV%_p*}" DESCRIPTION="X Persistent Remote Apps (xpra) and Partitioning WM (parti) based on wimpiggy" -HOMEPAGE="http://xpra.org/ http://xpra.org/src/" -SRC_URI="http://xpra.org/src/${P}.tar.xz" +HOMEPAGE="https://xpra.org/" +SRC_URI="https://xpra.org/src/${MY_P}.tar.xz" LICENSE="GPL-2 BSD" SLOT="0" KEYWORDS="~amd64 ~x86" -IUSE="brotli +client +clipboard csc cups dbus ffmpeg jpeg +lz4 lzo opengl pillow pulseaudio server sound test vpx webcam webp" +IUSE="brotli +client +clipboard csc cups dbus ffmpeg jpeg +lz4 lzo minimal opengl pillow pulseaudio server sound test vpx webcam webp" REQUIRED_USE="${PYTHON_REQUIRED_USE} || ( client server ) @@ -22,8 +24,13 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE} opengl? ( client ) " -COMMON_DEPEND="${PYTHON_DEPS} - dev-python/pygobject:3[${PYTHON_USEDEP}] +DEPEND=" + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-python/pygobject:3[${PYTHON_USEDEP},cairo] + opengl? ( dev-python/pyopengl[${PYTHON_USEDEP}] ) + sound? ( dev-python/gst-python:1.0[${PYTHON_USEDEP}] ) + ') x11-libs/gtk+:3[introspection] x11-libs/libX11 x11-libs/libXcomposite @@ -36,40 +43,50 @@ COMMON_DEPEND="${PYTHON_DEPS} csc? ( >=media-video/ffmpeg-1.2.2:0= ) ffmpeg? ( >=media-video/ffmpeg-3.2.2:0=[x264,x265] ) jpeg? ( media-libs/libjpeg-turbo ) - opengl? ( dev-python/pyopengl ) pulseaudio? ( media-sound/pulseaudio media-plugins/gst-plugins-pulse:1.0 ) - sound? ( media-libs/gstreamer:1.0 + sound? ( + media-libs/gstreamer:1.0 media-libs/gst-plugins-base:1.0 - dev-python/gst-python:1.0 ) + ) vpx? ( media-libs/libvpx media-video/ffmpeg ) webp? ( media-libs/libwebp ) " -RDEPEND="${COMMON_DEPEND} +RDEPEND=" + ${DEPEND} + $(python_gen_cond_dep ' + dev-python/netifaces[${PYTHON_USEDEP}] + dev-python/rencode[${PYTHON_USEDEP}] + dev-python/pillow[jpeg?,${PYTHON_USEDEP}] + cups? ( dev-python/pycups[${PYTHON_USEDEP}] ) + dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] ) + lz4? ( dev-python/lz4[${PYTHON_USEDEP}] ) + lzo? ( >=dev-python/python-lzo-0.7.0[${PYTHON_USEDEP}] ) + opengl? ( + client? ( dev-python/pyopengl_accelerate[${PYTHON_USEDEP}] ) + ) + webcam? ( + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/pyinotify[${PYTHON_USEDEP}] + media-libs/opencv[${PYTHON_USEDEP},python] + ) + ') acct-group/xpra - dev-python/netifaces[${PYTHON_USEDEP}] - dev-python/rencode[${PYTHON_USEDEP}] - dev-python/pillow[jpeg?,${PYTHON_USEDEP}] virtual/ssh x11-apps/xmodmap - cups? ( dev-python/pycups[${PYTHON_USEDEP}] ) - dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] ) - lz4? ( dev-python/lz4[${PYTHON_USEDEP}] ) - lzo? ( >=dev-python/python-lzo-0.7.0[${PYTHON_USEDEP}] ) - opengl? ( - client? ( dev-python/pyopengl_accelerate[${PYTHON_USEDEP}] ) - ) - server? ( x11-base/xorg-server[-minimal,xvfb] + server? ( + x11-base/xorg-server[-minimal,xvfb] x11-drivers/xf86-input-void ) - webcam? ( dev-python/numpy[${PYTHON_USEDEP}] - media-libs/opencv[python] - dev-python/pyinotify[${PYTHON_USEDEP}] )" -DEPEND="${COMMON_DEPEND} +" +BDEPEND=" virtual/pkgconfig - >=dev-python/cython-0.16[${PYTHON_USEDEP}]" + $(python_gen_cond_dep ' + >=dev-python/cython-0.16[${PYTHON_USEDEP}] + ') +" RESTRICT="!test? ( test )" @@ -77,8 +94,11 @@ PATCHES=( "${FILESDIR}"/${PN}-3.0.2_ignore-gentoo-no-compile.patch "${FILESDIR}"/${PN}-3.0.2-ldconfig.patch "${FILESDIR}"/${PN}-4.0.3-suid-warning.patch + "${FILESDIR}"/${PN}-4.0.6-r28363.patch ) +S="${WORKDIR}/${MY_P}" + pkg_postinst() { tmpfiles_process /usr/lib/tmpfiles.d/xpra.conf @@ -90,6 +110,11 @@ python_prepare_all() { hprefixify tmpfiles.d/xpra.conf xpra/server/server_util.py \ xpra/platform{/xposix,}/paths.py xpra/scripts/server.py + if use minimal; then + sed -r -e 's/^(pam|scripts|xdg_open)_ENABLED.*/\1_ENABLED=False/' \ + -i setup.py || die + fi + distutils-r1_python_prepare_all } @@ -131,9 +156,5 @@ python_configure_all() { --with-x11 ) - # see https://www.xpra.org/trac/ticket/1080 - # and http://trac.cython.org/ticket/395 - append-cflags -fno-strict-aliasing - export XPRA_SOCKET_DIRS="${EPREFIX}/run/xpra" } |