mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-05-01 03:00:26 -04:00
* vivaldi -> 7.9.3970.45 in updater-vivaldi-7.9.3970.45 * updater-vivaldi-7.9.3970.45: Package File Update Run on linux/amd64 container. * updater-vivaldi-7.9.3970.45: Package File Update Run on linux/arm/v7 container. * Update vivaldi x86_64 manifest filelist --------- Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com> Co-authored-by: chromebrew-actions[bot] <220035932+chromebrew-actions[bot]@users.noreply.github.com> Co-authored-by: chromebrew-actions[bot] <chromebrew-actions[bot]@users.noreply.github.com> Co-authored-by: Ed Reel <edreel@gmail.com>
103 lines
3.7 KiB
Ruby
103 lines
3.7 KiB
Ruby
require 'package'
|
|
require 'convenience_functions'
|
|
|
|
class Vivaldi < Package
|
|
description 'Vivaldi is a new browser that blocks unwanted ads, protects you from trackers, and puts you in control with unique built-in features.'
|
|
homepage 'https://vivaldi.com/'
|
|
# The project stopped supporting armv7l after the 7.5 release.
|
|
version ARCH.eql?('x86_64') ? '7.9.3970.45' : '7.5.3735.74-1'
|
|
license 'Vivaldi'
|
|
compatibility 'aarch64 armv7l x86_64'
|
|
min_glibc '2.37'
|
|
|
|
depends_on 'alsa_lib' => :executable
|
|
depends_on 'at_spi2_core' => :executable
|
|
depends_on 'cairo' => :executable
|
|
depends_on 'cras' => :logical
|
|
depends_on 'cups' => :executable
|
|
depends_on 'dbus' => :executable
|
|
depends_on 'eudev' => :executable
|
|
depends_on 'expat' => :executable
|
|
depends_on 'gcc_lib' # R
|
|
depends_on 'glib' => :executable
|
|
depends_on 'gsettings_desktop_schemas' => :logical
|
|
depends_on 'harfbuzz' => :executable
|
|
depends_on 'libx11' # R
|
|
depends_on 'libxcb' # R
|
|
depends_on 'libxcomposite' => :executable
|
|
depends_on 'libxdamage' => :executable
|
|
depends_on 'libxext' # R
|
|
depends_on 'libxfixes' => :executable
|
|
depends_on 'libxkbcommon' => :executable
|
|
depends_on 'libxrandr' => :executable
|
|
depends_on 'mesa' => :executable
|
|
depends_on 'nss' => :executable
|
|
depends_on 'pango' => :executable
|
|
depends_on 'sommelier' => :logical
|
|
depends_on 'xdg_base' => :logical
|
|
depends_on 'xdg_utils' => :logical
|
|
|
|
no_compile_needed
|
|
no_shrink
|
|
|
|
case ARCH
|
|
when 'aarch64', 'armv7l'
|
|
arch = 'armhf'
|
|
source_sha256 '9017e6327c140ad9a9e1f0ce450681a729a15ea764337c30226f51c042ff7e62'
|
|
when 'x86_64'
|
|
arch = 'amd64'
|
|
source_sha256 '5a8484bd3906ff52d02bf23218e3eff2157ca58fb280e34413f60e87a43c52fd'
|
|
end
|
|
|
|
case ARCH
|
|
when 'armv7l'
|
|
source_url "https://downloads.vivaldi.com/stable/vivaldi-stable_#{version}_#{arch}.deb"
|
|
else
|
|
source_url "https://downloads.vivaldi.com/stable/vivaldi-stable_#{version}-1_#{arch}.deb"
|
|
end
|
|
|
|
def self.patch
|
|
# ERROR: ld.so: object '/home/chronos/user/.local/lib/vivaldi/media-codecs-89.0.4389.82/libffmpeg.so' from LD_PRELOAD cannot be preloaded
|
|
system 'sed', '-i', "s:$HOME/.local/lib/vivaldi/:#{CREW_PREFIX}/share/vivaldi/:g", './opt/vivaldi/vivaldi'
|
|
system 'sed', '-i', "s:$HOME/.local/lib/vivaldi/:#{CREW_PREFIX}/share/vivaldi/:g", './opt/vivaldi/update-ffmpeg'
|
|
system 'sed', '-i', 's:/usr/bin/::g', './usr/share/applications/vivaldi-stable.desktop'
|
|
end
|
|
|
|
def self.install
|
|
FileUtils.mkdir_p CREW_DEST_PREFIX
|
|
|
|
FileUtils.mv './etc/', CREW_DEST_PREFIX
|
|
FileUtils.mv Dir['./usr/*'], CREW_DEST_PREFIX
|
|
FileUtils.mv './opt/vivaldi/', "#{CREW_DEST_PREFIX}/share/"
|
|
|
|
FileUtils.ln_sf "#{CREW_PREFIX}/share/vivaldi/vivaldi", "#{CREW_DEST_PREFIX}/bin/vivaldi-stable"
|
|
FileUtils.ln_sf "#{CREW_PREFIX}/share/vivaldi/vivaldi", "#{CREW_DEST_PREFIX}/bin/vivaldi"
|
|
|
|
# Add icons for use with crew-launcher
|
|
icon_base_path = "#{CREW_DEST_PREFIX}/share/icons/hicolor"
|
|
FileUtils.mkdir_p icon_base_path
|
|
Dir["#{CREW_DEST_PREFIX}/share/vivaldi/product_logo_*.png"].each do |filename|
|
|
logo = File.basename(filename)
|
|
size = File.basename(logo[13, 7], '.png')
|
|
dims = "#{size}x#{size}"
|
|
FileUtils.mkdir_p "#{icon_base_path}/#{dims}/apps"
|
|
FileUtils.mv filename, "#{icon_base_path}/#{dims}/apps/vivaldi.png"
|
|
end
|
|
end
|
|
|
|
def self.postinstall
|
|
system "#{CREW_PREFIX}/share/vivaldi/update-ffmpeg", '--user'
|
|
ConvenienceFunctions.set_default_browser('Vivaldi', 'vivaldi')
|
|
end
|
|
|
|
def self.preremove
|
|
ConvenienceFunctions.unset_default_browser('Vivaldi', 'vivaldi')
|
|
end
|
|
|
|
def self.postremove
|
|
Dir.chdir(CREW_PREFIX) do
|
|
FileUtils.rm_rf ["#{HOME}/.local/lib/vivaldi", '.config/vivaldi', '.cache/vivaldi', '.config/share/.vivaldi_reporting_data']
|
|
end
|
|
end
|
|
end
|