Files
chromebrew/lib/package_utils.rb
Satadru Pramanik, DO, MPH, MEng 8dbc3925d2 icu4c => 75.1 + updates (#10246)
* Update icu4c, libxml2

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update libxml2

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* adjust deps

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* libxslt rebuild

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* updates and rebuilds for harfbuzz, freetype, fontconfig, cairo, pango

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild libxslt with new version

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add icu version to libarchive

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* adjust xmlto deps

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* adjust xmlto deps

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* adjust xmlto deps

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* icu version shared_mime_info

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add js115 py deps

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* fixup

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* fixup

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* python updates

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update binutils to master

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* more test changes for js115

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update py3_pyicu

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild wayland

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update librsvg

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild xfsprogs

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild bind

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* boost rebuild

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add libabigail, update sphinx and deps

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild yelp

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update gspell

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update imlib2

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update libgsf

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild libcdr, update libical

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild libmetalink, update libvisio

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild caja

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update gtk3

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update glib

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update gobject_introspection

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update gnome_docking_library package

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* more gnome updates

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* fixup nautilus

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update vte, revert js115 changes to allow installs, add arm builds for tinysparql, localsearch, nautilus

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* glibc testing upload

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update r

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* suggested changes to add detection for -icu??.?

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rebuild geany_plugins

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add dehtml, rework glibc_build237

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update py3_pyyaml

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update libdbusmenu_gtk3

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update gtksourceview_5, cleanup sass packages

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update sass packages, add binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update graphicsmagick, refactor glibc_build237

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add x86_84 binaries for tinysparql, localsearch, nautilus

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update evolution_data_server

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* iterate

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* xwayland => 24.1.2

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update glibc_build237 binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* sync glibc packages

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* remove instance variables

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* more pkg updates, update mold

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* fix webkitgtk_6 pkg

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* sync glibc changes

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* adjust mysql deps

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add new packages to packages.yaml

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update package file for webkitgtk_6

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* python => 3.12.5

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* adjust build options for js115

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update js115

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update more packages

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add updates

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add i686 build

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add builds for uriparser

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* adjust force flag

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* fix downloader force

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* fixup download pkg_name usage

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update smbclient package

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update tesseract package

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* package updates

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update tesseract, add time check for builds to crew

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update some samba packages

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update tepl packages

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add ruby_pry_byebug

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update smbclient

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* tepl updates

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update smbclient

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update imagemagick7

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add postgresql binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* fix yaml

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* adjust build_elapsed time code, add verbose build to unit test

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Add CREW_DEBUG to help debug issues with crew (invoke with crew <command> --debug).

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* update crew_profile_base

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* some python package cleanups

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add print_source_bashrc to docbook_xsl

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add debugging info message

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* fixup

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* bump version

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* suggested changes and install updates

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add crew_sudo binaries

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* rubocop fixes

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Fixes: #10291

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* refactor crew upload

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* abort when a file is already uploaded

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* use highline for crew upload prompt

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* add highline to buildessential

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* adjust highline update speed in packages.yaml

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

---------

Signed-off-by: Satadru Pramanik <satadru@gmail.com>
2024-08-11 03:19:59 -05:00

53 lines
2.0 KiB
Ruby

require 'json'
require_relative 'const'
class PackageUtils
def self.installed?(pkg_name)
device_json = JSON.load_file(File.join(CREW_CONFIG_PATH, 'device.json'))
return device_json['installed_packages'].any? { |elem| elem['name'] == pkg_name }
end
def self.compatible?(pkg)
return pkg.compatibility.casecmp?('all') || pkg.compatibility.include?(ARCH)
end
def self.get_url(pkg, build_from_source: false)
if !build_from_source && pkg.binary_sha256&.key?(ARCH.to_sym)
return "https://gitlab.com/api/v4/projects/26210301/packages/generic/#{pkg.name}/#{pkg.version}_#{ARCH}/#{pkg.name}-#{pkg.version}-chromeos-#{ARCH}.#{pkg.binary_compression}"
elsif pkg.source_url.is_a?(Hash) && pkg.source_url&.key?(ARCH.to_sym)
return pkg.source_url[ARCH.to_sym]
else
return pkg.source_url
end
end
def self.get_sha256(pkg, build_from_source: false)
if !build_from_source && pkg.binary_sha256&.key?(ARCH.to_sym)
return pkg.binary_sha256[ARCH.to_sym]
elsif pkg.source_sha256.is_a?(Hash) && pkg.source_sha256&.key?(ARCH.to_sym)
return pkg.source_sha256[ARCH.to_sym]
else
return pkg.source_sha256
end
end
def self.get_clean_version(pkg_version)
# Trim kde- suffixes in qt5 packages so nothing else gets confused.
pkg_version.delete_prefix!('kde-')
# Delete -py3.12, futureproofed until Python 4
pkg_version.gsub!(/-py3\.\d{2}/, '')
# Delete -perl 5.40, futureproofed until Perl 5.100
pkg_version.gsub!(/-perl5\.\d{2}/, '')
# Delete -llvm18, futureproofed until llvm 100
pkg_version.gsub!(/-llvm\d{2}/, '')
# Delete -glibc2.39, or whatever the system glibc is.
pkg_version.delete_suffix!("-glibc#{LIBC_VERSION}")
# Delete git version tags (1.2.4-qnd73k6), avoiding overmatching and hitting things that arent git hashtags.
pkg_version.gsub!(/-[\w]{7}$/, '')
# Delete -icu75.1, futureproofed until icu 100
pkg_version.gsub!(/-icu\d{2}\.\d/, '')
return pkg_version
end
end