parinzee / linux-surface-overlay

Gentoo Overlay with surface kernel and other utilities from linux-surface repo.
https://Parinz.github.io/linux-surface-overlay
BSD 3-Clause "New" or "Revised" License
27 stars 3 forks source link

Emerging [BUG] #10

Open danielgomez3 opened 10 months ago

danielgomez3 commented 10 months ago

Describe the bug I have trouble emerging iptsd1.2.0 and surface-control-9999 I have a Surface pro 7. I've gotten this all to work perfectly on an arch linux system. I would love to help if I can make this work, or maintain if needed.

To Reproduce Steps to reproduce the behavior: ❯ sudo emerge -a iptsd surface-control

Expected behavior A clear and concise description of what you expected to happen.

A complete build. But it stops with erros.

Additional context Please provide ouput from the gentoo messages that come up when the build fails

❯ sudo emerge -a iptsd                

 * IMPORTANT: 1 news items need reading for repository 'gentoo-zh'.
 * IMPORTANT: 16 news items need reading for repository 'gentoo'.
 * Use eselect news read to view new items.

These are the packages that would be merged, in order:

Calculating dependencies... done!
Dependency resolution took 1.36 s (backtrack: 0/20).

[ebuild  N    ~] sys-firmware/iptsd-1.2.0 

Would you like to merge these packages? [Yes/No] 

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) sys-firmware/iptsd-1.2.0::gentoo-linux-surface-overlay
>>> Unpacking source...
>>> Unpacking iptsd-1.2.0.tar.gz to /var/tmp/portage/sys-firmware/iptsd-1.2.0/work
>>> Source unpacked in /var/tmp/portage/sys-firmware/iptsd-1.2.0/work
>>> Preparing source in /var/tmp/portage/sys-firmware/iptsd-1.2.0/work/iptsd-1.2.0 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/sys-firmware/iptsd-1.2.0/work/iptsd-1.2.0 ...
meson setup --libdir lib64 --localstatedir /var/lib --prefix /usr --sysconfdir /etc --wrap-mode nodownload --build.pkg-config-path /usr/share/pkgconfig --pkg-config-path /usr/share/pkgconfig --native-file /var/tmp/portage/sys-firmware/iptsd-1.2.0/temp/meson.x86_64-pc-linux-gnu.amd64.ini -Db_pch=false -Dwerror=false -Db_lto=false --buildtype plain /var/tmp/portage/sys-firmware/iptsd-1.2.0/work/iptsd-1.2.0 /var/tmp/portage/sys-firmware/iptsd-1.2.0/work/iptsd-1.2.0-build
The Meson build system
Version: 1.3.0
Source dir: /var/tmp/portage/sys-firmware/iptsd-1.2.0/work/iptsd-1.2.0
Build dir: /var/tmp/portage/sys-firmware/iptsd-1.2.0/work/iptsd-1.2.0-build
Build type: native build
Project name: iptsd
Project version: 1.2.0
C compiler for the host machine: x86_64-pc-linux-gnu-gcc (gcc 13.2.1 "x86_64-pc-linux-gnu-gcc (Gentoo 13.2.1_p20230826 p7) 13.2.1 20230826")
C linker for the host machine: x86_64-pc-linux-gnu-gcc ld.bfd 2.41
C++ compiler for the host machine: x86_64-pc-linux-gnu-g++ (gcc 13.2.1 "x86_64-pc-linux-gnu-g++ (Gentoo 13.2.1_p20230826 p7) 13.2.1 20230826")
C++ linker for the host machine: x86_64-pc-linux-gnu-g++ ld.bfd 2.41
Host machine cpu family: x86_64
Host machine cpu: x86_64
Configuring iptsd@.service using configuration
Configuring 50-iptsd.rules using configuration
Found pkg-config: YES (/usr/bin/x86_64-pc-linux-gnu-pkg-config) 1.8.1
Run-time dependency systemd found: YES 254
Run-time dependency udev found: YES 254
Configuring configure.h using configuration
Compiler for C++ supports arguments -Wlogical-op: YES 
Compiler for C++ supports arguments -Wmissing-include-dirs: YES 
Compiler for C++ supports arguments -Winit-self: YES 
Compiler for C++ supports arguments -Wimplicit-fallthrough: YES 
Compiler for C++ supports arguments -D_GLIBCXX_ASSERTIONS: YES 
Compiler for C++ supports arguments -DSPDLOG_FMT_EXTERNAL: YES 
Run-time dependency cli11 found: YES 2.3.2
Run-time dependency eigen3 found: YES 3.4.0
Run-time dependency fmt found: YES 9.1.0
Found CMake: /usr/bin/cmake (3.27.9)
Run-time dependency inireader found: NO (tried pkgconfig and cmake)
Looking for a fallback subproject for the dependency INIReader

src/meson.build:70:7: ERROR: Automatic wrap-based subproject downloading is disabled

A full log can be found at /var/tmp/portage/sys-firmware/iptsd-1.2.0/work/iptsd-1.2.0-build/meson-logs/meson-log.txt
 * ERROR: sys-firmware/iptsd-1.2.0::gentoo-linux-surface-overlay failed (configure phase):
 *   (no error message)
 * 
 * Call stack:
 *     ebuild.sh, line  136:  Called src_configure
 *   environment, line 2282:  Called meson_src_configure
 *   environment, line 1714:  Called die
 * The specific snippet of code:
 *       "${mesonargs[@]}" ) || die
 * 
 * If you need support, post the output of `emerge --info '=sys-firmware/iptsd-1.2.0::gentoo-linux-surface-overlay'`,
 * the complete build log and the output of `emerge -pqv '=sys-firmware/iptsd-1.2.0::gentoo-linux-surface-overlay'`.
 * The complete build log is located at '/var/tmp/portage/sys-firmware/iptsd-1.2.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-firmware/iptsd-1.2.0/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-firmware/iptsd-1.2.0/work/iptsd-1.2.0'
 * S: '/var/tmp/portage/sys-firmware/iptsd-1.2.0/work/iptsd-1.2.0'

