From 17e5f1ea4a2e1c5664f96480ca46348d008e8711 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 10 May 2024 00:01:14 +0100 Subject: gentoo auto-resync : 10:05:2024 - 00:01:13 --- x11-misc/Manifest.gz | Bin 46558 -> 46559 bytes x11-misc/rss-glx/Manifest | 6 + .../files/rss-glx-0.9.1-macro-if-scope.patch | 29 ++++ .../files/rss-glx-0.9.1-param-bound-mismatch.patch | 14 ++ .../files/rss-glx-0.9.1-strict-aliasing.patch | 36 ++++ .../files/rss-glx-0.9.1-variable-mismatch.patch | 192 +++++++++++++++++++++ x11-misc/rss-glx/rss-glx-0.9.1-r4.ebuild | 147 ++++++++++++++++ x11-misc/shutter/Manifest | 2 + x11-misc/shutter/shutter-0.99.5.ebuild | 92 ++++++++++ 9 files changed, 518 insertions(+) create mode 100644 x11-misc/rss-glx/files/rss-glx-0.9.1-macro-if-scope.patch create mode 100644 x11-misc/rss-glx/files/rss-glx-0.9.1-param-bound-mismatch.patch create mode 100644 x11-misc/rss-glx/files/rss-glx-0.9.1-strict-aliasing.patch create mode 100644 x11-misc/rss-glx/files/rss-glx-0.9.1-variable-mismatch.patch create mode 100644 x11-misc/rss-glx/rss-glx-0.9.1-r4.ebuild create mode 100644 x11-misc/shutter/shutter-0.99.5.ebuild (limited to 'x11-misc') diff --git a/x11-misc/Manifest.gz b/x11-misc/Manifest.gz index 274a539ccf7a..f1c0405276fd 100644 Binary files a/x11-misc/Manifest.gz and b/x11-misc/Manifest.gz differ diff --git a/x11-misc/rss-glx/Manifest b/x11-misc/rss-glx/Manifest index 31fbedc4f6c2..a089678ddc7a 100644 --- a/x11-misc/rss-glx/Manifest +++ b/x11-misc/rss-glx/Manifest @@ -3,9 +3,15 @@ AUX rss-glx-0.9.1-bashism.patch 234 BLAKE2B 6470a46c9824cefc0c0aeb4fa0a31ce2fa94 AUX rss-glx-0.9.1-c++11-narrowing.patch 1207 BLAKE2B 1b23dafe33b43f559859da3c4ad4395fab9bab556dd09261c5764257a7992b0cb29453646ae02c4791a378cb18671c3233fa1351bd60d7c5ae970309d3cfee3a SHA512 8c262ca79cd9bfd263576868b35dc0ad6444d15a10c6d550439d1dc87dd7eb7f8058291193479de45461b2610bc068be6b6a9e140c329383a3792ad15d73e060 AUX rss-glx-0.9.1-hang.patch 299 BLAKE2B 2ce93ea94ee9d53d5eb5e9669799bd6423e0fe6de328e014403c9f315eddd7155e5fddd19145e380d0d163ebbcdb6c1509d265f528d150350d6487e951a04690 SHA512 9c8eb930360e39b53bd2d8878f5e9f35bf3015734164bb786f1d808bbcd4c0d0c91828daa154d545e7cc99fa51d1f12f15a0c6e06203e7793de37582ef76cfbf AUX rss-glx-0.9.1-imagemagick-7.patch 5238 BLAKE2B fd3c02f9433d7d77dee0e4f6ec71afed34bcb09243ef0f8a60d46ea63fb2286e3b467e27165d2f7bbff7d2eb04849cbe10c889351f428b882b1e6d828fb45195 SHA512 706bc00bd5904c78bfc2858e7b6718b7288b401837ef9abf092ec7669eaf7f81def42e0684f28f3d9195abf00c5ec1ef0df617d2bcb0f55987f79e1914284b5d +AUX rss-glx-0.9.1-macro-if-scope.patch 774 BLAKE2B a169d894fd51a1e4d858490fc74e050762f470891daefb0d489a402835546fda428de9fcccdffc77b3d5d9058c9e4ec79f305cbb87273dbcd19e690a12da95b6 SHA512 cecdd0161a828fdc2fbf345a8107448593ea1644c4667a5475c074f24afe4d07be23ae9ee8d98b915b0eee67e56a696277e16d591143ef11820a5101935ea926 AUX rss-glx-0.9.1-matrixview-copy-font.patch 518 BLAKE2B 39ca9c83c71f88cf967731115fd8df28feca7d63cc1f462a8cacedcb332c1105445354f262f49a428a0f393b6217cfb3b1e5b9c35b61cfe29434f33b8649f554 SHA512 da60ea89d341a951f2880c86b0c624ea7f2e1f04350387db23229496a06b3bd6392ee1a4b723b69eeadcfd538eda01ca8dba6afe33e92ef4c88ecded05615fea AUX rss-glx-0.9.1-missing-include.patch 188 BLAKE2B ef9c6ae3e4ad4ad3ca4f28897516784efc650f341ba7e5e6ce3c76b04752bedeca0eefae481cdb52aade1b2801db81eb2249b108218d07410a5def4fae0f0ecb SHA512 608d19114f8cd2fd9a443df8c8f7ace26f304c94c00fe1789a79dad659963978bb51765a6541ad19ed39ee7dce6ee5b7a686c619a0a6f32ed3ba603facabaff7 +AUX rss-glx-0.9.1-param-bound-mismatch.patch 432 BLAKE2B 2dc96bbd4fb57d6d49b4c9b3dd48d70bac6cd3b7117331af557061ea8cd1a389cd3b160faf28295ad71226b824d776cc977ffdad7ada6e4f80ae057f16450fcb SHA512 e74b85425b9a5632f5b5a186c4a1b24d08442e29b0282864788ad0482252f20f45673d763784d4e1cf2ebf902bd3d5e1868e462758dcf4b1aff805738975e9c3 AUX rss-glx-0.9.1-quesoglc.patch 736 BLAKE2B 62ec14f17ee76b04f4589d71a646fc77d3521ba512d0888612cae701fedfbcb2d81fd1717210fb663c322b0088555fa0783faba91b68991f422e4962a3dd0b02 SHA512 9e71e5f15017593a15d72f005cd365a7bde5974fc0e7555b6d4a61c5ab019d92597952af7afef0cef8cc32782a1ac66ab74d11df3fcd4dcdb716d04d1bcb1b4a +AUX rss-glx-0.9.1-strict-aliasing.patch 823 BLAKE2B a37f58801a344f9979bbf62ed5a3c06fa85ef3c5747ef3e05cfdd9b62875f4fe7aa2e348385f3f8a57fcce5ef7fd5684713379f8347a2bf5a738b565d3e67c98 SHA512 c187d8637e1f3fd7fcc2d32a984c96f542b25ed18d4ed80640e5aaeb370ed78355186e2bda0a8a77a1053991a0be4e0c8b5ad3ddcfc365becff88e93f5d3c4fa +AUX rss-glx-0.9.1-variable-mismatch.patch 5297 BLAKE2B 2567d50832085fbf7d540807b8facc633c278d52763ad38f4f76b0eaea9011189768f8577a4d63b9a3973689f75b1fee277aa957700f90b066c0df607a553f50 SHA512 f1afa532748e4eca8da143f1d5444cf4d36fc85278e126b6fad3cbcb9da1a8f3a61e5a9748dc7410d8418d51df2473e53192e961264ce471b76a0ffa4884fd48 +DIST rss-glx-0.9.1.tar.bz 5435799 BLAKE2B d8161f06469f1160a6e80bb47a333746fac82df4d92eb9d007c7d6fe3a32e1a54a30d4675f64b100fd5509977dfbda7e8821daa462f00cbf748cc7c4bb8afa72 SHA512 3293e6446d6f85e895f1ba8fa982a1ab1873f60714e0b351458ac12117af2427b7cc931185b9485a2af6dd86ea9ea5f2fca92eaae9c0dd5290b5108bc2360961 DIST rss-glx_0.9.1.tar.bz2 5435799 BLAKE2B d8161f06469f1160a6e80bb47a333746fac82df4d92eb9d007c7d6fe3a32e1a54a30d4675f64b100fd5509977dfbda7e8821daa462f00cbf748cc7c4bb8afa72 SHA512 3293e6446d6f85e895f1ba8fa982a1ab1873f60714e0b351458ac12117af2427b7cc931185b9485a2af6dd86ea9ea5f2fca92eaae9c0dd5290b5108bc2360961 EBUILD rss-glx-0.9.1-r3.ebuild 4052 BLAKE2B 2b9406924ac4ce126f7bc00f6efb09cf26c42225a35f93ed512b4bbc1a0296fb4f7c96318b3adcbcc031313e5599c602d7de2a9417af0167f624e5fac73cf733 SHA512 726ec226abd352f1ba2a41d1cdf803e0610348aa76825d477832ae6f9334f1cf675d001d2be35a69f99d396f801b83fe7b003543185ff6f08c59491069bb6fe3 +EBUILD rss-glx-0.9.1-r4.ebuild 4283 BLAKE2B 350e9724da4115c7af5fa519f50ad373e8d8f2c3a841e6d06e53f4c17e9a62e6e51ed7f8298e4e3195805a179a15f06a68b51b66c5b42a43ce2b37b79b26fd37 SHA512 e1c52f33e6b9c4abcd82a1558154f63adff7be5e344cd43eed2b200d2a2892eab5460d31cd6c668a3d792437d7b64b49f800ead587d08b1d41345065420db293 MISC metadata.xml 566 BLAKE2B 80d4fe47508e61979af5edd605fdbfc1ded40be7bd7141f0ae5f3ac03f7834278dfb548dd8a8e5b606a8f1df025c853e7648e8f404852209ad4df602266db3b7 SHA512 c060dee409a6c2816e7548b2ba1ebaa0d055088babb89ffa8ecdacf5e9ca69e382b7eac5feaa373eb3c981817f27cc13421084bc02e5c592c2d8c44b16bdb02e diff --git a/x11-misc/rss-glx/files/rss-glx-0.9.1-macro-if-scope.patch b/x11-misc/rss-glx/files/rss-glx-0.9.1-macro-if-scope.patch new file mode 100644 index 000000000000..5044aae31918 --- /dev/null +++ b/x11-misc/rss-glx/files/rss-glx-0.9.1-macro-if-scope.patch @@ -0,0 +1,29 @@ +Fix multistatement macro partially guarded by if + +The code still works correctly by chance, but it performs redundant +calls to BZ2_bzBuffToBuffDecompress() and it's a horrible mess. + +--- a/src/matrixview.c ++++ b/src/matrixview.c +@@ -248,8 +248,9 @@ void loadNextImage () + GetExceptionInfo (&exception); + #endif + +- if (!pics) ++ if (!pics) { + LOAD_TEXTURE (pics, cpics, cpics_compressedsize, cpics_size) ++ } + + if ((text_x != 90) || (text_y != 70)) { + if (!pic) +@@ -279,8 +280,9 @@ void loadNextImage () + DestroyImage (image); + DestroyImage (scaled_image); + } else { +- if (!pics) ++ if (!pics) { + LOAD_TEXTURE (pics, cpics, cpics_compressedsize, cpics_size) ++ } + + pic = (unsigned char *)(pics + ((random () & 15) * (text_x * text_y))); + } diff --git a/x11-misc/rss-glx/files/rss-glx-0.9.1-param-bound-mismatch.patch b/x11-misc/rss-glx/files/rss-glx-0.9.1-param-bound-mismatch.patch new file mode 100644 index 000000000000..883dede1c8d4 --- /dev/null +++ b/x11-misc/rss-glx/files/rss-glx-0.9.1-param-bound-mismatch.patch @@ -0,0 +1,14 @@ +Fix mismatched array bounds for the parameters of function +rsVec_cross()'s declaration and definition. + +--- a/src/rsMath.c ++++ b/src/rsMath.c +@@ -43,7 +43,7 @@ float rsVec_normalize (float *v) + return length; + } + +-void rsVec_cross (float *v, float vec1[4], float vec2[4]) ++void rsVec_cross (float *v, float vec1[3], float vec2[3]) + { + v[0] = vec1[1] * vec2[2] - vec2[1] * vec1[2]; + v[1] = vec1[2] * vec2[0] - vec2[2] * vec1[0]; diff --git a/x11-misc/rss-glx/files/rss-glx-0.9.1-strict-aliasing.patch b/x11-misc/rss-glx/files/rss-glx-0.9.1-strict-aliasing.patch new file mode 100644 index 000000000000..e95b1f6a1a7d --- /dev/null +++ b/x11-misc/rss-glx/files/rss-glx-0.9.1-strict-aliasing.patch @@ -0,0 +1,36 @@ +Fix strict aliasing violation in FMotion.cpp + +Bug: https://bugs.gentoo.org/928251 + +--- a/src/FMotion.cpp ++++ b/src/FMotion.cpp +@@ -22,6 +22,7 @@ + */ + + #include ++#include + #include + + // In case cmath doesn't pull in all the usual suspects from math.h +@@ -54,15 +55,19 @@ + #define FLOATTOINTCONST2 (((65536.0*16))) + inline int f2int2 (float f) + { ++ int i; + f += FLOATTOINTCONST2; +- return ((*((int *)(void *)&f)) & 0x007fffff) - 0x00400000; ++ memcpy(&i, &f, sizeof(i)); ++ return (i & 0x007fffff) - 0x00400000; + } + + #define FLOATTOINTCONST (((1.5*65536*256))) + inline int f2int (float f) + { ++ int i; + f += FLOATTOINTCONST; +- return ((*((int *)(void *)&f)) & 0x007fffff) - 0x00400000; ++ memcpy(&i, &f, sizeof(i)); ++ return (i & 0x007fffff) - 0x00400000; + } + + #define Float2Int(f) (f2int(f)) diff --git a/x11-misc/rss-glx/files/rss-glx-0.9.1-variable-mismatch.patch b/x11-misc/rss-glx/files/rss-glx-0.9.1-variable-mismatch.patch new file mode 100644 index 000000000000..19da515feff9 --- /dev/null +++ b/x11-misc/rss-glx/files/rss-glx-0.9.1-variable-mismatch.patch @@ -0,0 +1,192 @@ +Subject: [PATCH] Fix variable type mismatch in hyperspace +From: Alexander Miller +Date: Sun, 31 Mar 2024 2024-03-31 03:08:04 +0200 + +Some source files of hyperspace (flare.cpp, goo.cpp, starBurst.cpp) +were referring to a variable "extern float frameTime" which doesn't +exist in hyperspace (it's only a parameter of hack_draw() nowadays). + +It got mixed up with the driver.c variable "int frameTime". + +Remove the mismatched declaration from the 3 files and pass the value +from hack_draw() to the functions using it by adding a new parameter. +Also make frameTime (and most other variables) in driver.c static. + +Bug: https://bugs.gentoo.org/928251 +Signed-off-by: Alexander Miller +--- a/src/driver.c ++++ b/src/driver.c +@@ -49,24 +49,24 @@ + + #include "vroot.h" + +-xstuff_t *XStuff; ++static xstuff_t *XStuff; + + extern const char *hack_name; + + /* + * display parameters + */ +-int rootWindow = False; ++static int rootWindow = False; + int glewInitialized = False; + #ifdef HAVE_GLEW +-int frameTime = 10000; +-int vsync = 1; ++static int frameTime = 10000; ++static int vsync = 1; + #else +-int frameTime = 33333; +-int vsync = 0; ++static int frameTime = 33333; ++static int vsync = 0; + #endif +-int idleOnDPMS = 1; +-int signalled = 0; ++static int idleOnDPMS = 1; ++static volatile int signalled = 0; + + void createWindow (int argc, char **argv) + { +--- a/src/flare.cpp ++++ b/src/flare.cpp +@@ -45,7 +45,6 @@ extern double modelMat[16]; + extern double projMat[16]; + extern int viewport[4]; + // Calculated in main draw routine each frame +-extern float frameTime; + extern float camPos[3]; + + +@@ -182,7 +181,7 @@ void initFlares(){ + // Draw a flare at a specified (x,y) location on the screen + // Screen corners are at (0,0) and (1,1) + // alpha = 0.0 for lowest intensity; alpha = 1.0 for highest intensity +-void flare(double *pos, float red, float green, float blue, float alpha){ ++void flare(double *pos, float red, float green, float blue, float alpha, float frameTime){ + double winx, winy, winz; // in screen coordinates + float x, y, dx, dy; + float fadewidth, temp; +--- a/src/flare.h ++++ b/src/flare.h +@@ -36,7 +36,7 @@ void initFlares(); + // Draw a flare at a specified (x,y) location on the screen + // Screen corners are at (0,0) and (1,1) + // alpha = 0.0 for lowest intensity; alpha = 1.0 for highest intensity +-void flare(double *pos, float red, float green, float blue, float alpha); ++void flare(double *pos, float red, float green, float blue, float alpha, float frameTime); + + + #endif // FLARE_H +--- a/src/goo.cpp ++++ b/src/goo.cpp +@@ -25,9 +25,7 @@ + #include "goo.h" + + +-extern float frameTime, simulationTime; + extern float shiftx, shiftz; +-extern float dFov; + + + goo::goo(int res, float rad, float (*func)(float* position)){ +--- a/src/hyperspace.cpp ++++ b/src/hyperspace.cpp +@@ -340,10 +340,10 @@ void hack_draw (xstuff_t * XStuff, doubl + } + #ifdef HAVE_GLEW + if (dShaders) +- theStarBurst->draw(lerp); ++ theStarBurst->draw(frameTime, lerp); + else + #endif +- theStarBurst->draw(); ++ theStarBurst->draw(frameTime); + + // draw tunnel + theTunnel->make(frameTime); +@@ -379,7 +379,7 @@ void hack_draw (xstuff_t * XStuff, doubl + float diff[3] = {(float)flarepos[0] - camPos[0], (float)flarepos[1] - camPos[1], (float)flarepos[2] - camPos[2]}; + float alpha = 0.5f - 0.005f * sqrtf(diff[0] * diff[0] + diff[1] * diff[1] + diff[2] * diff[2]); + if(alpha > 0.0f) +- flare(flarepos, 1.0f, 1.0f, 1.0f, alpha); ++ flare(flarepos, 1.0f, 1.0f, 1.0f, alpha, frameTime); + glEnable(GL_FOG); + } + +--- a/src/starBurst.cpp ++++ b/src/starBurst.cpp +@@ -38,7 +38,6 @@ + + extern int xsize, ysize; + extern float aspectRatio; +-extern float frameTime; + extern float camPos[3]; + extern int numAnimTexFrames; + extern wavyNormalCubeMaps* theWNCM; +@@ -136,7 +135,7 @@ void starBurst::restart(float* position) + } + + +-void starBurst::drawStars(){ ++void starBurst::drawStars(float frameTime){ + int i; + float distance; + +@@ -158,8 +157,8 @@ void starBurst::drawStars(){ + } + + +-void starBurst::draw(){ +- drawStars(); ++void starBurst::draw(float frameTime){ ++ drawStars(frameTime); + + size += frameTime * 0.5f; + if(size >= 3.0f) +@@ -172,7 +171,7 @@ void starBurst::draw(float frameTime){ + p[0] = pos[0]; + p[1] = pos[1]; + p[2] = pos[2]; +- flare(p, 1.0f, 1.0f, 1.0f, brightness); ++ flare(p, 1.0f, 1.0f, 1.0f, brightness, frameTime); + } + + glMatrixMode(GL_MODELVIEW); +@@ -201,8 +200,8 @@ void starBurst::draw(){ + + + #ifdef HAVE_GLEW +-void starBurst::draw(float lerp){ +- drawStars(); ++void starBurst::draw(float frameTime, float lerp){ ++ drawStars(frameTime); + + size += frameTime * 0.5f; + if(size >= 3.0f) +@@ -215,7 +214,7 @@ void starBurst::draw(float frameTime, fl + p[0] = pos[0]; + p[1] = pos[1]; + p[2] = pos[2]; +- flare(p, 1.0f, 1.0f, 1.0f, brightness); ++ flare(p, 1.0f, 1.0f, 1.0f, brightness, frameTime); + } + + glMatrixMode(GL_MODELVIEW); +--- a/src/starBurst.h ++++ b/src/starBurst.h +@@ -43,10 +43,10 @@ public: + starBurst(); + ~starBurst(); + void restart(float* position); +- void drawStars(); +- void draw(); // draw regular ++ void drawStars(float frameTime); ++ void draw(float frameTime); // draw regular + #ifdef HAVE_GLEW +- void draw(float lerp); // draw with shaders ++ void draw(float frameTime, float lerp); // draw with shaders + #endif + }; + diff --git a/x11-misc/rss-glx/rss-glx-0.9.1-r4.ebuild b/x11-misc/rss-glx/rss-glx-0.9.1-r4.ebuild new file mode 100644 index 000000000000..9a1c206551e8 --- /dev/null +++ b/x11-misc/rss-glx/rss-glx-0.9.1-r4.ebuild @@ -0,0 +1,147 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +MY_P=${PN}_${PV} + +DESCRIPTION="Really Slick OpenGL Screensavers for XScreenSaver" +HOMEPAGE="https://rss-glx.sourceforge.net" +SRC_URI="https://sourceforge.net/projects/rss-glx/files/rss-glx/${PV}/${PN}_${PV}.tar.bz2/download -> ${P}.tar.bz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="+bzip2 openal quesoglc" + +RDEPEND=" + x11-libs/libX11 + x11-libs/libXext + >=media-libs/glew-1.5.1:= + media-libs/mesa[X(+)] + >=media-gfx/imagemagick-6.4:= + >=x11-misc/xscreensaver-5.08-r2 + bzip2? ( app-arch/bzip2 ) + openal? ( >=media-libs/freealut-1.1.0-r1 ) + quesoglc? ( media-libs/quesoglc ) +" +DEPEND=" + ${RDEPEND} + x11-base/xorg-proto +" +BDEPEND=" + virtual/pkgconfig + bzip2? ( app-arch/bzip2 ) +" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}"/${P}-quesoglc.patch + "${FILESDIR}"/${P}-asneeded.patch + "${FILESDIR}"/${P}-imagemagick-7.patch + "${FILESDIR}"/${P}-c++11-narrowing.patch + "${FILESDIR}"/${P}-hang.patch + "${FILESDIR}"/${P}-matrixview-copy-font.patch + "${FILESDIR}"/${P}-missing-include.patch + "${FILESDIR}"/${P}-bashism.patch + "${FILESDIR}"/${P}-strict-aliasing.patch + "${FILESDIR}"/${P}-variable-mismatch.patch + "${FILESDIR}"/${P}-macro-if-scope.patch + "${FILESDIR}"/${P}-param-bound-mismatch.patch +) + +src_prepare() { + default + + sed -i \ + -e '/CFLAGS=/s:-O2:${CFLAGS}:' \ + -e '/CXXFLAGS=/s:-O2:${CXXFLAGS}:' \ + -e 's|AM_CONFIG_HEADER|AC_CONFIG_HEADERS|g' \ + configure.in || die + mv configure.{in,ac} || die + + eautoreconf +} + +src_configure() { + econf \ + --disable-static \ + --enable-shared \ + $(use_enable bzip2) \ + $(use_enable openal sound) \ + $(use_with quesoglc) \ + --bindir="${EPREFIX}"/usr/$(get_libdir)/misc/xscreensaver \ + --with-configdir="${EPREFIX}"/usr/share/xscreensaver/config +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + local xssconf="${EROOT}"/usr/share/X11/app-defaults/XScreenSaver + + if [[ -f ${xssconf} ]]; then + sed -e '/*programs:/a\ + GL: \"Cyclone\" cyclone --root \\n\\\ + GL: \"Euphoria\" euphoria --root \\n\\\ + GL: \"Fieldlines\" fieldlines --root \\n\\\ + GL: \"Flocks\" flocks --root \\n\\\ + GL: \"Flux\" flux --root \\n\\\ + GL: \"Helios\" helios --root \\n\\\ + GL: \"Hyperspace\" hyperspace --root \\n\\\ + GL: \"Lattice\" lattice --root \\n\\\ + GL: \"Plasma\" plasma --root \\n\\\ + GL: \"Pixelcity\" pixelcity --root \\n\\\ + GL: \"Skyrocket\" skyrocket --root \\n\\\ + GL: \"Solarwinds\" solarwinds --root \\n\\\ + GL: \"Colorfire\" colorfire --root \\n\\\ + GL: \"Hufo\x27s Smoke\" hufo_smoke --root \\n\\\ + GL: \"Hufo\x27s Tunnel\" hufo_tunnel --root \\n\\\ + GL: \"Sundancer2\" sundancer2 --root \\n\\\ + GL: \"BioF\" biof --root \\n\\\ + GL: \"BusySpheres\" busyspheres --root \\n\\\ + GL: \"SpirographX\" spirographx --root \\n\\\ + GL: \"MatrixView\" matrixview --root \\n\\\ + GL: \"Lorenz\" lorenz --root \\n\\\ + GL: \"Drempels\" drempels --root \\n\\\ + GL: \"Feedback\" feedback --root \\n\\' \ + -i "${xssconf}" || die + fi +} + +pkg_postrm() { + local xssconf="${EROOT}"/usr/share/X11/app-defaults/XScreenSaver + + if [[ -f ${xssconf} ]]; then + sed \ + -e '/\"Cyclone\" cyclone/d' \ + -e '/\"Euphoria\" euphoria/d' \ + -e '/\"Fieldlines\" fieldlines/d' \ + -e '/\"Flocks\" flocks/d' \ + -e '/\"Flux\" flux/d' \ + -e '/\"Helios\" helios/d' \ + -e '/\"Hyperspace\" hyperspace/d' \ + -e '/\"Lattice\" lattice/d' \ + -e '/\"Plasma\" plasma/d' \ + -e '/\"Pixelcity\" pixelcity/d' \ + -e '/\"Skyrocket\" skyrocket/d' \ + -e '/\"Solarwinds\" solarwinds/d' \ + -e '/\"Colorfire\" colorfire/d' \ + -e '/\"Hufo.*Smoke\" hufo_smoke/d' \ + -e '/\"Hufo.*Tunnel\" hufo_tunnel/d' \ + -e '/\"Sundancer2\" sundancer2/d' \ + -e '/\"BioF\" biof/d' \ + -e '/\"BusySpheres\" busyspheres/d' \ + -e '/\"SpirographX\" spirographx/d' \ + -e '/\"MatrixView\" matrixview/d' \ + -e '/\"Lorenz\" lorenz/d' \ + -e '/\"Drempels\" drempels/d' \ + -e '/\"Feedback\" feedback/d' \ + -i "${xssconf}" || die + fi +} diff --git a/x11-misc/shutter/Manifest b/x11-misc/shutter/Manifest index 80e3eceafc6d..bc122c01898e 100644 --- a/x11-misc/shutter/Manifest +++ b/x11-misc/shutter/Manifest @@ -1,3 +1,5 @@ DIST shutter-0.99.4.tar.gz 1734992 BLAKE2B 410e73f784f0d83638867132669a00fe89c06af622f3024e52b5b5700c1a431b4ad50f9066c267cd76f9be48ce6ff88eab4348d2d4dff28b4ae7e0267eb7bc41 SHA512 57f7fdc1066375942bd1a9db381a8ba6f24fafbd5e0853a4dd19016438ec2f3cb039ebe90038d282bc07f6e45af9cdbb6f180f55e43357231b41818b8555347b +DIST shutter-0.99.5.tar.gz 1736757 BLAKE2B b861d4c71295ceb1e8a2d268e57babccb8a832245ffb18410c19b20bb5aca56358e00cb4e578f3b8dfcd15e4c318beb7ed873a86094de522deed7f4b2e33b58c SHA512 524e135191a324f7da890922c98646c7cd83a714a3b1dc14f2ba9910f8a90f5c6c527a5c857888c2be93120a7b242e435664c8af45792d36b66d7642fda50371 EBUILD shutter-0.99.4-r1.ebuild 2302 BLAKE2B 9bd01a4036778fb79aa8c6ca7f0700b434cd5f602d0339e56ee9561bb49fd227c3f7e86d6cc82708ecc906e73e0dc70157f3ba60503c1d2a8bbeb4caaf0e8a14 SHA512 3b7d219e6a929fded3fba4d87c7ed44dd0a7bb4c1f59e3bf3cb6a4d7ae67cd1c6efd73f5f27a741dd57662e8c8cb6939bc42ed5e501800a48fd9736c78de7b3f +EBUILD shutter-0.99.5.ebuild 2363 BLAKE2B 6b79fe9b5b6d937588549271aa78a1e9279e947e27a50a4aabef07c4a9c0052f09572da66d3932bace89efed81676f4e118e7018a5f21058789f860360e2c9c4 SHA512 251b1af3dd4f07d99f8e1bc64a89fd0103e7c2fb87c5229a005865e35941e171a3ca5a4921867e8231883228decca2d5e7a6c42ec86c80f32b78ccaadb1b0ad8 MISC metadata.xml 492 BLAKE2B 3e3bf1dc04748435e212469e84d12040db18041c65e432a4ca994fef361bc100bfb7e5f284067ae7ff63cc090ce10b2e05d38a7c4bfbdd0e8fe673f77f3fae4e SHA512 bba85636de4594323daf1be7648c76ad3323b03ce8d093842ff61e95e1f2023094d0d707985d14d99dae6f346d9624eb4e9fb17b72c0e2507f93e61bb26fec7b diff --git a/x11-misc/shutter/shutter-0.99.5.ebuild b/x11-misc/shutter/shutter-0.99.5.ebuild new file mode 100644 index 000000000000..1bc51eaa128f --- /dev/null +++ b/x11-misc/shutter/shutter-0.99.5.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop optfeature prefix xdg + +DESCRIPTION="Feature-rich screenshot program" +HOMEPAGE="https://shutter-project.org/" +SRC_URI="https://github.com/shutter-project/shutter/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~riscv ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-lang/perl + dev-libs/libayatana-appindicator + dev-perl/Carp-Always + dev-perl/libxml-perl + dev-perl/Glib-Object-Introspection + dev-perl/GooCanvas2 + dev-perl/GooCanvas2-CairoTypes + dev-perl/Gtk3 + dev-perl/Gtk3-ImageView + dev-perl/File-DesktopEntry + dev-perl/File-HomeDir + dev-perl/File-Which + dev-perl/JSON + dev-perl/File-Copy-Recursive + dev-perl/File-MimeInfo + dev-perl/Locale-gettext + dev-perl/Moo + dev-perl/Net-DBus + dev-perl/Number-Bytes-Human + dev-perl/Pango + dev-perl/Proc-Simple + dev-perl/Proc-ProcessTable + dev-perl/Sort-Naturally + dev-perl/X11-Protocol + dev-perl/XML-Simple + virtual/imagemagick-tools[perl] + x11-libs/libwnck:3[introspection] +" +BDEPEND=" + sys-devel/gettext + test? ( dev-perl/Test-MockModule ) +" + +src_prepare() { + hprefixify bin/shutter + default +} + +src_test() { + prove -I share/shutter/resources/modules/ -I t/lib t -r || die +} + +src_install() { + dobin bin/shutter + dodoc README + domenu share/applications/shutter.desktop + doicon share/pixmaps/shutter.png + doman share/man/man1/shutter.1 + + insinto /usr/share + doins -r share/shutter + doins -r share/locale + doins -r share/icons + + insinto /usr/share/metainfo + doins share/metainfo/shutter.metainfo.xml + + # .po doesn't belong to installed system, only .mo + rm -r "${ED}"/usr/share/shutter/resources/po || die + + # shutter executes perl scripts as standalone scripts, and after that "require"s them. + find "${ED}"/usr/share/shutter/resources/system/plugins/ -type f ! -name '*.*' -exec chmod +x {} + \ + || die "failed to make plugins executables" + find "${ED}"/usr/share/shutter/resources/system/upload_plugins/upload -type f \ + -name "*.pm" -exec chmod +x {} + || die "failed to make upload plugins executables" +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "writing Exif information" media-libs/exiftool + optfeature "image hostings uploading" "dev-perl/JSON-MaybeXS dev-perl/Path-Class" + optfeature "WebP support" gui-libs/gdk-pixbuf-loader-webp +} -- cgit v1.2.3