chromebrew / chromebrew

Package manager for Chrome OS
https://chromebrew.github.io
GNU General Public License v3.0
2.31k stars 375 forks source link

šŸž `gem pristine debug` doesn't work #10465

Closed antoine2711 closed 2 weeks ago

antoine2711 commented 3 weeks ago

Describe the bug gem pristine debug doesn't work

To Reproduce Steps to reproduce the behavior:

  1. crew upgrade

My environment was (crosh, bash or VT-2): crosh

  1. I executed the command(s) below:

      gem pristine debug --version 1.9.1

    Output:

chronos@localhost / $ gem pristine debug --version 1.9.1
Restoring gems to pristine condition...
Building native extensions. This could take a while...
ERROR:  While executing gem ... (Gem::Ext::BuildError)
    ERROR: Failed to build gem native extension.

    current directory: /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.1/ext/debug
/usr/local/bin/ruby extconf.rb
creating Makefile

current directory: /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.1/ext/debug
make DESTDIR\= sitearchdir\=./.gem.20240912-22257-jrzi1o sitelibdir\=./.gem.20240912-22257-jrzi1o clean
current directory: /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.1/ext/debug
make DESTDIR\= sitearchdir\=./.gem.20240912-22257-jrzi1o sitelibdir\=./.gem.20240912-22257-jrzi1o
make failedNo such file or directory - make

