Bug 2298104

Summary: Review Request: ibus-bamboo - A Vietnamese input method for IBus
Product: [Fedora] Fedora Reporter: fujiwara <tfujiwar>
Component: Package ReviewAssignee: Parag AN(पराग) <panemade>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: i18n-bugs, jarema.fedora, kanru, package-review, panemade
Target Milestone: ---Flags: panemade: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
URL: https://github.com/BambooEngine/ibus-bamboo
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-07-06 01:10:32 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
The .spec file difference from Copr build 9178972 to 9183041
none
The .spec file difference from Copr build 9183041 to 9188114
none
The .spec file difference from Copr build 9188114 to 9188166 none

Description fujiwara 2024-07-16 12:14:50 UTC
Spec URL: https://fujiwara.fedorapeople.org/ibus/bamboo/ibus-bamboo.spec
SRPM URL: https://fujiwara.fedorapeople.org/ibus/bamboo/ibus-bamboo-0.8.3-2.fc41.src.rpm
Description: 
A Vietnamese IME for IBus using Bamboo Engine.
The open source Vietnamese keyboard supports most common encodings, popular
Vietnamese typing methods, smart diacritics, spell checking, shortcuts,...
Fedora Account System Username: fujiwara

Comment 1 Kan-Ru Chen 2024-07-23 09:29:41 UTC
I'm not familiar with golang so just skimming through the spec and packaging guideline..

It looks like the upstream uses bundled dependencies (in vendor/), some of them like godbus is packaged in Fedora.

For other bundled dependencies I think the License should include their licenses too.

Comment 2 Kan-Ru Chen 2024-07-23 09:31:12 UTC
Oops, didn't mean to take this.

