Nothin' but Slackware

バイクとLinuxに戯れる日々

2023年03月

MEGAcmd-1.6.1_Linux has been released

[Update] 2023-03-29 : Version bump to 1.6.1_linux

クラウド・ストレージ MEGA のコマンドライン・ユーティリティ MEGAcmd-1.6.1_Linux

screen shot
MEGAcmd-1.6.1.0_LogIn


MEGAcmd.SlackBuild
[code]
#!/bin/bash

# Slackware build script for MEGAcmd

# Copyright 2017,2018 Felipe Bugno <capent@yahoo.com>
#
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
#  THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
#  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
#  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO
#  EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
#  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
#  OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
#  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
#  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
#  ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

cd $(dirname $0) ; CWD=$(pwd)

PRGNAM=MEGAcmd
VERSION=${VERSION:-
1.6.1}
SDK=${SDK:-4.17.1a}
BUILD=${BUILD:-1} # Version bump to 1.6.1 on 2023-03-30
TAG=${TAG:-jw}
PKGTYPE=${PKGTYPE:-txz}

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i586 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
# the name of the created package would be, and then exit. This information
# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
  echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
  exit 0
fi

TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

if [ "$ARCH" = "i586" ]; then
  SLKCFLAGS="-O2 -march=i586 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
else
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
fi

set -e

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-${VERSION}_Linux
tar xvf $CWD/$PRGNAM-${VERSION}_Linux.tar.?z
cd $PRGNAM-${VERSION}_Linux/sdk
tar --strip-components=1 -xvf $CWD/sdk-$SDK.tar.gz

cd ../
chown -R root:root .
find -L . \
 \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
  -o -perm 511 \) -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
 -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;

./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --without-ffmpeg \
  --build=$ARCH-slackware-linux

make
make install DESTDIR=$PKG
# Fix installdir of megacmd_completion.sh
rm -rf $PKG/etc
install -Dm644 src/client/megacmd_completion.sh $PKG/usr/share/bash-completion/completions/megacmd

# Don't ship .la files:
rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/*.la

find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true

mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
  LICENSE README.md UserGuide.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE


MEGAcmd.info
[code]
PRGNAM="MEGAcmd"
VERSION="1.6.1"
HOMEPAGE="https://github.com/meganz/MEGAcmd"
DOWNLOAD="https://github.com/meganz/MEGAcmd/archive/1.6.1_Linux/MEGAcmd-1.6.1_Linux.tar.gz \
          https://github.com/meganz/sdk/archive/v4.17.1a/sdk-4.17.1a.tar.gz"
MD5SUM="1b416cdf5dd33390def1c03dca55887d \
        940697fccabd974922235e6901381a39"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="FreeImage libmediainfo"
MAINTAINER="JW(Shinichi Abe)"
EMAIL="shin1.abe@nifty.com"


slack-desc
[code]
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.  Line
# up the first '|' above the ':' following the base package name, and the '|'
# on the right side marks the last column you can put a character in.  You must
# make exactly 11 lines for the formatting to be correct.  It's also
# customary to leave one space after the ':'.

       |-----handy-ruler------------------------------------------------------|
MEGAcmd: MEGAcmd (MEGAcmd)
MEGAcmd: URL : https://github.com/meganz/MEGAcmd
MEGAcmd:
MEGAcmd: MEGAcmd provides non UI access to MEGA services. It intends to offer
MEGAcmd: all the functionality with your MEGA account via commands.
MEGAcmd: It features synchronization , backup of local folders into your MEGA
MEGAcmd: account and a webdav/streaming server
MEGAcmd:
MEGAcmd:
MEGAcmd:
MEGAcmd:




===


ghostscript-10.01.1 package for slackware64-current

TESTING: Ghostscript-10.01.1 package for slackware64-current (15.0+)

-----------------------------------------------------------------------------------------------------------------------------
SlackBuild diff to official slackware's ghostscript.SlackBuild
--- ghostscript.SlackBuild    2023-03-29 14:12:11.035643315 +0900
+++ ghostscript.SlackBuild.new    2023-03-29 14:01:37.743707565 +0900
@@ -73,6 +73,12 @@
 tar xvf $CWD/${SRCPREFIX}${PKGNAM}-$VERSION.tar.?z || exit 1
 cd ${SRCPREFIX}${PKGNAM}-$VERSION || exit 1
 
+# Fix bug 706478: pdfwrite: Substituted TTF CIDFont CID handling
+# https://bugs.ghostscript.com/show_bug.cgi?id=706478
+# https://bugzilla.redhat.com/show_bug.cgi?id=2178720
+#
+zcat $CWD/
0002_ghostscript-10.01.1-pdfwrite-Substituted-TTF-CIDFont-CID-hand.patch.gz | patch -p1 --verbose || exit 1
+
 # Remove unmaintained garbage:
 rm -rf freetype jpeg lcms2 libpng libtiff png tiff zlib
 
@@ -118,6 +124,7 @@
   --with-fontpath=/usr/share/fonts/TTF \
   --with-ijs \
   --disable-compile-inits \
+  --disable-hidden-visibility \
   --enable-dynamic \
   --with-system-libtiff \
   --enable-cups \


[code]
--- a/psi/zfcid1.c    2023-03-29 21:35:59.577941735 +0900
+++ b/psi/zfcid1.c    2023-03-29 21:34:19.981951840 +0900
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2021 Artifex Software, Inc.
+/* Copyright (C) 2001-2023 Artifex Software, Inc.
    All Rights Reserved.
 
    This software is provided AS-IS with no warranty, either express or
@@ -77,37 +77,56 @@
     int gdbytes = pfont->cidata.common.GDBytes;
     int gnum = 0;
     const byte *data;
-    int i, code;
+    int i, code = -1;
     ref rcid;
     ref *prgnum;
+    ref *p, *fdict = pfont_dict(pfont);
 
-    switch (r_type(pcidmap)) {
-    case t_string:
-        if (cid >= r_size(pcidmap) / gdbytes)
-            return_error(gs_error_rangecheck);
-        data = pcidmap->value.const_bytes + cid * gdbytes;
-        break;
-    case t_integer:
-        return cid + pcidmap->value.intval;
-    case t_dictionary:
-        make_int(&rcid, cid);
-        code = dict_find(pcidmap, &rcid, &prgnum);
-        if (code <= 0)
-            return (code < 0 ? code : gs_note_error(gs_error_undefined));
-        if (!r_has_type(prgnum, t_integer))
-            return_error(gs_error_typecheck);
-        return prgnum->value.intval;
-    default:            /* array type */
-        code = string_array_access_proc(pfont->memory, pcidmap, 1, cid * gdbytes,
-                                        gdbytes, NULL, NULL, &data);
-
-        if (code < 0)
-            return code;
-        if ( code > 0 )
-            return_error(gs_error_invalidfont);
+    if (r_has_type(fdict, t_dictionary) && dict_find_string(fdict, "Path", &p)) {
+        ref *Decoding = NULL, *TT_cmap = NULL, *SubstNWP = NULL, src_type, dst_type;
+        uint c;
+
+        code = dict_find_string(fdict, "Decoding", &Decoding);
+        if (code > 0)
+            code = dict_find_string(fdict, "TT_cmap", &TT_cmap);
+        if (code > 0)
+            code = dict_find_string(fdict, "SubstNWP", &SubstNWP);
+        if (code > 0) {
+            code = cid_to_TT_charcode(pfont->memory, Decoding, TT_cmap, SubstNWP, cid, &c, &src_type, &dst_type);
+            if (code >= 0)
+                gnum = c;
+        }
+    }
+
+    if (code < 0) {
+        switch (r_type(pcidmap)) {
+        case t_string:
+            if (cid >= r_size(pcidmap) / gdbytes)
+                return_error(gs_error_rangecheck);
+            data = pcidmap->value.const_bytes + cid * gdbytes;
+            break;
+        case t_integer:
+            return cid + pcidmap->value.intval;
+        case t_dictionary:
+            make_int(&rcid, cid);
+            code = dict_find(pcidmap, &rcid, &prgnum);
+            if (code <= 0)
+                return (code < 0 ? code : gs_note_error(gs_error_undefined));
+            if (!r_has_type(prgnum, t_integer))
+                return_error(gs_error_typecheck);
+            return prgnum->value.intval;
+        default:            /* array type */
+            code = string_array_access_proc(pfont->memory, pcidmap, 1, cid * gdbytes,
+                                            gdbytes, NULL, NULL, &data);
+
+            if (code < 0)
+                return code;
+            if ( code > 0 )
+                return_error(gs_error_invalidfont);
+        }
+        for (i = 0; i < gdbytes; ++i)
+            gnum = (gnum << 8) + data[i];
     }
-    for (i = 0; i < gdbytes; ++i)
-        gnum = (gnum << 8) + data[i];
     if (gnum >= pfont->data.trueNumGlyphs)
         return_error(gs_error_invalidfont);
     return gnum;

(notes)
Related Links :


from commitdiff at projects / ghostpdl.git / commitdiff
Bug 706478: pdfwrite: Substituted TTF CIDFont CID handling
-------------------------------------------------
author    Chris Liddell <chris.liddell@artifex.com>   
    Thu, 16 Mar 2023 00:38:29 +0900 (15:38 +0000)
committer    Chris Liddell <chris.liddell@artifex.com>   
    Thu, 16 Mar 2023 02:01:03 +0900 (17:01 +0000)
The PS interpreter callback that handles converting a CID to a TTF GID did
not handle the case of substituted CIDFonts.

It requires looking up the CID on the Decoding (to get a Unicode code point),
and then looking up the code point in the TTF cmap table to get the GID.

The rendering code already handled it.
----------------------------------------------------------

TEST pdfwrite
test file : I used gscjk_aj.ps ( /usr/share/ghostscript/10.01.0/examples/cjk/gscjk_aj.ps )

test commands :
Test-1)
gs -dBATCH -dNOPAUSE -sDEVICE=pnggray -sOutputFile=gscjk_aj.png -f gscjk_aj.ps
$ gs -dBATCH -dNOPAUSE -sDEVICE=pnggray -sOutputFile=gscjk_aj.png -f gscjk_aj.ps

GPL Ghostscript 10.01.0 (2023-03-22)
Copyright (C) 2023 Artifex Software, Inc.  All rights reserved.
This software is supplied under the GNU AGPLv3 and comes with NO WARRANTY:
see the file COPYING for details.
------------------------------------------------------------------------
This is a script to test CJK fonts such as CID-keyed fonts.
If you have not done CID-keyed fonts installation and definitions at
/Resource/CMap and CIDFnmap or /Resource/CIDFont of ghostscript, then
this script can't work correctly.
For details, please see README at http://www.gyve.org/gs-cjk/supplement.

If you throw this script into a printer, it requires PostScript 3
printer and CID-keyed fonts specified in this script.
------------------------------------------------------------------------
Querying operating system for font files...
Loading a TT font from /usr/share/fonts/TrueType/ipam.ttf to emulate a CID font ipam ... Done.
Loading a TT font from /usr/share/fonts/TrueType/ipag.ttf to emulate a CID font ipag ... Done.
Loading NimbusRoman-Regular font from /usr/share/ghostscript/10.01.0/Resource/Font/NimbusRoman-Regular... 7630892 6243202 9666024 3647182 1 done.

$ display gscjk_aj.png
gscjk_aj_png


Test-2)
gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=gscjk_aj.pdf -f gscjk_aj.ps
$ gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=gscjk_aj.pdf -f gscjk_aj.ps

GPL Ghostscript 10.01.0 (2023-03-22)
Copyright (C) 2023 Artifex Software, Inc.  All rights reserved.
This software is supplied under the GNU AGPLv3 and comes with NO WARRANTY:
see the file COPYING for details.
------------------------------------------------------------------------
This is a script to test CJK fonts such as CID-keyed fonts.
If you have not done CID-keyed fonts installation and definitions at
/Resource/CMap and CIDFnmap or /Resource/CIDFont of ghostscript, then
this script can't work correctly.
For details, please see README at http://www.gyve.org/gs-cjk/supplement.

