Files
chromebrew/packages/pkg_7_zip.rb
Satadru Pramanik, DO, MPH, MEng ddd99a6e58 Update some packages with incomplete binary hash sections. — alive → 2.0.5,core,mold → 2.40.4,pkg_7_zip → 25.01,py3_asciidoc → 10.2.1,ruby → 3.4.5-07f783 (#12726)
* Update some packages with incomplete binary hash sections.

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

* Add mold to anitya set.

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

* mold => 2.40.4

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

* Add 7z update.

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

* py3_cleanup: Build Run on linux/arm/v7.

* py3_cleanup: Build Run on linux/amd64.

* py3_cleanup: Build Run on linux/386.

* py3_cleanup: Package File Update Run on linux/386 container.

* py3_cleanup: Package File Update Run on linux/amd64 container.

* py3_cleanup: Package File Update Run on linux/arm/v7 container.

* revert py3_zcmd changes

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

* Print directory contents if not empty during install.

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

* Bump version.

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

* lint

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

* Adjust crew-mvdir logic to be verbose if erroring.

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

* Adjust debugging code, and fixup color in outputs.

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

* Do not update gems on every crew update.

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

* last_update_check => @last_update_check

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

* Handle crew-mvdir errors with rsync fallback.

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

* Add message if crew-mvdir errors with rsync fallback.

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

* Add more reporting for broken installs.

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

* Use verbose output if rsync fails.

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

* Use rsync force as fallback.

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

* Move workflows to use M139-based container images.

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

* Add workaround for ruby install race condition.

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

* lint

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

---------

Signed-off-by: Satadru Pramanik <satadru@gmail.com>
Co-authored-by: satmandu <satmandu@users.noreply.github.com>
Co-authored-by: chromebrew-actions[bot] <chromebrew-actions[bot]@users.noreply.github.com>
2025-09-11 18:00:18 +00:00

65 lines
1.9 KiB
Ruby

require 'package'
class Pkg_7_zip < Package
description 'Official implantation of 7za.exe in Linux. File archiver with a high compression ratio.'
homepage 'https://www.7-zip.org'
license 'LGPL-2.1+'
version '25.01'
compatibility 'all'
source_url "https://www.7-zip.org/a/7z#{version.delete('.')}-src.tar.xz"
source_sha256 'ed087f83ee789c1ea5f39c464c55a5c9d4008deb0efe900814f2df262b82c36e'
binary_compression 'tar.zst'
binary_sha256({
aarch64: '265a5acf546bddd5562539d675bddcfddb224d268371fde4d55a012ea2ac8862',
armv7l: '265a5acf546bddd5562539d675bddcfddb224d268371fde4d55a012ea2ac8862',
i686: '84b54312cf973281258d1ba41c31d5aae6387feae429277d77b335f9e37d8575',
x86_64: '68e0f4702cffd908bf24dcd84036e7093a2c0e882256f17992785f50178fa0cc'
})
depends_on 'asmc' => :build
depends_on 'gcc_lib' # R
depends_on 'glibc' # R
no_env_options
@_makefile = case ARCH
when 'x86_64'
'cmpl_gcc_x64.mak'
when 'i686'
'cmpl_gcc_x86.mak'
else
'cmpl_gcc_arm.mak'
end
@_bundles = {
'Alone2' => "#{CREW_DEST_PREFIX}/bin/7zz",
'Format7zF' => "#{CREW_DEST_LIB_PREFIX}/7z.so"
}
@_bundle_dir = 'CPP/7zip/Bundles'
def self.patch
system "sed -i 's#b/g_$(PLATFORM)#builddir#g' CPP/7zip/var_gcc*.mak"
end
def self.build
@_bundles.each_pair do |bundle, _bin_dest|
system 'make', '-f', "../../#{@_makefile}", chdir: "#{@_bundle_dir}/#{bundle}"
end
end
def self.install
FileUtils.mkdir_p ["#{CREW_DEST_PREFIX}/bin", CREW_DEST_LIB_PREFIX]
@_bundles.each_pair do |bundle, bin_dest|
bin = File.basename(bin_dest)
FileUtils.install "#{@_bundle_dir}/#{bundle}/builddir/#{bin}", bin_dest
end
FileUtils.ln_s '7zz', "#{CREW_DEST_PREFIX}/bin/7z"
FileUtils.ln_s '7zz', "#{CREW_DEST_PREFIX}/bin/7za"
FileUtils.ln_s '7zz', "#{CREW_DEST_PREFIX}/bin/7zr"
end
end