require 'package' class Torbrowser < Package description "'The Onion Router' browser" homepage 'https://www.torproject.org/' version '14.5.8' license 'BSD, custom, MPL-2.0 and MIT' compatibility 'x86_64' min_glibc '2.34' # Updates available at https://www.torproject.org/download/. source_url "https://dist.torproject.org/torbrowser/#{version}/tor-browser-linux-x86_64-#{version}.tar.xz" source_sha256 '85fde9925f89f47b36f174b23685c264cd01f40ee0e3f9fa17b585903fe197fa' depends_on 'gtk3' depends_on 'gdk_base' no_compile_needed no_shrink print_source_bashrc def self.patch system "sed -i 's,$(pwd),#{CREW_PREFIX}/share/torbrowser,g' start-tor-browser.desktop" system "sed -i 's,./Browser,#{CREW_PREFIX}/share/torbrowser/Browser,' start-tor-browser.desktop" end def self.install FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/bin" FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/torbrowser" FileUtils.mv 'Browser/', "#{CREW_DEST_PREFIX}/share/torbrowser" FileUtils.mv 'start-tor-browser.desktop', "#{CREW_DEST_PREFIX}/share/torbrowser" FileUtils.ln_s "#{CREW_PREFIX}/share/torbrowser/start-tor-browser.desktop", "#{CREW_DEST_PREFIX}/bin/tor" end def self.postinstall ConvenienceFunctions.set_default_browser('Tor', 'tor') ExitMessage.add "\nType 'tor' to get started.\n" end def self.preremove ConvenienceFunctions.unset_default_browser('Torbrowser', 'start-tor-browser.desktop') end def self.postremove Package.agree_to_remove("#{CREW_PREFIX}/share/torbrowser") end end