From df8d66fca1c3a2c8b860f71c024767962d423074 Mon Sep 17 00:00:00 2001 From: Ed Reel Date: Mon, 10 Feb 2025 17:43:27 -0600 Subject: [PATCH] Update broadway (#11284) --- manifest/armv7l/b/broadway.filelist | 4 ++ manifest/x86_64/b/broadway.filelist | 4 +- packages/broadway.rb | 63 +++++++++++++++-------------- 3 files changed, 39 insertions(+), 32 deletions(-) create mode 100644 manifest/armv7l/b/broadway.filelist diff --git a/manifest/armv7l/b/broadway.filelist b/manifest/armv7l/b/broadway.filelist new file mode 100644 index 000000000..c3e907cbd --- /dev/null +++ b/manifest/armv7l/b/broadway.filelist @@ -0,0 +1,4 @@ +/usr/local/bin/startbroadway +/usr/local/bin/stopbroadway +/usr/local/etc/bash.d/10-broadway +/usr/local/etc/env.d/broadway.env diff --git a/manifest/x86_64/b/broadway.filelist b/manifest/x86_64/b/broadway.filelist index 7bad249f1..c3e907cbd 100644 --- a/manifest/x86_64/b/broadway.filelist +++ b/manifest/x86_64/b/broadway.filelist @@ -1,2 +1,4 @@ -/usr/local/bin/initbroadway +/usr/local/bin/startbroadway /usr/local/bin/stopbroadway +/usr/local/etc/bash.d/10-broadway +/usr/local/etc/env.d/broadway.env diff --git a/packages/broadway.rb b/packages/broadway.rb index af40bf6d7..0459c1e1c 100644 --- a/packages/broadway.rb +++ b/packages/broadway.rb @@ -1,32 +1,39 @@ require 'package' +require_relative 'gtk3' 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 'aarch64 armv7l x86_64' + version Gtk3.version + license Gtk3.license + compatibility Gtk3.compatibility source_url 'SKIP' depends_on 'gtk3' no_compile_needed no_upstream_update + print_source_bashrc def self.build - @broadwayenv = <<~BROADWAYENVEOF + File.write 'broadway.env', <<~BROADWAYENVEOF + # Broadway environment variables + daemon + # See https://docs.gtk.org/gtk3/broadway.html. GDK_BACKEND=broadway XDG_RUNTIME_DIR=/var/run/chrome BROADWAY_DISPLAY=:5 BROADWAYENVEOF - File.write("#{CREW_DEST_HOME}/.broadway.env", @broadwayenv) - @initbroadway = <<~INITBROADWAYEOF + File.write '10-broadway', <<~BROADWAYEOF + #!/bin/bash + startbroadway + BROADWAYEOF + File.write 'startbroadway', <<~STARTBROADWAYEOF #!/bin/bash BROADWAYD=$(pidof broadwayd 2>/dev/null) if [ -z "${BROADWAYD}" ]; then [ -f #{CREW_PREFIX}/bin/stopsommelier ] && stopsommelier broadwayd ${BROADWAY_DISPLAY} & - sleep 3' >> initbroadway + sleep 3 fi BROADWAYD=$(pidof broadwayd 2>/dev/null) if [ ! -z "${BROADWAYD}" ]; then @@ -35,9 +42,8 @@ class Broadway < Package echo "broadwayd failed to start" exit 1 fi - INITBROADWAYEOF - File.write('initbroadway', @initbroadway) - @stopbroadway = <<~STOPBROADWAYEOF + STARTBROADWAYEOF + File.write 'stopbroadway', <<~STOPBROADWAYEOF #!/bin/bash BROADWAYD=$(pidof broadwayd 2>/dev/null) if [ ! -z "${BROADWAYD}" ]; then @@ -52,33 +58,28 @@ class Broadway < Package exit 1 fi STOPBROADWAYEOF - File.write('stopbroadway', @stopbroadway) end def self.install - FileUtils.install 'initbroadway', "#{CREW_DEST_PREFIX}/bin/initbroadway", mode: 0o755 + FileUtils.install 'startbroadway', "#{CREW_DEST_PREFIX}/bin/startbroadway", mode: 0o755 FileUtils.install 'stopbroadway', "#{CREW_DEST_PREFIX}/bin/stopbroadway", mode: 0o755 - FileUtils.install '.broadway.env', "#{CREW_DEST_HOME}/.broadway.env", mode: 0o644 + FileUtils.install '10-broadway', "#{CREW_DEST_PREFIX}/etc/bash.d/10-broadway", mode: 0o755 + FileUtils.install 'broadway.env', "#{CREW_DEST_PREFIX}/etc/env.d/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 + ExitMessage.add <<~EOM + + Run 'startbroadway' to start the broadwayd daemon. + Run 'stopbroadway' to stop the broadwayd daemon. + + To adjust environment variables, edit #{CREW_PREFIX}/etc/env.d/broadway.env. + + Navigate your browser to http://127.0.0.1:8085 while the broadwayd + daemon is running to run GTK applications in the browser window. + + Please be aware that gtk applications may not work without the broadwayd daemon running. + + EOM end end