构建 deb 时 Debian/package.install 中列出的某些文件未安装

构建 deb 时 Debian/package.install 中列出的某些文件未安装

我正在尝试将 GIMP 2.10.20 构建到 Ubuntu PPA 中。一切都很好,GIMP 构建成功并且运行良好,除了语言(缺少*gimp20*.mo文件)。

它们不包括在内libgimp2.0gimp 数据软件包,而上游 Debian 构建的软件包大多相同Debian/文件夹确实包含这些文件。

以下是debian/gimp-date.install

# The following line is prefixed as the source contains an etc/ dir, and
# dh_install will prefer to install its entire contents, instead of the
# installed debian/tmp/etc directory. Prefixing it works around this.
debian/tmp/etc/
usr/share/gimp/
usr/share/icons/
usr/share/locale/*/LC_MESSAGES/gimp20.mo
usr/share/locale/*/LC_MESSAGES/gimp20-python.mo
usr/share/locale/*/LC_MESSAGES/gimp20-script-fu.mo
usr/share/locale/*/LC_MESSAGES/gimp20-std-plug-ins.mo
usr/share/locale/*/LC_MESSAGES/gimp20-tips.mo
usr/share/man/man5/gimprc.5
usr/share/man/man5/gimprc-?.??.5

debian/libgimp2.0.安装

usr/lib/lib*.so.*
usr/share/locale/*/LC_MESSAGES/gimp20-libgimp.mo

debian/规则

#!/usr/bin/make -f

export DEB_BUILD_MAINT_OPTIONS = hardening=+all
export DEB_LDFLAGS_MAINT_APPEND = -Wl,-O1 -Wl,--as-needed

ifeq (yes,$(shell dpkg-vendor --derives-from Ubuntu && echo yes))
    BUGTRACKER = https://bugs.launchpad.net/ubuntu/+source/gimp/+filebug?no-redirect
else
    BUGTRACKER = https://www.debian.org/Bugs/Reporting
endif

%:
    dh $@

# Don't switch to Multi-Arch yet because of potential incompatibility with
# third-party add-ons
override_dh_auto_configure:
    dh_auto_configure -- \
        --libdir=/usr/lib \
        --libexecdir=/usr/lib/gimp \
        --disable-static \
        --disable-python \
        --disable-check-update \
        --enable-default-binary \
        --enable-gtk-doc \
        --without-appdata-test \
        --without-webkit \
        --without-xvfb-run \
        --with-bug-report-url=$(BUGTRACKER)

override_dh_autoreconf:
    dh_autoreconf --as-needed

# exclude since we manually add the Suggests in debian/control
override_dh_shlibdeps:
    dh_shlibdeps -Xusr/lib/gimp/2.0/modules/libcontroller-midi.so \
        -Llibgimp2.0 -l$(CURDIR)/debian/libgimp2.0/usr/lib

override_dh_makeshlibs:
    dh_makeshlibs -X/usr/lib/gimp/2.0/modules -- -c4

override_dh_install-arch:
    find debian/tmp -name '*.la' -print -delete
    dh_install -a

override_dh_install-indep:
    find debian/tmp -name '*.la' -print -delete
    dh_install -i

override_dh_missing:
    dh_missing --fail-missing

并构建日志:launchpadlibrarian.net

答案1

这对我来说也是新的变化。查看构建日志。*.mo文件确实已创建。

installing am.gmo as /<<PKGBUILDDIR>>/debian/tmp/usr/share/locale/am/LC_MESSAGES/gimp20.mo
installing ar.gmo as /<<PKGBUILDDIR>>/debian/tmp/usr/share/locale/ar/LC_MESSAGES/gimp20.mo
...

处理

dh_strip_nondeterminism
 Normalized debian/gimp-data/usr/share/locale/nb/LC_MESSAGES/gimp20-tips.mo
 Normalized debian/gimp-data/usr/share/locale/nb/LC_MESSAGES/gimp20-python.mo
 ...

然后进行条带化并放入单独的档案中

pkgstriptranslations: processing gimp (in debian/gimp); do_strip: 1, oemstrip: 
pkgstriptranslations: processing libgimp2.0-doc (in debian/libgimp2.0-doc); do_strip: 1, oemstrip: 
pkgstriptranslations: processing libgimp2.0 (in debian/libgimp2.0); do_strip: 1, oemstrip: 
pkgstriptranslations: libgimp2.0-doc does not contain translations, skipping
pkgstriptranslations: preparing translation tarball gimp_2.10.20-0focal5_amd64_translations.tar.gz...done
INFO: Disabling pkgmaintainermangler for PPA build
INFO: Disabling pkgstripfiles for PPA build
dpkg-deb: building package 'libgimp2.0-doc' in '../libgimp2.0-doc_2.10.20-0focal5_all.deb'.
debian/gimp/usr/share/applications/gimp.desktop: stripping translations
pkgstriptranslations: gimp does not contain translations, skipping
pkgstriptranslations: no translation files, not creating tarball
INFO: Disabling pkgmaintainermangler for PPA build
INFO: Disabling pkgstripfiles for PPA build
dpkg-deb: building package 'gimp' in '../gimp_2.10.20-0focal5_amd64.deb'.
INFO: pkgstriptranslations version 144
pkgstriptranslations: processing gimp-data (in debian/gimp-data); do_strip: 1, oemstrip: 
pkgstriptranslations: updating translation tarball gimp_2.10.20-0focal5_amd64_translations.tar.gz...done
INFO: Disabling pkgmaintainermangler for PPA build
INFO: Disabling pkgstripfiles for PPA build
dpkg-deb: building package 'gimp-data' in '../gimp-data_2.10.20-0focal5_all.deb'.
pkgstriptranslations: updating translation tarball gimp_2.10.20-0focal5_amd64_translations.tar.gz...done
INFO: Disabling pkgmaintainermangler for PPA build
INFO: Disabling pkgstripfiles for PPA build
dpkg-deb: building package 'libgimp2.0' in '../libgimp2.0_2.10.20-0focal5_amd64.deb'.
INFO: pkgstriptranslations version 144
pkgstriptranslations: processing libgimp2.0-dev (in debian/libgimp2.0-dev); do_strip: 1, oemstrip: 
pkgstriptranslations: libgimp2.0-dev does not contain translations, skipping
pkgstriptranslations: no translation files, not creating tarball

因此,翻译如下gimp_2.10.20-0focal5_amd64_translations.tar.gz

现在,当前问题gimp_2.10.20-0focal5_amd64_translations.tar.gz无论如何都没有发布,您的 PPA 中没有任何内容。我现在唯一的解释是,拆分翻译的功能仅适用于官方存储库,他们在每个渠道将翻译收集到单个文件中,但对于 PPA,我不确定它是否有效。

相关内容