>>> Failed to emerge sys-firmware/iptsd-1.2.0, Log file:

>>>  '/var/tmp/portage/sys-firmware/iptsd-1.2.0/temp/build.log'

 * Messages for package sys-firmware/iptsd-1.2.0:

 * ERROR: sys-firmware/iptsd-1.2.0::gentoo-linux-surface-overlay failed (configure phase):
 *   (no error message)
 * 
 * Call stack:
 *     ebuild.sh, line  136:  Called src_configure
 *   environment, line 2282:  Called meson_src_configure
 *   environment, line 1714:  Called die
 * The specific snippet of code:
 *       "${mesonargs[@]}" ) || die
 * 
 * If you need support, post the output of `emerge --info '=sys-firmware/iptsd-1.2.0::gentoo-linux-surface-overlay'`,
 * the complete build log and the output of `emerge -pqv '=sys-firmware/iptsd-1.2.0::gentoo-linux-surface-overlay'`.
 * The complete build log is located at '/var/tmp/portage/sys-firmware/iptsd-1.2.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-firmware/iptsd-1.2.0/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-firmware/iptsd-1.2.0/work/iptsd-1.2.0'
 * S: '/var/tmp/portage/sys-firmware/iptsd-1.2.0/work/iptsd-1.2.0'

~ took 8s 
❯ 

Here is the result of emerging surface-control:

❯ sudo emerge -a surface-control
...

>>> Install sys-apps/surface-control-9999 into /var/tmp/portage/sys-apps/surface-control-9999/image
 * cargo install --path ./ --root /var/tmp/portage/sys-apps/surface-control-9999/image/usr
  Installing surface v0.4.6 (/var/tmp/portage/sys-apps/surface-control-9999/work/surface-control-9999)
error: failed to compile `surface v0.4.6 (/var/tmp/portage/sys-apps/surface-control-9999/work/surface-control-9999)`, intermediate artifacts can be found at `/var/tmp/portage/sys-apps/surface-control-9999/work/surface-control-9999/target`.
To reuse those artifacts with a future compilation, set the environment variable `CARGO_TARGET_DIR` to that path.

Caused by:
  failed to get `sdtx` as a dependency of package `surface v0.4.6 (/var/tmp/portage/sys-apps/surface-control-9999/work/surface-control-9999)`

Caused by:
  failed to load source for dependency `sdtx`

Caused by:
  Unable to update https://github.com/linux-surface/libsurfacedtx?tag=v0.1.4

Caused by:
  failed to lookup reference in preexisting repository, and can't check for updates in offline mode (--offline)

Caused by:
  failed to find tag `v0.1.4`

Caused by:
  reference 'refs/remotes/origin/tags/v0.1.4' not found; class=Reference (4); code=NotFound (-3)
 * ERROR: sys-apps/surface-control-9999::gentoo-linux-surface-overlay failed (install phase):
 *   cargo install failed
 * 
 * Call stack:
 *     ebuild.sh, line  136:  Called src_install
 *   environment, line 2504:  Called cargo_src_install
 *   environment, line 1065:  Called die
 * The specific snippet of code:
 *       "${@}" || die "cargo install failed";
 * 
 * If you need support, post the output of `emerge --info '=sys-apps/surface-control-9999::gentoo-linux-surface-overlay'`,
 * the complete build log and the output of `emerge -pqv '=sys-apps/surface-control-9999::gentoo-linux-surface-overlay'`.
 * The complete build log is located at '/var/tmp/portage/sys-apps/surface-control-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-apps/surface-control-9999/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-apps/surface-control-9999/work/surface-control-9999'
 * S: '/var/tmp/portage/sys-apps/surface-control-9999/work/surface-control-9999'

>>> Failed to emerge sys-apps/surface-control-9999, Log file:

>>>  '/var/tmp/portage/sys-apps/surface-control-9999/temp/build.log'

 * Messages for package sys-apps/surface-control-9999:

 * ERROR: sys-apps/surface-control-9999::gentoo-linux-surface-overlay failed (install phase):
 *   cargo install failed
 * 
 * Call stack:
 *     ebuild.sh, line  136:  Called src_install
 *   environment, line 2504:  Called cargo_src_install
 *   environment, line 1065:  Called die
 * The specific snippet of code:
 *       "${@}" || die "cargo install failed";
 * 
 * If you need support, post the output of `emerge --info '=sys-apps/surface-control-9999::gentoo-linux-surface-overlay'`,
 * the complete build log and the output of `emerge -pqv '=sys-apps/surface-control-9999::gentoo-linux-surface-overlay'`.
 * The complete build log is located at '/var/tmp/portage/sys-apps/surface-control-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-apps/surface-control-9999/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-apps/surface-control-9999/work/surface-control-9999'
 * S: '/var/tmp/portage/sys-apps/surface-control-9999/work/surface-control-9999'

~ took 27s 
danielgomez3 commented 10 months ago

Please let me know if more information needed, or if I can offer help to maintain or solve issues. I've noticed that some of the build tools, like dev-build/ninja are different in the gentoo-surface-overlay than the one supplied by gentoo. So perhaps things are just outdated? I'd love to help.

jasisonee commented 8 months ago

You are using gentoo-linux-surface-overlay. This is a different overlay and hasn't been updated in 3 years. However I have updated all the packages and opened a pull request.

If you are looking for the most up to date packages you may add my fork manually in the mean time. The command would be eselect repository add linux-surface-overlay git https://github.com/jasisonee/linux-surface-overlay.git