Gem files will remain installed in /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.1 for inspection.
Results logged to /usr/local/lib64/ruby/gems/3.3.0/extensions/x86_64-linux/3.3.0/debug-1.9.1/gem_make.out
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/ext/builder.rb:102:in `rescue in run'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/ext/builder.rb:90:in `run'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/ext/builder.rb:51:in `block in make'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/ext/builder.rb:43:in `each'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/ext/builder.rb:43:in `make'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/ext/ext_conf_builder.rb:42:in `build'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/ext/builder.rb:193:in `build_extension'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/ext/builder.rb:227:in `block in build_extensions'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/ext/builder.rb:224:in `each'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/ext/builder.rb:224:in `build_extensions'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/installer.rb:853:in `build_extensions'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/installer.rb:330:in `install'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/commands/pristine_command.rb:201:in `block in execute'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/commands/pristine_command.rb:137:in `each'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/commands/pristine_command.rb:137:in `execute'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/command.rb:326:in `invoke_with_build_args'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/command_manager.rb:255:in `invoke_command'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/command_manager.rb:194:in `process_args'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/command_manager.rb:152:in `run'
        /usr/local/lib64/ruby/site_ruby/3.3.0/rubygems/gem_runner.rb:56:in `run'
        /usr/local/bin/gem:12:in `<main>' 

System Information

Ignoring debug-1.9.1 because its extensions are not built. Try: gem pristine debug --version 1.9.1 /usr/local/bin/crew:1799:

:The last update was 22 min, 33 seconds ago.

Expand - Architecture: `x86_64` (`x86_64`) - Processor vendor: `GenuineIntel` - User space: `64-bit` - Chromebrew Kernel version: `6.6` - Chromebrew Running in Container: `false` - Chromebrew version: `1.52.2` - Chromebrew prefix: `/usr/local` - Chromebrew libdir: `/usr/local/lib64` - Last update in local repository: 2a9a9a73d `webkit2gtk_4_1 => 2.44.3-icu75.1 (#10459) (8 hours ago)` - OS variant: `Chrome OS` - OS version: `brya-release/R128-15964.41.0` - OS channel: `stable-channel`

Regards, Antoine

satmandu commented 3 weeks ago

Does gem cleanup work for you?

antoine2711 commented 3 weeks ago

Does gem cleanup work for you?

Well @satmandu, I get this, but still can run after the gem pristine debug.

chronos@localhost /etc $ gem cleanup
Cleaning up installed gems...
Attempting to uninstall rubygems-update-3.5.13
Successfully uninstalled rubygems-update-3.5.13
Attempting to uninstall rubygems-update-3.5.17
Successfully uninstalled rubygems-update-3.5.17
Attempting to uninstall rss-0.3.0
Successfully uninstalled rss-0.3.0
Attempting to uninstall rexml-3.2.8
Successfully uninstalled rexml-3.2.8
Clean up complete

Regards, Antoine

satmandu commented 3 weeks ago

Does it fix things?

satmandu commented 2 weeks ago

Also gem cleanup debug might also help remove old versions...

antoine2711 commented 2 weeks ago

Does it fix things? Well, I canā€™t say I see problem with my crew. Iā€™m reporting it because it saw this will doing crew update && crew upgrade.

Also gem cleanup debug might also help remove old versions... DIdnā€™t change anything.

chronos@localhost /etc $ crew update && crew upgrade 
Ignoring debug-1.9.1 because its extensions are not built. Try: gem pristine debug --version 1.9.1
remote: Enumerating objects: 28, done.
remote: Counting objects: 100% (28/28), done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 17 (delta 14), reused 10 (delta 10), pack-reused 0 (from 0)
Unpacking objects: 100% (17/17), 4.46 KiB | 456.00 KiB/s, done.
From https://github.com/chromebrew/chromebrew
 * branch                master     -> FETCH_HEAD
HEAD is now at df6556729 Signal_desktop 7.23.0 => 7.24.0 (#10466)
Package lists, crew, and library updated.
/usr/local/lib/crew/lib/const.rb:46: warning: already initialized constant CREW_IN_CONTAINER
/usr/local/lib/crew/lib/const.rb:46: warning: previous definition of CREW_IN_CONTAINER was here
Checking for package updates...
Your software is up to date.
Ignoring debug-1.9.1 because its extensions are not built. Try: gem pristine debug --version 1.9.1
Your software is already up to date.

Regards, Antoine

satmandu commented 2 weeks ago

Hmm. Does this do anything?

gem uninstall debug --version '<1.9.2'
crew install ruby_debug
Zopolis4 commented 2 weeks ago

Do you have buildessential installed? If not, does installing it fix the problem?

antoine2711 commented 2 weeks ago

Hmm. Does this do anything?

gem uninstall debug --version '<1.9.2'
crew install ruby_debug

I get this:

chronos@localhost /etc $ gem uninstall debug --version '<1.9.2'
Remove executables:
        rdbg

in addition to the gem? [Yn]  y
Removing rdbg
Successfully uninstalled debug-1.9.1
chronos@localhost /etc $ crew install ruby_debug
ruby_debug: The debug library provides debugging functionality to Ruby (MRI) 2.7 and later.
https://github.com/ruby/debug
Version: 1.9.2-ruby-3.3
License: MIT
Performing pre-flight checks...
Performing pre-install...
Fetching debug-1.9.2.gem
Building native extensions. This could take a while...
ERROR:  Error installing debug:
        ERROR: Failed to build gem native extension.

    current directory: /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.2/ext/debug
/usr/local/bin/ruby extconf.rb
creating Makefile

current directory: /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.2/ext/debug
make DESTDIR\= sitearchdir\=./.gem.20240912-170660-65hr2z sitelibdir\=./.gem.20240912-170660-65hr2z clean
current directory: /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.2/ext/debug
make DESTDIR\= sitearchdir\=./.gem.20240912-170660-65hr2z sitelibdir\=./.gem.20240912-170660-65hr2z
make failedNo such file or directory - make

Gem files will remain installed in /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.2 for inspection.
Results logged to /usr/local/lib64/ruby/gems/3.3.0/extensions/x86_64-linux/3.3.0/debug-1.9.2/gem_make.out
Command "bash -c gem install -N debug --conservative" failed, retrying with "-j1"...
Building native extensions. This could take a while...
ERROR:  Error installing debug:
        ERROR: Failed to build gem native extension.

    current directory: /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.2/ext/debug
/usr/local/bin/ruby extconf.rb
creating Makefile

current directory: /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.2/ext/debug
make DESTDIR\= sitearchdir\=./.gem.20240912-170680-8u2ugf sitelibdir\=./.gem.20240912-170680-8u2ugf clean
current directory: /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.2/ext/debug
make DESTDIR\= sitearchdir\=./.gem.20240912-170680-8u2ugf sitelibdir\=./.gem.20240912-170680-8u2ugf
make failedNo such file or directory - make

Gem files will remain installed in /usr/local/lib64/ruby/gems/3.3.0/gems/debug-1.9.2 for inspection.
Results logged to /usr/local/lib64/ruby/gems/3.3.0/extensions/x86_64-linux/3.3.0/debug-1.9.2/gem_make.out
/usr/local/lib/crew/lib/package.rb:386:in `system': Command failed with exit 1: bash (RuntimeError)
        from /usr/local/lib/crew/lib/package.rb:386:in `system'
        from /usr/local/lib/crew/lib/buildsystems/ruby.rb:21:in `install'
        from /usr/local/bin/crew:1294:in `install'
        from /usr/local/bin/crew:1117:in `resolve_dependencies_and_install'
        from /usr/local/bin/crew:1695:in `block in install_command'
        from /usr/local/bin/crew:1680:in `each'
        from /usr/local/bin/crew:1680:in `install_command'
        from /usr/local/bin/crew:1802:in `<main>'

Regards, Antoine

antoine2711 commented 2 weeks ago

Do you have buildessential installed? If not, does installing it fix the problem?

No @Zopolis4. But yes, it seams to have got ride of all errors. Thanks.

Regards, Antoine

P.S. Here's my log for reference.

chronos@localhost /etc $ crew list installed | grep build
chronos@localhost /etc $ crew install buildessential
buildessential: A collection of tools essential to compile and build software.
SKIP
Version: 1.36
License: GPL-3+
Performing pre-flight checks...
The following packages also need to be installed: 
glibc_dev237 glibc_dev isl mpfr mpc gcc_dev linuxheaders make gobject_introspection shared_mime_info glib pkg_config binutils mold findutils autoconf automake bison diffutils libtool perl_xml_parser intltool patch sed xorg_macros valgrind compressdoc doxygen help2man gtk_doc perl_locale_messages perl_text_unidecode perl_unicode_eastasianwidth texinfo cppdap jsoncpp librhash libuv cmake gawk llvm18_lib ninja samurai mesonbuild libcap py3_pyelftools pax_utils py3_libxml2 gnu_time rdfind upx ruby_debug ruby_pry_byebug xdg_base ruby_rubocop ruby_ruby_libversion py3_cfgv py3_identify py3_nodeenv py3_pyyaml py3_distlib py3_platformdirs py3_six py3_virtualenv py3_pre_commit
Proceed (YES/no)?

glibc_dev237: glibc: everything except what is in glibc_lib
Precompiled binary available, downloading...
Glibc_dev237 archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
glibc_dev: glibc: everything except what is in glibc_lib
isl: Integer Set Library for manipulating sets and relations of integer points bounded by linear constraints
Precompiled binary available, downloading...
Isl archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
mpfr: The MPFR library is a C library for multiple-precision floating-point computations with correct rounding.
Precompiled binary available, downloading...
Mpfr archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
mpc: Gnu Mpc is a C library for the arithmetic of complex numbers with arbitrarily high precision and correct rounding of the result.
Precompiled binary available, downloading...
Mpc archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
gcc_dev: The GNU Compiler Collection: Everything (excepting libraries aside from libgccjit)
Precompiled binary available, downloading...
Gcc_dev archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
linuxheaders: Linux headers for Chrome OS.
Precompiled binary available, downloading...
Linuxheaders archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
make: GNU Make is a tool which controls the generation of executables and other non-source files of a program from the program's source files.
Precompiled binary available, downloading...
Make archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
gobject_introspection: GObject introspection is a middleware layer between C libraries (using GObject) and language bindings.
Precompiled binary available, downloading...
Gobject_introspection archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
shared_mime_info: The shared-mime-info package contains the core database of common types and the update-mime-database command used to extend it.
Precompiled binary available, downloading...
Shared_mime_info archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
glib: GLib provides the core application building blocks for libraries and applications written in C.
Precompiled binary available, downloading...
Glib archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
pkg_config: pkg-config is a helper tool used when compiling applications and libraries.
Precompiled binary available, downloading...
Pkg_config archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
binutils: The GNU Binutils are a collection of binary tools.
Precompiled binary available, downloading...
Binutils archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
mold: A Modern Linker
Precompiled binary available, downloading...
Mold archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
findutils: the basic directory searching utilities of the GNU operating system
Precompiled binary available, downloading...
Findutils archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
autoconf: Autoconf is an extensible package of M4 macros that produce shell scripts to automatically configure software source code packages.
Precompiled binary available, downloading...
Autoconf archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
automake: Automake is a tool for automatically generating Makefile.in files compliant with the GNU Coding Standards.
Precompiled binary available, downloading...
Automake archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
bison: Bison is a general-purpose parser generator that converts an annotated context-free grammar into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables.
Precompiled binary available, downloading...
Bison archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
diffutils: GNU Diffutils is a package of several programs related to finding differences between files.
Precompiled binary available, downloading...
Diffutils archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
libtool: GNU libtool is a generic library support script. Libtool hides the complexity of using shared libraries behind a consistent, portable interface.
Precompiled binary available, downloading...
Libtool archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
perl_xml_parser: Perl XML::Parser - A perl module for parsing XML documents
Precompiled binary available, downloading...
Perl_xml_parser archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
intltool: intltool is a set of tools to centralize translation of many different file formats using GNU gettext-compatible PO files.
Precompiled binary available, downloading...
Intltool archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
patch: Patch takes a patch file containing a difference listing produced by the diff program and applies those differences to one or more original files, producing patched versions.
Precompiled binary available, downloading...
Patch archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
sed: sed (stream editor) is a non-interactive command-line text editor.
Precompiled binary available, downloading...
Sed archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
xorg_macros: GNU autoconf macros shared across X.Org projects
Precompiled binary available, downloading...
Xorg_macros archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
valgrind: Valgrind is an instrumentation framework for building dynamic analysis tools.
Precompiled binary available, downloading...
Valgrind archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
compressdoc: Compress all man pages in a hierarchy and update symlinks. Supports a variety of compression algorithms.
Precompiled binary available, downloading...
Compressdoc archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
doxygen: Doxygen is the de facto standard tool for generating documentation from annotated C++ sources, but it also supports other popular programming languages such as C, Objective-C, C#, PHP, Java, Python, IDL (Corba, Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL, Tcl, and to some extent D.
Precompiled binary available, downloading...
Doxygen archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
help2man: help2man produces simple manual pages from the '--help' and '--version' output of other commands.
Precompiled binary available, downloading...
Help2man archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
gtk_doc: Documentation tool for public library API
Precompiled binary available, downloading...
Gtk_doc archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
perl_locale_messages: Perl Locale::Messages - Gettext Like Message Retrieval
Precompiled binary available, downloading...
Perl_locale_messages archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
perl_text_unidecode: Perl Text::Unidecode -- plain ASCII transliterations of Unicode text.
Precompiled binary available, downloading...
Perl_text_unidecode archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
perl_unicode_eastasianwidth: Perl Unicode::EastAsianWidth - East Asian Width properties.
Precompiled binary available, downloading...
Perl_unicode_eastasianwidth archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
texinfo: Texinfo is the official documentation format of the GNU project.
Precompiled binary available, downloading...
Texinfo archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
cppdap: C++ library for the Debug Adapter Protocol
Precompiled binary available, downloading...
Cppdap archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
jsoncpp: A C++ library for interacting with JSON.
Precompiled binary available, downloading...
Jsoncpp archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
librhash: RHash is a console utility for computing and verifying hash sums of files.
Precompiled binary available, downloading...
Librhash archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
libuv: libuv is a multi-platform support library with a focus on asynchronous I/O.
Precompiled binary available, downloading...
Libuv archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
cmake: CMake is an open-source, cross-platform family of tools designed to build, test and package software.
Precompiled binary available, downloading...
Cmake archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
gawk: The gawk utility interprets a special-purpose programming language that makes it possible to handle simple data-reformatting jobs with just a few lines of code.
Precompiled binary available, downloading...
Gawk archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
llvm18_lib: LibLLVM and llvm-strip
Precompiled binary available, downloading...
Llvm18_lib archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
ninja: a small build system with a focus on speed
Precompiled binary available, downloading...
Ninja archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
samurai: Samurai is a ninja compatible build tool written in C.
Precompiled binary available, downloading...
Samurai archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
mesonbuild: Meson is an open source build system meant to be both extremely fast and user friendly.
Precompiled binary available, downloading...
Mesonbuild archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
libcap: Libcap implements the user-space interfaces to the POSIX 1003.1e capabilities available in Linux kernels.
Precompiled binary available, downloading...
Libcap archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
py3_pyelftools: Pure-Python library for parsing and analyzing ELF files and DWARF debugging information.
Precompiled binary available, downloading...
Py3_pyelftools archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
pax_utils: ELF utils that can check files for security relevant properties
Precompiled binary available, downloading...
Pax_utils archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
py3_libxml2: Libxml2-python provides access to libxml2 and libxslt in Python.
Precompiled binary available, downloading...
Py3_libxml2 archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
gnu_time: Utility for monitoring a programs use of system resources
Precompiled binary available, downloading...
Gnu_time archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
rdfind: Redundant data find - a program that finds duplicate files.
Precompiled binary available, downloading...
Rdfind archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
upx: Extendable, high-performance executable packer for several executable formats
Precompiled binary available, downloading...
Upx archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 9 files.
Now have 9 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 2657807 bytes or 3 MiB
Removed 9 files due to unique sizes from list. 0 files left.
Now eliminating candidates based on first bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
ruby_debug: The debug library provides debugging functionality to Ruby (MRI) 2.7 and later.
Performing pre-install...
Building native extensions. This could take a while...
Successfully installed debug-1.9.2
1 gem installed
Cleaning up installed gems...
Clean up complete
ruby_pry_byebug: Adds step-by-step debugging and stack navigation capabilities to pry using byebug.
Performing pre-install...
Fetching pry-byebug-3.10.1.gem
Fetching byebug-11.1.3.gem
Building native extensions. This could take a while...
Successfully installed byebug-11.1.3
Successfully installed pry-byebug-3.10.1
2 gems installed
Cleaning up installed gems...
Clean up complete
xdg_base: XDG Base Directory Specification Configuration
Precompiled binary available, downloading...
Xdg_base archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 1 files.
Now have 1 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 422 bytes or 422 B
Removed 1 files due to unique sizes from list. 0 files left.
Now eliminating candidates based on first bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
ruby_rubocop: A Ruby static code analyzer and formatter
Performing pre-install...
Fetching unicode-display_width-2.5.0.gem
Fetching ruby-progressbar-1.13.0.gem
Fetching ast-2.4.2.gem
Fetching parser-3.3.5.0.gem
Fetching rubocop-ast-1.32.3.gem
Fetching regexp_parser-2.9.2.gem
Fetching rainbow-3.1.1.gem
Fetching parallel-1.26.3.gem
Fetching rubocop-1.66.1.gem
Fetching language_server-protocol-3.17.0.3.gem
Successfully installed unicode-display_width-2.5.0
Successfully installed ruby-progressbar-1.13.0
Successfully installed ast-2.4.2
Successfully installed parser-3.3.5.0
Successfully installed rubocop-ast-1.32.3
Successfully installed regexp_parser-2.9.2
Successfully installed rainbow-3.1.1
Successfully installed parallel-1.26.3
Successfully installed language_server-protocol-3.17.0.3
Successfully installed rubocop-1.66.1
10 gems installed
Cleaning up installed gems...
Clean up complete
ruby_ruby_libversion: Ruby bindings for libversion.
Performing pre-install...
Fetching ruby-libversion-1.0.0.gem
Building native extensions. This could take a while...
Successfully installed ruby-libversion-1.0.0
1 gem installed
Cleaning up installed gems...
Clean up complete
py3_cfgv: Validate configuration and produce human readable error messages.
Skipping source download...
Preconfiguring package...
ERROR: No such key - local.index-url
Writing to /home/chronos/user/.config/pip/pip.conf
ERROR: No such key - local.extra-index-url
Writing to /home/chronos/user/.config/pip/pip.conf
ERROR: No such key - local.trusted-host
Writing to /home/chronos/user/.config/pip/pip.conf
Installing cfgv python module. This may take a while...
Additional pre_configure_options being used: <no pre_configure_options>
Collecting cfgv==3.4.0
  Downloading cfgv-3.4.0-py2.py3-none-any.whl.metadata (8.5 kB)
Downloading cfgv-3.4.0-py2.py3-none-any.whl (7.2 kB)
Installing collected packages: cfgv
Successfully installed cfgv-3.4.0
Checking for FHS3 compliance...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 10 files.
Now have 10 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 44601 bytes or 44 KiB
Removed 10 files due to unique sizes from list. 0 files left.
Now eliminating candidates based on first bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 8 files.
Now have 8 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 43795 bytes or 43 KiB
Removed 8 files due to unique sizes from list. 0 files left.
Now eliminating candidates based on first bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
py3_identify: File identification library for Python
Skipping source download...
Preconfiguring package...
Installing identify python dependencies with pip...
Installing identify python module. This may take a while...
Additional pre_configure_options being used: <no pre_configure_options>
Collecting identify==2.6.0
  Downloading identify-2.6.0-py2.py3-none-any.whl.metadata (4.4 kB)
Downloading identify-2.6.0-py2.py3-none-any.whl (98 kB)
Installing collected packages: identify
Successfully installed identify-2.6.0
Checking for FHS3 compliance...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 22 files.
Now have 22 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 732032 bytes or 715 KiB
Removed 22 files due to unique sizes from list. 0 files left.
Now eliminating candidates based on first bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 20 files.
Now have 20 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 729891 bytes or 713 KiB
Removed 20 files due to unique sizes from list. 0 files left.
Now eliminating candidates based on first bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
py3_nodeenv: Tool to create isolated node.js environments.
Precompiled binary available, downloading...
Py3_nodeenv archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 11 files.
Now have 11 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 132335 bytes or 129 KiB
Removed 11 files due to unique sizes from list. 0 files left.
Now eliminating candidates based on first bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
py3_pyyaml: PyYAML is a YAML parser and emitter for Python.
Precompiled binary available, downloading...
Py3_pyyaml archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 43 files.
Now have 43 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 839980 bytes or 820 KiB
Removed 43 files due to unique sizes from list. 0 files left.
Now eliminating candidates based on first bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
py3_distlib: Distlib provides distribution utilities for Python packages.
Precompiled binary available, downloading...
Py3_distlib archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 38 files.
Now have 38 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 1630550 bytes or 2 MiB
Removed 38 files due to unique sizes from list. 0 files left.
Now eliminating candidates based on first bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
py3_platformdirs: A small Python package for determining appropriate platform-specific dirs.
Precompiled binary available, downloading...
Py3_platformdirs archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 21 files.
Now have 21 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 166984 bytes or 163 KiB
Removed 21 files due to unique sizes from list. 0 files left.
Now eliminating candidates based on first bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
py3_six: Six is a Python 2 and 3 compatibility library.
Precompiled binary available, downloading...
Py3_six archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 8 files.
Now have 8 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 79344 bytes or 77 KiB
Removed 6 files due to unique sizes from list. 2 files left.
Now eliminating candidates based on first bytes: removed 2 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
py3_virtualenv: Virtualenv is a Virtual Environment builder for Python.
Precompiled binary available, downloading...
Py3_virtualenv archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 189 files.
Now have 189 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 6770647 bytes or 6 MiB
Removed 174 files due to unique sizes from list. 15 files left.
Now eliminating candidates based on first bytes: removed 8 files from list. 7 files left.
Now eliminating candidates based on last bytes: removed 7 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
py3_pre_commit: A framework for managing and maintaining multi-language pre-commit hooks.
Precompiled binary available, downloading...
Py3_pre_commit archive downloaded.
Unpacking archive using 'tar', this may take a while...
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 149 files.
Now have 149 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 650193 bytes or 635 KiB
Removed 141 files due to unique sizes from list. 8 files left.
Now eliminating candidates based on first bytes: removed 6 files from list. 2 files left.
Now eliminating candidates based on last bytes: removed 2 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
Performing post-install for shared_mime_info...

To update the database, execute the following:
update-mime-database /usr/local/share/mime

Performing post-install for xdg_base...
Performing post-install for py3_pre_commit...
Buildessential installed!
Running Gnome post_installs for glib, gobject_introspection, and gtk_doc.
No schema files found: doing nothing.

To complete the install, execute 'pre-commit install --install-hooks' in your local repository.

chronos@localhost /etc $ crew update && crew upgrade
remote: Enumerating objects: 52, done.
remote: Counting objects: 100% (51/51), done.
remote: Compressing objects: 100% (32/32), done.
remote: Total 52 (delta 25), reused 38 (delta 19), pack-reused 1 (from 1)
Unpacking objects: 100% (52/52), 129.00 KiB | 4.03 MiB/s, done.
From https://github.com/chromebrew/chromebrew
 * branch                master     -> FETCH_HEAD
HEAD is now at 3106ff0a2 Add test for removed dependencies (#10464)
Package lists, crew, and library updated.
Restarting crew update since there is an updated crew version.
From https://github.com/chromebrew/chromebrew
 * branch                master     -> FETCH_HEAD
HEAD is now at 3106ff0a2 Add test for removed dependencies (#10464)
Package lists, crew, and library updated.
/usr/local/lib/crew/lib/const.rb:46: warning: already initialized constant CREW_IN_CONTAINER
/usr/local/lib/crew/lib/const.rb:46: warning: previous definition of CREW_IN_CONTAINER was here
Checking for package updates...
curl could be updated from 8.9.1 to 8.10.0

1 packages can be updated.
Run `crew upgrade` to update all packages or `crew upgrade <package1> [<package2> ...]` to update specific packages.
Updating packages...
curl: Command line tool and library for transferring data with URLs.
Performing pre-flight checks...
Precompiled binary available, downloading...
Curl archive downloaded.
Unpacking archive using 'tar', this may take a while...
Attempting removal since this is an upgrade or reinstall...
curl removed!
Performing pre-install...
Performing install...
Using rdfind to convert duplicate files to hard links.
Now scanning ".", found 521 files.
Now have 521 files in total.
Removed 0 files due to nonunique device and inode.
Total size is 9966203 bytes or 10 MiB
Removed 321 files due to unique sizes from list. 200 files left.
Now eliminating candidates based on first bytes: removed 200 files from list. 0 files left.
Now eliminating candidates based on last bytes: removed 0 files from list. 0 files left.
Now eliminating candidates based on sha1 checksum: removed 0 files from list. 0 files left.
It seems like you have 0 files that are not unique
Totally, 0 B can be reduced.
Now making hard links.
Making 0 links.
Curl installed!
Packages have been updated.
chronos@localhost /etc $ 
antoine2711 commented 2 weeks ago

I haven't done this: To complete the install, execute 'pre-commit install --install-hooks' in your local repository.

Not sure where my repo isā€¦

Regards, Antoine

Zopolis4 commented 2 weeks ago

That's not required-- its really only relevant for development.

Zopolis4 commented 2 weeks ago

Do you have buildessential installed? If not, does installing it fix the problem?

No @Zopolis4. But yes, it seams to have got ride of all errors. Thanks.

Good to hear-- Looking at your original report, it looks like it can't find make, which it needs to compile programs. buildessential provides the required tools to build, among other things, the native extensions. I think we've eliminated the root cause of this issue, being the lack of a separate ruby debug gem.