aboutsummaryrefslogtreecommitdiffstats
path: root/graphics
diff options
context:
space:
mode:
authormi <mi@FreeBSD.org>2007-11-09 10:40:12 +0800
committermi <mi@FreeBSD.org>2007-11-09 10:40:12 +0800
commit66780dc8056fddf2f4eafe92e812a54b33134809 (patch)
tree5e802e842d2ee3e4853c660e3039bce717b2812d /graphics
parent20bd8b3aeaa1382734936b117f7c04ddd1cdf7db (diff)
downloadfreebsd-ports-gnome-66780dc8056fddf2f4eafe92e812a54b33134809.tar.gz
freebsd-ports-gnome-66780dc8056fddf2f4eafe92e812a54b33134809.tar.zst
freebsd-ports-gnome-66780dc8056fddf2f4eafe92e812a54b33134809.zip
Attempt to fix this port, which seems to break every time ImageMagick is
updated by switching it to use GraphicsMagick instead. This removes the need for "private" headers and promises a less eventful future. Don't install mimetype-descriptions, which conflict with those installed by kdelibs and otherwise improve plist. Build in parallel using our own make (no evident need for gmake). The port may be retired soon, as no new development happened on it since early 2005. Approved by: portmgr (linimon)
Diffstat (limited to 'graphics')
-rw-r--r--graphics/pixieplus/Makefile21
-rw-r--r--graphics/pixieplus/files/blob_private.h102
-rw-r--r--graphics/pixieplus/files/exception_private.h92
-rw-r--r--graphics/pixieplus/files/image_private.h47
-rw-r--r--graphics/pixieplus/files/patch-app_batch.cpp23
-rw-r--r--graphics/pixieplus/files/patch-app_compressedgif.cpp66
-rw-r--r--graphics/pixieplus/files/patch-app_ifapp.cpp51
-rw-r--r--graphics/pixieplus/files/patch-warnings27
-rw-r--r--graphics/pixieplus/pkg-plist55
9 files changed, 158 insertions, 326 deletions
diff --git a/graphics/pixieplus/Makefile b/graphics/pixieplus/Makefile
index 6b7a74316aa5..d06701fa5bbe 100644
--- a/graphics/pixieplus/Makefile
+++ b/graphics/pixieplus/Makefile
@@ -7,27 +7,34 @@
PORTNAME= pixieplus
PORTVERSION= 0.5.4.1
-PORTREVISION= 8
+PORTREVISION= 9
CATEGORIES= graphics kde
MASTER_SITES= http://people.fruitsalad.org/avleeuwen/distfiles/${PORTNAME}/
MAINTAINER= ports@FreeBSD.org
COMMENT= A free, fast, and feature packed image browser and viewer for KDE
-LIB_DEPENDS= Magick.10:${PORTSDIR}/graphics/ImageMagick \
- ungif.5:${PORTSDIR}/graphics/libungif
+LIB_DEPENDS= GraphicsMagick:${PORTSDIR}/graphics/GraphicsMagick \
+ ungif:${PORTSDIR}/graphics/libungif
USE_AUTOTOOLS= libtool:15
-USE_GMAKE= yes
USE_KDELIBS_VER=3
INSTALLS_SHLIB= yes
USE_BZIP2= yes
+ALL_TARGET= -j`${SYSCTL} -n hw.ncpu`
.include <bsd.port.pre.mk>
post-patch:
- @${CP} ${FILESDIR}/blob_private.h ${WRKSRC}/app/
- @${CP} ${FILESDIR}/exception_private.h ${WRKSRC}/app/
- @${CP} ${FILESDIR}/image_private.h ${WRKSRC}/app/
+ # Massaging to use GraphicsMagick
+ ${REINPLACE_CMD} -e \
+ "s,INCLUDES =.*,INCLUDES=`${LOCALBASE}/bin/GraphicsMagick-config \
+ --cppflags` -I${LOCALBASE}/include," -e \
+ "s|-lMagick -ltiff|`${LOCALBASE}/bin/GraphicsMagick-config \
+ --libs`|" ${WRKSRC}/app/Makefile.in
+ ${REINPLACE_CMD} -e 's,<api.h>,<magick/api.h>,' \
+ ${WRKSRC}/app/*.h ${WRKSRC}/app/*.cpp
+ ${REINPLACE_CMD} -e s,Magick-config,GraphicsMagick-config,g -e s,6.0.0,1.1.10, \
+ ${WRKSRC}/configure
.include <bsd.port.post.mk>
diff --git a/graphics/pixieplus/files/blob_private.h b/graphics/pixieplus/files/blob_private.h
deleted file mode 100644
index 2d3b7d24b18a..000000000000
--- a/graphics/pixieplus/files/blob_private.h
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- Copyright 1999-2004 ImageMagick Studio LLC, a non-profit organization
- dedicated to making software imaging solutions freely available.
-
- You may not use this file except in compliance with the License.
- obtain a copy of the License at
-
- http://www.imagemagick.org/www/Copyright.html
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- ImageMagick Binary Large OBjects private methods.
-*/
-#ifndef _MAGICK_BLOB_PRIVATE_H
-#define _MAGICK_BLOB_PRIVATE_H
-
-#if defined(__cplusplus) || defined(c_plusplus)
-extern "C" {
-#endif
-
-#include "magick/image.h"
-#include "magick/stream.h"
-
-#if !defined(MagickMaxBufferSize)
-#define MagickMaxBufferSize 0x3c005UL
-#endif
-
-typedef enum
-{
- UndefinedBlobMode,
- ReadBlobMode,
- ReadBinaryBlobMode,
- WriteBlobMode,
- WriteBinaryBlobMode,
- IOBinaryBlobMode
-} BlobMode;
-
-typedef int
- *(*BlobFifo)(const Image *,const void *,const size_t);
-
-typedef struct _BlobInfo
- BlobInfo;
-
-extern MagickExport BlobInfo
- *CloneBlobInfo(const BlobInfo *),
- *ReferenceBlob(BlobInfo *);
-
-extern MagickExport char
- *ReadBlobString(Image *,char *);
-
-extern MagickExport int
- EOFBlob(const Image *),
- ReadBlobByte(Image *),
- SyncBlob(Image *);
-
-extern MagickExport MagickBooleanType
- OpenBlob(const ImageInfo *,Image *,const BlobMode,ExceptionInfo *),
- UnmapBlob(void *,const size_t);
-
-extern MagickExport MagickOffsetType
- SeekBlob(Image *,const MagickOffsetType,const int),
- TellBlob(const Image *image);
-
-extern MagickExport ssize_t
- ReadBlob(Image *,const size_t,unsigned char *),
- WriteBlob(Image *,const size_t,const unsigned char *),
- WriteBlobByte(Image *,const unsigned char),
- WriteBlobLSBLong(Image *,const unsigned long),
- WriteBlobLSBShort(Image *,const unsigned short),
- WriteBlobMSBLong(Image *,const unsigned long),
- WriteBlobMSBShort(Image *,const unsigned short),
- WriteBlobString(Image *,const char *);
-
-extern MagickExport unsigned char
- *DetachBlob(BlobInfo *),
- *ImageToBlob(const ImageInfo *,Image *,size_t *,ExceptionInfo *),
- *MapBlob(int,const MapMode,const MagickOffsetType,const size_t);
-
-extern MagickExport unsigned long
- ReadBlobLSBLong(Image *),
- ReadBlobMSBLong(Image *);
-
-extern MagickExport unsigned short
- ReadBlobLSBShort(Image *),
- ReadBlobMSBShort(Image *);
-
-extern MagickExport void
- AttachBlob(BlobInfo *,const void *,const size_t),
- CloseBlob(Image *),
- GetBlobInfo(BlobInfo *),
- MSBOrderLong(unsigned char *,const size_t),
- MSBOrderShort(unsigned char *,const size_t);
-
-#if defined(__cplusplus) || defined(c_plusplus)
-}
-#endif
-
-#endif
diff --git a/graphics/pixieplus/files/exception_private.h b/graphics/pixieplus/files/exception_private.h
deleted file mode 100644
index f19dfb58f895..000000000000
--- a/graphics/pixieplus/files/exception_private.h
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- Copyright 1999-2004 ImageMagick Studio LLC, a non-profit organization
- dedicated to making software imaging solutions freely available.
-
- You may not use this file except in compliance with the License.
- obtain a copy of the License at
-
- http://www.imagemagick.org/www/Copyright.html
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- ImageMagick private exception methods.
-*/
-#ifndef _MAGICK_EXCEPTION_PRIVATE_H
-#define _MAGICK_EXCEPTION_PRIVATE_H
-
-#if defined(__cplusplus) || defined(c_plusplus)
-extern "C" {
-#endif
-
-#include "magick/log.h"
-
-#define ThrowBinaryException(severity,tag,context) \
-{ \
- if (image != (Image *) NULL) \
- (void) ThrowMagickException(&image->exception,GetMagickModule(),severity, \
- tag,context); \
- return(MagickFalse); \
-}
-#define ThrowFileException(exception,severity,tag,context) \
- (void) ThrowMagickException(exception,GetMagickModule(),severity,tag, \
- context,strerror(errno));
-#define ThrowImageException(severity,tag) \
-{ \
- (void) ThrowMagickException(exception,GetMagickModule(),severity,tag, \
- image->filename); \
- return((Image *) NULL); \
-}
-#define ThrowMagickFatalException(severity,tag,context) \
-{ \
- ExceptionInfo \
- exception; \
- \
- GetExceptionInfo(&exception); \
- (void) ThrowMagickException(&exception,GetMagickModule(),severity,tag, \
- context); \
- CatchException(&exception); \
- DestroyExceptionInfo(&exception); \
-}
-#define ThrowReaderException(severity,tag) \
-{ \
- (void) ThrowMagickException(exception,GetMagickModule(),severity,tag, \
- image_info->filename); \
- if ((image) != (Image *) NULL) \
- { \
- CloseBlob(image); \
- DestroyImageList(image); \
- } \
- return((Image *) NULL); \
-}
-#define ThrowWriterException(severity,tag) \
-{ \
- assert(image != (Image *) NULL); \
- (void) ThrowMagickException(&image->exception,GetMagickModule(),severity, \
- tag,image->filename); \
- if (image_info->adjoin != MagickFalse) \
- while (image->previous != (Image *) NULL) \
- image=image->previous; \
- CloseBlob(image); \
- return(MagickFalse); \
-}
-#define ThrowXWindowException(severity,tag,context) \
-{ \
- ExceptionInfo \
- exception; \
- \
- GetExceptionInfo(&exception); \
- (void) ThrowMagickException(&exception,GetMagickModule(),severity,tag, \
- context); \
- CatchException(&exception); \
- DestroyExceptionInfo(&exception); \
-}
-
-#if defined(__cplusplus) || defined(c_plusplus)
-}
-#endif
-
-#endif
diff --git a/graphics/pixieplus/files/image_private.h b/graphics/pixieplus/files/image_private.h
deleted file mode 100644
index a9ca74713be0..000000000000
--- a/graphics/pixieplus/files/image_private.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- Copyright 1999-2004 ImageMagick Studio LLC, a non-profit organization
- dedicated to making software imaging solutions freely available.
-
- You may not use this file except in compliance with the License.
- obtain a copy of the License at
-
- http://www.imagemagick.org/www/Copyright.html
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- ImageMagick private image methods.
-*/
-#ifndef _MAGICK_IMAGE_PRIVATE_H
-#define _MAGICK_IMAGE_PRIVATE_H
-
-#if defined(__cplusplus) || defined(c_plusplus)
-extern "C" {
-#endif
-
-extern MagickExport const char
- *BackgroundColor,
- *BorderColor,
- *DefaultTileFrame,
- *DefaultTileGeometry,
- *DefaultTileLabel,
- *ForegroundColor,
- *MatteColor,
- *LoadImageTag,
- *LoadImagesTag,
- *PSDensityGeometry,
- *PSPageGeometry,
- *SaveImageTag,
- *SaveImagesTag;
-
-extern MagickExport const unsigned long
- UndefinedCompressionQuality;
-
-#if defined(__cplusplus) || defined(c_plusplus)
-}
-#endif
-
-#endif
diff --git a/graphics/pixieplus/files/patch-app_batch.cpp b/graphics/pixieplus/files/patch-app_batch.cpp
deleted file mode 100644
index a7346ea8ee5e..000000000000
--- a/graphics/pixieplus/files/patch-app_batch.cpp
+++ /dev/null
@@ -1,23 +0,0 @@
---- app/batch.cpp.orig Sat Sep 18 22:02:13 2004
-+++ app/batch.cpp Sat Sep 18 22:03:11 2004
-@@ -618,9 +618,9 @@
- else if(type == Equalize)
- EqualizeImage(img);
- else if(type == IncContrast)
-- ContrastImage(img, true);
-+ ContrastImage(img, (MagickBooleanType)true);
- else if(type == DecContrast)
-- ContrastImage(img, false);
-+ ContrastImage(img, (MagickBooleanType)false);
- else if(type == Solarize)
- SolarizeImage(img, weight);
- else if(type == Threshold)
-@@ -752,7 +752,7 @@
- save = false;
- }
- else if(type == Shade){
-- Image *tmp = ShadeImage(img, useColor, a, e, &exception);
-+ Image *tmp = ShadeImage(img, (MagickBooleanType)useColor, a, e, &exception);
- if(tmp){
- if(img->next)
- DestroyImageList(img);
diff --git a/graphics/pixieplus/files/patch-app_compressedgif.cpp b/graphics/pixieplus/files/patch-app_compressedgif.cpp
index 38797e000e0c..4a7bc12d8c42 100644
--- a/graphics/pixieplus/files/patch-app_compressedgif.cpp
+++ b/graphics/pixieplus/files/patch-app_compressedgif.cpp
@@ -1,13 +1,59 @@
---- app/compressedgif.cpp.orig Sat May 22 16:02:26 2004
-+++ app/compressedgif.cpp Sun Nov 28 21:37:00 2004
-@@ -9,6 +9,10 @@
- #include <api.h>
+--- app/compressedgif.cpp 2004-05-22 10:02:26.000000000 -0400
++++ app/compressedgif.cpp 2007-11-08 08:44:00.000000000 -0500
+@@ -7,5 +7,5 @@
+ #include <time.h>
+ #include <sys/types.h>
+-#include <api.h>
++#include <magick/api.h>
#include <assert.h>
-+#include "blob_private.h"
-+#include "image_private.h"
-+#include "exception_private.h"
-+
- #ifndef False
- #define False 0
+@@ -28,5 +28,6 @@
#endif
+
+-#if (MagickLibVersion < 0x0554)
++/* GraphicsMagick uses much higher "base" for version numbers: */
++#if (MagickLibVersion < 0x0554) || (MagickLibVersion > 0x0100000)
+ #warning Using pre-ImageMagick 5.5.4 tags
+ #define SaveImageTag SaveImageText
+@@ -360,5 +361,9 @@
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ if (status == false)
++#if (MagickLibVersion > 0x0100000) /* GraphicsMagick - must pass image */
++ ThrowWriterException(FileOpenError,"Unable to open file", image);
++#else
+ ThrowWriterException(FileOpenError,"Unable to open file");
++#endif
+ /*
+ Determine image bounding box.
+@@ -385,5 +390,9 @@
+ if ((global_colormap == (unsigned char *) NULL) ||
+ (colormap == (unsigned char *) NULL))
++#if (MagickLibVersion > 0x0100000) /* GraphicsMagick - must pass image */
++ ThrowWriterException(ResourceLimitError,"Memory allocation failed", image);
++#else
+ ThrowWriterException(ResourceLimitError,"Memory allocation failed");
++#endif
+ for (i=0; i < 768; i++)
+ colormap[i]=0;
+@@ -437,6 +446,11 @@
+ LiberateMemory((void **) &global_colormap);
+ LiberateMemory((void **) &colormap);
++#if (MagickLibVersion > 0x0100000) /* GraphicsMagick - must pass image */
++ ThrowWriterException(ResourceLimitError,
++ "Memory allocation failed", image);
++#else
+ ThrowWriterException(ResourceLimitError,
+ "Memory allocation failed")
++#endif
+ }
+ image->colormap[opacity]=image->background_color;
+@@ -615,5 +629,9 @@
+ LiberateMemory((void **) &global_colormap);
+ LiberateMemory((void **) &colormap);
++#if (MagickLibVersion > 0x0100000) /* GraphicsMagick - must pass image */
++ ThrowWriterException(ResourceLimitError,"Memory allocation failed", image);
++#else
+ ThrowWriterException(ResourceLimitError,"Memory allocation failed")
++#endif
+ }
+ (void) WriteBlobByte(image,0x0);
diff --git a/graphics/pixieplus/files/patch-app_ifapp.cpp b/graphics/pixieplus/files/patch-app_ifapp.cpp
index b3a39396a0af..b6a68782ba07 100644
--- a/graphics/pixieplus/files/patch-app_ifapp.cpp
+++ b/graphics/pixieplus/files/patch-app_ifapp.cpp
@@ -1,25 +1,42 @@
---- app/ifapp.cpp.orig Sat Sep 18 22:08:01 2004
-+++ app/ifapp.cpp Sat Sep 18 22:10:56 2004
-@@ -33,18 +33,18 @@
-
+--- app/ifapp.cpp 2004-05-22 10:02:26.000000000 -0400
++++ app/ifapp.cpp 2007-11-08 08:51:37.000000000 -0500
+@@ -34,6 +34,7 @@
// ImageMagick message and progress stubs
extern "C"{
- unsigned int magickMonitor(const char *msg, const off_t value,
- const long long unsigned int span, ExceptionInfo *)
-+ MagickBooleanType magickMonitor(const char *msg, const MagickOffsetType value,
-+ const MagickSizeType span, ExceptionInfo *)
++ static unsigned int
++ magickMonitor(const char *msg, const magick_int64_t value,
++ const magick_uint64_t span, ExceptionInfo *)
{
if(!appPtr)
-- return(true);
-+ return((MagickBooleanType)true);
- int val = (int)((((float)value)/((float)span))*100.0);
- if(appPtr->magickMessageProgress())
- appPtr->magickMessageProgress()->setValue(val);
- if(appPtr->magickMessageLabel())
- appPtr->magickMessageLabel()->setText(msg);
- appPtr->processEvents();
-- return(true);
-+ return((MagickBooleanType)true);
+@@ -48,6 +49,7 @@
+ }
+
+- void magickWarning(const ExceptionType /*warning*/, const char *reason,
+- const char *description)
++ static void
++ magickWarning(const ExceptionType /*warning*/, const char *reason,
++ const char *description)
+ {
+ QString str(reason);
+@@ -58,6 +60,7 @@
}
- void magickWarning(const ExceptionType /*warning*/, const char *reason,
+- void magickError(const ExceptionType /*error*/, const char *reason,
+- const char *description)
++ static void
++ magickError(const ExceptionType /*error*/, const char *reason,
++ const char *description)
+ {
+ QString str(reason);
+@@ -68,6 +71,7 @@
+ }
+
+- void magickFatalError(const ExceptionType /*error*/, const char *reason,
+- const char *description)
++ static void
++ magickFatalError(const ExceptionType /*error*/, const char *reason,
++ const char *description)
+ {
+ QString str(reason);
diff --git a/graphics/pixieplus/files/patch-warnings b/graphics/pixieplus/files/patch-warnings
new file mode 100644
index 000000000000..6aa614382964
--- /dev/null
+++ b/graphics/pixieplus/files/patch-warnings
@@ -0,0 +1,27 @@
+--- app/htmlexport.cpp 2004-05-22 10:02:26.000000000 -0400
++++ app/htmlexport.cpp 2007-11-08 08:59:28.000000000 -0500
+@@ -26,6 +26,4 @@
+ pages = (int)ceil(((float)fileList.count())/imagesPerPage);
+
+- qWarning("Total images: %d, images per page %d, pages: %d",
+- fileList.count(), imagesPerPage, pages);
+
+ it = fileList.begin();
+--- app/browser.cpp 2004-05-22 10:02:26.000000000 -0400
++++ app/browser.cpp 2007-11-08 09:05:39.000000000 -0500
+@@ -2013,5 +2013,4 @@
+ p.begin(tmpIconPix);
+
+- qWarning("KIO handlers: %d", kioHandlers->count());
+ if(kioHandlers->count()){
+ QStringList::Iterator it;
+--- mimetypes/Makefile.in 2004-05-23 07:00:55.000000000 -0400
++++ mimetypes/Makefile.in 2007-11-08 09:32:52.000000000 -0500
+@@ -276,6 +276,5 @@
+ xdg_menudir = @xdg_menudir@
+
+-mime_DATA = x-pcx.desktop x-xwd.desktop x-miff.desktop x-tga.desktop \
+- x-pict.desktop
++mime_DATA = x-xwd.desktop x-miff.desktop x-pict.desktop
+
+
diff --git a/graphics/pixieplus/pkg-plist b/graphics/pixieplus/pkg-plist
index 0025fd9beb57..dafb633689da 100644
--- a/graphics/pixieplus/pkg-plist
+++ b/graphics/pixieplus/pkg-plist
@@ -208,7 +208,6 @@ share/apps/pixie/toolbar/mini-ray.png
share/apps/pixie/toolbar/kwin.png
share/mimelnk/image/x-xwd.desktop
share/mimelnk/image/x-miff.desktop
-share/mimelnk/image/x-tga.desktop
share/mimelnk/image/x-pict.desktop
share/icons/locolor/22x22/actions/thumb.png
share/icons/locolor/16x16/apps/run.png
@@ -237,10 +236,10 @@ share/icons/hicolor/32x32/apps/pixie.png
share/icons/hicolor/32x32/actions/thumb.png
share/icons/hicolor/32x32/actions/window_new.png
share/icons/hicolor/32x32/actions/catagory.png
-@dirrm share/applnk/Graphics
-@dirrm share/applnk
-@dirrm share/apps/konqueror/servicemenus
-@dirrm share/apps/konqueror
+@dirrmtry share/applnk/Graphics
+@dirrmtry share/applnk
+@dirrmtry share/apps/konqueror/servicemenus
+@dirrmtry share/apps/konqueror
@dirrm share/apps/pixie/doc/en/basic
@dirrm share/apps/pixie/doc/en/framed
@dirrm share/apps/pixie/doc/en/liquid
@@ -250,26 +249,26 @@ share/icons/hicolor/32x32/actions/catagory.png
@dirrm share/apps/pixie/doc
@dirrm share/apps/pixie/toolbar
@dirrm share/apps/pixie
-@dirrm share/apps
-@dirrm share/mimelnk/image
-@dirrm share/mimelnk
-@dirrm share/icons/locolor/22x22/actions
-@dirrm share/icons/locolor/22x22
-@dirrm share/icons/locolor/16x16/apps
-@dirrm share/icons/locolor/16x16/actions
-@dirrm share/icons/locolor/16x16
-@dirrm share/icons/locolor/32x32/actions
-@dirrm share/icons/locolor/32x32
-@dirrm share/icons/locolor
-@dirrm share/icons/hicolor/16x16/actions
-@dirrm share/icons/hicolor/16x16/apps
-@dirrm share/icons/hicolor/16x16
-@dirrm share/icons/hicolor/48x48/apps
-@dirrm share/icons/hicolor/48x48
-@dirrm share/icons/hicolor/22x22/actions
-@dirrm share/icons/hicolor/22x22
-@dirrm share/icons/hicolor/32x32/apps
-@dirrm share/icons/hicolor/32x32/actions
-@dirrm share/icons/hicolor/32x32
-@dirrm share/icons/hicolor
-@dirrm share/icons
+@dirrmtry share/apps
+@dirrmtry share/mimelnk/image
+@dirrmtry share/mimelnk
+@dirrmtry share/icons/locolor/22x22/actions
+@dirrmtry share/icons/locolor/22x22
+@dirrmtry share/icons/locolor/16x16/apps
+@dirrmtry share/icons/locolor/16x16/actions
+@dirrmtry share/icons/locolor/16x16
+@dirrmtry share/icons/locolor/32x32/actions
+@dirrmtry share/icons/locolor/32x32
+@dirrmtry share/icons/locolor
+@dirrmtry share/icons/hicolor/16x16/actions
+@dirrmtry share/icons/hicolor/16x16/apps
+@dirrmtry share/icons/hicolor/16x16
+@dirrmtry share/icons/hicolor/48x48/apps
+@dirrmtry share/icons/hicolor/48x48
+@dirrmtry share/icons/hicolor/22x22/actions
+@dirrmtry share/icons/hicolor/22x22
+@dirrmtry share/icons/hicolor/32x32/apps
+@dirrmtry share/icons/hicolor/32x32/actions
+@dirrmtry share/icons/hicolor/32x32
+@dirrmtry share/icons/hicolor
+@dirrmtry share/icons