If you throw this script into a printer, it requires PostScript 3
printer and CID-keyed fonts specified in this script.
------------------------------------------------------------------------
Querying operating system for font files...
Loading a TT font from /usr/share/fonts/TrueType/ipam.ttf to emulate a CID font ipam ... Done.
Loading a TT font from /usr/share/fonts/TrueType/ipag.ttf to emulate a CID font ipag ... Done.
Loading NimbusRoman-Regular font from /usr/share/ghostscript/10.01.0/Resource/Font/NimbusRoman-Regular... 8210700 6835257 9323984 3301350 1 done.

$ xpdf gscjk_aj.pdf
gscjk_aj_pdf


(memo)
I'm using IPA TTF fonts for my ghostscript instead of sazanami fonts.
The cidfmap for IPA fonts which I'm using is below.

cidfmap.sample
%!
% This is a sample map file for CIDFont category.

%
% The map is a set of records, which must use one of the two formats :
%
% 1. A substutution of a CIDFont font with another CIDFont :
%
%    /substituted /original ;
%
%    Where 'substituted' is a name being used in a document,
%    'original' is a name of an available resource.
%
% 2. A substutution of a CIDFont font with a True Type font :
%
%    /substituted << /FileType /TrueType /Path (path) /SubfontID 1 /CSI [(ordering) supplement] >> ;
%
%    Where 'substituted' is a name being used in a document,
%    'path' is a path to a True Type font file,
%    'ordering' is a value of Ordering required for CIDSystemInfo dictionary,
%    'supplement' is a value of Supplement required for CIDSystemInfo dictionary.
%    'SubfontID' is the index of the desired font in a TTC - ignored if the target is not a TTC.
%
%    The Ordering, and Registry (if present) entries should be PostScript string types
%    ie enclosed in parentheses, not PostScript name type (initial character '/'). See
%    gs/doc/Use.htm#CIDFontSubstitution
%
%    Alternatively:
%    (substituted name) << /FileType /TrueType /Path (path) /SubfontID 1 /CSI [(ordering) supplement] >> ;
%
%    This is where the CIDFont name in the document contains a space character. Using a string instead of a name
%    allows this work - Ghostscript will internally convert the key string with a space to a name.
%
%
% Examples :
%    
%   /ShinGo-Bold   /HeiseiKakuGo-W5 ;
%   /Ryumin-Medium << /FileType /TrueType /Path (H:/AuxFiles/Fonts/BATANG.TTC) /SubfontID 3 /CSI [(Japan1) 2] >> ;
%   /Ryumin-Medium << /FileType /TrueType /Path (windir) getenv not {(c:/windows)}if (/Fonts/BATANG.TTC)concatstrings /SubfontID 3 /CSI [(Japan1) 2] >> ;
%
%   NOTE: getenv returns a boolean to indicate success of or failure, as well as the value on success. In the example, it uses this
%         to include a default value should getenv fail.
%
%  (Century Gothic) << /FileType /TrueType /Path (/usr/share/fonts/truetype/fonts-japanese-gothic.ttf) /CSI [(Identity) 1] >> ;
%
%  Note the use of a string to cope with the name containing a space.
%


%% cidfmap.zh_CN (simplified Chinese ; zh_CN)
%% This font will produce better results than the wqy-zenhei.ttc that we use
%% to get out-of-the-box output.
%% If you install it, uncomment the line below and comment the one below that.
%/BousungEG-Light-GB            << /FileType /TrueType /Path (uming.ttf) /CSI [(GB1) 4] >> ;
/BousungEG-Light-GB             << /FileType /TrueType /Path (wqy-zenhei.ttc) /CSI [(GB1) 4] >> ;
%% This font will produce better results than the wqy-zenhei.ttc that we use
%% to get out-of-the-box output.
%% If you install it, uncomment the line below and comment the one below that.
%/GBZenKai-Medium        << /FileType /TrueType /Path (ukai.ttf) /CSI [(GB1) 4] >> ;
/GBZenKai-Medium        << /FileType /TrueType /Path (wqy-zenhei.ttc) /CSI [(GB1) 4] >> ;
/MSungGBK-Light            << /FileType /TrueType /Path (wqy-zenhei.ttc) /CSI [(GB1) 4] >> ;
/MSung-Light            /MSungGBK-Light ;
/MSung-Medium            /GBZenKai-Medium ;
/MHei-Medium            /BousungEG-Light-GB ;
/MKai-Medium            /GBZenKai-Medium ;
/STSong-Light            /BousungEG-Light-GB ;
/STFangsong-Light        /BousungEG-Light-GB ;
/STHeiti-Regular        /MSungGBK-Light ;
/STKaiti-Regular        /GBZenKai-Medium ;
/Adobe-GB1                      /BousungEG-Light-GB ;

%% cidfmap.zh_TW (traditional Chinese ; zh_TW)
%% To use this example, install the missing uming.ttf and ukai.ttf fonts, and
%% uncomment everything in the block below.  Also, fix the simplified Chinese
%% block as described above for "better output" so that there is no
%% interference (or comment the whole block out).
%/BousungEG-Light-GB        << /FileType /TrueType /Path (uming.ttf) /CSI [(CNS1) 4] >> ;
%/ZenKai-Medium            << /FileType /TrueType /Path (ukai.ttf) /CSI [(CNS1) 4] >> ;
%/ShanHeiSun-Light        << /FileType /TrueType /Path (wqy-zenhei.ttc) /CSI [(CNS1) 4] >> ;
%/STSong-Light            /BousungEG-Light-GB ;
%/STKaiti-Regular        /ZenKai-Medium-GB ;
%/STFangsong-Light        /BousungEG-Light ;
%/STHeiti-Regular        /MHei-Medium ;
%/MSung-Light            /BousungEG-Light-GB ;
%/MSung-Medium            /ZenKai-Medium ;
%/MHei-Medium            /ShanHeiSun-Light ;
%/MKai-Medium            /ZenKai-Medium ;
%/Adobe-CNS1            /BousungEG-Light-GB ;

%% cidfmap.ja
/ipag     << /FileType /TrueType /Path (ipag.ttf)    /SubfontID 0 /CSI [ (Japan1) 5 ] >> ;
/ipagp     << /FileType /TrueType /Path (ipagp.ttf)    /SubfontID 0 /CSI [ (Japan1) 5 ] >> ;
/ipagui     << /FileType /TrueType /Path (ipagui.ttf)    /SubfontID 0 /CSI [ (Japan1) 5 ] >> ;
/ipam     << /FileType /TrueType /Path (ipam.ttf)    /SubfontID 0 /CSI [ (Japan1) 5 ] >> ;
/ipamp     << /FileType /TrueType /Path (ipamp.ttf)    /SubfontID 0 /CSI [ (Japan1) 5 ] >> ;

/Ryumin-Light        /ipam ;
/Ryumin-Medium        /ipam ;
/GothicBBB-Medium    /ipag ;
/ChuGothicBBB-Medium    /GothicBBB-Medium    ;
/ChuGothicBBB-Medium-Mono    /MS-Gothic    ;
/FutoGoB101-Bold    /GothicBBB-Medium    ;
/FutoMinA101-Bold    /Ryumin-Light        ;
/GothicMB101-Bold    /GothicBBB-Medium    ;
/GothicMB101-hea    /GothicBBB-Medium    ;
/GothicMB101-Ult    /GothicBBB-Medium    ;
/ShinGo-Bold        /GothicBBB-Medium    ;
/ShinGo-Medium        /GothicBBB-Medium    ;
/ShinGo-regular        /GothicBBB-Medium    ;
/MS-Gothic        /ipag            ;
/MS-PGothic        /ipagp            ;
/MSPGothic        /ipagp            ;
/MS-UIGothic        /ipagui            ;
/MSMincho        /ipam            ;
/MS-Mincho        /ipam            ;
/MS-PMincho        /ipamp            ;
/MSPMincho        /ipamp            ;
/HeiseiMin-W3        /Ryumin-Light        ;
/HeiseiKakuGo-W5    /GothicBBB-Medium    ;
/Kochi-Mincho        /Ryumin-Light        ;
/Kochi-Gothic        /GothicBBB-Medium    ;
/WadaMin-Regular    /ipam            ;
/WadaMin-RegularH       /ipam                ;
/WadaMin-Bold        /ipam            ;
/WadaGo-Regular        /ipag            ;
/WadaGo-Bold        /ipag            ;
/Adobe-Japan1        /Ryumin-Light        ;
/Adobe-Japan2        /Ryumin-Light        ;

%% cidfmap.ko
%% To enable Korean printing support, install the fonts shown in the example
%% here and uncomment the block below:
%/Baekmuk-Batang        << /FileType /TrueType /Path (batang.ttf) /CSI [(Korea1) 2] >> ;
%/Baekmuk-Batang-Regular    /Baekmuk-Batang ;
%/Baekmuk-Dotum            << /FileType /TrueType /Path (dotum.ttf) /CSI [(Korea1) 2] >> ;
%/Baekmuk-Dotum-Regular        /Baekmuk-Dotum ;
%/Baekmuk-Gulim            << /FileType /TrueType /Path (gulim.ttf) /CSI [(Korea1) 2] >> ;
%/Baekmuk-Gulim-Regular        /Baekmuk-Gulim ;
%/Baekmuk-Headline        << /FileType /TrueType /Path (hline.ttf) /CSI [(Korea1) 2] >> ;
%/Baekmuk-Headline-Regular    /Baekmuk-Headline ;
%/Adobe-Korea1            /Baekmuk-Batang ;

%/BousungEG-Light-GB    << /FileType /TrueType /Path (uming.ttf) /CSI [(GB1) 4] >> ;
%/GBZenKai-Medium    << /FileType /TrueType /Path (ukai.ttf) /CSI [(GB1) 4] >> ;
%/MSungGBK-Light    /BousungEG-Light-GB ;
%/Adobe-GB1        /BousungEG-Light-GB ;

%/ZenKai-Medium        << /FileType /TrueType /Path (ukai.ttf) /CSI [(CNS1) 4] >> ;
%/ShanHeiSun-Light    << /FileType /TrueType /Path (uming.ttf) /CSI [(CNS1) 4] >> ;
%/Adobe-CNS1        /ShanHeiSun-Light ;



---
[2023-03-29] 新規
[ ]



ghostscript-10.01.0 package for slackware64-current

TESTING: Ghostscript-10.01.0 package for slackware64-current (15.0+)

-----------------------------------------------------------------------------------------------------------------------------
SlackBuild diff to official slackware's ghostscript.SlackBuild
--- ghostscript.SlackBuild    2023-03-29 14:12:11.035643315 +0900
+++ ghostscript.SlackBuild.new    2023-03-29 14:01:37.743707565 +0900
@@ -73,6 +73,12 @@
 tar xvf $CWD/${SRCPREFIX}${PKGNAM}-$VERSION.tar.?z || exit 1
 cd ${SRCPREFIX}${PKGNAM}-$VERSION || exit 1
 
+# Fix bug 706478: pdfwrite: Substituted TTF CIDFont CID handling
+# https://bugs.ghostscript.com/show_bug.cgi?id=706478
+# https://bugzilla.redhat.com/show_bug.cgi?id=2178720
+#
+zcat $CWD/
0001_ghostscript-10.01.0-pdfwrite-Substituted-TTF-CIDFont-CID-hand.patch.gz | patch -p1 --verbose || exit 1
+
 # Remove unmaintained garbage:
 rm -rf freetype jpeg lcms2 libpng libtiff png tiff zlib
 
@@ -118,6 +124,7 @@
   --with-fontpath=/usr/share/fonts/TTF \
   --with-ijs \
   --disable-compile-inits \
