mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-01-08 23:18:10 -05:00
Fix for require issues with highline and glibc 2.37 refactor (#10363)
* Adjust highline requires. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Refactor glibc_build237. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Adjust cmake logic for cmake_build_relative_dir. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Update buildsystems... Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Rebuild glibc 2.37 packages. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Adjust fixup for case of loading from much older crew. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Try to handle loading fixup on older crew update. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Handle older crew setups. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Use rubocop exclusion for only const.rb and fixup.rb. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Remove attr_accessor from buildsystems. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Force update compatible if coming from an older crew. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * remove require_gem from package.rb Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Add fallback for remove.rb Signed-off-by: Satadru Pramanik <satadru@gmail.com> * const tweaks... Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Adjust const.rb & fixup.rb to remove error messages on load after require. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Make remove run crew update compatible if being run on a newer underlying chromebrew. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * lint Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Adjust fixup to be more resilient to being loaded in an older crew. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Switch from symbolized json import. 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> * fixup Signed-off-by: Satadru Pramanik <satadru@gmail.com> * fixup Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Revert most changes. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Adjust essential deps handling in fixup. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Cleanup save_json in fixup. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * update highline Signed-off-by: Satadru Pramanik <satadru@gmail.com> * save json more. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * save json more. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * test remove changes Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Add more remove debug code. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Add more remove debug code. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * add debug to fixup Signed-off-by: Satadru Pramanik <satadru@gmail.com> * add debug to fixup Signed-off-by: Satadru Pramanik <satadru@gmail.com> * add debug to fixup Signed-off-by: Satadru Pramanik <satadru@gmail.com> * fixup Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Refresh crew json when calling crew functions or exiting fixup. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Refresh crew json when calling crew functions or exiting fixup. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * fixup Signed-off-by: Satadru Pramanik <satadru@gmail.com> * fix json string usage in remove Signed-off-by: Satadru Pramanik <satadru@gmail.com> * essential package debugging 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> * Adjust remove debugging... Signed-off-by: Satadru Pramanik <satadru@gmail.com> * more remove debugging Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Remove debugging code from commands/remove.rb Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Remove more debugging code from lib/fixup. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Adjust remove test to test both remove with and without debug argument. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Update const.rb to not set x86 constants when not on x86. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Set x86 constants to nil when not on x86. Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Bump crew version. Signed-off-by: Satadru Pramanik <satadru@gmail.com> --------- Signed-off-by: Satadru Pramanik <satadru@gmail.com>
This commit is contained in:
committed by
GitHub
parent
7caa9077ad
commit
386f42ff6e
@@ -7,10 +7,10 @@ require_relative '../lib/package_utils'
|
||||
|
||||
class Command
|
||||
def self.list(available, compatible, incompatible, essential, installed, verbose)
|
||||
device_json = JSON.load_file(File.join(CREW_CONFIG_PATH, 'device.json'), symbolize_names: true)
|
||||
device_json = JSON.load_file(File.join(CREW_CONFIG_PATH, 'device.json'))
|
||||
installed_packages = {}
|
||||
device_json[:installed_packages].each do |package|
|
||||
installed_packages[package[:name]] = package[:version]
|
||||
device_json['installed_packages'].each do |package|
|
||||
installed_packages[package['name']] = package['version']
|
||||
end
|
||||
|
||||
if available
|
||||
@@ -34,7 +34,7 @@ class Command
|
||||
puts pkg_name.lightred unless PackageUtils.compatible?(pkg)
|
||||
end
|
||||
elsif essential
|
||||
puts device_json[:essential_deps].join("\n")
|
||||
puts device_json['essential_deps'].join("\n")
|
||||
elsif installed
|
||||
if verbose
|
||||
installed_packages['======='] = '======='
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
require 'fileutils'
|
||||
require 'json'
|
||||
require_relative '../lib/const'
|
||||
require_relative '../lib/convenience_functions'
|
||||
require_relative '../lib/package'
|
||||
require_relative '../lib/package_utils'
|
||||
|
||||
class Command
|
||||
def self.remove(pkg, verbose)
|
||||
device_json = ConvenienceFunctions.load_symbolized_json
|
||||
def self.remove(pkg, verbose = CREW_VERBOSE)
|
||||
device_json = JSON.load_file(File.join(CREW_CONFIG_PATH, 'device.json'))
|
||||
|
||||
# Make sure the package is actually installed before we attempt to remove it.
|
||||
unless PackageUtils.installed?(pkg.name)
|
||||
@@ -18,7 +19,7 @@ class Command
|
||||
# their dependencies, as those are needed for ruby and crew to run,
|
||||
# and thus should not be removed.
|
||||
# essential_deps = recursive_deps(CREW_ESSENTIAL_PACKAGES)
|
||||
essential_deps = device_json[:essential_deps]
|
||||
essential_deps = device_json['essential_deps']
|
||||
crewlog "Essential Deps are #{essential_deps}."
|
||||
if essential_deps.include?(pkg.name)
|
||||
return if pkg.in_upgrade
|
||||
@@ -62,7 +63,7 @@ class Command
|
||||
essential_deps_exclude_froms = essential_deps.map { |i| File.file?("#{File.join(CREW_META_PATH, i.to_s)}.filelist") ? "--exclude-from=#{File.join(CREW_META_PATH, i.to_s)}.filelist" : '' }.join(' ')
|
||||
|
||||
package_files = `grep -h #{essential_deps_exclude_froms} \"^#{CREW_PREFIX}\\|^#{HOME}\" #{flist}`.split("\n").uniq.sort
|
||||
all_other_files = `grep -h --exclude #{pkg.name}.filelist \"^#{CREW_PREFIX}\\|^#{HOME}\" #{CREW_META_PATH}/*.filelist`.split("\n").uniq.sort
|
||||
all_other_files = `grep -h --exclude #{pkg.name}.filelist \"^#{CREW_PREFIX}\\|^#{HOME}\" #{CREW_META_PATH}/*.filelist 2>/dev/null`.split("\n").uniq.sort
|
||||
|
||||
# We want the difference of these arrays.
|
||||
unique_to_package_files = package_files - all_other_files
|
||||
@@ -75,7 +76,7 @@ class Command
|
||||
puts package_files_that_overlap.join("\n").orange
|
||||
end
|
||||
unique_to_package_files.each do |file|
|
||||
puts "Removing file #{file}".yellow if CREW_VERBOSE
|
||||
puts "Removing file #{file}".yellow if verbose
|
||||
FileUtils.remove_file file, exception: false
|
||||
end
|
||||
FileUtils.remove_file flist
|
||||
@@ -96,7 +97,7 @@ class Command
|
||||
|
||||
# Remove the package from the list of installed packages in device.json.
|
||||
puts "Removing package #{pkg.name} from device.json".yellow if verbose
|
||||
device_json[:installed_packages].delete_if { |entry| entry[:name] == pkg.name }
|
||||
device_json['installed_packages'].delete_if { |entry| entry['name'] == pkg.name }
|
||||
|
||||
# Update device.json with our changes.
|
||||
ConvenienceFunctions.save_json(device_json)
|
||||
|
||||
Reference in New Issue
Block a user