Comment 3 fujiwara 2024-07-29 14:03:12 UTC
(In reply to Kan-Ru Chen from comment #1)
> I'm not familiar with golang so just skimming through the spec and packaging
> guideline..
> 
> It looks like the upstream uses bundled dependencies (in vendor/), some of
> them like godbus is packaged in Fedora.
> 
> For other bundled dependencies I think the License should include their
> licenses too.

Thank you for your info.
The SRPM was created by me for a few months ago and there was no new version 0.8.4.
The new version should be evaluated.

Comment 5 fujiwara 2025-06-18 00:26:07 UTC
Sorry for leaving the incomplete project as I had been busy.

Spec URL: https://fujiwara.fedorapeople.org/ibus/bamboo/ibus-bamboo.spec
SRPM URL: https://fujiwara.fedorapeople.org/ibus/bamboo/ibus-bamboo-0.8.4~RC6-1.fc42.src.rpm

Since there is no official 0.8.4 GA release, I think it would be good to use the tag.

(In reply to Jarema from comment #4)
> Spec URL:
> https://download.copr.fedorainfracloud.org/results/jarema/ibus-bamboo/fedora-
> rawhide-x86_64/09158458-ibus-bamboo/ibus-bamboo.spec

Thank you for translating the description.

Comment 6 Fedora Review Service 2025-06-18 10:31:42 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/9178972
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2298104-ibus-bamboo/fedora-rawhide-x86_64/09178972-ibus-bamboo/fedora-review/review.txt

Found issues:

- No gcc, gcc-c++ or clang found in BuildRequires
  Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/C_and_C++/
- License file COPYING.emojione is not marked as %license
  Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuidelines/#_license_text

Please know that there can be false-positives.

---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 8 Fedora Review Service 2025-06-19 03:42:41 UTC
Created attachment 2094339 [details]
The .spec file difference from Copr build 9178972 to 9183041

Comment 9 Fedora Review Service 2025-06-19 03:42:43 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/9183041
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2298104-ibus-bamboo/fedora-rawhide-x86_64/09183041-ibus-bamboo/fedora-review/review.txt

Please take a look if any issues were found.


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 10 fujiwara 2025-06-19 11:29:42 UTC
(In reply to Fedora Review Service from comment #9)
> Review template:
> https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-
> review-2298104-ibus-bamboo/fedora-rawhide-x86_64/09183041-ibus-bamboo/fedora-
> review/review.txt
> 

Even if I specified "-buildmode=pie" for golang, rpmlint still warns "position-independent-executable-suggested":

% rpmbuild -bb --noclean ibus-bamboo.spec 
+ /usr/bin/make -O -j2 V=1 VERBOSE=1 'GOLDFLAGS=-ldflags "-w -s -X main.Version=0.8.4" -trimpath -buildmode=pie'
CGO_ENABLED=1 go build -ldflags "-w -s -X main.Version=0.8.4" -trimpath -buildmode=pie -o ibus-engine-bamboo -mod=vendor


% rpmlint ./ibus-bamboo-0.8.4~RC6-2.fc42.x86_64.rpm
ibus-bamboo.x86_64: W: position-independent-executable-suggested /usr/libexec/ibus-engine-bamboo
 1 packages and 0 specfiles checked; 0 errors, 1 warnings, 4 filtered, 0 badness; has taken 0.4 s

Comment 11 fujiwara 2025-06-19 11:37:52 UTC
(In reply to fujiwara from comment #10)
> (In reply to Fedora Review Service from comment #9)
> > Review template:
> > https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-
> > review-2298104-ibus-bamboo/fedora-rawhide-x86_64/09183041-ibus-bamboo/fedora-
> > review/review.txt
> > 
> 
> Even if I specified "-buildmode=pie" for golang, rpmlint still warns
> "position-independent-executable-suggested":

It was my failure. Seems Makefile has an error and `%{make_install}` runs build again so I need to specify `GOLDFLAGS` in both %build and %install.

Comment 13 Fedora Review Service 2025-06-19 12:46:39 UTC
Created attachment 2094379 [details]
The .spec file difference from Copr build 9183041 to 9188114

Comment 14 Fedora Review Service 2025-06-19 12:46:42 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/9188114
(failed)

Build log:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2298104-ibus-bamboo/fedora-rawhide-x86_64/09188114-ibus-bamboo/builder-live.log.gz

Please make sure the package builds successfully at least for Fedora Rawhide.

- If the build failed for unrelated reasons (e.g. temporary network
  unavailability), please ignore it.
- If the build failed because of missing BuildRequires, please make sure they
  are listed in the "Depends On" field


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 16 Fedora Review Service 2025-06-19 13:07:54 UTC
Created attachment 2094393 [details]
The .spec file difference from Copr build 9188114 to 9188166

Comment 17 Fedora Review Service 2025-06-19 13:07:56 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/9188166
(failed)

Build log:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2298104-ibus-bamboo/fedora-rawhide-x86_64/09188166-ibus-bamboo/builder-live.log.gz

Please make sure the package builds successfully at least for Fedora Rawhide.

- If the build failed for unrelated reasons (e.g. temporary network
  unavailability), please ignore it.
- If the build failed because of missing BuildRequires, please make sure they
  are listed in the "Depends On" field


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 19 fujiwara 2025-06-23 10:00:37 UTC
[fedora-review-service-build]

Comment 20 Parag AN(पराग) 2025-06-26 09:49:44 UTC
Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed



===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: If your application is a C or C++ application you must list a
     BuildRequires against gcc, gcc-c++ or clang.
[x]: Package does not contain any libtool archives (.la)
[x]: Package contains no static executables.
[x]: Rpath absent or only used for internal libs.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses
     found: "Unknown or generated", "GNU General Public License v3.0 or
     later", "*No copyright* GNU General Public License, Version 3", "MIT
     License", "GNU General Public License", "Historical Permission Notice
     and Disclaimer - sell variant and/or NTP License (legal disclaimer)",
     "BSD 2-Clause License", "*No copyright* BSD 2-Clause License", "BSD
     3-Clause License". 102 files have unknown license. Detailed output of
     licensecheck in /home/test/2298104-ibus-bamboo/licensecheck.txt
[x]: If the package is under multiple licenses, the licensing breakdown
     must be documented in the spec.
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory
     names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[-]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: No rpmlint messages.
[x]: If (and only if) the source package includes the text of the
     license(s) in its own file, then that file, containing the text of the
     license(s) for the package is included in %license.
[x]: The License field must be a valid SPDX expression.
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Package contains desktop file if it is a GUI application.
[x]: Package installs a %{name}.desktop using desktop-file-install or
     desktop-file-validate if there is such a file.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package must not depend on deprecated() packages.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 5379 bytes in 1 files.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[-]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[-]: Sources are verified with gpgverify first in %prep if upstream
     publishes signatures.
     Note: gpgverify is not used.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[x]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed
     files.
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[x]: Large data in /usr/share should live in a noarch subpackage if package
     is arched.
     Note: Arch-ed rpms have a total of 2222080 bytes in /usr/share
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: ibus-bamboo-0.8.4~RC6-5.fc43.x86_64.rpm
          ibus-bamboo-0.8.4~RC6-5.fc43.src.rpm
============================ rpmlint session starts ============================
rpmlint: 2.7.0
configuration:
    /usr/lib/python3.13/site-packages/rpmlint/configdefaults.toml
    /etc/xdg/rpmlint/fedora-spdx-licenses.toml
    /etc/xdg/rpmlint/fedora.toml
    /etc/xdg/rpmlint/scoring.toml
    /etc/xdg/rpmlint/users-groups.toml
    /etc/xdg/rpmlint/warn-on-functions.toml
rpmlintrc: [PosixPath('/tmp/tmpx2q3g999')]
checks: 32, packages: 2

 2 packages and 0 specfiles checked; 0 errors, 0 warnings, 10 filtered, 0 badness; has taken 1.3 s 




Rpmlint (installed packages)
----------------------------
/bin/sh: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8): No such file or directory
/bin/sh: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8): No such file or directory
(none): W: unable to load spellchecking dictionary for vi.
(none): W: unable to load spellchecking dictionary for vi.
============================ rpmlint session starts ============================
rpmlint: 2.7.0
configuration:
    /usr/lib/python3.14/site-packages/rpmlint/configdefaults.toml
    /etc/xdg/rpmlint/fedora-spdx-licenses.toml
    /etc/xdg/rpmlint/fedora.toml
    /etc/xdg/rpmlint/scoring.toml
    /etc/xdg/rpmlint/users-groups.toml
    /etc/xdg/rpmlint/warn-on-functions.toml
checks: 32, packages: 1

ibus-bamboo.x86_64: W: unused-direct-shlib-dependency /usr/libexec/ibus-engine-bamboo /lib64/libz.so.1
ibus-bamboo.x86_64: W: unused-direct-shlib-dependency /usr/libexec/ibus-engine-bamboo /lib64/libpangocairo-1.0.so.0
ibus-bamboo.x86_64: W: unused-direct-shlib-dependency /usr/libexec/ibus-engine-bamboo /lib64/libpango-1.0.so.0
ibus-bamboo.x86_64: W: unused-direct-shlib-dependency /usr/libexec/ibus-engine-bamboo /lib64/libharfbuzz.so.0
ibus-bamboo.x86_64: W: unused-direct-shlib-dependency /usr/libexec/ibus-engine-bamboo /lib64/libatk-1.0.so.0
ibus-bamboo.x86_64: W: unused-direct-shlib-dependency /usr/libexec/ibus-engine-bamboo /lib64/libcairo-gobject.so.2
ibus-bamboo.x86_64: W: unused-direct-shlib-dependency /usr/libexec/ibus-engine-bamboo /lib64/libcairo.so.2
ibus-bamboo.x86_64: W: unused-direct-shlib-dependency /usr/libexec/ibus-engine-bamboo /lib64/libgdk_pixbuf-2.0.so.0
ibus-bamboo.x86_64: W: unused-direct-shlib-dependency /usr/libexec/ibus-engine-bamboo /lib64/libgio-2.0.so.0
ibus-bamboo.x86_64: W: unused-direct-shlib-dependency /usr/libexec/ibus-engine-bamboo /lib64/libglib-2.0.so.0
ibus-bamboo.x86_64: W: unused-direct-shlib-dependency /usr/libexec/ibus-engine-bamboo /lib64/libresolv.so.2
 1 packages and 0 specfiles checked; 0 errors, 11 warnings, 4 filtered, 0 badness; has taken 0.3 s 



Source checksums
----------------
https://github.com/BambooEngine/ibus-bamboo/archive/refs/tags/v0.8.4-RC6.tar.gz#/ibus-bamboo-0.8.4-RC6.tar.gz :
  CHECKSUM(SHA256) this package     : 610031553a033cde9f0c8bb08fd8578763611f24964566973997d7ae57a3c99e
  CHECKSUM(SHA256) upstream package : 610031553a033cde9f0c8bb08fd8578763611f24964566973997d7ae57a3c99e


Requires
--------
ibus-bamboo (rpmlib, GLIBC filtered):
    /bin/sh
    gtk3
    ibus
    libX11.so.6()(64bit)
    libXtst.so.6()(64bit)
    libatk-1.0.so.0()(64bit)
    libc.so.6()(64bit)
    libcairo-gobject.so.2()(64bit)
    libcairo.so.2()(64bit)
    libgdk-3.so.0()(64bit)
    libgdk_pixbuf-2.0.so.0()(64bit)
    libgio-2.0.so.0()(64bit)
    libglib-2.0.so.0()(64bit)
    libgobject-2.0.so.0()(64bit)
    libgtk-3.so.0()(64bit)
    libharfbuzz.so.0()(64bit)
    libpango-1.0.so.0()(64bit)
    libpangocairo-1.0.so.0()(64bit)
    libresolv.so.2()(64bit)
    libz.so.1()(64bit)
    rtld(GNU_HASH)



Provides
--------
ibus-bamboo:
    application()
    application(ibus-setup-Bamboo.desktop)
    ibus-bamboo
    ibus-bamboo(x86-64)



Generated by fedora-review 0.10.0 (e79b66b) last change: 2023-07-24
Command line :/usr/bin/fedora-review -b 2298104 -m fedora-rawhide-x86_64
Buildroot used: fedora-rawhide-x86_64
Active plugins: Shell-api, C/C++, Generic
Disabled plugins: fonts, SugarActivity, Python, R, Perl, Ocaml, Haskell, PHP, Java
Disabled flags: EXARCH, EPEL6, EPEL7, DISTTAG, BATCH


Looks good to me.
APPROVED.

Comment 21 Fedora Admin user for bugzilla script actions 2025-06-27 01:01:01 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/ibus-bamboo

Comment 22 fujiwara 2025-06-27 03:53:38 UTC
@Jarema:

I wish to get your fedora account name to add you as the project committer.
https://src.fedoraproject.org/rpms/ibus-bamboo
https://src.fedoraproject.org/user/fujiwara
We can contact in chat rooms #i18n:fedoraproject.org or #ibus:libera.chat or with email.

It would be great if you could work on some build issues in the upstream.
1. libexecdir build option likes `./configure --libexecdir=/usr/libexec` for bamboo.xml, ibus-setup-Bamboo.desktop, $(ibus_e_name).
2. Separate `make build` and `make install`. It would be good to depend $(ibus_e_name) instead of build.
3. Fix `make t` not to access the network.

Comment 23 Fedora Update System 2025-06-27 04:20:01 UTC
FEDORA-2025-123d611b20 (ibus-bamboo-0.8.4~RC6-1.fc41) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-123d611b20

Comment 24 Fedora Update System 2025-06-27 04:20:02 UTC
FEDORA-2025-b6eed0f4ca (ibus-bamboo-0.8.4~RC6-1.fc42) has been submitted as an update to Fedora 42.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-b6eed0f4ca

Comment 25 Fedora Update System 2025-06-28 02:08:29 UTC
FEDORA-2025-b6eed0f4ca has been pushed to the Fedora 42 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-b6eed0f4ca`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-b6eed0f4ca

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 26 Fedora Update System 2025-06-28 02:33:34 UTC
FEDORA-2025-123d611b20 has been pushed to the Fedora 41 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-123d611b20`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-123d611b20

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 27 Fedora Update System 2025-07-06 01:10:32 UTC
FEDORA-2025-b6eed0f4ca (ibus-bamboo-0.8.4~RC6-1.fc42) has been pushed to the Fedora 42 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 28 Fedora Update System 2025-07-06 02:42:40 UTC
FEDORA-2025-123d611b20 (ibus-bamboo-0.8.4~RC6-1.fc41) has been pushed to the Fedora 41 stable repository.
If problem still persists, please make note of it in this bug report.