+  --disable-hidden-visibility \
   --enable-dynamic \
   --with-system-libtiff \
   --enable-cups \


0001_ghostscript-10.01.0-pdfwrite-Substituted-TTF-CIDFont-CID-hand.patch
[code]
--- a/psi/zfcid1.c    2023-03-29 13:00:06.742082033 +0900
+++ b/psi/zfcid1.c    2023-03-29 12:58:48.641089956 +0900
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2021 Artifex Software, Inc.
+/* Copyright (C) 2001-2023 Artifex Software, Inc.
    All Rights Reserved.
 
    This software is provided AS-IS with no warranty, either express or
@@ -77,37 +77,56 @@
     int gdbytes = pfont->cidata.common.GDBytes;
     int gnum = 0;
     const byte *data;
-    int i, code;
+    int i, code = -1;
     ref rcid;
     ref *prgnum;
+    ref *p, *fdict = pfont_dict(pfont);
 
-    switch (r_type(pcidmap)) {
-    case t_string:
-        if (cid >= r_size(pcidmap) / gdbytes)
-            return_error(gs_error_rangecheck);
-        data = pcidmap->value.const_bytes + cid * gdbytes;
-        break;
-    case t_integer:
-        return cid + pcidmap->value.intval;
-    case t_dictionary:
-        make_int(&rcid, cid);
-        code = dict_find(pcidmap, &rcid, &prgnum);
-        if (code <= 0)
-            return (code < 0 ? code : gs_note_error(gs_error_undefined));
-        if (!r_has_type(prgnum, t_integer))
-            return_error(gs_error_typecheck);
-        return prgnum->value.intval;
-    default:            /* array type */
-        code = string_array_access_proc(pfont->memory, pcidmap, 1, cid * gdbytes,
-                                        gdbytes, NULL, NULL, &data);
-
-        if (code < 0)
-            return code;
-        if ( code > 0 )
-            return_error(gs_error_invalidfont);
+    if (r_has_type(fdict, t_dictionary) && dict_find_string(fdict, "Path", &p)) {
+        ref *Decoding = NULL, *TT_cmap = NULL, *SubstNWP = NULL, src_type, dst_type;
+        uint c;
+
+        code = dict_find_string(fdict, "Decoding", &Decoding);
+        if (code > 0)
+            code = dict_find_string(fdict, "TT_cmap", &TT_cmap);
+        if (code > 0)
+            code = dict_find_string(fdict, "SubstNWP", &SubstNWP);
+        if (code > 0) {
+            code = cid_to_TT_charcode(pfont->memory, Decoding, TT_cmap, SubstNWP, cid, &c, &src_type, &dst_type);
+            if (code >= 0)
+                gnum = c;
+        }
+    }
+
+    if (code < 0) {
+        switch (r_type(pcidmap)) {
+        case t_string:
+            if (cid >= r_size(pcidmap) / gdbytes)
+                return_error(gs_error_rangecheck);
+            data = pcidmap->value.const_bytes + cid * gdbytes;
+            break;
+        case t_integer:
+            return cid + pcidmap->value.intval;
+        case t_dictionary:
+            make_int(&rcid, cid);
+            code = dict_find(pcidmap, &rcid, &prgnum);
+            if (code <= 0)
+                return (code < 0 ? code : gs_note_error(gs_error_undefined));
+            if (!r_has_type(prgnum, t_integer))
+                return_error(gs_error_typecheck);
+            return prgnum->value.intval;
+        default:            /* array type */
+            code = string_array_access_proc(pfont->memory, pcidmap, 1, cid * gdbytes,
+                                            gdbytes, NULL, NULL, &data);
+
+            if (code < 0)
+                return code;
+            if ( code > 0 )
+                return_error(gs_error_invalidfont);
+        }
+        for (i = 0; i < gdbytes; ++i)
+            gnum = (gnum << 8) + data[i];
     }
-    for (i = 0; i < gdbytes; ++i)
-        gnum = (gnum << 8) + data[i];
     if (gnum >= pfont->data.trueNumGlyphs)
         return_error(gs_error_invalidfont);
     return gnum;

(notes)
Related Links :


from commitdiff at projects / ghostpdl.git / commitdiff
Bug 706478: pdfwrite: Substituted TTF CIDFont CID handling
-------------------------------------------------
author    Chris Liddell <chris.liddell@artifex.com>   
    Thu, 16 Mar 2023 00:38:29 +0900 (15:38 +0000)
committer    Chris Liddell <chris.liddell@artifex.com>   
    Thu, 16 Mar 2023 02:01:03 +0900 (17:01 +0000)
The PS interpreter callback that handles converting a CID to a TTF GID did
not handle the case of substituted CIDFonts.

It requires looking up the CID on the Decoding (to get a Unicode code point),
and then looking up the code point in the TTF cmap table to get the GID.

The rendering code already handled it.
----------------------------------------------------------

TEST pdfwrite
test file : I used gscjk_aj.ps ( /usr/share/ghostscript/10.01.0/examples/cjk/gscjk_aj.ps )

test commands :
Test-1)
gs -dBATCH -dNOPAUSE -sDEVICE=pnggray -sOutputFile=gscjk_aj.png -f gscjk_aj.ps
$ gs -dBATCH -dNOPAUSE -sDEVICE=pnggray -sOutputFile=gscjk_aj.png -f gscjk_aj.ps

GPL Ghostscript 10.01.0 (2023-03-22)
Copyright (C) 2023 Artifex Software, Inc.  All rights reserved.
This software is supplied under the GNU AGPLv3 and comes with NO WARRANTY:
see the file COPYING for details.
------------------------------------------------------------------------
This is a script to test CJK fonts such as CID-keyed fonts.
If you have not done CID-keyed fonts installation and definitions at
/Resource/CMap and CIDFnmap or /Resource/CIDFont of ghostscript, then
this script can't work correctly.
For details, please see README at http://www.gyve.org/gs-cjk/supplement.

If you throw this script into a printer, it requires PostScript 3
printer and CID-keyed fonts specified in this script.
------------------------------------------------------------------------
Querying operating system for font files...
Loading a TT font from /usr/share/fonts/TrueType/ipam.ttf to emulate a CID font ipam ... Done.
Loading a TT font from /usr/share/fonts/TrueType/ipag.ttf to emulate a CID font ipag ... Done.
Loading NimbusRoman-Regular font from /usr/share/ghostscript/10.01.0/Resource/Font/NimbusRoman-Regular... 7630892 6243202 9666024 3647182 1 done.

$ display gscjk_aj.png
gscjk_aj_png


Test-2)
gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=gscjk_aj.pdf -f gscjk_aj.ps
$ gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=gscjk_aj.pdf -f gscjk_aj.ps

GPL Ghostscript 10.01.0 (2023-03-22)
Copyright (C) 2023 Artifex Software, Inc.  All rights reserved.
This software is supplied under the GNU AGPLv3 and comes with NO WARRANTY:
see the file COPYING for details.
------------------------------------------------------------------------
This is a script to test CJK fonts such as CID-keyed fonts.
If you have not done CID-keyed fonts installation and definitions at
/Resource/CMap and CIDFnmap or /Resource/CIDFont of ghostscript, then
this script can't work correctly.
For details, please see README at http://www.gyve.org/gs-cjk/supplement.

If you throw this script into a printer, it requires PostScript 3
printer and CID-keyed fonts specified in this script.
------------------------------------------------------------------------
Querying operating system for font files...
Loading a TT font from /usr/share/fonts/TrueType/ipam.ttf to emulate a CID font ipam ... Done.
Loading a TT font from /usr/share/fonts/TrueType/ipag.ttf to emulate a CID font ipag ... Done.
Loading NimbusRoman-Regular font from /usr/share/ghostscript/10.01.0/Resource/Font/NimbusRoman-Regular... 8210700 6835257 9323984 3301350 1 done.

$ xpdf gscjk_aj.pdf
gscjk_aj_pdf


(memo)
I'm using IPA TTF fonts for my ghostscript instead of sazanami fonts.
The cidfmap for IPA fonts which I'm using is below.

cidfmap.sample
%!
% This is a sample map file for CIDFont category.

%
% The map is a set of records, which must use one of the two formats :
%
% 1. A substutution of a CIDFont font with another CIDFont :
%
%    /substituted /original ;
%
%    Where 'substituted' is a name being used in a document,
%    'original' is a name of an available resource.
%
% 2. A substutution of a CIDFont font with a True Type font :
%
%    /substituted << /FileType /TrueType /Path (path) /SubfontID 1 /CSI [(ordering) supplement] >> ;
%
%    Where 'substituted' is a name being used in a document,
%    'path' is a path to a True Type font file,
%    'ordering' is a value of Ordering required for CIDSystemInfo dictionary,
%    'supplement' is a value of Supplement required for CIDSystemInfo dictionary.
%    'SubfontID' is the index of the desired font in a TTC - ignored if the target is not a TTC.
%
%    The Ordering, and Registry (if present) entries should be PostScript string types
%    ie enclosed in parentheses, not PostScript name type (initial character '/'). See
%    gs/doc/Use.htm#CIDFontSubstitution
%
%    Alternatively:
%    (substituted name) << /FileType /TrueType /Path (path) /SubfontID 1 /CSI [(ordering) supplement] >> ;
%
%    This is where the CIDFont name in the document contains a space character. Using a string instead of a name
%    allows this work - Ghostscript will internally convert the key string with a space to a name.
%
%
% Examples :
%    
%   /ShinGo-Bold   /HeiseiKakuGo-W5 ;
%   /Ryumin-Medium << /FileType /TrueType /Path (H:/AuxFiles/Fonts/BATANG.TTC) /SubfontID 3 /CSI [(Japan1) 2] >> ;
%   /Ryumin-Medium << /FileType /TrueType /Path (windir) getenv not {(c:/windows)}if (/Fonts/BATANG.TTC)concatstrings /SubfontID 3 /CSI [(Japan1) 2] >> ;
%
%   NOTE: getenv returns a boolean to indicate success of or failure, as well as the value on success. In the example, it uses this
%         to include a default value should getenv fail.
%
%  (Century Gothic) << /FileType /TrueType /Path (/usr/share/fonts/truetype/fonts-japanese-gothic.ttf) /CSI [(Identity) 1] >> ;
%
%  Note the use of a string to cope with the name containing a space.
%


%% cidfmap.zh_CN (simplified Chinese ; zh_CN)
%% This font will produce better results than the wqy-zenhei.ttc that we use
%% to get out-of-the-box output.
%% If you install it, uncomment the line below and comment the one below that.
%/BousungEG-Light-GB            << /FileType /TrueType /Path (uming.ttf) /CSI [(GB1) 4] >> ;
/BousungEG-Light-GB             << /FileType /TrueType /Path (wqy-zenhei.ttc) /CSI [(GB1) 4] >> ;
%% This font will produce better results than the wqy-zenhei.ttc that we use
%% to get out-of-the-box output.
%% If you install it, uncomment the line below and comment the one below that.
%/GBZenKai-Medium        << /FileType /TrueType /Path (ukai.ttf) /CSI [(GB1) 4] >> ;
/GBZenKai-Medium        << /FileType /TrueType /Path (wqy-zenhei.ttc) /CSI [(GB1) 4] >> ;
/MSungGBK-Light            << /FileType /TrueType /Path (wqy-zenhei.ttc) /CSI [(GB1) 4] >> ;
/MSung-Light            /MSungGBK-Light ;
/MSung-Medium            /GBZenKai-Medium ;
/MHei-Medium            /BousungEG-Light-GB ;
/MKai-Medium            /GBZenKai-Medium ;
/STSong-Light            /BousungEG-Light-GB ;
/STFangsong-Light        /BousungEG-Light-GB ;
/STHeiti-Regular        /MSungGBK-Light ;
/STKaiti-Regular        /GBZenKai-Medium ;
/Adobe-GB1                      /BousungEG-Light-GB ;

