Files
chromebrew/packages/broadway.rb
Maximilian Downey Twiss ce72f28f24 Update homepages of packages from a-c (#9915)
* Update acpica homepage

* Update aide homepage

* Update aliyun_cli homepage

* Update alpine homepage

* Update anagram source_url

* Update ant homepage

* Update apktool homepage

* Update appres homepage

* Update appstream homepage

* Update apr_iconv homepage

* Update apr_util homepage

* Update armadillo homepage

* Update asciidoc homepage

* Update at_spi2_core homepage

* Update avahi homepage

* Update aview homepage

* Update babl homepage

* Update balena_etcher homepage

* Update banner homepage

* Update bashdb homepage

* Update bdftopcf homepage

* Update bind homepage

* Update bitmap homepage

* Update bitpocket homepage

* Update bluefish homepage

* Update bmon homepage

* Update brackets homepage

* Update broadway homepage

* Update broot homepage

* Update byobu homepage

* Update c_ares homepage

* Update calcurse homepage

* Update ccache homepage

* Update cf homepage

* Update chrome homepage

* Update chrpath homepage

* Update ck4up homepage

* Update ckermit homepage
2024-06-06 20:31:42 -05:00

85 lines
2.9 KiB
Ruby

require 'package'
class Broadway < Package
description 'Run GTK applications in a browser window.'
homepage 'https://docs.gtk.org/gtk3/broadway.html'
version 'gtk3.22-3'
license 'GPL-3+'
compatibility 'x86_64 aarch64 armv7l'
source_url 'SKIP'
depends_on 'gtk3'
no_compile_needed
no_upstream_update
def self.build
@broadwayenv = <<~BROADWAYENVEOF
GDK_BACKEND=broadway
XDG_RUNTIME_DIR=/var/run/chrome
BROADWAY_DISPLAY=:5
BROADWAYENVEOF
File.write("#{CREW_DEST_HOME}/.broadway.env", @broadwayenv)
@initbroadway = <<~INITBROADWAYEOF
#!/bin/bash
BROADWAYD=$(pidof broadwayd 2>/dev/null)
if [ -z "${BROADWAYD}" ]; then
[ -f #{CREW_PREFIX}/bin/stopsommelier ] && stopsommelier
broadwayd ${BROADWAY_DISPLAY} &
sleep 3' >> initbroadway
fi
BROADWAYD=$(pidof broadwayd 2>/dev/null)
if [ ! -z "${BROADWAYD}" ]; then
echo "broadwayd process ${BROADWAYD} is running"
else
echo "broadwayd failed to start"
exit 1
fi
INITBROADWAYEOF
File.write('initbroadway', @initbroadway)
@stopbroadway = <<~STOPBROADWAYEOF
#!/bin/bash
BROADWAYD=$(pidof broadwayd 2>/dev/null)
if [ ! -z "${BROADWAYD}" ]; then
pkill broadwayd
sleep 3
fi
BROADWAYD=$(pidof broadwayd 2> /dev/null)
if [ -z "${BROADWAYD}" ]; then
echo "broadwayd process stopped"
else
echo "broadwayd process ${BROADWAYD} is running"
exit 1
fi
STOPBROADWAYEOF
File.write('stopbroadway', @stopbroadway)
end
def self.install
FileUtils.install 'initbroadway', "#{CREW_DEST_PREFIX}/bin/initbroadway", mode: 0o755
FileUtils.install 'stopbroadway', "#{CREW_DEST_PREFIX}/bin/stopbroadway", mode: 0o755
FileUtils.install '.broadway.env', "#{CREW_DEST_HOME}/.broadway.env", mode: 0o644
end
def self.postinstall
puts
puts 'To complete the installation, execute the following:'.lightblue
puts "echo '# Broadway environment variables + daemon' >> ~/.bashrc".lightblue
puts "echo '# See https://docs.gtk.org/gtk3/broadway.html' >> ~/.bashrc".lightblue
puts "echo 'alias startbroadway=\"set -a && source ~/.broadway.env && set +a && initbroadway\"' >> ~/.bashrc".lightblue
puts "echo 'startbroadway' >> ~/.bashrc".lightblue
puts 'source ~/.bashrc'.lightblue
puts
puts "To start the broadwayd daemon, run 'startbroadway'".lightblue
puts "To stop the broadwayd daemon, run 'stopbroadway'".lightblue
puts
puts "To adjust environment variables, edit #{CREW_HOME}/.broadway.env".lightblue
puts
puts 'Navigate your browser to http://127.0.0.1:8085 while the broadwayd'.lightblue
puts 'daemon is running to run GTK applications in the browser window.'.lightblue
puts
puts 'Please be aware that gtk applications may not work without the broadwayd daemon running.'.orange
puts
end
end