%% cidfmap.zh_TW (traditional Chinese ; zh_TW)
%% To use this example, install the missing uming.ttf and ukai.ttf fonts, and
%% uncomment everything in the block below.  Also, fix the simplified Chinese
%% block as described above for "better output" so that there is no
%% interference (or comment the whole block out).
%/BousungEG-Light-GB        << /FileType /TrueType /Path (uming.ttf) /CSI [(CNS1) 4] >> ;
%/ZenKai-Medium            << /FileType /TrueType /Path (ukai.ttf) /CSI [(CNS1) 4] >> ;
%/ShanHeiSun-Light        << /FileType /TrueType /Path (wqy-zenhei.ttc) /CSI [(CNS1) 4] >> ;
%/STSong-Light            /BousungEG-Light-GB ;
%/STKaiti-Regular        /ZenKai-Medium-GB ;
%/STFangsong-Light        /BousungEG-Light ;
%/STHeiti-Regular        /MHei-Medium ;
%/MSung-Light            /BousungEG-Light-GB ;
%/MSung-Medium            /ZenKai-Medium ;
%/MHei-Medium            /ShanHeiSun-Light ;
%/MKai-Medium            /ZenKai-Medium ;
%/Adobe-CNS1            /BousungEG-Light-GB ;

%% cidfmap.ja
/ipag     << /FileType /TrueType /Path (ipag.ttf)    /SubfontID 0 /CSI [ (Japan1) 5 ] >> ;
/ipagp     << /FileType /TrueType /Path (ipagp.ttf)    /SubfontID 0 /CSI [ (Japan1) 5 ] >> ;
/ipagui     << /FileType /TrueType /Path (ipagui.ttf)    /SubfontID 0 /CSI [ (Japan1) 5 ] >> ;
/ipam     << /FileType /TrueType /Path (ipam.ttf)    /SubfontID 0 /CSI [ (Japan1) 5 ] >> ;
/ipamp     << /FileType /TrueType /Path (ipamp.ttf)    /SubfontID 0 /CSI [ (Japan1) 5 ] >> ;

/Ryumin-Light        /ipam ;
/Ryumin-Medium        /ipam ;
/GothicBBB-Medium    /ipag ;
/ChuGothicBBB-Medium    /GothicBBB-Medium    ;
/ChuGothicBBB-Medium-Mono    /MS-Gothic    ;
/FutoGoB101-Bold    /GothicBBB-Medium    ;
/FutoMinA101-Bold    /Ryumin-Light        ;
/GothicMB101-Bold    /GothicBBB-Medium    ;
/GothicMB101-hea    /GothicBBB-Medium    ;
/GothicMB101-Ult    /GothicBBB-Medium    ;
/ShinGo-Bold        /GothicBBB-Medium    ;
/ShinGo-Medium        /GothicBBB-Medium    ;
/ShinGo-regular        /GothicBBB-Medium    ;
/MS-Gothic        /ipag            ;
/MS-PGothic        /ipagp            ;
/MSPGothic        /ipagp            ;
/MS-UIGothic        /ipagui            ;
/MSMincho        /ipam            ;
/MS-Mincho        /ipam            ;
/MS-PMincho        /ipamp            ;
/MSPMincho        /ipamp            ;
/HeiseiMin-W3        /Ryumin-Light        ;
/HeiseiKakuGo-W5    /GothicBBB-Medium    ;
/Kochi-Mincho        /Ryumin-Light        ;
/Kochi-Gothic        /GothicBBB-Medium    ;
/WadaMin-Regular    /ipam            ;
/WadaMin-RegularH       /ipam                ;
/WadaMin-Bold        /ipam            ;
/WadaGo-Regular        /ipag            ;
/WadaGo-Bold        /ipag            ;
/Adobe-Japan1        /Ryumin-Light        ;
/Adobe-Japan2        /Ryumin-Light        ;

%% cidfmap.ko
%% To enable Korean printing support, install the fonts shown in the example
%% here and uncomment the block below:
%/Baekmuk-Batang        << /FileType /TrueType /Path (batang.ttf) /CSI [(Korea1) 2] >> ;
%/Baekmuk-Batang-Regular    /Baekmuk-Batang ;
%/Baekmuk-Dotum            << /FileType /TrueType /Path (dotum.ttf) /CSI [(Korea1) 2] >> ;
%/Baekmuk-Dotum-Regular        /Baekmuk-Dotum ;
%/Baekmuk-Gulim            << /FileType /TrueType /Path (gulim.ttf) /CSI [(Korea1) 2] >> ;
%/Baekmuk-Gulim-Regular        /Baekmuk-Gulim ;
%/Baekmuk-Headline        << /FileType /TrueType /Path (hline.ttf) /CSI [(Korea1) 2] >> ;
%/Baekmuk-Headline-Regular    /Baekmuk-Headline ;
%/Adobe-Korea1            /Baekmuk-Batang ;

%/BousungEG-Light-GB    << /FileType /TrueType /Path (uming.ttf) /CSI [(GB1) 4] >> ;
%/GBZenKai-Medium    << /FileType /TrueType /Path (ukai.ttf) /CSI [(GB1) 4] >> ;
%/MSungGBK-Light    /BousungEG-Light-GB ;
%/Adobe-GB1        /BousungEG-Light-GB ;

%/ZenKai-Medium        << /FileType /TrueType /Path (ukai.ttf) /CSI [(CNS1) 4] >> ;
%/ShanHeiSun-Light    << /FileType /TrueType /Path (uming.ttf) /CSI [(CNS1) 4] >> ;
%/Adobe-CNS1        /ShanHeiSun-Light ;



---
[2023-03-29] 新規
[ ]



fcitx5-mozc-2.28.5050.102.1 for slackware64-15.0 ... [update: 2023-03-27]

[update: 2023-03-27]
- Version-up to 2.28.5050.102.1

MOZC_REV:    550e287496d68eee5ffc3e9a74aba16e46a96c84
( git-source: commit-550e287496d68eee5ffc3e9a74aba16e46a96c84 )

ABSEIL_CPP_REV=cdad8cd96ee9bfe11056997dc960eb2e52c6b00e

  build requires: jdk11, bazel

[screenshot} About dialog
fcitx5-mozc-2.28.5050_About

fcitx5-mozc.SlackBuild
[code]
#!/bin/bash

# Slackware build script for bazel

# Copyright 2022 Isaac Yu <isaacyu1@isaacyu1.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

cd $(dirname $0) ; CWD=$(pwd)

PRGNAM=fcitx5-mozc
VERSION=${VERSION:-2.28.5050.102.1}
BUILD=${BUILD:-1}
# Version bump to "2.28.5050.102.1"
# updated MOZC_REV to 550e287496d68eee5ffc3e9a74aba16e46a96c84 (2023-03-27)
# Updated ABSEIL_CPP_REV is cdad8cd96ee9bfe11056997dc960eb2e52c6b00e (2023-02-04)
TAG=${TAG:-jw}
PKGTYPE=${PKGTYPE:-txz}

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i586 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
# the name of the created package would be, and then exit. This information
# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
  echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
  exit 0
fi

TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
BLDBASEDIR=$TMP/$PRGNAM-$VERSION

if [ "$ARCH" = "i586" ]; then
  SLKCFLAGS="-O2 -march=i586 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
else
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
fi

set -e
BLDTYPE=Release
_bldtype=Release

# source rev. and version.
MOZC_REV=
550e287496d68eee5ffc3e9a74aba16e46a96c84
GYP_REV=caa60026e223fc501e8b337fd5086ece4028b1c6
PROTOBUF_REV=b5a35bcc7e4cc4ff00eb105449b300fca3a8b0d2
ABSEIL_CPP_REV=cdad8cd96ee9bfe11056997dc960eb2e52c6b00e
BREAKPAD_REV=2022.07.12
GOOGLETEST_REV=703bd9caab50b139428cea1aaff9974ebee5742e
JSONCPP_REV=42e892d96e47b1f6e29844cc705e148ec4856448
JAPANESE_USAGE_DICT_REV=e5b3425575734c323e1d947009dd74709437b684
ZIPCODE_REL=202110

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
mkdir -p $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
echo "prepare source file..."
# unzip packages
unzip $CWD/mozc-$MOZC_REV.zip
unzip $CWD/gyp-$GYP_REV.zip
unzip $CWD/protobuf-$PROTOBUF_REV.zip
unzip $CWD/abseil-cpp-$ABSEIL_CPP_REV.zip
unzip $CWD/breakpad-${BREAKPAD_REV}.zip
unzip $CWD/googletest-$GOOGLETEST_REV.zip
unzip $CWD/jsoncpp-$JSONCPP_REV.zip
unzip $CWD/japanese-usage-dictionary-$JAPANESE_USAGE_DICT_REV.zip
unzip $CWD/jigyosyo-$ZIPCODE_REL.zip
unzip $CWD/x-ken-all-$ZIPCODE_REL.zip
# extact tar file
tar -xvf ${CWD}/fcitx-mozc-icon.tar.gz

# rename directory
mv mozc-$MOZC_REV mozc
mv gyp-$GYP_REV gyp
mv protobuf-$PROTOBUF_REV protobuf
mv abseil-cpp-$ABSEIL_CPP_REV abseil-cpp
mv breakpad-$BREAKPAD_REV breakpad
mv googletest-$GOOGLETEST_REV googletest
mv jsoncpp-$JSONCPP_REV jsoncpp
mv japanese-usage-dictionary-$JAPANESE_USAGE_DICT_REV japanese_usage_dictionary

chown -R root:root .
find -L . \
 \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
  -o -perm 511 \) -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
  -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;

cd $BLDBASEDIR/mozc/src

# disable android-ndk requirement, even if we don't need it bazel will complain
sed "/android_ndk_repository/d" -i WORKSPACE.bazel

# adjust QT_BASE_PATH
sed 's|path = QT_BASE_PATH|path = "/usr/include/qt5"|' -i WORKSPACE.bazel

cd $BLDBASEDIR/mozc
# prepare zip code dictionary
unzip -d src/data/dictionary_oss $CWD/jigyosyo-$ZIPCODE_REL.zip
unzip -d src/data/dictionary_oss $CWD/x-ken-all-$ZIPCODE_REL.zip

cd src/dictionary
# Generate zip code seed
sed -i "s/from dictionary import zip_code_util/import zip_code_util/g" gen_zip_code_seed.py

cd ../data/dictionary_oss
echo "Generating zip code seed ..."
python3 ../../dictionary/gen_zip_code_seed.py --zip_code=x-ken-all.csv --jigyosyo=JIGYOSYO.CSV >> dictionary09.txt
echo "Done."

cd $BLDBASEDIR/mozc/scripts
# fix libdir path of fcitx5-mozc.so for Slackware
sed 's/lib/lib64/g' -i install_fcitx5_bazel

#cd ..
# We won't need this patch now.
# Apply debian Use-Gtk3 patch
# patch -p1 < $CWD/0008-renderer-Convert-Gtk2-to-Gtk3.patch

cd ../..
# Copy third party deps
echo "Copy third party deps ..."
for dep in abseil-cpp breakpad googletest jsoncpp gyp protobuf japanese_usage_dictionary
do
  cp -a $dep mozc/src/third_party/
done

# build package
echo "build package..."
CFLAGS="${CFLAGS} -fvisibility=hidden"
CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"

cd $BLDBASEDIR/mozc/src
QT_BASE_PATH=/usr/include/qt5 bash ../scripts/build_fcitx5_bazel

# Build emacs_helper
echo "build emacs_helper..."
bazel build unix/emacs:mozc_emacs_helper --config oss_linux --compilation_mode opt

# Extract license part of mozc
head -n 29 server/mozc_server.cc > LICENSE

export PREFIX="$PKG/usr"
export _bldtype
bash ../scripts/install_server_bazel

install -d "$PKG/usr/share/licenses/${PRGNAM}/"
install -m 644 LICENSE data/installer/*.html "$PKG/usr/share/licenses/${PRGNAM}/"

install -d "${PREFIX}/share/fcitx5/addon"
install -d "${PREFIX}/share/fcitx5/inputmethod"
install -d "${PREFIX}/lib${LIBDIRSUFFIX}/fcitx5"
bash ../scripts/install_fcitx5_bazel

# Install icons at /usr/share/fcitx5
install -d "${PREFIX}/share/fcitx5/mozc/icon"
install -D -m 644 data/images/product_icon_32bpp-128.png "${PREFIX}/share/fcitx5/mozc/icon/mozc.png"
install -D -m 644 ../scripts/icons/ui-alpha_full.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-alpha_full.png"
install -D -m 644 ../scripts/icons/ui-alpha_half.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-alpha_half.png"
install -D -m 644 ../scripts/icons/ui-direct.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-direct.png"
install -D -m 644 ../scripts/icons/ui-hiragana.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-hiragana.png"
install -D -m 644 ../scripts/icons/ui-katakana_full.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-katakana_full.png"
install -D -m 644 ../scripts/icons/ui-katakana_half.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-katakana_half.png"
install -D -m 644 ../scripts/icons/ui-dictionary.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-dictionary.png"
install -D -m 644 ../scripts/icons/ui-properties.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-properties.png"
install -D -m 644 ../scripts/icons/ui-tool.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-tool.png"

find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true

mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
# Install emacs_helper and documents
install -Dm644 ../LICENSE $PKG/usr/share/licenses/emacs-mozc/LICENSE
install -Dm644 data/installer/credits_en.html  $PKG/usr/doc/$PRGNAM-$VERSION/credits_en.html
install -Dm755 bazel-bin/unix/emacs/mozc_emacs_helper $PKG/usr/bin/mozc_emacs_helper
install -Dm644 unix/emacs/mozc.el $PKG/usr/share/emacs/site-lisp/mozc.el

cp $CWD/init.el_mozc $CWD/README.emacs $PKG/usr/doc/$PRGNAM-$VERSION/
cp $CWD/fetch_fcitx5-mozc_sources.sh $PKG/usr/doc/$PRGNAM-$VERSION/
cp $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
# remove unneeded doc directory
rm -rf $PKG/usr/doc/mozc

mkdir -p $PKG/install
# install slack-desc
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE


init.el_mozc
[code]
(set-language-environment "Japanese")
(require 'mozc)  ; or (load-file "/usr/share/emacs/site-lisp/emacs-mozc/mozc.el")
(setq default-input-method "japanese-mozc")
(setq mozc-candidate-style 'overlay)


README.emacs
[code]
# for emacs, create {HOME}/.emacs.d/init.el with followng lines

(require 'mozc)  ; or (load-file "/path/to/mozc.el")
(setq default-input-method "japanese-mozc")
(setq mozc-candidate-style 'overlay)

doinst.sh
[code]
if [ -x /usr/bin/update-desktop-database ]; then
  /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi

if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
  if [ -x /usr/bin/gtk-update-icon-cache ]; then
    /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
  fi
fi

if [ -x usr/bin/update-gtk-immodules ]; then
  chroot . /usr/bin/update-gtk-immodules --verbose 1>/dev/null
fi

slack-desc
[code]
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
# You must make exactly 11 lines for the formatting to be correct.  It's also
# customary to leave one space after the ':' except on otherwise blank lines.

           |-----handy-ruler------------------------------------------------------|
fcitx5-mozc: fcitx5-mozc (Mozc engine for fcitx5)
fcitx5-mozc:
fcitx5-mozc: fcitx5-mozc is Mozc, Japanese input method editor, engine for fcitx5.
fcitx5-mozc:
fcitx5-mozc: Homepage: https://fcitx-im.org
fcitx5-mozc:
fcitx5-mozc:
fcitx5-mozc:
fcitx5-mozc:
fcitx5-mozc:
fcitx5-mozc:

fcitx5-mozc.info of Version-2.28.5029.102.1
[code]
PRGNAM="fcitx5-mozc"
VERSION="2.28.5050.102.1"
HOMEPAGE="https://github.com/fcitx/mozc/"
DOWNLOAD="https://github.com/fcitx/mozc/archive/550e287496d68eee5ffc3e9a74aba16e46a96c84/mozc-550e287496d68eee5ffc3e9a74aba16e46a96c84.zip
 https://github.com/chromium/gyp/archive/caa60026e223fc501e8b337fd5086ece4028b1c6/gyp-caa60026e223fc501e8b337fd5086ece4028b1c6.zip
 https://github.com/protocolbuffers/protobuf/archive/b5a35bcc7e4cc4ff00eb105449b300fca3a8b0d2/protobuf-b5a35bcc7e4cc4ff00eb105449b300fca3a8b0d2.zip
 https://github.com/abseil/abseil-cpp/archive/cdad8cd96ee9bfe11056997dc960eb2e52c6b00e/abseil-cpp-cdad8cd96ee9bfe11056997dc960eb2e52c6b00e.zip
 https://github.com/google/breakpad/archive/v2022.07.12/breakpad-2022.07.12.zip
 https://github.com/google/googletest/archive/703bd9caab50b139428cea1aaff9974ebee5742e/googletest-703bd9caab50b139428cea1aaff9974ebee5742e.zip
 https://github.com/open-source-parsers/jsoncpp/archive/42e892d96e47b1f6e29844cc705e148ec4856448/jsoncpp-42e892d96e47b1f6e29844cc705e148ec4856448.zip
 https://github.com/hiroyuki-komatsu/japanese-usage-dictionary/archive/e5b3425575734c323e1d947009dd74709437b684/japanese-usage-dictionary-e5b3425575734c323e1d947009dd74709437b684.zip
 https://osdn.net/projects/ponsfoot-aur/storage/mozc/jigyosyo-202110.zip
 https://osdn.net/projects/ponsfoot-aur/storage/mozc/x-ken-all-202110.zip
 https://download.fcitx-im.org/fcitx-mozc/fcitx-mozc-icon.tar.gz"
MD5SUM="ad4b6b307d354871502b2c3eb339b04c
 699c5af5c6d7e19835afb5292d151f91
 d79cbe4e2033c967a58e2bddaa6d4aa2
 807c80030e214a4b346f31cc222df045
 981e935b3b61091ca6f968a296f44eb9
 768da4173ee9df3248b8f828747982ad
 b56b146335d7c296ddef5a88235f1438
 a6eb1da9ad7ceffcb9683003332abf7e
 35031b342c827861681081e4052b472b
 a4b62ae420004b55a72fe6a40bb09ee1
 80fe2ef127b70649df22d133822ac8a7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="bazel"
MAINTAINER=""
EMAIL=""



引き続き更新予定








TESTING: compile MEGAsync-4.9.1.0_Win source on slackware-15.0+

[Update: Mar. 22. 2023]
Compiling test of MEGAsync-4.9.1.0_Win on slackware64-current(15.0+) with FFMPEG5

I updated the package against current ffmpeg-5.x environment.
Package was compiled successfully on slackware64-15.0+ with ffmpeg-5.1.2 and is working fine so far.


MEGAsync.SlackBuild
[code]
#!/bin/sh

# Slackware build script for MEGASync input plugin

# Copyright 2017,2018 Felipe Bugno <capent@yahoo.com>
#
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
#  THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
#  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
#  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO
#  EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
#  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
#  OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
#  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
#  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
#  ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
# 2021-08-23 : version bump to 4.5.0.0 -- Build with gcc-11 and with ffmpeg4.4 patch
# 2021-08-24 : version bump to 4.5.3.0 -- Build with gcc-11 and with ffmpeg4.4 patch
# 2021-08-24 : version 4.5.3.0 2jw -- use sdk-3.8.2c instead of commit version "c11a688d578e16dc25d4c94fee7995730be1aa50".
# 2021-11-22 : version 4.6.1.0 1jw -- use source 4.6.1.0_Win and sdk-3.9.6a
# 2021-12-15 : version 4.6.2.0 1jw -- use source 4.6.2.0_Win and sdk-3.9.6a
# 2022-01-30 : version 4.6.3.0 1jw -- version bump to 4.6.3.0 with official 4.6.3.0_Win source
# 2022-03-07 : version 4.6.3.0-2jw -- rebuild under ibmediainfo-21.0 and libzen-0.4.39
# 2022-03-30 : version 4.6.5.0-1jw -- version bump to 4.6.5.0 Linux
# 2022-04-23 : Version 4.6.6.0-1jw -- version bump to 4.6.6.0_Win with sdk-3.9.16
# 2022-06-25 : Version 4.6.7.0-1jw -- version bump to 4.6.7.0_Win with sdk-3.9.16a
# 2022-07-XX : Version 4.6.8.0-1jw -- version bump to 4.6.8.0_Win with sdk-3.12.3
# 2022-09-21 : Cmmpiling test of MEGAsync-4.7.0.0_Win with sdk-4.3.0
# 2022-10-04 : Compiling test of MEGAsync-4.7.1.0_Win with sdk-4.3.0
# 2022-10-12 : 4.7.1.0 (2jw) -- Recompiled against FFMPEG5
# 2022-11-07 : 4.7.2.0 (1jw) -- version bump to 4.7.2.0_Win
# 2022-11-18 : 4.7.3.0 (1jw) -- MEGAsync-4.7.3.0_Win source with sdk-4.5.0 and updated FFMPEG5 patch
# 2022-12-13 : 4.8.1.0 (1jw) -- MEGAsync-4.8.1.0_Win source with sdk-4.7.1 and updated FFMPEG5 patch
# 2022-12-23 : 4.8.1.0 (2jw) -- Recompiled after rebuilding all required packages
# 2023-01-26 : 4.9.6.0 (1jw) -- MEGAsync-4.8.6.0_Win source with sdk-4.9.0b
# 2023-02-04 : 4.8.7.0 (1jw) -- MEGAsync-4.8.7.0_Win source with sdk-4.9.0c
# 2023-02-28 : 4.8.8.0 (1jw) -- MEGAsync-4.8.8.0_Win source with sdk-4.14.0
# 2023-02-28 : 4.9.1.0 (1jw) -- MEGAsync-4.9.1.0_Win source with sdk-4.16.0c

VERSION=${VERSION:-4.9.1.0}
SDK=${SDK:-4.16.0c}
BUILD=${BUILD:-1}
TAG=${TAG:-jw}

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i586 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

if [ "$ARCH" = "i586" ]; then
  SLKCFLAGS="-O2 -march=i586 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
else
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
fi

set -e

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION\_Win
tar xvf $CWD/$PRGNAM-$VERSION\_Win.tar.gz
cd $PRGNAM-$VERSION\_Win/src/MEGASync/mega
tar --strip-components=1 -xvf $CWD/sdk-$SDK.tar.gz
cd ../../../
chown -R root:root .
find -L . \
 \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
  -o -perm 511 \) -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
  -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;

cd src/MEGASync/mega
patch -p1 < $CWD/megasync-4.5.0.0_pdfium.patch

./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --datarootdir=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux \
  --with-cares \
  --with-cryptopp \
  --with-curl \
  --with-sodium \
  --with-sqlite \
  --with-zlib \
  --with-termcap \
  --with-freeimage \
  --enable-chat \
  --enable-gcc-hardening

# Apply ffmpeg5 fix patch
cd ../../../
patch -p1 < $CWD/megasync-4.7.3.0_ffmpeg5.patch


cd src
#cd ../../../src
qmake CONFIG+="release" QMAKE_CXXFLAGS="$SLKCFLAGS" MEGA.pro
lrelease MEGASync/MEGASync.pro
make
install -m 755 -p -D $TMP/$PRGNAM-$VERSION\_Win/src/MEGASync/megasync $PKG/usr/bin/megasync
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Win/src/MEGASync/platform/linux/data/megasync.desktop $PKG/usr/share/applications/megasync.desktop
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Win/src/MEGASync/platform/linux/data/icons/hicolor/16x16/apps/mega.png $PKG/usr/share/icons/hicolor/16x16/apps/mega.png
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Win/src/MEGASync/platform/linux/data/icons/hicolor/32x32/apps/mega.png $PKG/usr/share/icons/hicolor/32x32/apps/mega.png
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Win/src/MEGASync/platform/linux/data/icons/hicolor/48x48/apps/mega.png $PKG/usr/share/icons/hicolor/48x48/apps/mega.png
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Win/src/MEGASync/platform/linux/data/icons/hicolor/128x128/apps/mega.png $PKG/usr/share/icons/hicolor/128x128/apps/mega.png
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Win/src/MEGASync/platform/linux/data/icons/hicolor/256x256/apps/mega.png $PKG/usr/share/icons/hicolor/256x256/apps/mega.png

find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true

mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cd $TMP/$PRGNAM-$VERSION\_Win
cp -a  README.md LICENCE.md CREDITS.md $PKG/usr/doc/$PRGNAM-$VERSION
cp $CWD/megasync-4.5.0.0_pdfium.patch $CWD/megasync-4.7.3.0_ffmpeg5.patch $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-txz}

MEGAsync.info
[code]
PRGNAM="MEGAsync"
VERSION="4.9.1.0"
HOMEPAGE="https://github.com/meganz/MEGAsync/"
DOWNLOAD="https://github.com/meganz/MEGAsync/archive/v4.9.1.0_Win/MEGAsync-4.9.1.0_Win.tar.gz \
 https://github.com/meganz/sdk/archive/v4.16.0c/sdk-4.16.0c.tar.gz"
MD5SUM="9fc97bfae3c51f5b5e35ca901b0dcf54 \
 b8c50f486602b2a8af4866d098cae303"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="FreeImage libmediainfo"
MAINTAINER="Felipe Bugno"
EMAIL="capent@yahoo.com"

megasync-4.5.0.0_pdfium.patch
[code]
diff --git a/bindings/qt/sdk.pri b/bindings/qt/sdk.pri
index 83ddc2e2f..46aa06d33 100644
--- a/bindings/qt/sdk.pri
+++ b/bindings/qt/sdk.pri
@@ -255,6 +255,11 @@ CONFIG(USE_PDFIUM) {
                 DEFINES += HAVE_PDFIUM
                 LIBS += -lpdfium
             }
+            else:exists(/usr/include/pdfium/fpdfview.h) {
+                DEFINES += HAVE_PDFIUM
+                INCLUDEPATH += /usr/include/pdfium
+                LIBS += -lpdfium
+            }
         }
         else {#win/mac
             DEFINES += HAVE_PDFIUM


megasync-4.7.3.0_ffmpeg5.patch
[code]
--- a/src/MEGASync/mega/src/gfx/freeimage.cpp    2022-10-28 18:14:40.000000000 +0900
+++ b/src/MEGASync/mega/src/gfx/freeimage.cpp    2022-11-18 19:52:32.514104393 +0900
@@ -313,7 +313,7 @@
 
     // Find decoder for video stream
     AVCodecID codecId = codecParm->codec_id;
-    AVCodec* decoder = avcodec_find_decoder(codecId);
+    auto decoder = avcodec_find_decoder(codecId);
     if (!decoder)
     {
         LOG_warn << "Codec not found: " << codecId;
@@ -330,7 +330,7 @@
 
     // Force seeking to key frames
     formatContext->seek2any = false;
-    videoStream->skip_to_keyframe = true;
+    //videoStream->skip_to_keyframe = true;
     if (decoder->capabilities & CAP_TRUNCATED)
     {
         codecContext->flags |= CAP_TRUNCATED;

slack-desc
[code]
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
# You must make exactly 11 lines for the formatting to be correct.  It's also
# customary to leave one space after the ':' except on otherwise blank lines.

        |-----handy-ruler------------------------------------------------------|
MEGAsync: MEGAsync (mega cloud storage service)
MEGAsync:
MEGAsync: MEGAsync open source release for MEGA cloud storage services
MEGAsync:
MEGAsync:
MEGAsync: Compiled using default Slackware Qt4.
MEGAsync:
MEGAsync: Homepage: https://github.com/meganz/MEGAsync
MEGAsync: Service: https://mega.nz/
MEGAsync:
MEGAsync:

do-inst.sh
[code]
if [ -x /usr/bin/update-desktop-database ]; then
  /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi

if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
  if [ -x /usr/bin/gtk-update-icon-cache ]; then
    /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
  fi
fi

---
[Update] Nov.18.2022  : TEST build against ffmpeg-5.1.2 with new patch(megasync-4.7.3.0_ffmpeg5.patch)
[Update] Jan.26.2023 : TEST build against ffmpeg-5.1.2 with MEGAsync-4.8.6.0_Win source
[Update] Feb.04.2023 : TEST build against ffmpeg-5.1.2 with MEGAsync-4.8.7.0_Win source
[Update] Feb.28.2023 : TEST build against ffmpeg-5.1.2 with MEGAsync-4.8.8.0_Win source
[Update] Mar.22.2023 : TEST build against ffmpeg-5.1.2 with MEGAsync-4.9.1.0_Win source


MEGAsync-4.9.0.0_Linux has been released [2023-03-06]

[Update: Mar. 06. 2023]
After a long interval from the last release, MEGAsync-4.9.0.0_Linux has been finally released.

Compiling test of MEGAsync-4.9.0.0_Linux on slackware64-current(15.0+) with FFMPEG5

I updated the package against current ffmpeg-5.x environment.
Package was compiled successfully on slackware64-15.0+ with ffmpeg-5.1.2 and is working fine.


MEGAsync.SlackBuild
[code]
#!/bin/sh

# Slackware build script for MEGASync input plugin

# Copyright 2017,2018 Felipe Bugno <capent@yahoo.com>
#
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
#  THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
#  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
#  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO
#  EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
#  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
#  OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
#  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
#  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
#  ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
# 2021-08-23 : version bump to 4.5.0.0 -- Build with gcc-11 and with ffmpeg4.4 patch
# 2021-08-24 : version bump to 4.5.3.0 -- Build with gcc-11 and with ffmpeg4.4 patch
# 2021-08-24 : version 4.5.3.0 2jw -- use sdk-3.8.2c instead of commit version "c11a688d578e16dc25d4c94fee7995730be1aa50".
# 2021-11-22 : version 4.6.1.0 1jw -- use source 4.6.1.0_Linux and sdk-3.9.6a
# 2021-12-15 : version 4.6.2.0 1jw -- use source 4.6.2.0_Linux and sdk-3.9.6a
# 2022-01-30 : version 4.6.3.0 1jw -- version bump to 4.6.3.0 with official 4.6.3.0_Linux source
# 2022-03-07 : version 4.6.3.0-2jw -- rebuild under ibmediainfo-21.0 and libzen-0.4.39
# 2022-03-30 : version 4.6.5.0-1jw -- version bump to 4.6.5.0 Linux
# 2022-04-23 : Version 4.6.6.0-1jw -- version bump to 4.6.6.0_Linux with sdk-3.9.16
# 2022-06-25 : Version 4.6.7.0-1jw -- version bump to 4.6.7.0_Linux with sdk-3.9.16a
# 2022-07-XX : Version 4.6.8.0-1jw -- version bump to 4.6.8.0_Linux with sdk-3.12.3
# 2022-09-21 : Cmmpiling test of MEGAsync-4.7.0.0_Linux with sdk-4.3.0
# 2022-10-04 : Compiling test of MEGAsync-4.7.1.0_Linux with sdk-4.3.0
# 2022-10-12 : 4.7.1.0 (2jw) -- Recompiled against FFMPEG5
# 2022-11-07 : 4.7.2.0 (1jw) -- version bump to 4.7.2.0_Linux
# 2022-12-13 : 4.7.3.0 (1jw) -- version bump to 4.7.3.0_Linux (and also new ffmpeg5 patch
# 2023-03-06 : 4.9.0.0 (1jw) -- version bump to 4.9.0.0_Linux with sdk-4.16.0b

PRGNAM=MEGAsync
VERSION=${VERSION:-4.9.0.0}
SDK=${SDK:-4.16.0b}
FFMPEG5_PATCHREV=${FFMPEG5_PATCHREV:-4.9.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-jw}

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i586 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

if [ "$ARCH" = "i586" ]; then
  SLKCFLAGS="-O2 -march=i586 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
else
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
fi

set -e

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION\_Linux
tar xvf $CWD/$PRGNAM-$VERSION\_Linux.tar.gz
cd $PRGNAM-$VERSION\_Linux/src/MEGASync/mega
tar --strip-components=1 -xvf $CWD/sdk-$SDK.tar.gz
cd ../../../
chown -R root:root .
find -L . \
 \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
  -o -perm 511 \) -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
  -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;

cd src/MEGASync/mega
patch -p1 < $CWD/megasync-4.5.0.0_pdfium.patch

./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --datarootdir=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux \
  --with-cares \
  --with-cryptopp \
  --with-curl \
  --with-sodium \
  --with-sqlite \
  --with-zlib \
  --with-termcap \
  --with-freeimage \
  --enable-chat \
  --enable-gcc-hardening

# Apply ffmpeg5 fix patch
cd ../../../
patch -p1 < $CWD/megasync-${FFMPEG5_PATCHREV}_ffmpeg5.patch

cd src/
#cd ../../../src
qmake CONFIG+="release" QMAKE_CXXFLAGS="$SLKCFLAGS" MEGA.pro
lrelease MEGASync/MEGASync.pro
make
install -m 755 -p -D $TMP/$PRGNAM-$VERSION\_Linux/src/MEGASync/megasync $PKG/usr/bin/megasync
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Linux/src/MEGASync/platform/linux/data/megasync.desktop $PKG/usr/share/applications/megasync.desktop
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Linux/src/MEGASync/platform/linux/data/icons/hicolor/16x16/apps/mega.png $PKG/usr/share/icons/hicolor/16x16/apps/mega.png
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Linux/src/MEGASync/platform/linux/data/icons/hicolor/32x32/apps/mega.png $PKG/usr/share/icons/hicolor/32x32/apps/mega.png
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Linux/src/MEGASync/platform/linux/data/icons/hicolor/48x48/apps/mega.png $PKG/usr/share/icons/hicolor/48x48/apps/mega.png
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Linux/src/MEGASync/platform/linux/data/icons/hicolor/128x128/apps/mega.png $PKG/usr/share/icons/hicolor/128x128/apps/mega.png
install -m 644 -p -D $TMP/$PRGNAM-$VERSION\_Linux/src/MEGASync/platform/linux/data/icons/hicolor/256x256/apps/mega.png $PKG/usr/share/icons/hicolor/256x256/apps/mega.png

find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true

mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cd $TMP/$PRGNAM-$VERSION\_Linux
cp -a  README.md LICENCE.md CREDITS.md $PKG/usr/doc/$PRGNAM-$VERSION
cp $CWD/megasync-4.5.0.0_pdfium.patch $CWD/megasync-4.9.0.0_ffmpeg5.patch $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-txz}

MEGAsync.info
[code]
PRGNAM="MEGAsync"
VERSION="4.9.0.0"
HOMEPAGE="https://github.com/meganz/MEGAsync/"
DOWNLOAD="https://github.com/meganz/MEGAsync/archive/v4.9.0.0_Linux/MEGAsync-4.9.0.0_Linux.tar.gz \
 https://github.com/meganz/sdk/archive/v4.16.0b/sdk-4.16.0b.tar.gz"
MD5SUM="d9fa67401357ec639eb3d557336b37c5 \
 6334efefe2cda5b1223d9dc4845f4d8d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="FreeImage libmediainfo"
MAINTAINER=""
EMAIL=""

megasync-4.5.0.0_pdfium.patch
[code]
diff --git a/bindings/qt/sdk.pri b/bindings/qt/sdk.pri
index 83ddc2e2f..46aa06d33 100644
--- a/bindings/qt/sdk.pri
+++ b/bindings/qt/sdk.pri
@@ -255,6 +255,11 @@ CONFIG(USE_PDFIUM) {
                 DEFINES += HAVE_PDFIUM
                 LIBS += -lpdfium
             }
+            else:exists(/usr/include/pdfium/fpdfview.h) {
+                DEFINES += HAVE_PDFIUM
+                INCLUDEPATH += /usr/include/pdfium
+                LIBS += -lpdfium
+            }
         }
         else {#win/mac
             DEFINES += HAVE_PDFIUM


megasync-4.9.0.0_ffmpeg5.patch
[code]
--- MEGAsync-4.9.0.0_Linux/src/MEGASync/mega/src/gfx/freeimage.cpp    2023-03-04 07:13:58.000000000 +0900
+++ MEGAsync-4.9.0.0_Linux.new/src/MEGASync/mega/src/gfx/freeimage.cpp    2023-03-06 23:06:33.669459409 +0900
@@ -313,7 +313,7 @@
 
     // Find decoder for video stream
     AVCodecID codecId = codecParm->codec_id;
-    AVCodec* decoder = avcodec_find_decoder(codecId);
+    auto decoder = avcodec_find_decoder(codecId);
     if (!decoder)
     {
         LOG_warn << "Codec not found: " << codecId;
@@ -330,7 +330,7 @@
 
     // Force seeking to key frames
     formatContext->seek2any = false;
-    videoStream->skip_to_keyframe = true;
+    //videoStream->skip_to_keyframe = true;
     if (decoder->capabilities & CAP_TRUNCATED)
     {
         codecContext->flags |= CAP_TRUNCATED;

slack-desc
[code]
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
# You must make exactly 11 lines for the formatting to be correct.  It's also
# customary to leave one space after the ':' except on otherwise blank lines.

        |-----handy-ruler------------------------------------------------------|
MEGAsync: MEGAsync (mega cloud storage service)
MEGAsync:
MEGAsync: MEGAsync open source release for MEGA cloud storage services
MEGAsync:
MEGAsync:
MEGAsync: Compiled using default Slackware Qt4.
MEGAsync:
MEGAsync: Homepage: https://github.com/meganz/MEGAsync
MEGAsync: Service: https://mega.nz/
MEGAsync:
MEGAsync:

do-inst.sh
[code]
if [ -x /usr/bin/update-desktop-database ]; then
  /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi

if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
  if [ -x /usr/bin/gtk-update-icon-cache ]; then
    /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
  fi
fi

---
[Update] Mar.06.2023  : Version bump to 4.9.0.0_Linux


MEGAcmd-1.6.0_Linux has been released

[Update] 2023-03-06 : Version bump to 1.6.0_linux

クラウド・ストレージ MEGA のコマンドライン・ユーティリティ MEGAcmd-1.6.0_Linux

screen shot
MEGAcmd-1.6.0.0_LogIn

MEGAcmd.SlackBuild
[code]
#!/bin/bash

# Slackware build script for MEGAcmd

# Copyright 2017,2018 Felipe Bugno <capent@yahoo.com>
#
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
#  THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
#  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
#  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO
#  EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
#  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
#  OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
#  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
#  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
#  ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

cd $(dirname $0) ; CWD=$(pwd)

PRGNAM=MEGAcmd
VERSION=${VERSION:-1.6.0}
SDK=${SDK:-4.16.0b}
BUILD=${BUILD:-1} # Version bump to 1.6.0 on 2023-03-06
TAG=${TAG:-jw}
PKGTYPE=${PKGTYPE:-txz}

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i586 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
# the name of the created package would be, and then exit. This information
# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
  echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
  exit 0
fi

TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

if [ "$ARCH" = "i586" ]; then
  SLKCFLAGS="-O2 -march=i586 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
else
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
fi

set -e

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-${VERSION}_Linux
tar xvf $CWD/$PRGNAM-${VERSION}_Linux.tar.?z
cd $PRGNAM-${VERSION}_Linux/sdk
tar --strip-components=1 -xvf $CWD/sdk-$SDK.tar.gz

cd ../
chown -R root:root .
find -L . \
 \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
  -o -perm 511 \) -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
 -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;

./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --without-ffmpeg \
  --build=$ARCH-slackware-linux

make
make install DESTDIR=$PKG
# Fix installdir of megacmd_completion.sh
rm -rf $PKG/etc
install -Dm644 src/client/megacmd_completion.sh $PKG/usr/share/bash-completion/completions/megacmd

# Don't ship .la files:
rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/*.la

find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true

mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
  LICENSE README.md UserGuide.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE


MEGAcmd.info
[code]
PRGNAM="MEGAcmd"
VERSION="1.6.0"
HOMEPAGE="https://github.com/meganz/MEGAcmd"
DOWNLOAD="https://github.com/meganz/MEGAcmd/archive/1.6.0_Linux/MEGAcmd-1.6.0_Linux.tar.gz \
          https://github.com/meganz/sdk/archive/v4.16.0b/sdk-4.16.0b.tar.gz"
MD5SUM="4ae22d7c551023638c25602310ecdc57 \
        6334efefe2cda5b1223d9dc4845f4d8d
"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="FreeImage libmediainfo"
MAINTAINER="JW(Shinichi Abe)"
EMAIL="shin1.abe@nifty.com"


slack-desc
[code]
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.  Line
# up the first '|' above the ':' following the base package name, and the '|'
# on the right side marks the last column you can put a character in.  You must
# make exactly 11 lines for the formatting to be correct.  It's also
# customary to leave one space after the ':'.

       |-----handy-ruler------------------------------------------------------|
MEGAcmd: MEGAcmd (MEGAcmd)
MEGAcmd: URL : https://github.com/meganz/MEGAcmd
MEGAcmd:
MEGAcmd: MEGAcmd provides non UI access to MEGA services. It intends to offer
MEGAcmd: all the functionality with your MEGA account via commands.
MEGAcmd: It features synchronization , backup of local folders into your MEGA
MEGAcmd: account and a webdav/streaming server
MEGAcmd:
MEGAcmd:
MEGAcmd:
MEGAcmd:




===


MEGAcmd-1.5.1_Linux -- Fixed bash-completion directory

[Update] 2023-03-03 : Fixed bash-completion directory

クラウド・ストレージ MEGA のコマンドライン・ユーティリティ MEGAcmd-1.5.1_Linux

screen shot
MEGAcmd-01_1.5.1


MEGAcmd.SlackBuild
[code]
#!/bin/bash

# Slackware build script for MEGAcmd

# Copyright 2017,2018 Felipe Bugno <capent@yahoo.com>
#
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
#  THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
#  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
#  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO
#  EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
#  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
#  OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
#  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
#  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
#  ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

cd $(dirname $0) ; CWD=$(pwd)

PRGNAM=MEGAcmd
VERSION=${VERSION:-1.5.1}
SDK=${SDK:-3.9.11d}
BUILD=${BUILD:-3} # Recompiled on 2023-03-03
TAG=${TAG:-jw}
PKGTYPE=${PKGTYPE:-txz}

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i586 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
# the name of the created package would be, and then exit. This information
# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
  echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
  exit 0
fi

TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

if [ "$ARCH" = "i586" ]; then
  SLKCFLAGS="-O2 -march=i586 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
else
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
fi

set -e

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-${VERSION}_Linux
tar xvf $CWD/$PRGNAM-${VERSION}_Linux.tar.?z
cd $PRGNAM-${VERSION}_Linux/sdk
tar --strip-components=1 -xvf $CWD/sdk-$SDK.tar.gz

# forces TLSv1.2 usage
#sed -i "s|CURL_SSLVERSION_TLSv1)|CURL_SSLVERSION_TLSv1_2)|" src/posix/net.cpp
cd ../
chown -R root:root .
find -L . \
 \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
  -o -perm 511 \) -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
 -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;

./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --without-ffmpeg \
  --build=$ARCH-slackware-linux

make
make install DESTDIR=$PKG
# Fix installdir of megacmd_completion.sh
rm -rf $PKG/etc
install -Dm644 src/client/megacmd_completion.sh $PKG/usr/share/bash-completion/completions/megacmd


# Don't ship .la files:
rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/*.la

find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true

mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
  LICENSE README.md UserGuide.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE


MEGAcmd.info
[code]
PRGNAM="MEGAcmd"
VERSION="1.5.1"
HOMEPAGE="https://github.com/meganz/MEGAcmd"
DOWNLOAD="https://github.com/meganz/MEGAcmd/archive/1.5.1_Linux/MEGAcmd-1.5.1_Linux.tar.gz \
          https://github.com/meganz/sdk/archive/v3.9.11d/sdk-3.9.11d.tar.gz"
MD5SUM="a0047f8f025c46b4646c8e7f953b79d8 \
        5028b95cad49c7cc654d1249e39e8f84"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="FreeImage libmediainfo"
MAINTAINER="JW(Shinichi Abe)"
EMAIL="shin1.abe@nifty.com"


slack-desc
[code]
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.  Line
# up the first '|' above the ':' following the base package name, and the '|'
# on the right side marks the last column you can put a character in.  You must
# make exactly 11 lines for the formatting to be correct.  It's also
# customary to leave one space after the ':'.

       |-----handy-ruler------------------------------------------------------|
MEGAcmd: MEGAcmd (MEGAcmd)
MEGAcmd: URL : https://github.com/meganz/MEGAcmd
MEGAcmd:
MEGAcmd: MEGAcmd provides non UI access to MEGA services. It intends to offer
MEGAcmd: all the functionality with your MEGA account via commands.
MEGAcmd: It features synchronization , backup of local folders into your MEGA
MEGAcmd: account and a webdav/streaming server
MEGAcmd:
MEGAcmd:
MEGAcmd:
MEGAcmd:




===


fcitx5-mozc-2.28.5029.102.1 for slackware64-15.0 ... [update: 2023-03-03]

[update: 2023-03-03]
- Version-up to 2.28.5029.102.1

MOZC_REV:    67152ee32dbdf1ae42e03815373c6ce3711c8144
( git-source: commit-67152ee32dbdf1ae42e03815373c6ce3711c8144  )

ABSEIL_CPP_REV=cdad8cd96ee9bfe11056997dc960eb2e52c6b00e

  build requires: jdk11, bazel

[screenshot} About dialog
fcitx5-mozc-2.28.5029_About

fcitx5-mozc.SlackBuild
[code]
#!/bin/bash

# Slackware build script for bazel

# Copyright 2022 Isaac Yu <isaacyu1@isaacyu1.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

cd $(dirname $0) ; CWD=$(pwd)

PRGNAM=fcitx5-mozc
VERSION=${VERSION:-2.28.5029.102.1}
BUILD=${BUILD:-1}
# Version bump to "2.28.5029.102.1"
# updated MOZC_REV to 67152ee32dbdf1ae42e03815373c6ce3711c8144 (2023-03-03)
# Updated ABSEIL_CPP_REV is cdad8cd96ee9bfe11056997dc960eb2e52c6b00e (2023-02-04)
TAG=${TAG:-jw}
PKGTYPE=${PKGTYPE:-txz}

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i586 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
# the name of the created package would be, and then exit. This information
# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
  echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
  exit 0
fi

TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
BLDBASEDIR=$TMP/$PRGNAM-$VERSION

if [ "$ARCH" = "i586" ]; then
  SLKCFLAGS="-O2 -march=i586 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
else
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
fi

set -e
BLDTYPE=Release
_bldtype=Release

# source rev. and version.
MOZC_REV=67152ee32dbdf1ae42e03815373c6ce3711c8144
GYP_REV=caa60026e223fc501e8b337fd5086ece4028b1c6
PROTOBUF_REV=b5a35bcc7e4cc4ff00eb105449b300fca3a8b0d2
ABSEIL_CPP_REV=cdad8cd96ee9bfe11056997dc960eb2e52c6b00e
BREAKPAD_REV=2022.07.12
GOOGLETEST_REV=703bd9caab50b139428cea1aaff9974ebee5742e
JSONCPP_REV=42e892d96e47b1f6e29844cc705e148ec4856448
JAPANESE_USAGE_DICT_REV=e5b3425575734c323e1d947009dd74709437b684
ZIPCODE_REL=202110

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
mkdir -p $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
echo "prepare source file..."
# unzip packages
unzip $CWD/mozc-$MOZC_REV.zip
unzip $CWD/gyp-$GYP_REV.zip
unzip $CWD/protobuf-$PROTOBUF_REV.zip
unzip $CWD/abseil-cpp-$ABSEIL_CPP_REV.zip
unzip $CWD/breakpad-${BREAKPAD_REV}.zip
unzip $CWD/googletest-$GOOGLETEST_REV.zip
unzip $CWD/jsoncpp-$JSONCPP_REV.zip
unzip $CWD/japanese-usage-dictionary-$JAPANESE_USAGE_DICT_REV.zip
unzip $CWD/jigyosyo-$ZIPCODE_REL.zip
unzip $CWD/x-ken-all-$ZIPCODE_REL.zip
# extact tar file
tar -xvf ${CWD}/fcitx-mozc-icon.tar.gz

# rename directory
mv mozc-$MOZC_REV mozc
mv gyp-$GYP_REV gyp
mv protobuf-$PROTOBUF_REV protobuf
mv abseil-cpp-$ABSEIL_CPP_REV abseil-cpp
mv breakpad-$BREAKPAD_REV breakpad
mv googletest-$GOOGLETEST_REV googletest
mv jsoncpp-$JSONCPP_REV jsoncpp
mv japanese-usage-dictionary-$JAPANESE_USAGE_DICT_REV japanese_usage_dictionary

chown -R root:root .
find -L . \
 \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
  -o -perm 511 \) -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
  -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;

cd $BLDBASEDIR/mozc/src

# disable android-ndk requirement, even if we don't need it bazel will complain
sed "/android_ndk_repository/d" -i WORKSPACE.bazel

# adjust QT_BASE_PATH
sed 's|path = QT_BASE_PATH|path = "/usr/include/qt5"|' -i WORKSPACE.bazel

cd $BLDBASEDIR/mozc
# prepare zip code dictionary
unzip -d src/data/dictionary_oss $CWD/jigyosyo-$ZIPCODE_REL.zip
unzip -d src/data/dictionary_oss $CWD/x-ken-all-$ZIPCODE_REL.zip

cd src/dictionary
# Generate zip code seed
sed -i "s/from dictionary import zip_code_util/import zip_code_util/g" gen_zip_code_seed.py

cd ../data/dictionary_oss
echo "Generating zip code seed ..."
python3 ../../dictionary/gen_zip_code_seed.py --zip_code=x-ken-all.csv --jigyosyo=JIGYOSYO.CSV >> dictionary09.txt
echo "Done."

cd $BLDBASEDIR/mozc/scripts
# fix libdir path of fcitx5-mozc.so for Slackware
sed 's/lib/lib64/g' -i install_fcitx5_bazel

#cd ..
# We won't need this patch now.
# Apply debian Use-Gtk3 patch
# patch -p1 < $CWD/0008-renderer-Convert-Gtk2-to-Gtk3.patch

cd ../..
# Copy third party deps
echo "Copy third party deps ..."
for dep in abseil-cpp breakpad googletest jsoncpp gyp protobuf japanese_usage_dictionary
do
  cp -a $dep mozc/src/third_party/
done

# build package
echo "build package..."
CFLAGS="${CFLAGS} -fvisibility=hidden"
CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"

cd $BLDBASEDIR/mozc/src
QT_BASE_PATH=/usr/include/qt5 bash ../scripts/build_fcitx5_bazel

# Build emacs_helper
echo "build emacs_helper..."
bazel build unix/emacs:mozc_emacs_helper --config oss_linux --compilation_mode opt

# Extract license part of mozc
head -n 29 server/mozc_server.cc > LICENSE

export PREFIX="$PKG/usr"
export _bldtype
bash ../scripts/install_server_bazel

install -d "$PKG/usr/share/licenses/${PRGNAM}/"
install -m 644 LICENSE data/installer/*.html "$PKG/usr/share/licenses/${PRGNAM}/"

install -d "${PREFIX}/share/fcitx5/addon"
install -d "${PREFIX}/share/fcitx5/inputmethod"
install -d "${PREFIX}/lib${LIBDIRSUFFIX}/fcitx5"
bash ../scripts/install_fcitx5_bazel

# Install icons at /usr/share/fcitx5
install -d "${PREFIX}/share/fcitx5/mozc/icon"
install -D -m 644 data/images/product_icon_32bpp-128.png "${PREFIX}/share/fcitx5/mozc/icon/mozc.png"
install -D -m 644 ../scripts/icons/ui-alpha_full.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-alpha_full.png"
install -D -m 644 ../scripts/icons/ui-alpha_half.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-alpha_half.png"
install -D -m 644 ../scripts/icons/ui-direct.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-direct.png"
install -D -m 644 ../scripts/icons/ui-hiragana.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-hiragana.png"
install -D -m 644 ../scripts/icons/ui-katakana_full.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-katakana_full.png"
install -D -m 644 ../scripts/icons/ui-katakana_half.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-katakana_half.png"
install -D -m 644 ../scripts/icons/ui-dictionary.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-dictionary.png"
install -D -m 644 ../scripts/icons/ui-properties.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-properties.png"
install -D -m 644 ../scripts/icons/ui-tool.png "${PREFIX}/share/fcitx5/mozc/icon/mozc-tool.png"

find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true

mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
# Install emacs_helper and documents
install -Dm644 ../LICENSE $PKG/usr/share/licenses/emacs-mozc/LICENSE
install -Dm644 data/installer/credits_en.html  $PKG/usr/doc/$PRGNAM-$VERSION/credits_en.html
install -Dm755 bazel-bin/unix/emacs/mozc_emacs_helper $PKG/usr/bin/mozc_emacs_helper
install -Dm644 unix/emacs/mozc.el $PKG/usr/share/emacs/site-lisp/mozc.el

cp $CWD/init.el_mozc $CWD/README.emacs $PKG/usr/doc/$PRGNAM-$VERSION/
cp $CWD/fetch_fcitx5-mozc_sources.sh $PKG/usr/doc/$PRGNAM-$VERSION/
cp $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
# remove unneeded doc directory
rm -rf $PKG/usr/doc/mozc

mkdir -p $PKG/install
# install slack-desc
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE


init.el_mozc
[code]
(set-language-environment "Japanese")
(require 'mozc)  ; or (load-file "/usr/share/emacs/site-lisp/emacs-mozc/mozc.el")
(setq default-input-method "japanese-mozc")
(setq mozc-candidate-style 'overlay)


README.emacs
[code]
# for emacs, create {HOME}/.emacs.d/init.el with followng lines

(require 'mozc)  ; or (load-file "/path/to/mozc.el")
(setq default-input-method "japanese-mozc")
(setq mozc-candidate-style 'overlay)

doinst.sh
[code]
if [ -x /usr/bin/update-desktop-database ]; then
  /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi

if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
  if [ -x /usr/bin/gtk-update-icon-cache ]; then
    /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
  fi
fi

if [ -x usr/bin/update-gtk-immodules ]; then
  chroot . /usr/bin/update-gtk-immodules --verbose 1>/dev/null
fi

slack-desc
[code]
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
# You must make exactly 11 lines for the formatting to be correct.  It's also
# customary to leave one space after the ':' except on otherwise blank lines.

           |-----handy-ruler------------------------------------------------------|
fcitx5-mozc: fcitx5-mozc (Mozc engine for fcitx5)
fcitx5-mozc:
fcitx5-mozc: fcitx5-mozc is Mozc, Japanese input method editor, engine for fcitx5.
fcitx5-mozc:
fcitx5-mozc: Homepage: https://fcitx-im.org
fcitx5-mozc:
fcitx5-mozc:
fcitx5-mozc:
fcitx5-mozc:
fcitx5-mozc:
fcitx5-mozc:

fcitx5-mozc.info of Version-2.28.5029.102.1
[code]
PRGNAM="fcitx5-mozc"
VERSION="2.28.5029.102.1"
HOMEPAGE="https://github.com/fcitx/mozc/"
DOWNLOAD="https://github.com/fcitx/mozc/archive/67152ee32dbdf1ae42e03815373c6ce3711c8144/mozc-67152ee32dbdf1ae42e03815373c6ce3711c8144.zip
 https://github.com/chromium/gyp/archive/caa60026e223fc501e8b337fd5086ece4028b1c6/gyp-caa60026e223fc501e8b337fd5086ece4028b1c6.zip
 https://github.com/protocolbuffers/protobuf/archive/b5a35bcc7e4cc4ff00eb105449b300fca3a8b0d2/protobuf-b5a35bcc7e4cc4ff00eb105449b300fca3a8b0d2.zip
 https://github.com/abseil/abseil-cpp/archive/cdad8cd96ee9bfe11056997dc960eb2e52c6b00e/abseil-cpp-cdad8cd96ee9bfe11056997dc960eb2e52c6b00e.zip
 https://github.com/google/breakpad/archive/v2022.07.12/breakpad-2022.07.12.zip
 https://github.com/google/googletest/archive/703bd9caab50b139428cea1aaff9974ebee5742e/googletest-703bd9caab50b139428cea1aaff9974ebee5742e.zip
 https://github.com/open-source-parsers/jsoncpp/archive/42e892d96e47b1f6e29844cc705e148ec4856448/jsoncpp-42e892d96e47b1f6e29844cc705e148ec4856448.zip
 https://github.com/hiroyuki-komatsu/japanese-usage-dictionary/archive/e5b3425575734c323e1d947009dd74709437b684/japanese-usage-dictionary-e5b3425575734c323e1d947009dd74709437b684.zip
 https://osdn.net/projects/ponsfoot-aur/storage/mozc/jigyosyo-202110.zip
 https://osdn.net/projects/ponsfoot-aur/storage/mozc/x-ken-all-202110.zip
 https://download.fcitx-im.org/fcitx-mozc/fcitx-mozc-icon.tar.gz"
MD5SUM="baf947784460369f78dcafd501b37105
 699c5af5c6d7e19835afb5292d151f91
 d79cbe4e2033c967a58e2bddaa6d4aa2
 807c80030e214a4b346f31cc222df045
 981e935b3b61091ca6f968a296f44eb9
 768da4173ee9df3248b8f828747982ad
 b56b146335d7c296ddef5a88235f1438
 a6eb1da9ad7ceffcb9683003332abf7e
 35031b342c827861681081e4052b472b
 a4b62ae420004b55a72fe6a40bb09ee1
 80fe2ef127b70649df22d133822ac8a7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="bazel"
MAINTAINER=""
EMAIL=""



引き続き更新予定








ギャラリー
  • deepl-clip.sh で簡単翻訳 [更新:2025-04-29]
  • Avidemux 2.8.2_20250323_7cf15b3
  • Avidemux 2.8.2_20250323_7cf15b3
  • Avidemux 2.8.x with Qt6 GUI
  • Avidemux 2.8.x with Qt6 GUI
  • MEGAcmd-2.0.0_Linux
  • gcolor3 with Japanese menu and LC_MESSAGES
  • avidemux2 TEST package from the latest git source (on jul.23.2024)
  • fcitx5-mozc-2.29.5135.102.1 (15jw) -- Added "merge-ut-dictionaries"