From d6e779ccd399aab566ec331f39ea5c42397211d8 Mon Sep 17 00:00:00 2001 From: Cassandra Watergate <55339220+saltedcoffii@users.noreply.github.com> Date: Thu, 8 Apr 2021 22:49:18 -0400 Subject: [PATCH] Crew profile base (#5503) * Make basic crew-profile-base package * Use crew consts * Upgrade to 0.0.2-pre2 * Convert aa* to cf* * Docbook * aa* to dz* * docbook-xsl * through fz* and fix environment variables * through mz* * through pz* * through zz* * fix crew-profile-base * upgrade crew-profile-base * major crew-profile-base changes * Upgrade crew-profile-base and fix xdg-base * fix sha256sum * Remove stale files * pkgsrc and sommelier * Add crew-profile-base to core packages and ready for merging * Bump versions * prevent conflicts with #5494 * fix sha256sum * fix fop * profile.d is not ours * fix bash * Upgrade crew-profile-base to 0.0.1-pre6 and fix bash * Remove self-referencing comment * Add binaries, fix rust, fix #{@ver} * move compatibility line * add core mandb deps back * File.exists? => File.exist? * deduplicate @env * update packages * Fix gdk_pixbug source url * Add binaries, use rubocop style fixes * Update cf from 6.36.1-1 to 6.53.0 * fix sl * fix depot tools * remove apulse since it conflicts with pulseaudio. * refactor crew_profile_base * first tranche of builds * go * add cf * hunspell * transmission * clean up dependency & env situation for gdk_pixbuf * fix gettext * fix nano * fix intel-media-driver * add zziplib for texlive * fix texlive * split fuse for flatpak * fix flatpak * delete rack (broken and unmaintained) * fix packer completion * modify and fix sl * fix s * fix stressng * fix stack * Add TMPDIR * Remove TMPDIR from build files * Fix aws2 version * Go: remove extraneous dependency * hunspell_fr_fr: use french in description * intel media driver: remove case x86_64 * aws2: quickfix * everything but texlive * texlive * fix stressng * Delete pkgsrc.rb * add back pkgsrc Co-authored-by: Satadru Pramanik Co-authored-by: Ed Reel Co-authored-by: satmandu --- install.sh | 25 +--- packages/aircrack_ng.rb | 1 - packages/ansible.rb | 3 +- packages/ant.rb | 42 +++---- packages/antlr4.rb | 35 ++++-- packages/apulse.rb | 54 -------- packages/asciinema.rb | 31 ++--- packages/aws.rb | 59 --------- packages/aws2.rb | 44 +++++++ packages/az.rb | 36 ------ packages/azure_cli.rb | 35 ++++++ packages/bash.rb | 54 ++++---- packages/bash_completion.rb | 45 ++++--- packages/buildessential.rb | 5 +- packages/ccache.rb | 53 ++++---- packages/cf.rb | 68 ++++------- packages/chruby.rb | 41 +++---- packages/commacd.rb | 38 +++--- packages/cowsay.rb | 29 +++-- packages/crew_profile_base.rb | 91 ++++++++++++++ packages/depot_tools.rb | 53 ++++---- packages/docbook_xml.rb | 19 ++- packages/docbook_xml412.rb | 31 ++--- packages/docbook_xml42.rb | 32 ++--- packages/docbook_xml43.rb | 32 ++--- packages/docbook_xml44.rb | 32 ++--- packages/docbook_xml45.rb | 32 ++--- packages/docbook_xml50.rb | 32 ++--- packages/docbook_xml51.rb | 32 ++--- packages/docbook_xsl.rb | 31 ++--- packages/docbook_xsl_nons.rb | 31 ++--- packages/fasd.rb | 35 +++--- packages/flatpak.rb | 80 ++++++------ packages/fontconfig.rb | 32 ++--- packages/fop.rb | 38 +++--- packages/fossil.rb | 2 +- packages/fuse2.rb | 39 ++++++ packages/{fuse.rb => fuse3.rb} | 18 +-- packages/gdk_pixbuf.rb | 52 +++++--- packages/gettext.rb | 25 ++-- packages/gimp.rb | 3 +- packages/git.rb | 59 ++++----- packages/github_cli.rb | 34 ++---- packages/go.rb | 52 ++++---- packages/go_bootstrap.rb | 2 +- packages/gvfs.rb | 2 +- packages/handbrake.rb | 1 - packages/hub.rb | 30 ++--- packages/hunspell.rb | 6 +- packages/hunspell_en_us.rb | 33 ++--- packages/hunspell_es_any.rb | 36 +++--- packages/hunspell_fr_fr.rb | 34 +++--- packages/intel_media_driver.rb | 45 ++++--- packages/ipfs.rb | 2 +- packages/kubectl.rb | 1 - packages/libgee.rb | 3 +- packages/libostree.rb | 2 +- packages/libva_intel_driver_hybrid.rb | 38 +++--- packages/mandb.rb | 9 +- packages/mutt.rb | 44 +++---- packages/nano.rb | 28 ++--- packages/nodebrew.rb | 51 ++++---- packages/nvm.rb | 22 ++-- packages/packer_completion.rb | 45 ++++--- packages/php71.rb | 1 - packages/php72.rb | 1 - packages/php73.rb | 2 +- packages/php74.rb | 2 +- packages/php80.rb | 2 +- packages/pkgsrc.rb | 51 ++++---- packages/plowshare.rb | 38 +++--- packages/postgres.rb | 56 +++++---- packages/python27.rb | 1 - packages/python3.rb | 7 +- packages/rack.rb | 43 ------- packages/ripgrep.rb | 1 - packages/ruby.rb | 2 +- packages/rust.rb | 65 ++++------ packages/s.rb | 60 ++++----- packages/sl.rb | 71 +++++++++-- packages/sommelier.rb | 35 ++++-- packages/squashfuse.rb | 2 +- packages/sshfs.rb | 2 +- packages/stack.rb | 22 ++-- packages/stressng.rb | 58 ++++----- packages/syncthing.rb | 2 +- packages/texlive.rb | 170 ++++++++++++++++++++------ packages/transmission.rb | 65 +++++----- packages/vdev.rb | 2 +- packages/waf.rb | 41 +++---- packages/xdg_base.rb | 52 ++++---- packages/zziplib.rb | 49 ++++++++ tools/core_packages.txt | 1 + 93 files changed, 1511 insertions(+), 1442 deletions(-) delete mode 100644 packages/apulse.rb delete mode 100644 packages/aws.rb create mode 100644 packages/aws2.rb delete mode 100644 packages/az.rb create mode 100644 packages/azure_cli.rb create mode 100644 packages/crew_profile_base.rb create mode 100644 packages/fuse2.rb rename packages/{fuse.rb => fuse3.rb} (62%) delete mode 100644 packages/rack.rb create mode 100644 packages/zziplib.rb diff --git a/install.sh b/install.sh index f523abec3..a38c8a4bb 100755 --- a/install.sh +++ b/install.sh @@ -16,6 +16,7 @@ CREW_DEST_DIR="${CREW_BREW_DIR}/dest" CREW_PACKAGES_PATH="${CREW_LIB_PATH}/packages" CURL="${CURL:-curl}" +# EARLY_PACKAGES cannot depend on crew_profile_base for their core operations (completion scripts are fine) EARLY_PACKAGES="gcc10 llvm brotli c_ares libcyrussasl libiconv libidn2 \ libmetalink libnghttp2 libpsl libssh2 libtirpc libunistring lz4 openldap \ rtmpdump zstd ncurses ca_certificates ruby libffi openssl nettle krb5 \ @@ -48,7 +49,7 @@ esac crew_folders="bin cache doc docbook etc include lib lib$LIB_SUFFIX libexec man sbin share tmp var" for folder in $crew_folders do - if [ -d "${CREW_PREFIX}"/"${folder}" ]; then + if [ -d "${CREW_PREFIX}"/"${folder}" ]; then sudo chown -R "$(id -u)":"$(id -g)" "${CREW_PREFIX}"/"${folder}" fi done @@ -215,26 +216,12 @@ source ~/.bashrc ${RESET}" fi echo -e "${BLUE} -To set the default PAGER environment variable to use less: -echo \"export PAGER='less'\" >> ~/.bashrc && . ~/.bashrc +Edit ${CREW_PREFIX}/etc/env.d/02-pager to change the default PAGER. +more is used by default -Alternatively, you could use most. Why settle for less, right? -echo \"export PAGER='most'\" >> ~/.bashrc && . ~/.bashrc +You may wish to edit the ${CREW_PREFIX}/etc/env.d/01-editor file for an editor default. -Below are some text editor suggestions. +Chromebrew provides nano, vim and emacs as default TUI editor options. -To install 'nano', execute: -crew install nano - -Or, to get an updated version of 'vim', execute: -crew install vim - -You may wish to set the EDITOR environment variable for an editor default. - -For example, to set 'nano' as the default editor, execute: -echo \"export EDITOR='nano'\" >> ~/.bashrc && . ~/.bashrc - -To set 'vim' as the default editor, execute: -echo \"export EDITOR='vim'\" >> ~/.bashrc && . ~/.bashrc ${RESET}" echo -e "${GREEN}Chromebrew installed successfully and package lists updated.${RESET}" diff --git a/packages/aircrack_ng.rb b/packages/aircrack_ng.rb index 8903ae06a..b7b2c3c7c 100644 --- a/packages/aircrack_ng.rb +++ b/packages/aircrack_ng.rb @@ -35,7 +35,6 @@ class Aircrack_ng < Package # --with-avx512[=yes|no] use AVX-512F instruction set, [default=no] system "env CFLAGS='-flto=auto' CXXFLAGS='-flto=auto' \ LDFLAGS='-flto=auto' \ - TMPDIR=#{CREW_PREFIX}/tmp \ ./configure \ #{CREW_OPTIONS} \ --program-prefix='' --program-suffix='' \ diff --git a/packages/ansible.rb b/packages/ansible.rb index 410bf2c03..45782455d 100644 --- a/packages/ansible.rb +++ b/packages/ansible.rb @@ -25,8 +25,7 @@ class Ansible < Package depends_on 'setuptools' def self.install - system "TMPDIR=#{CREW_PREFIX}/tmp \ - pip install --prefix #{CREW_PREFIX} \ + system "pip install --prefix #{CREW_PREFIX} \ --root #{CREW_DEST_DIR} -I ansible==#{self.version}" end end diff --git a/packages/ant.rb b/packages/ant.rb index 9a3395c1a..bdfa8c566 100644 --- a/packages/ant.rb +++ b/packages/ant.rb @@ -3,23 +3,23 @@ require 'package' class Ant < Package description 'Apache Ant is a Java library and command-line tool whose mission is to drive processes described in build files as targets and extension points dependent upon each other.' homepage 'http://ant.apache.org/' - version '1.10.7' + version '1.10.9' license 'Apache-2.0' compatibility 'all' - source_url 'https://www.apache.org/dist/ant/source/apache-ant-1.10.7-src.tar.xz' - source_sha256 'c8d68b396d9e44b49668bafe0c82f8c89497915254b5395d73d6f6e41d7a0e25' + source_url 'https://downloads.apache.org/ant/source/apache-ant-1.10.9-src.tar.xz' + source_sha256 '4b2008cc60fefd424b05567e9d43a071302865d5fd8b01a807e15e381b557ec2' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/ant-1.10.7-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/ant-1.10.7-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/ant-1.10.7-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/ant-1.10.7-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/ant-1.10.9-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/ant-1.10.9-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/ant-1.10.9-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/ant-1.10.9-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '8c8f4cf7c36b17cee645c7e7b97ba96d56a61f423471ec90bfe5538c635d7c06', - armv7l: '8c8f4cf7c36b17cee645c7e7b97ba96d56a61f423471ec90bfe5538c635d7c06', - i686: '6cd682307210e3164e22a59cda0719d68476e8c3303e5fa1d262ca5a83753720', - x86_64: '4d135fc9b5b3e76f9fc614dfd93a781451d9b0901281a2b8dd6a20a28d76bc62', + binary_sha256({ + aarch64: 'e015a293ee3db3a0f4d184e0f7c07c084799013ba68912631cc2359f9f26d804', + armv7l: 'e015a293ee3db3a0f4d184e0f7c07c084799013ba68912631cc2359f9f26d804', + i686: '46c5120527b67417f6c2d800d5047840997f2bebec9e0dcd5aec92ed77922f9b', + x86_64: '0599de27a4a2b30ba490319f5aa689e99feee31e5e03cb5a69f0f5c91d0e7195' }) depends_on 'jdk8' @@ -37,15 +37,13 @@ class Ant < Package system "for bin in ant antRun antRun.pl complete-ant-cmd.pl runant.pl runant.py; do \ ln -s ../share/jdk8/bin/$bin #{CREW_DEST_PREFIX}/bin/; \ done" - end - def self.postinstall - puts - puts "To complete the installation, execute the following:".lightblue - puts "echo '# Apache Ant configuration' >> ~/.bashrc".lightblue - puts "echo 'export JAVA_HOME=#{CREW_PREFIX}/share/jdk8' >> ~/.bashrc".lightblue - puts "echo 'export ANT_HOME=$JAVA_HOME' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @antenv = <<~ANTEOF + # Apache Ant configuration + export JAVA_HOME=#{CREW_PREFIX}/share/jdk8' + export ANT_HOME=\$JAVA_HOME + ANTEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/ant", @antenv) end end diff --git a/packages/antlr4.rb b/packages/antlr4.rb index 009d3cef7..b2752653a 100644 --- a/packages/antlr4.rb +++ b/packages/antlr4.rb @@ -3,32 +3,41 @@ require 'package' class Antlr4 < Package description 'ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.' homepage 'https://www.antlr.org/' - version '4.7.1' + version '4.7.1-1' license 'BSD' compatibility 'all' source_url 'https://raw.githubusercontent.com/antlr/antlr4/4.7.1/README.md' source_sha256 '70a58ea4c4f5ed23306313782bc13f36c3529d9a990e95ab273d5deed9286d4f' - binary_url ({ + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/antlr4-4.7.1-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/antlr4-4.7.1-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/antlr4-4.7.1-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/antlr4-4.7.1-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ + binary_sha256({ + aarch64: '13ba681685e80cfc70ca3346d42038c7798eb71a867ebbeaefbe92aa4bcd63ac', + armv7l: '13ba681685e80cfc70ca3346d42038c7798eb71a867ebbeaefbe92aa4bcd63ac', + i686: '621f4cc8a6c8cf696c01c3694d1507cd51a313ee9dde90646b60de1152b143cc', + x86_64: 'dd474ad8ab5eb164714dfa647a6e6faba701228f2bc8d89d6af77437d5829d2b' }) depends_on 'jdk8' def self.install system 'curl -#LO https://www.antlr.org/download/antlr-4.7.1-complete.jar' - abort 'Checksum mismatch. :/ Try again.'.lightred unless Digest::SHA256.hexdigest( File.read('antlr-4.7.1-complete.jar') ) == 'f41dce7441d523baf9769cb7756a00f27a4b67e55aacab44525541f62d7f6688' + unless Digest::SHA256.hexdigest(File.read('antlr-4.7.1-complete.jar')) == 'f41dce7441d523baf9769cb7756a00f27a4b67e55aacab44525541f62d7f6688' + abort 'Checksum mismatch. :/ Try again.'.lightred + end system "install -Dm644 antlr-4.7.1-complete.jar #{CREW_DEST_LIB_PREFIX}/antlr-4.7.1-complete.jar" - end - def self.postinstall - puts - puts "To complete the installation, execute the following:".lightblue - puts "echo 'export CLASSPATH=\".:#{CREW_LIB_PREFIX}/antlr-4.7.1-complete.jar:$CLASSPATH\"' >> ~/.bashrc".lightblue - puts "echo 'alias antlr4=\"java -jar #{CREW_LIB_PREFIX}/antlr-4.7.1-complete.jar\"' >> ~/.bashrc".lightblue - puts "echo 'alias grun=\"java org.antlr.v4.gui.TestRig\"' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @antlrenv = <<~ANTLR_EOF + # ANTLR (ANother Tool for Language Recognition) configuration + export CLASSPATH=\".:#{CREW_LIB_PREFIX}/antlr-4.7.1-complete.jar:\$CLASSPATH\" + alias antlr4=\"java -jar #{CREW_LIB_PREFIX}/antlr-4.7.1-complete.jar\" + alias grun=\"java org.antlr.v4.gui.TestRig\" + ANTLR_EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/antlr4", @antlrenv) end end diff --git a/packages/apulse.rb b/packages/apulse.rb deleted file mode 100644 index 20bd620f2..000000000 --- a/packages/apulse.rb +++ /dev/null @@ -1,54 +0,0 @@ -require 'package' - -class Apulse < Package - description 'PulseAudio emulation for ALSA' - homepage 'https://github.com/i-rinat/apulse' - version '0.1.13' - license 'MIT and LGPL-2.1' - compatibility 'all' - source_url 'https://github.com/i-rinat/apulse/archive/v0.1.13.tar.gz' - source_sha256 '9234ec4e10e408b9c01d5f4ea768ad1fc15494217c932db2c435202a9c7b5efd' - - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/apulse-0.1.13-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/apulse-0.1.13-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/apulse-0.1.13-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/apulse-0.1.13-chromeos-x86_64.tar.xz', - }) - binary_sha256 ({ - aarch64: 'f5c79d86e9b448988428783b19faaf6f1d1ed3547d2ecd3667557530bb35ceda', - armv7l: 'f5c79d86e9b448988428783b19faaf6f1d1ed3547d2ecd3667557530bb35ceda', - i686: 'd471be802d11b38a24b55de9f6d095611e91f467c8b6850db043dab9c9ce89a6', - x86_64: '30b5533b7da5d2aeb8be93caf3e9a02db3a2f8479634d89c3dd38a290b2b6c90', - }) - - - depends_on 'alsa_lib' - depends_on 'alsa_plugins' - depends_on 'glib' - - def self.build - FileUtils.mkdir_p 'build' - FileUtils.cd('build') do - system "cmake -DCMAKE_INSTALL_PREFIX=#{CREW_PREFIX} -DCMAKE_BUILD_TYPE=Release .." - system 'make' - system "echo 'pcm.plugdmix {' > asoundrc" - system "echo ' type plug' >> asoundrc" - system "echo ' slave.pcm \"dmix\"' >> asoundrc" - system "echo '}' >> asoundrc" - end - end - - def self.install - FileUtils.cd('build') do - system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' - system "install -Dm755 asoundrc ~/.asoundrc" - end - end - - def self.postinstall - puts "To use apulse, please run the following lines :".lightblue - puts "echo 'export APULSE_PLAYBACK_DEVICE=plugdmix' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - end -end diff --git a/packages/asciinema.rb b/packages/asciinema.rb index 3bd1acc1e..40c8e4015 100644 --- a/packages/asciinema.rb +++ b/packages/asciinema.rb @@ -3,23 +3,23 @@ require 'package' class Asciinema < Package description 'Terminal session recorder' homepage 'https://asciinema.org/' - version '2.0.2' + version '2.0.2-1' license 'GPL-3+' compatibility 'all' source_url 'https://github.com/asciinema/asciinema/archive/v2.0.2.tar.gz' source_sha256 '2578a1b5611e5375771ef6582a6533ef8d40cdbed1ba1c87786fd23af625ab68' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/asciinema-2.0.2-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/asciinema-2.0.2-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/asciinema-2.0.2-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/asciinema-2.0.2-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/asciinema-2.0.2-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/asciinema-2.0.2-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/asciinema-2.0.2-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/asciinema-2.0.2-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '325ec978e978222c0b052a9e57223f2c2d70ab3ed47f8a0774332b73fa842784', - armv7l: '325ec978e978222c0b052a9e57223f2c2d70ab3ed47f8a0774332b73fa842784', - i686: '165db28c4c80d8779e6d869a363b2ec0f3b6242fe21320cd0bc93a5e478484ff', - x86_64: '30dac19c7fce14e9f1ab63a94bb312f2e9e93abcf7d237879b6a3e800dd8be23', + binary_sha256({ + aarch64: '5fddd233f9f093935c23574dc1ce6247103352e845408375fa537fd2f56675ec', + armv7l: '5fddd233f9f093935c23574dc1ce6247103352e845408375fa537fd2f56675ec', + i686: '82f850655844133b11a251428021f9d92904b6c733f68cd3f6f827987fc072ee', + x86_64: 'e2bbf8e05f6762432da17259edba89f86f28d8c145de74adc057eb1d253eae90' }) depends_on 'xdg_base' @@ -67,13 +67,4 @@ idle_time_limit = 1' > config" system "install -Dm644 config #{CREW_DEST_HOME}/.config/asciinema/config" system "touch #{CREW_DEST_HOME}/.config/asciinema/install-id" end - - def self.postinstall - puts - puts "To finish the installation, execute the following:".lightblue - puts "echo 'export LC_ALL=en_US.utf8' >> ~/.bashrc && source ~/.bashrc".lightblue - puts - puts "The configuration file is located at $HOME/.config/asciinema/config".lightblue - puts - end end diff --git a/packages/aws.rb b/packages/aws.rb deleted file mode 100644 index cd4b5e484..000000000 --- a/packages/aws.rb +++ /dev/null @@ -1,59 +0,0 @@ -require 'package' - -class Aws < Package - description 'The AWS CLI is an open source tool built on top of the AWS SDK for Python (Boto) that provides commands for interacting with AWS services.' - homepage 'https://aws.amazon.com/documentation/cli/' - version '1.17.13' - license 'Apache-2.0' - compatibility 'all' - source_url 'https://github.com/aws/aws-cli/archive/1.17.13.tar.gz' - source_sha256 '4dc8ff38ca67341021f6e2971084d7ed8b87968443e089e758b5531f1381205f' - - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/aws-1.17.13-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/aws-1.17.13-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/aws-1.17.13-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/aws-1.17.13-chromeos-x86_64.tar.xz', - }) - binary_sha256 ({ - aarch64: '8f291de2ee2c9766dedb1b60ef178fdf4fa7554e3a305c6035decbce2661fb91', - armv7l: '8f291de2ee2c9766dedb1b60ef178fdf4fa7554e3a305c6035decbce2661fb91', - i686: 'ba5feb2b679177d47da9c08b482990be1259559bfa0cc005acfcaf429412a0f0', - x86_64: '1a52ec06dd1e471b64e14f27a14a783ca7488bb6016b245b20ef29d4cbceb833', - }) - - depends_on 'setuptools' => :build - depends_on 'six' - - def self.build - system "sed -i 's,-e git://github.com/boto/botocore.git@develop#egg=botocore,botocore==1.14.13,' requirements.txt" - system "sed -i 's,-e git://github.com/boto/s3transfer.git@develop#egg=s3transfer,s3transfer==0.3.3,' requirements.txt" - end - - def self.install - system "pip install awscli==#{version} -r requirements.txt --prefix #{CREW_PREFIX} --root #{CREW_DEST_DIR}" - system "chmod +x #{CREW_DEST_PREFIX}/bin/aws" - system "chmod +x #{CREW_DEST_PREFIX}/bin/aws_completer" - end - - def self.postinstall - puts - puts "Command completion support is available for the following shells:".lightblue - puts "bash zsh".lightblue - puts - puts "To add aws completion for bash, execute the following:".lightblue - puts "echo '# aws completion' >> ~/.bashrc".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/bin/aws_bash_completer ]; then' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/bin/aws_bash_completer' >> ~/.bashrc".lightblue - puts "echo 'fi' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts - puts "To add aws completion for zsh, execute the following:".lightblue - puts "echo '# aws completion' >> ~/.zshrc".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/bin/aws_zsh_completer.sh ]; then' >> ~/.zshrc".lightblue - puts "echo ' source #{CREW_PREFIX}/bin/aws_zsh_completer.sh' >> ~/.zshrc".lightblue - puts "echo 'fi' >> ~/.zshrc".lightblue - puts "source ~/.zshrc".lightblue - puts - end -end diff --git a/packages/aws2.rb b/packages/aws2.rb new file mode 100644 index 000000000..719ce824e --- /dev/null +++ b/packages/aws2.rb @@ -0,0 +1,44 @@ +require 'package' + +class Aws2 < Package + description 'The AWS CLI is an open source tool built on top of the AWS SDK for Python (Boto) that provides commands for interacting with AWS services.' + homepage 'https://aws.amazon.com/documentation/cli/' + version '0.2.7' + license 'Apache-2.0' + compatibility 'all' + source_url 'https://files.pythonhosted.org/packages/8e/d4/56cec0935aef056e6d20581b09c64d6e6395dc3ff381ec89e7c8e7f6667f/aws2-0.2.7.tar.gz' + source_sha256 'e7f09c31b8c152ea015a002c2f2dc8745f0e2ec01cc21cc5fd92afb6b97e24a4' + + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/aws2-0.2.7-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/aws2-0.2.7-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/aws2-0.2.7-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/aws2-0.2.7-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + aarch64: '72215a5bbb0b6f63fa31492d89fe54e17630b505a64f89e37720823c3c346de3', + armv7l: '72215a5bbb0b6f63fa31492d89fe54e17630b505a64f89e37720823c3c346de3', + i686: '1420037e0c3b280a52d31c1ebcd6414449af5639df9beee939e612f16de9412f', + x86_64: 'd966588d9e78c2de23bf36800f46fa084aed2cd2603c417f24d1adba06024f9e' + }) + + depends_on 'setuptools' => :build + depends_on 'six' + + def self.install + system "pip install --prefix #{CREW_PREFIX} --root #{CREW_DEST_DIR} -I aws2==#{version} --no-warn-script-location" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d" + @awsbashrc = <<~AWSBASHRCEOF + # Amazon Web Services CLI bash completion + source #{CREW_PREFIX}/bin/aws_bash_completer + AWSBASHRCEOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/aws", @awsbashrc) + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/zsh.d" + @awszshrc = <<~AWSZSHRCEOF + # Amazon Web Services CLI zsh completion + source #{CREW_PREFIX}/bin/aws_zsh_completer.sh + AWSZSHRCEOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/aws", @awszshrc) + end +end diff --git a/packages/az.rb b/packages/az.rb deleted file mode 100644 index 30b608a98..000000000 --- a/packages/az.rb +++ /dev/null @@ -1,36 +0,0 @@ -require 'package' - -class Az < Package - description 'The Azure CLI 2.0 is Azure\'s new command-line experience for managing Azure resources.' - homepage 'https://github.com/Azure/azure-cli' - version '2.0.46' - license 'MIT' - compatibility 'i686,x86_64' - case ARCH - when 'i686', 'x86_64' - source_url 'https://github.com/Azure/azure-cli/archive/azure-cli-2.0.46.tar.gz' - source_sha256 '9a571e16e832614a064311dffea884ab4ae4c2739010b58c34fb2b190484d41c' - end - - binary_url ({ - i686: 'https://dl.bintray.com/chromebrew/chromebrew/az-2.0.46-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/az-2.0.46-chromeos-x86_64.tar.xz', - }) - binary_sha256 ({ - i686: 'f94d828a2eac6c69ec330f2434e90de97f77c19e5de09c6370e1f4ecf53792da', - x86_64: 'e21a228cfaf6d85c0407451796c869a7a20da8ccd8de15380a28c1850c2e4347', - }) - - def self.install - system "pip install azure-cli -r requirements.txt --root #{CREW_DEST_DIR} --prefix #{CREW_PREFIX}" - system "chmod +x #{CREW_DEST_PREFIX}/bin/az" - end - - def self.postinstall - puts - puts "To add command completion, execute the following:".lightblue - puts "echo 'source #{CREW_PREFIX}/share/azure-cli/az.completion' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts - end -end diff --git a/packages/azure_cli.rb b/packages/azure_cli.rb new file mode 100644 index 000000000..4e37b1190 --- /dev/null +++ b/packages/azure_cli.rb @@ -0,0 +1,35 @@ +require 'package' + +class Azure_cli < Package + description 'The Azure CLI 2.0 is Azure\'s new command-line experience for managing Azure resources.' + homepage 'https://github.com/Azure/azure-cli' + version '2.21.0' + license 'MIT' + compatibility 'i686 x86_64' + case ARCH + when 'i686', 'x86_64' + source_url 'https://github.com/Azure/azure-cli/archive/refs/tags/azure-cli-2.21.0.tar.gz' + source_sha256 'bbe4a1f85418d239444717f2c9706a87f81fd2515bb0bb4b4e48548fd3e08caa' + + binary_url({ + i686: 'https://dl.bintray.com/chromebrew/chromebrew/azure_cli-2.21.0-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/azure_cli-2.21.0-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + i686: '222e74caa74df6ab129f33f90aea86e65d000ebc4f5d78cb7f3ec2f98421ed3c', + x86_64: '073b64f7104e298205afe623588c95f2e0cb17e664e53ff46042c9bd4076d2c8' + }) + end + + def self.install + system "pip install --prefix #{CREW_PREFIX} --root #{CREW_DEST_DIR} -I azure-cli==#{version} --no-warn-script-location" + system "chmod +x #{CREW_DEST_PREFIX}/bin/az" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @azureenv = <<~AZUREEOF + # Microsoft Azure CLI bash completion + source #{CREW_PREFIX}/share/azure-cli/az.completion + AZUREEOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/az", @azureenv) + end +end diff --git a/packages/bash.rb b/packages/bash.rb index f28edffd2..de88dea13 100644 --- a/packages/bash.rb +++ b/packages/bash.rb @@ -1,35 +1,32 @@ require 'package' class Bash < Package - description 'The Bourne Again SHell' + description 'The GNU Bourne Again SHell is a Bourne-compatible shell with useful csh and ksh features.' homepage 'https://www.gnu.org/software/bash/' - version '5.1' + version '5.1-1-2' license 'GPL-3' compatibility 'all' source_url 'https://ftpmirror.gnu.org/bash/bash-5.1.tar.gz' source_sha256 'cc012bc860406dcf42f64431bcd3d2fa7560c02915a601aba9cd597a39329baa' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/bash-5.1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/bash-5.1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/bash-5.1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/bash-5.1-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/bash-5.1-1-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/bash-5.1-1-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/bash-5.1-1-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/bash-5.1-1-2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'b2af2966a519ae1575ac142ea44f9884dd1bb00648f04c123e605368550568d1', - armv7l: 'b2af2966a519ae1575ac142ea44f9884dd1bb00648f04c123e605368550568d1', - i686: '0c28792af122162259e8d0069e0eaf7709336b32358fc765f0e11df7faaac4c1', - x86_64: 'f313ac9ef7294303e75db4bb4fbc26a12346825498f772c8c672cab71e23a460', + binary_sha256({ + aarch64: '72fd49fb8fcc718587e71df1df7eb69812fab5ae2e5706a3093254af2f44b8ec', + armv7l: '72fd49fb8fcc718587e71df1df7eb69812fab5ae2e5706a3093254af2f44b8ec', + i686: 'aebd997e7f52bd91b3aa62cffc07dd613f4900be075f4ca093f15be13e388d17', + x86_64: '232cd95a5feda0c9c7dc6bbcf6015d8b60ffcb760215d7aad1d6ac8bba11316e' }) - depends_on 'llvm' => :build # Needed only for lld, which appears to allow linking libiconv where ld does not. - depends_on 'ncurses' => :build # A static enabled ncurses build w/o "--without-normal" is required to build. - case ARCH when 'i686' - @CONFIGUREFLAGS = '--without-bash-malloc' - when 'aarch64','armv7l','x86_64' - @CONFIGUREFLAGS = '--with-bash-malloc' + @CONFIGUREFLAGS = '--without-bash-malloc' + when 'aarch64', 'armv7l', 'x86_64' + @CONFIGUREFLAGS = '--with-bash-malloc' end def self.build @@ -49,17 +46,16 @@ class Bash < Package end def self.install - system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' - FileUtils.ln_s "#{CREW_PREFIX}/bin/bash", "#{CREW_DEST_PREFIX}/bin/sh" - end + system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' + FileUtils.ln_s "#{CREW_PREFIX}/bin/bash", "#{CREW_DEST_PREFIX}/bin/sh" - def self.postinstall - puts - puts "To complete the installation, execute the following:".lightblue - puts "echo '# Make newer version of bash startup automatically' >> ~/.bashrc".lightblue - puts "echo '#{CREW_PREFIX}/bin/sh' >> ~/.bashrc".lightblue - puts "echo \"PS1=$PS1\" >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @bashenv = <<~BASHEOF + # Make Chromebrew's version of bash start automatically + # This currently seems to be broken, uncomment at your own risk + # #{CREW_PREFIX}/bin/bash + # PS1=$PS1 + BASHEOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/bash", @bashenv) end end diff --git a/packages/bash_completion.rb b/packages/bash_completion.rb index 052aae8fb..167a94d6f 100644 --- a/packages/bash_completion.rb +++ b/packages/bash_completion.rb @@ -3,42 +3,39 @@ require 'package' class Bash_completion < Package description 'Programmable completion functions for bash' homepage 'https://github.com/scop/bash-completion' - version '2.9' + version '2.11' license 'GPL-2+' compatibility 'all' - source_url 'https://github.com/scop/bash-completion/archive/2.9.tar.gz' - source_sha256 'fddd9e6739c972eea95d1f0e0e84fa9a17a5935ba21eab37308b27580cc4d790' + source_url 'https://github.com/scop/bash-completion/archive/refs/tags/2.11.tar.gz' + source_sha256 '16adefabf43ec8ffb473704f5724d775c2f47e9f750d7d608f0251ec21fe8813' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/bash_completion-2.9-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/bash_completion-2.9-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/bash_completion-2.9-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/bash_completion-2.9-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/bash_completion-2.11-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/bash_completion-2.11-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/bash_completion-2.11-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/bash_completion-2.11-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '502492db2fbc07546e7f0972f01298e2ac7519ec6a511ffdb3475534fdd79ebf', - armv7l: '502492db2fbc07546e7f0972f01298e2ac7519ec6a511ffdb3475534fdd79ebf', - i686: 'e38797e5345dcd15c7d948c6dde71fff17f000934112776cccb87fa25ed46d1d', - x86_64: '5d8a424a3ef39742f9448b4da8225fbc1e75d9198023697a8c970ea5b4d6d0ae', + binary_sha256({ + aarch64: 'dc426ff82ec4b0feb70d9a8b271269873127f95a5f8b8cde27c4aa38468afd27', + armv7l: 'dc426ff82ec4b0feb70d9a8b271269873127f95a5f8b8cde27c4aa38468afd27', + i686: '35c16db77e47df16451bfd3ecc9759c6debe9e74523a3644cf47fbc3b211fa3e', + x86_64: '75f84fe83ae7e4c308dc62ea26a1dffd886f1efe486f0ed9ba8587ee3e7f42bc' }) def self.build system 'autoreconf -i' - system "./configure --prefix=#{CREW_PREFIX}" + system "./configure #{CREW_OPTIONS}" system 'make' end def self.install - system "make", "DESTDIR=#{CREW_DEST_DIR}", "install" - end + system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' - def self.postinstall - puts - puts "To complete installation, execute the following:".lightblue - puts "echo '# bash completion' >> ~/.bashrc".lightblue - puts "echo '[[ $PS1 && -f #{CREW_PREFIX}/share/bash-completion/bash_completion ]] && \\' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/share/bash-completion/bash_completion' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @bashcompletionenv = <<~BASHCOMPLETIONEOF + # Bash completion configuration + source #{CREW_PREFIX}/share/bash-completion/bash_completion + BASHCOMPLETIONEOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/bash_completion", @bashcompletionenv) end end diff --git a/packages/buildessential.rb b/packages/buildessential.rb index 6bb4c27ce..11471facc 100644 --- a/packages/buildessential.rb +++ b/packages/buildessential.rb @@ -3,12 +3,15 @@ require 'package' class Buildessential < Package description 'A collection of tools essential to compile and build software.' homepage '' - version '1.10' + version '1.11' license 'GPL-3+' compatibility 'all' is_fake + # Some package installs won't work without this + depends_on 'crew_profile_base' + #install first to get ldconfig depends_on 'glibc' depends_on 'gcc10' diff --git a/packages/ccache.rb b/packages/ccache.rb index d136d5e18..ffa585062 100644 --- a/packages/ccache.rb +++ b/packages/ccache.rb @@ -3,39 +3,38 @@ require 'package' class Ccache < Package description 'Compiler cache that speeds up recompilation by caching previous compilations' homepage 'https://ccache.samba.org/' - version '4.1' + version '4.2.1' license 'GPL-3 and LGPL-3' compatibility 'all' - source_url 'https://github.com/ccache/ccache/releases/download/v4.1/ccache-4.1.tar.xz' - source_sha256 '5fdc804056632d722a1182e15386696f0ea6c59cb4ab4d65a54f0b269ae86f99' + source_url 'https://github.com/ccache/ccache/releases/download/v4.2.1/ccache-4.2.1.tar.xz' + source_sha256 '9d6ba1cdefdc690401f404b747d81a9a1802b17af4235815866b7620d980477e' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/ccache-4.1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/ccache-4.1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/ccache-4.1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/ccache-4.1-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/ccache-4.2.1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/ccache-4.2.1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/ccache-4.2.1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/ccache-4.2.1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '6ac906edece6c4ec603f9b5816f67a8863352f43f6a9814cc0db53da351e2a79', - armv7l: '6ac906edece6c4ec603f9b5816f67a8863352f43f6a9814cc0db53da351e2a79', - i686: '3e76036380a5f5c18856788c82a2c9a56cb1c5321b9ae8ed78a18d164fe4b80f', - x86_64: '5c4c9e014f23977f2f031eb9f9b367881a20fa8effeac9e38289cd723aa11e62', + binary_sha256({ + aarch64: 'abe2f4a839d98bf3946c59f731090a02f2436b832685fd7bbf4a952a54537b16', + armv7l: 'abe2f4a839d98bf3946c59f731090a02f2436b832685fd7bbf4a952a54537b16', + i686: '1be1b4baeb1885eedab0e3faddce5cda98921195a14b9523c222f97a27ddfc9f', + x86_64: 'b0ba3c720acaaa3a88af3ac5266aa1370b5a4ccf4fa9861d917b745ee337d023' }) depends_on 'xdg_base' depends_on 'asciidoc' => :build def self.build - ENV['CFLAGS'] = '-flto' - ENV['CXXFLAGS'] = '-flto' Dir.mkdir 'build' Dir.chdir 'build' do - system "cmake -G Ninja \ + system "env CFLAGS='-flto' CXXFLAGS='-flto' \ + cmake -G Ninja \ #{CREW_CMAKE_OPTIONS} \ -DCMAKE_INSTALL_SYSCONFDIR=#{CREW_PREFIX}/etc \ -DZSTD_FROM_INTERNET=ON \ .." - system "ninja" + system 'ninja' end end @@ -45,20 +44,20 @@ class Ccache < Package FileUtils.mkdir_p "#{CREW_DEST_LIB_PREFIX}/ccache/bin" system "for _prog in gcc g++ c++; do ln -s #{CREW_PREFIX}/bin/ccache #{CREW_DEST_LIB_PREFIX}/ccache/bin/$_prog - ln -s #{CREW_PREFIX}/bin/ccache #{CREW_DEST_LIB_PREFIX}/ccache/bin/${CHOST}-$_prog + ln -s #{CREW_PREFIX}/bin/ccache #{CREW_DEST_LIB_PREFIX}/ccache/bin/#{CREW_TGT}-$_prog done for _prog in cc clang clang++; do ln -s #{CREW_PREFIX}/bin/ccache #{CREW_DEST_LIB_PREFIX}/ccache/bin/$_prog done" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @ccacheenv = <<~CCACHEEOF + # ccache configuration + if [ "\$PATH" -eq "*ccache/bin*" ]; then + export PATH="#{CREW_LIB_PREFIX}/ccache/bin:\$PATH" + fi + CCACHEEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/ccache", @ccacheenv) end end - - def self.postinstall - system "ccache --set-config=sloppiness=file_macro,locale,time_macros" - puts "To compile using ccache you need to add the ccache bin folder to your path".lightblue - puts "e.g. put this in your ~/bashrc:".lightblue - puts "export PATH=#{CREW_LIB_PREFIX}/ccache/bin::#{CREW_PREFIX}/bin:/usr/bin:/bin".lightblue - # To modify a package use the following: - # ENV['PATH'] = "#{CREW_LIB_PREFIX}/ccache/bin:#{CREW_PREFIX}/bin:/usr/bin:/bin" - end end diff --git a/packages/cf.rb b/packages/cf.rb index 943d9fbf1..917ed872e 100644 --- a/packages/cf.rb +++ b/packages/cf.rb @@ -3,55 +3,41 @@ require 'package' class Cf < Package description 'The official command line client for Cloud Foundry' homepage 'https://docs.cloudfoundry.org/cf-cli' - version '6.36.1' + version '6.53.0' license 'Apache-2.0' - compatibility 'i686,x86_64' + compatibility 'i686 x86_64' case ARCH - when 'i686', 'x86_64' - source_url 'https://raw.githubusercontent.com/cloudfoundry/cli/v6.36.1/README.md' - source_sha256 'e760fc21cdee6960dbd864e48c08630eabe33af0bb1bb4d412a22d4bb9ac6a06' + when 'i686' + source_url 'https://s3-us-west-1.amazonaws.com/cf-cli-releases/releases/v6.53.0/cf-cli_6.53.0_linux_i686.tgz' + source_sha256 'bd4620f116bfd3093fb6f5c20ceab94be32539839b615223b65bc14d75dae27b' + when 'x86_64' + source_url 'https://s3-us-west-1.amazonaws.com/cf-cli-releases/releases/v6.53.0/cf-cli_6.53.0_linux_x86-64.tgz' + source_sha256 '09664d1469fb8a0ddba804343121aba7d8f64ba6bfde75a53f6e29d6600b2342' end - binary_url ({ - i686: 'https://dl.bintray.com/chromebrew/chromebrew/cf-6.36.1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/cf-6.36.1-chromeos-x86_64.tar.xz', + binary_url({ + i686: 'https://dl.bintray.com/chromebrew/chromebrew/cf-6.53.0-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/cf-6.53.0-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - i686: '8fc3e0c54791538211b3b5d2c7b4756da9c122637917baeceb025dda4be5347d', - x86_64: 'd99c348433cef60967da0322bbf3035e28959a24d50c5042c489cf3b14d35feb', + binary_sha256({ + i686: 'bd74201bfadd439ea2e65827c8c6ff725bbd70a7931efe90e6f97b4628e10b8e', + x86_64: '1607f02390272191a8a0c393a9a5a9cf5389df774e158bd2cb669b0edd5c3570' }) def self.install - case ARCH - when 'i686' - system 'curl -#LO https://s3-us-west-1.amazonaws.com/cf-cli-releases/releases/v6.36.1/cf-cli_6.36.1_linux_i686.tgz' - abort 'Checksum mismatch. :/ Try again.'.lightred unless Digest::SHA256.hexdigest( File.read('cf-cli_6.36.1_linux_i686.tgz') ) == '9e6383521345370e9a266d11ff4f827e853d2dfbf999bcb9e6a0f62ec69c3b0f' - system 'tar xvf cf-cli_6.36.1_linux_i686.tgz' - system "install -Dm755 cf #{CREW_DEST_PREFIX}/bin/cf" - system "curl -#L -o cf.bash https://raw.githubusercontent.com/cloudfoundry/cli/v6.36.1/ci/installers/completion/cf" - abort 'Checksum mismatch. :/ Try again.'.lightred unless Digest::SHA256.hexdigest( File.read('cf.bash') ) == 'f3f05a2414075c00b101b05f73cf260b9eec9966659adf2957c1b2937bd4c48e' - system "install -Dm644 cf.bash #{CREW_DEST_PREFIX}/share/cf/bash-completion/cf.bash" - when 'x86_64' - system 'curl -#LO https://s3-us-west-1.amazonaws.com/cf-cli-releases/releases/v6.36.1/cf-cli_6.36.1_linux_x86-64.tgz' - abort 'Checksum mismatch. :/ Try again.'.lightred unless Digest::SHA256.hexdigest( File.read('cf-cli_6.36.1_linux_x86-64.tgz') ) == 'd5e59258183939305f44c471dab41a000290446399cc9b206b107c7bdb8ce180' - system 'tar xvf cf-cli_6.36.1_linux_x86-64.tgz' - system "install -Dm755 cf #{CREW_DEST_PREFIX}/bin/cf" - system "curl -#L -o cf.bash https://raw.githubusercontent.com/cloudfoundry/cli/v6.36.1/ci/installers/completion/cf" - abort 'Checksum mismatch. :/ Try again.'.lightred unless Digest::SHA256.hexdigest( File.read('cf.bash') ) == 'f3f05a2414075c00b101b05f73cf260b9eec9966659adf2957c1b2937bd4c48e' - system "install -Dm644 cf.bash #{CREW_DEST_PREFIX}/share/cf/bash-completion/cf.bash" - end - end - - def self.postinstall - case ARCH - when 'i686', 'x86_64' - puts - puts "To add bash completion, execute the following:".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/share/cf/bash-completion/cf.bash ]; then' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/share/cf/bash-completion/cf.bash' >> ~/.bashrc".lightblue - puts "echo 'fi' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/bin/" + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/cf/bash-completion/" + FileUtils.install 'cf', "#{CREW_DEST_PREFIX}/bin/cf", mode: 0o755 + system 'curl -#Lo cf.bash https://raw.githubusercontent.com/cloudfoundry/cli/v6.36.1/ci/installers/completion/cf' + unless Digest::SHA256.hexdigest(File.read('cf.bash')) == 'f3f05a2414075c00b101b05f73cf260b9eec9966659adf2957c1b2937bd4c48e' + abort 'Checksum mismatch. :/ Try again.'.lightred end + FileUtils.install 'cf.bash', "#{CREW_DEST_PREFIX}/share/cf/bash-completion/cf.bash", mode: 0o644 + @env = <<~EOF + # Cloud Foundry CLI configuration + source #{CREW_PREFIX}/share/cf/bash-completion/cf.bash + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/cf", @env) end end diff --git a/packages/chruby.rb b/packages/chruby.rb index ff21a3773..bb8114f65 100644 --- a/packages/chruby.rb +++ b/packages/chruby.rb @@ -3,40 +3,37 @@ require 'package' class Chruby < Package description 'Changes the current Ruby' homepage 'https://github.com/postmodern/chruby' - version '0.3.9' + version '0.3.9-1' license 'MIT' compatibility 'all' source_url 'https://github.com/postmodern/chruby/archive/v0.3.9.tar.gz' source_sha256 '7220a96e355b8a613929881c091ca85ec809153988d7d691299e0a16806b42fd' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/chruby-0.3.9-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/chruby-0.3.9-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/chruby-0.3.9-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/chruby-0.3.9-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/chruby-0.3.9-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/chruby-0.3.9-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/chruby-0.3.9-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/chruby-0.3.9-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'dbd2de39de5e82f32af9659ff2b13827f06d4b6921c69bc2f7c8a2601f505257', - armv7l: 'dbd2de39de5e82f32af9659ff2b13827f06d4b6921c69bc2f7c8a2601f505257', - i686: '180c8642ca54c7372f4ddba770bec5791b3b158edbf91e1482330d5b523c3d81', - x86_64: 'b33bbb7216f5599f57b1a19e0db653345199a8818e27e41944f2b46fc580bc2d', + binary_sha256({ + aarch64: '7815a4b47a82634d0a68f89d1bfe8b66f413ce68665696101032f1fb81531ee3', + armv7l: '7815a4b47a82634d0a68f89d1bfe8b66f413ce68665696101032f1fb81531ee3', + i686: '9196e553c0592330237bf487ac31688b759262f4900afdd96daed804b2041972', + x86_64: 'e8b096839ebbcfb351367aef74d53d3c1aeae6c8b166024971b6cdcac178d62b' }) def self.build - system "make" + system 'make' end def self.install - system "make", "DESTDIR=#{CREW_DEST_DIR}", "install" - end + system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' - def self.postinstall - puts - puts "To finish the installation, execute the following:".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/share/chruby/chruby.sh ]; then' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/share/chruby/chruby.sh' >> ~/.bashrc".lightblue - puts "echo 'fi' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @chrubyenv = <<~CHRUBYEOF + # chruby configuration + source #{CREW_PREFIX}/share/chruby/chruby.sh + CHRUBYEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/chruby", @chrubyenv) end end diff --git a/packages/commacd.rb b/packages/commacd.rb index 66b5249b1..efd8765cc 100644 --- a/packages/commacd.rb +++ b/packages/commacd.rb @@ -3,37 +3,33 @@ require 'package' class Commacd < Package description 'A faster way to move around (Bash 3+)' homepage 'https://github.com/shyiko/commacd' - version '0.4.0' + version '0.4.0-1' license 'MIT' compatibility 'all' source_url 'https://github.com/shyiko/commacd/archive/v0.4.0.tar.gz' source_sha256 'e2db36c6c8dcd4e65cd8d2d90101d5b7aee78872ae29d2d47ab7fc3b263897cd' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/commacd-0.4.0-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/commacd-0.4.0-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/commacd-0.4.0-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/commacd-0.4.0-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/commacd-0.4.0-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/commacd-0.4.0-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/commacd-0.4.0-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/commacd-0.4.0-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '2c4ee0774eb845fc807861bfd9cb08637a1b75b14b7b7c9e9b9c9b9a906b1de4', - armv7l: '2c4ee0774eb845fc807861bfd9cb08637a1b75b14b7b7c9e9b9c9b9a906b1de4', - i686: 'cd3d5341bc1bf38ec7a9080c815a948aac3e662a86e76854cf502aa2bde55b7b', - x86_64: '33610884cc935710e12a5b3c7fff1b918549c3dc3fd1b61f604adca6ac751dd8', + binary_sha256({ + aarch64: 'e988a0bb11bc431c3c8ea8fb2e18707f7189e2c008c13289095fb53c0a381eef', + armv7l: 'e988a0bb11bc431c3c8ea8fb2e18707f7189e2c008c13289095fb53c0a381eef', + i686: 'a995f9dcdb8b5573150bb7c7fc6a7edf0c8dd3881f95f924fef658fa51494463', + x86_64: '5925aa1a194921e7e3e081081bc61e2f195644fea888f11c00eb5f7c9ff13947' }) def self.install system "install -Dm644 commacd.bash #{CREW_DEST_PREFIX}/share/commacd/commacd.bash" - end - def self.postinstall - puts - puts "To complete installation, execute the following:".lightblue - puts "echo '# commacd completion' >> ~/.bashrc".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/share/commacd/commacd.bash ]; then' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/share/commacd/commacd.bash' >> ~/.bashrc".lightblue - puts "echo 'fi' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @commacdenv = <<~COMMACDEOF + # Commacd configuration + source #{CREW_PREFIX}/share/commacd/commacd.bash + COMMACDEOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/commacd", @commacdenv) end end diff --git a/packages/cowsay.rb b/packages/cowsay.rb index fdbf31236..c7bb4fd01 100644 --- a/packages/cowsay.rb +++ b/packages/cowsay.rb @@ -3,22 +3,33 @@ require 'package' class Cowsay < Package description 'cowsay is a program that generates ASCII pictures of a cow with a message.' homepage 'https://github.com/tnalpgge/rank-amateur-cowsay/' - version '3.04' + version '3.04-1' license 'GPL-3' compatibility 'all' source_url 'https://github.com/tnalpgge/rank-amateur-cowsay/archive/cowsay-3.04.tar.gz' source_sha256 'd8b871332cfc1f0b6c16832ecca413ca0ac14d58626491a6733829e3d655878b' + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/cowsay-3.04-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/cowsay-3.04-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/cowsay-3.04-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/cowsay-3.04-1-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + aarch64: '3cd6ecc3ce8521dd6e9d598bf72437cb5ab6982ef9d0a8eaa2d991cf57ed7bac', + armv7l: '3cd6ecc3ce8521dd6e9d598bf72437cb5ab6982ef9d0a8eaa2d991cf57ed7bac', + i686: '1be94667059deddba4a0ab9b7fdfd3da5c6cd3b5ddc0e26a8b9e4d3ee392e252', + x86_64: 'fd12dde923ae983c6832731ce3091ce1149b0a8df87a1f8df20c2c3f77bec6dd' + }) + def self.install system "sh install.sh #{CREW_DEST_PREFIX}" - end - def self.postinstall - puts - puts "To finish the installation, execute the following:".lightblue - puts "echo '# Set COWPATH for cowsay' >> ~/.bashrc".lightblue - puts "echo 'export COWPATH=#{CREW_PREFIX}/share/cows' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @cowsayenv = <<~COWSAYEOF + # Set COWPATH for cowsay + export COWPATH=#{CREW_PREFIX}/share/cows + COWSAYEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/cowsay", @cowsayenv) end end diff --git a/packages/crew_profile_base.rb b/packages/crew_profile_base.rb new file mode 100644 index 000000000..bce3424ec --- /dev/null +++ b/packages/crew_profile_base.rb @@ -0,0 +1,91 @@ +require 'package' + +class Crew_profile_base < Package + description 'Crew-profile-base sets up Chromebrew\'s environment capabilities.' + homepage 'https://github.com/chromebrew/crew-profile-base' + version '0.0.1' + license 'GPL-3+' + compatibility 'all' + source_url 'file:///dev/null' + source_sha256 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' + + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/crew_profile_base-0.0.1-pre6-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/crew_profile_base-0.0.1-pre6-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/crew_profile_base-0.0.1-pre6-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/crew_profile_base-0.0.1-pre6-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + aarch64: '042a8b84951511fbc017b2418b8c1eb92d40cba81e1e4e00c0e1d903ad2af032', + armv7l: '042a8b84951511fbc017b2418b8c1eb92d40cba81e1e4e00c0e1d903ad2af032', + i686: 'c354988e590dbe7cb5d40f683c2a6ec8aecaf497d5844f75bc7a211690ab4406', + x86_64: '6ecb01e0cbee6a2bee0b8d86b5fc6d86db92aacf9e2ef2ff892b3d846d5bb4dc' + }) + + def self.install + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d" + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/profile.d" + end + + def self.postinstall + # Extract as module in postinstall to avoid creating package binaries. + # Turn off git warnings. + system 'git config --global advice.detachedHead false' + system 'git config --global init.defaultBranch main' + @git_dir = 'crew_profile_base_git' + @git_hash = version + @git_url = 'https://github.com/chromebrew/crew-profile-base' + FileUtils.rm_rf(@git_dir) + FileUtils.mkdir_p(@git_dir) + Dir.chdir @git_dir do + system 'git init' + system "git remote add origin #{@git_url}" + system "git fetch --depth 1 origin #{@git_hash}" + system 'git checkout FETCH_HEAD' + + # Don't overwrite custom changes + FileUtils.rm './src/env.d/99-custom' if File.exist? "#{CREW_PREFIX}/etc/env.d/99-custom" + FileUtils.rm './src/profile.d/99-custom' if File.exist? "#{CREW_PREFIX}/etc/profile.d/99-custom" + FileUtils.rm './src/env.d/00-locale' if File.exist? "#{CREW_PREFIX}/etc/env.d/00-locale" + FileUtils.rm './src/env.d/01-editor' if File.exist? "#{CREW_PREFIX}/etc/env.d/01-editor" + FileUtils.rm './src/env.d/02-pager' if File.exist? "#{CREW_PREFIX}/etc/env.d/02-pager" + + FileUtils.mkdir_p "#{CREW_PREFIX}/etc/" + FileUtils.cp_r Dir.glob('./src/*'), "#{CREW_PREFIX}/etc/" + + # Remove stale files from the last install + FileUtils.rm "#{HOME}/.bashrc.bak" if File.exist? "#{HOME}/.bashrc.bak" + FileUtils.rm "#{HOME}/.zshrc.bak" if File.exist? "#{HOME}/.zshrc.bak" + + # Don't overwrite a custom shell rc + @_str = "source #{CREW_PREFIX}/etc/profile" + FileUtils.touch "#{HOME}/.bashrc" unless File.exist? "#{HOME}/.bashrc" + FileUtils.touch "#{HOME}/.zshrc" unless File.exist? "#{HOME}/.zshrc" + FileUtils.mv "#{HOME}/.bashrc", "#{HOME}/.bashrc.bak" if `grep -c '#{@_str}' #{HOME}/.bashrc`.to_i.zero? + FileUtils.mv "#{HOME}/.zshrc", "#{HOME}/.zshrc.bak" if `grep -c '#{@_str}' #{HOME}/.zshrc`.to_i.zero? + + # Write our rc files + @crew_rcfile = <<~CREW_PROFILE_EOF + # DO NOT DELETE THIS LINE + # See #{CREW_PREFIX}/etc/profile for further details + source #{CREW_PREFIX}/etc/profile + + # Put your stuff under this comment + CREW_PROFILE_EOF + # Must write directly to HOME and not CREW_DEST_HOME to prevent chromebrew from removing ~/.bashrc during reinstall + IO.write("#{HOME}/.bashrc", @crew_rcfile) unless File.exist? "#{HOME}/.bashrc" + IO.write("#{HOME}/.zshrc", @crew_rcfile) unless File.exist? "#{HOME}/.zshrc" + + # Don't overwrite a custom shell rc part 2 + system "cat #{HOME}/.bashrc.bak >> #{HOME}/.bashrc" if File.exist? "#{HOME}/.bashrc.bak" + system "cat #{HOME}/.zshrc.bak >> #{HOME}/.zshrc" if File.exist? "#{HOME}/.zshrc.bak" + + puts + puts 'IT IS IMPERATIVE TO THE FUNCTION OF CHROMEBREW FOR'.lightblue + puts "#{HOME}/.bashrc to contain the line 'source #{CREW_PREFIX}/etc/profile'.".lightblue + puts 'This should have happened automatically.'.lightblue + puts "If the line doesn't exist, add it now and report a bug at https://github.com/chromebrew/crew-profile-base/issues.".lightblue + puts + end + end +end diff --git a/packages/depot_tools.rb b/packages/depot_tools.rb index d6728924c..0aadc0bf4 100644 --- a/packages/depot_tools.rb +++ b/packages/depot_tools.rb @@ -3,46 +3,57 @@ require 'package' class Depot_tools < Package description 'Chromium uses a package of scripts, the depot_tools, to manage interaction with the Chromium source code repository and the Chromium development process.' homepage 'https://dev.chromium.org/developers/how-tos/depottools' - version '906bfde9' + @_ver = 'da768751' + version @_ver license 'BSD-Google' compatibility 'all' source_url 'file:///dev/null' source_sha256 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' - binary_url ({ + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/depot_tools-da768751-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/depot_tools-da768751-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/depot_tools-da768751-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/depot_tools-da768751-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ + binary_sha256({ + aarch64: '312855d9469f02e0cd5e58743c894ff33f4025e51b86be2a434257e9f0113198', + armv7l: '312855d9469f02e0cd5e58743c894ff33f4025e51b86be2a434257e9f0113198', + i686: 'e785879988280df835d5ef3311a5c959443cf92f60c5e6d06ed97240b1f5a0a7', + x86_64: '31ac1d57078cb3d9dd42c8473df0e4024629ed0bd293f962a404b62e9c9fa584' }) depends_on 'xdg_base' def self.install - system 'git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git' + system 'git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git --depth 10' Dir.chdir 'depot_tools' do - system "git checkout #{version}" - FileUtils.rm_rf 'man/src' + system "git checkout #{@_ver}" + FileUtils.rm_rf 'man/src/' FileUtils.rm_rf Dir.glob('.git*') - system 'find -name \'*.bat\' -exec rm {} +' - FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/depot_tools" - FileUtils.mv 'man/', "#{CREW_DEST_PREFIX}/share" - FileUtils.cp_r '.', "#{CREW_DEST_PREFIX}/share/depot_tools" + system 'find -name \'*.bat\' -delete' + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/depot_tools/" + FileUtils.mkdir_p "#{CREW_DEST_MAN_PREFIX}/" + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/doc/depot_tools/" + FileUtils.mv Dir.glob('man/html/*.html'), "#{CREW_DEST_PREFIX}/share/doc/depot_tools/" + FileUtils.mv Dir.glob('man/*'), CREW_DEST_MAN_PREFIX + FileUtils.rm_r 'man/' + FileUtils.mv Dir.glob('*'), "#{CREW_DEST_PREFIX}/share/depot_tools" FileUtils.mkdir_p "#{CREW_DEST_HOME}/.config/.vpython-root" FileUtils.mkdir_p "#{CREW_DEST_HOME}/.config/.vpython_cipd_cache" FileUtils.ln_s "#{HOME}/.config/.vpython-root/", "#{CREW_DEST_HOME}/.vpython-root" FileUtils.ln_s "#{HOME}/.config/.vpython_cipd_cache/", "#{CREW_DEST_HOME}/.vpython_cipd_cache" end + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @depot_tools_env = <<~DEPOT_TOOLS_EOF + # Add depot-tools to path + PATH="$PATH:#{CREW_PREFIX}/share/depot_tools" + DEPOT_TOOLS_EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/depot_tools", @depot_tools_env) end - def self.postinstall - puts - puts "To finish the installation, execute the following:".lightblue - puts "echo 'export PATH=\$PATH:#{CREW_PREFIX}/share/depot_tools' >> ~/.bashrc && source ~/.bashrc".lightblue - puts - puts "To get started, type 'man depot_tools_tutorial'.".lightblue - puts - puts "To completely remove, execute the following:".lightblue - puts "crew remove depot_tools".lightblue - puts "sudo rm -rf ~/.config/.vpython*".lightblue - puts + def self.remove + FileUtils.rm_rf Dir.glob("#{HOME}/.config/.vpython*") end end diff --git a/packages/docbook_xml.rb b/packages/docbook_xml.rb index ec273ab84..1f96e368c 100644 --- a/packages/docbook_xml.rb +++ b/packages/docbook_xml.rb @@ -3,23 +3,18 @@ require 'package' class Docbook_xml < Package description 'Meta package for all versions of docbook_xml' homepage 'http://www.docbook.org' - version '5.1-2' + version '5.1-2-1' license 'MIT' compatibility 'all' is_fake - # Docbook common postinstall block - ENV['XML_CATALOG_FILES'] = "#{CREW_PREFIX}/etc/xml/catalog" - - xml_catalog_files_in_bashrc = `grep -c "XML_CATALOG_FILES" ~/.bashrc || true` - unless xml_catalog_files_in_bashrc.to_i.positive? - puts "Putting \"export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog\" in ~/.bashrc".lightblue - system "echo 'export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end - # End Docbook common postinstall block + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @env = <<~EOF + # Docbook_xml configuration + XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/docbook_xml", @env) depends_on 'xmlcatmgr' depends_on 'docbook_xml412' diff --git a/packages/docbook_xml412.rb b/packages/docbook_xml412.rb index 4a8d521d1..07450d4a9 100644 --- a/packages/docbook_xml412.rb +++ b/packages/docbook_xml412.rb @@ -4,25 +4,26 @@ class Docbook_xml412 < Package description 'A widely used XML scheme for writing documentation and help' homepage 'https://www.oasis-open.org/docbook/' @_ver = '4.1.2' - version @_ver + version "#{@_ver}-1" license 'MIT' compatibility 'all' source_url 'https://docbook.org/xml/4.1.2/docbkx412.zip' source_sha256 '30f0644064e0ea71751438251940b1431f46acada814a062870f486c772e7772' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml412-4.1.2-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml412-4.1.2-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml412-4.1.2-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml412-4.1.2-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml412-4.1.2-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml412-4.1.2-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml412-4.1.2-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml412-4.1.2-1-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '7a71988ef51b7480522c314559f76c3c9334c1a55f6981dcea536badafe3ffd9', - armv7l: '7a71988ef51b7480522c314559f76c3c9334c1a55f6981dcea536badafe3ffd9', - i686: 'a760d0c0a67601560012cc48bd88c5e45b853d6f8636a20ab8532729cbcfeb5b', - x86_64: 'e61afc55e0d7d2e4b09df2185f64edb55e0cbea828fed2ac682906589911cfaf' + aarch64: 'e7b80341f9c8c4c84e5064785e21a7f4b28966abc09447763343d34af6f92203', + armv7l: 'e7b80341f9c8c4c84e5064785e21a7f4b28966abc09447763343d34af6f92203', + i686: '322606e25ce187ed1b62573e4c4e51dda56054c4bf48d635fc126ed82f13a5f2', + x86_64: 'ece6d95295cd269780339a9dca5925b224f63cf01879a1a27370faf7d13a4648' }) + depends_on 'docbook_xml' depends_on 'libxml2' depends_on 'xmlcatmgr' @@ -55,18 +56,6 @@ class Docbook_xml412 < Package end def self.postinstall - # Docbook common postinstall block - ENV['XML_CATALOG_FILES'] = "#{CREW_PREFIX}/etc/xml/catalog" - - xml_catalog_files_in_bashrc = `grep -c "XML_CATALOG_FILES" ~/.bashrc || true` - unless xml_catalog_files_in_bashrc.to_i.positive? - puts "Putting \"export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog\" in ~/.bashrc".lightblue - system "echo 'export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end - # End Docbook common postinstall block - system "xmlcatalog --noout --add 'public' \ '-//OASIS//DTD DocBook XML V#{@_ver}//EN' \ 'http://www.oasis-open.org/docbook/xml/#{@_ver}/docbookx.dtd' \ diff --git a/packages/docbook_xml42.rb b/packages/docbook_xml42.rb index 9e3528329..f7af81bf3 100644 --- a/packages/docbook_xml42.rb +++ b/packages/docbook_xml42.rb @@ -4,26 +4,26 @@ class Docbook_xml42 < Package description 'A widely used XML scheme for writing documentation and help' homepage 'https://www.oasis-open.org/docbook/' @_ver = '4.2' - version "#{@_ver}-1" + version "#{@_ver}-2" license 'MIT' compatibility 'all' source_url "https://docbook.org/xml/#{@_ver}/docbook-xml-#{@_ver}.zip" source_sha256 'acc4601e4f97a196076b7e64b368d9248b07c7abf26b34a02cca40eeebe60fa2' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml42-4.2-1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml42-4.2-1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml42-4.2-1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml42-4.2-1-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml42-4.2-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml42-4.2-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml42-4.2-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml42-4.2-2-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '05fe3d73273b67a566e9ac769ddbb88e63a5b9f20abf9483fd3374e3c815a9c9', - armv7l: '05fe3d73273b67a566e9ac769ddbb88e63a5b9f20abf9483fd3374e3c815a9c9', - i686: 'fe49fe7837f831e821c118ba9df5e1ab3551f95de51f1933e3ce41624852fcf9', - x86_64: '9485891895d1a7004f62350a9eb8d806bea66d40fa19274c5b8e69e130ba0fe1' + aarch64: 'b83d4e1f4209796ea5269ed4519d2ce2fb99612cd727177fb76b19da1d2c60d3', + armv7l: 'b83d4e1f4209796ea5269ed4519d2ce2fb99612cd727177fb76b19da1d2c60d3', + i686: '44698530cf0876d1b70dce3846226fb58da7bbebcf5e8490648d1840ef68a50a', + x86_64: '6037eb199c1c76d311d92b43b85d54ce2f660c651b1c6fe35f3caee6cfd865a8' }) - depends_on 'libxml2' + depends_on 'docbook_xml' depends_on 'xmlcatmgr' def self.install @@ -55,18 +55,6 @@ class Docbook_xml42 < Package end def self.postinstall - # Docbook common postinstall block - ENV['XML_CATALOG_FILES'] = "#{CREW_PREFIX}/etc/xml/catalog" - - xml_catalog_files_in_bashrc = `grep -c "XML_CATALOG_FILES" ~/.bashrc || true` - unless xml_catalog_files_in_bashrc.to_i.positive? - puts "Putting \"export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog\" in ~/.bashrc".lightblue - system "echo 'export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end - # End Docbook common postinstall block - system "xmlcatalog --noout --add rewriteSystem \ http://www.oasis-open.org/docbook/xml/#{@_ver} \ #{CREW_PREFIX}/share/xml/docbook/xml-dtd-#{@_ver} \ diff --git a/packages/docbook_xml43.rb b/packages/docbook_xml43.rb index 9baf08164..96830979c 100644 --- a/packages/docbook_xml43.rb +++ b/packages/docbook_xml43.rb @@ -4,26 +4,26 @@ class Docbook_xml43 < Package description 'A widely used XML scheme for writing documentation and help' homepage 'https://www.oasis-open.org/docbook/' @_ver = '4.3' - version "#{@_ver}-1" + version "#{@_ver}-2" license 'MIT' compatibility 'all' source_url "https://docbook.org/xml/#{@_ver}/docbook-xml-#{@_ver}.zip" source_sha256 '23068a94ea6fd484b004c5a73ec36a66aa47ea8f0d6b62cc1695931f5c143464' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml43-4.3-1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml43-4.3-1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml43-4.3-1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml43-4.3-1-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml43-4.3-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml43-4.3-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml43-4.3-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml43-4.3-2-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '16ed890cc5e2e95597cd7d160e074dbc195448a2e5cfc579846877a5d4cb521a', - armv7l: '16ed890cc5e2e95597cd7d160e074dbc195448a2e5cfc579846877a5d4cb521a', - i686: '15f2467c23c7f284d227551c896745be966a1cd4c5c526fb635b03602e6224e2', - x86_64: 'b61ffe4d472085897c3d1fa991d260f50afae7d8c97a73318b19444a66d817e9' + aarch64: 'd285fef3ffdf1adcc1dfc582241d2a7e945a071b7824fe8953014a84c0513de6', + armv7l: 'd285fef3ffdf1adcc1dfc582241d2a7e945a071b7824fe8953014a84c0513de6', + i686: 'd6adafcceb7cd548312fe23dc8f34911e2c60e3f53c87828012fa1fc3675429f', + x86_64: '15b5f0da306a63ae5e32b87692f333fe77502798792af99a30bc5bbfc3422862' }) - depends_on 'libxml2' + depends_on 'docbook_xml' depends_on 'xmlcatmgr' def self.install @@ -55,18 +55,6 @@ class Docbook_xml43 < Package end def self.postinstall - # Docbook common postinstall block - ENV['XML_CATALOG_FILES'] = "#{CREW_PREFIX}/etc/xml/catalog" - - xml_catalog_files_in_bashrc = `grep -c "XML_CATALOG_FILES" ~/.bashrc || true` - unless xml_catalog_files_in_bashrc.to_i.positive? - puts "Putting \"export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog\" in ~/.bashrc".lightblue - system "echo 'export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end - # End Docbook common postinstall block - system "xmlcatalog --noout --add rewriteSystem \ http://www.oasis-open.org/docbook/xml/#{@_ver} \ #{CREW_PREFIX}/share/xml/docbook/xml-dtd-#{@_ver} \ diff --git a/packages/docbook_xml44.rb b/packages/docbook_xml44.rb index 82912fcff..de36d12b5 100644 --- a/packages/docbook_xml44.rb +++ b/packages/docbook_xml44.rb @@ -4,26 +4,26 @@ class Docbook_xml44 < Package description 'A widely used XML scheme for writing documentation and help' homepage 'https://www.oasis-open.org/docbook/' @_ver = '4.4' - version "#{@_ver}-1" + version "#{@_ver}-2" license 'MIT' compatibility 'all' source_url "https://docbook.org/xml/#{@_ver}/docbook-xml-#{@_ver}.zip" source_sha256 '02f159eb88c4254d95e831c51c144b1863b216d909b5ff45743a1ce6f5273090' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-1-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-2-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '0781dda33ce4845ca3f18d533469ca888c5823f8b1c5b41fa9c633e25569d971', - armv7l: '0781dda33ce4845ca3f18d533469ca888c5823f8b1c5b41fa9c633e25569d971', - i686: 'f681134f0aa6bee29744c33612c5d5b71d52601777a00af170fc3528d9af9474', - x86_64: '46f1158d117549d339ace891d87e2ac27a0cc5d778f75991c462201e57f11e0b' + aarch64: '0a46c480b0091976c7f205f357e40a89dd8184b6e8917f83b650b61a4d19842f', + armv7l: '0a46c480b0091976c7f205f357e40a89dd8184b6e8917f83b650b61a4d19842f', + i686: '245084bbab863f35e180a73c0b673ded95f7e62de840f232ac9c367888dabd78', + x86_64: 'a0d55ff8144b07bafcf720618dacaa60ccd520fa2b3fb952069cfc93fbf87abb' }) - depends_on 'libxml2' + depends_on 'docbook_xml' depends_on 'xmlcatmgr' def self.install @@ -55,18 +55,6 @@ class Docbook_xml44 < Package end def self.postinstall - # Docbook common postinstall block - ENV['XML_CATALOG_FILES'] = "#{CREW_PREFIX}/etc/xml/catalog" - - xml_catalog_files_in_bashrc = `grep -c "XML_CATALOG_FILES" ~/.bashrc || true` - unless xml_catalog_files_in_bashrc.to_i.positive? - puts "Putting \"export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog\" in ~/.bashrc".lightblue - system "echo 'export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end - # End Docbook common postinstall block - system "xmlcatalog --noout --add 'public' \ '-//OASIS//ELEMENTS DocBook XML HTML Tables V#{@_ver}//EN' \ 'http://www.oasis-open.org/docbook/xml/#{@_ver}/htmltblx.mod' \ diff --git a/packages/docbook_xml45.rb b/packages/docbook_xml45.rb index a5fd82727..01179d945 100644 --- a/packages/docbook_xml45.rb +++ b/packages/docbook_xml45.rb @@ -4,26 +4,26 @@ class Docbook_xml45 < Package description 'A widely used XML scheme for writing documentation and help' homepage 'https://www.oasis-open.org/docbook/' @_ver = '4.5' - version "#{@_ver}-1" + version "#{@_ver}-2" license 'MIT' compatibility 'all' source_url "https://docbook.org/xml/#{@_ver}/docbook-xml-#{@_ver}.zip" source_sha256 '4e4e037a2b83c98c6c94818390d4bdd3f6e10f6ec62dd79188594e26190dc7b4' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml45-4.5-1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml45-4.5-1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml45-4.5-1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml45-4.5-1-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml45-4.5-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml45-4.5-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml45-4.5-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml45-4.5-2-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: 'e7463d14aad6712597f6eff575042128392a6783da2c471b36fb61395405cb1b', - armv7l: 'e7463d14aad6712597f6eff575042128392a6783da2c471b36fb61395405cb1b', - i686: '168de1189b9d953c7a8e09196af78867dc73f3e16931c6f2bb4f2f8d3c0fc747', - x86_64: '715699ab3ffddc03de0b8d950c129a6f79b062b82983f9e1e795dc6b9ad5c42c' + aarch64: 'b44a8b0e4ba631b8d96fcd43e6260f4fc13974a0b548a6922aff1ebb94b6a11f', + armv7l: 'b44a8b0e4ba631b8d96fcd43e6260f4fc13974a0b548a6922aff1ebb94b6a11f', + i686: 'd7c4736695b20569bfaf6f4366d2dd43c15997ccc086a5df3b5cb0b1ad3be73b', + x86_64: '9f9bdfcf4ae7d21182ab4056a4a27d6689ce1b5baf117505a9fdc2a4eda2a6e1' }) - depends_on 'libxml2' + depends_on 'docbook_xml' depends_on 'xmlcatmgr' def self.install @@ -56,18 +56,6 @@ class Docbook_xml45 < Package end def self.postinstall - # Docbook common postinstall block - ENV['XML_CATALOG_FILES'] = "#{CREW_PREFIX}/etc/xml/catalog" - - xml_catalog_files_in_bashrc = `grep -c "XML_CATALOG_FILES" ~/.bashrc || true` - unless xml_catalog_files_in_bashrc.to_i.positive? - puts "Putting \"export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog\" in ~/.bashrc".lightblue - system "echo 'export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end - # End Docbook common postinstall block - system "xmlcatalog --noout --add 'public' \ '-//OASIS//ELEMENTS DocBook XML HTML Tables V#{@_ver}//EN' \ 'http://www.oasis-open.org/docbook/xml/#{@_ver}/htmltblx.mod' \ diff --git a/packages/docbook_xml50.rb b/packages/docbook_xml50.rb index e38aaf7e3..33f9e4885 100644 --- a/packages/docbook_xml50.rb +++ b/packages/docbook_xml50.rb @@ -4,26 +4,26 @@ class Docbook_xml50 < Package description 'A widely used XML scheme for writing documentation and help' homepage 'https://www.oasis-open.org/docbook/' @_ver = '5.0' - version "#{@_ver}-1" + version "#{@_ver}-2" license 'MIT' compatibility 'all' source_url "https://docbook.org/xml/#{@_ver}/docbook-#{@_ver}.zip" source_sha256 '3dcd65e1f5d9c0c891b3be204fa2bb418ce485d32310e1ca052e81d36623208e' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml50-5.0-1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml50-5.0-1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml50-5.0-1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml50-5.0-1-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml50-5.0-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml50-5.0-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml50-5.0-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml50-5.0-2-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '51e16312877f682c6b57120323e4102a02daf4220758eec6282f6ace6102dcbe', - armv7l: '51e16312877f682c6b57120323e4102a02daf4220758eec6282f6ace6102dcbe', - i686: 'd9460092816d125fdfc9cdabefef96756a0d7aa02edbb266193f33c2c8ec22c0', - x86_64: '990c2eff642a37031031a31d349e977788ba9aab72e76885c88cfec7f201a4c0' + aarch64: '2ab82950132df3cd03fa314553cd961aa22f559d95dca84943e75c55158a8a3b', + armv7l: '2ab82950132df3cd03fa314553cd961aa22f559d95dca84943e75c55158a8a3b', + i686: '0f60fb72a56090a498bf7959ec4c566f0e7b6b9e8ecb6eacaaeb7b115b08c2a0', + x86_64: '3206419c30af448462552a504c545b22f53b3acfc8806347c667d1bdba6d21f0' }) - depends_on 'libxml2' + depends_on 'docbook_xml' depends_on 'xmlcatmgr' depends_on 'bash' @@ -229,18 +229,6 @@ class Docbook_xml50 < Package end def self.postinstall - # Docbook common postinstall block - ENV['XML_CATALOG_FILES'] = "#{CREW_PREFIX}/etc/xml/catalog" - - xml_catalog_files_in_bashrc = `grep -c "XML_CATALOG_FILES" ~/.bashrc || true` - unless xml_catalog_files_in_bashrc.to_i.positive? - puts "Putting \"export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog\" in ~/.bashrc".lightblue - system "echo 'export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end - # End Docbook common postinstall block - system "xmlcatalog --noout --add \"delegatePublic\" \ \"-//OASIS//ENTITIES DocBook XML\" \ \"file://#{CREW_PREFIX}/etc/xml/docbook-xml\" \ diff --git a/packages/docbook_xml51.rb b/packages/docbook_xml51.rb index 90ca981a8..e354819cb 100644 --- a/packages/docbook_xml51.rb +++ b/packages/docbook_xml51.rb @@ -4,26 +4,26 @@ class Docbook_xml51 < Package description 'A widely used XML scheme for writing documentation and help' homepage 'https://www.oasis-open.org/docbook/' @_ver = '5.1' - version "#{@_ver}-1" + version "#{@_ver}-2" license 'MIT' compatibility 'all' source_url "https://docbook.org/xml/#{@_ver}/docbook-v#{@_ver}-os.zip" source_sha256 'b3f3413654003c1e773360d7fc60ebb8abd0e8c9af8e7d6c4b55f124f34d1e7f' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml51-5.1-1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml51-5.1-1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml51-5.1-1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml51-5.1-1-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml51-5.1-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml51-5.1-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml51-5.1-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml51-5.1-2-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '0f54fe99ab568f5675eeef905925192f0f96ce5bfb6c4b0c9ec597429352940d', - armv7l: '0f54fe99ab568f5675eeef905925192f0f96ce5bfb6c4b0c9ec597429352940d', - i686: '9d0331c233cc88d7302c99130df4edcb633f1944800ead2e0d6f2b6f5bb9fb42', - x86_64: '95b7ffdb3797cb550d7da3195aeedbee5336a58e14cf8dae765248370698162c' + aarch64: 'ca2389bebf749c9697ba33405f85b41bd3272bff20d4b4640df05c29b675dac4', + armv7l: 'ca2389bebf749c9697ba33405f85b41bd3272bff20d4b4640df05c29b675dac4', + i686: 'b07d85d319d7ef992b23a1e11f2de204e7416650eeb3c65379328369adc99811', + x86_64: '9439627140b197a6d9d57897d206dcd75d2d64bbae74960411203be48d41bb68' }) - depends_on 'libxml2' + depends_on 'docbook_xml' depends_on 'xmlcatmgr' depends_on 'bash' @@ -147,18 +147,6 @@ class Docbook_xml51 < Package end def self.postinstall - # Docbook common postinstall block - ENV['XML_CATALOG_FILES'] = "#{CREW_PREFIX}/etc/xml/catalog" - - xml_catalog_files_in_bashrc = `grep -c "XML_CATALOG_FILES" ~/.bashrc || true` - unless xml_catalog_files_in_bashrc.to_i.positive? - puts "Putting \"export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog\" in ~/.bashrc".lightblue - system "echo 'export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end - # End Docbook common postinstall block - system "xmlcatalog --noout --add \"delegatePublic\" \ \"-//OASIS//ENTITIES DocBook XML\" \ \"file://#{CREW_PREFIX}/etc/xml/docbook-xml\" \ diff --git a/packages/docbook_xsl.rb b/packages/docbook_xsl.rb index d37802db8..c3cabd454 100644 --- a/packages/docbook_xsl.rb +++ b/packages/docbook_xsl.rb @@ -4,25 +4,26 @@ class Docbook_xsl < Package description 'The DocBook XSL Stylesheets package contains XSL stylesheets. These are useful for performing transformations on XML DocBook files.' homepage 'https://github.com/docbook/xslt10-stylesheets' @_ver = '1.79.2' - version "#{@_ver}-1" + version "#{@_ver}-2" license 'custom' compatibility 'all' source_url "https://github.com/docbook/xslt10-stylesheets/releases/download/release/#{@_ver}/docbook-xsl-#{@_ver}.zip" source_sha256 '853dce096f5b32fe0b157d8018d8fecf92022e9c79b5947a98b365679c7e31d7' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl-1.79.2-1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl-1.79.2-1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl-1.79.2-1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl-1.79.2-1-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl-1.79.2-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl-1.79.2-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl-1.79.2-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl-1.79.2-2-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '7cf8ba8618ed326bec14312fd16d60df6ecaf64d93f4e366936a0631969244bd', - armv7l: '7cf8ba8618ed326bec14312fd16d60df6ecaf64d93f4e366936a0631969244bd', - i686: '99b4735572497dc97dc37ea1d84da16be4994508ea7293f1fca678b17a3419a8', - x86_64: '508cfde5de02091ea5d26aec1e50bd5faff48493a4036d5014f9b3e71bfefa71' + aarch64: '98cc13cd1883b26708624d253cb54325f523d2f4bf43089a1008c7500c81f37c', + armv7l: '98cc13cd1883b26708624d253cb54325f523d2f4bf43089a1008c7500c81f37c', + i686: 'ff237f1f8c2be2482391150492a03f49518a20c30d36b9c9fa6302b1f265e0eb', + x86_64: '4e53c3fe08e6b59c6e1a9bb2f1b9620e93af939c87a95ff3d97bb16095adde1a' }) + depends_on 'docbook_xml' depends_on 'xmlcatmgr' depends_on 'bash' @@ -86,18 +87,6 @@ class Docbook_xsl < Package end def self.postinstall - # Docbook common postinstall block - ENV['XML_CATALOG_FILES'] = "#{CREW_PREFIX}/etc/xml/catalog" - - xml_catalog_files_in_bashrc = `grep -c "XML_CATALOG_FILES" ~/.bashrc || true` - unless xml_catalog_files_in_bashrc.to_i.positive? - puts "Putting \"export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog\" in ~/.bashrc".lightblue - system "echo 'export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end - # End Docbook common postinstall block - system "xmlcatalog --noout --add rewriteSystem https://cdn.docbook.org/release/xsl/#{@_ver} #{CREW_PREFIX}/share/xml/docbook/xsl-stylesheets-#{@_ver} '#{CREW_PREFIX}/etc/xml/catalog'" system "xmlcatalog --noout --add rewriteURI https://cdn.docbook.org/release/xsl/#{@_ver} #{CREW_PREFIX}/share/xml/docbook/xsl-stylesheets-#{@_ver} '#{CREW_PREFIX}/etc/xml/catalog'" system "xmlcatalog --noout --add rewriteSystem http://docbook.sourceforge.net/release/xsl/#{@_ver} #{CREW_PREFIX}/share/xml/docbook/xsl-stylesheets-#{@_ver} '#{CREW_PREFIX}/etc/xml/catalog'" diff --git a/packages/docbook_xsl_nons.rb b/packages/docbook_xsl_nons.rb index 71d0c8343..66101f3af 100644 --- a/packages/docbook_xsl_nons.rb +++ b/packages/docbook_xsl_nons.rb @@ -4,25 +4,26 @@ class Docbook_xsl_nons < Package description 'The DocBook XSL Stylesheets package contains XSL stylesheets. These are useful for performing transformations on XML DocBook files.' homepage 'https://github.com/docbook/xslt10-stylesheets' @_ver = '1.79.2' - version @_ver + version "#{@_ver}-1" license 'custom' compatibility 'all' source_url "https://github.com/docbook/xslt10-stylesheets/releases/download/release/#{@_ver}/docbook-xsl-nons-#{@_ver}.zip" source_sha256 'ba41126fbf4021e38952f3074dc87cdf1e50f3981280c7a619f88acf31456822' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl_nons-1.79.2-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl_nons-1.79.2-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl_nons-1.79.2-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl_nons-1.79.2-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl_nons-1.79.2-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl_nons-1.79.2-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl_nons-1.79.2-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xsl_nons-1.79.2-1-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '591c6a68855b291d26463cb039b72b6100a10b02f29e4b61a8177df9ffc7694c', - armv7l: '591c6a68855b291d26463cb039b72b6100a10b02f29e4b61a8177df9ffc7694c', - i686: '96082d7311387dddc7e9751f5d4458168a782be88eacf4789cebd1962406fba7', - x86_64: '358b905b77951ab9e81272628b87e4f43152869f1a7a894e2e1139309f0ff4b1' + aarch64: 'dbc2f81d3557aea2e40e87f4d1d68adc0b36c4a549f20813e66ab54d6e357030', + armv7l: 'dbc2f81d3557aea2e40e87f4d1d68adc0b36c4a549f20813e66ab54d6e357030', + i686: '1ec31fedd6f78376aaf36c67ab6d8a985ad198fad674742b7a48654a9e687647', + x86_64: 'a0a9096b8900966146d924cd86ef43b10b973422186cc5f25520897417fdb707' }) + depends_on 'docbook_xml' depends_on 'xmlcatmgr' depends_on 'bash' @@ -79,18 +80,6 @@ class Docbook_xsl_nons < Package end def self.postinstall - # Docbook common postinstall block - ENV['XML_CATALOG_FILES'] = "#{CREW_PREFIX}/etc/xml/catalog" - - xml_catalog_files_in_bashrc = `grep -c "XML_CATALOG_FILES" ~/.bashrc || true` - unless xml_catalog_files_in_bashrc.to_i.positive? - puts "Putting \"export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog\" in ~/.bashrc".lightblue - system "echo 'export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end - # End Docbook common postinstall block - system "xmlcatalog --noout --add rewriteSystem https://cdn.docbook.org/release/xsl-nons/#{@_ver} #{CREW_PREFIX}/share/xml/docbook/xsl-stylesheets-#{@_ver}-nons '#{CREW_PREFIX}/etc/xml/catalog'" system "xmlcatalog --noout --add rewriteURI https://cdn.docbook.org/release/xsl-nons/#{@_ver} #{CREW_PREFIX}/share/xml/docbook/xsl-stylesheets-#{@_ver}-nons '#{CREW_PREFIX}/etc/xml/catalog'" system "xmlcatalog --noout --add rewriteSystem https://cdn.docbook.org/release/xsl-nons/current #{CREW_PREFIX}/share/xml/docbook/xsl-stylesheets-#{@_ver}-nons '#{CREW_PREFIX}/etc/xml/catalog'" diff --git a/packages/fasd.rb b/packages/fasd.rb index 800d78946..7aec7aa66 100644 --- a/packages/fasd.rb +++ b/packages/fasd.rb @@ -3,31 +3,34 @@ require 'package' class Fasd < Package description 'Command-line productivity booster, offers quick access to files and directories, inspired by autojump, z and v.' homepage 'https://github.com/clvv/fasd' - version '1.0.1' + version '1.0.1-1' license 'MIT' compatibility 'all' source_url 'https://github.com/clvv/fasd/archive/1.0.1.tar.gz' source_sha256 '88efdfbbed8df408699a14fa6c567450bf86480f5ff3dde42d0b3e1dee731f65' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/fasd-1.0.1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/fasd-1.0.1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/fasd-1.0.1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/fasd-1.0.1-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/fasd-1.0.1-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/fasd-1.0.1-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/fasd-1.0.1-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/fasd-1.0.1-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '7e12326537a96166d6897f6419a15bdf0a3f9d2edf448dccdc484c7a7331433d', - armv7l: '7e12326537a96166d6897f6419a15bdf0a3f9d2edf448dccdc484c7a7331433d', - i686: 'e660e0968145d2b981d8d7f89c1f368912313c370cf5b92d15cea59b2b82b39f', - x86_64: '860de1d2b40e13d439086a40f273e5dbf48e913c224e7e7274bca4625eaaffaa', + binary_sha256({ + aarch64: '7a8f84519778bdd8c8d34b277d900016be6a5acdef97d7f18ddc22a59d43ffcc', + armv7l: '7a8f84519778bdd8c8d34b277d900016be6a5acdef97d7f18ddc22a59d43ffcc', + i686: '44dd17a46611a8adca2eac550c279155e9b971864b05082f3c936222a34e9c79', + x86_64: '6af1c34541d0d4981da33a4fecd0d7a2da2e7f78370eeeefe98ba9ea609136ed' }) def self.install system "sed -i 's,share/man,man,' Makefile" - system "make", "DESTDIR=#{CREW_DEST_DIR}", "install" - puts "" - puts "To get fasd working in a shell, some initialization code must be run:".lightblue - puts "echo 'eval \"\$(fasd --init auto)\"' >> ~/.bashrc && source ~/.bashrc".lightblue - puts "" + system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @fasdenv = <<~FASDEOF + # Fasd shell configuration + eval \"\$(fasd --init auto)\" + FASDEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/fasd", @fasdenv) end end diff --git a/packages/flatpak.rb b/packages/flatpak.rb index 3b0565825..23ad63559 100644 --- a/packages/flatpak.rb +++ b/packages/flatpak.rb @@ -4,28 +4,29 @@ class Flatpak < Package description 'Flatpak is a system for building, distributing, and running sandboxed desktop applications on Linux.' homepage 'https://flatpak.org' @_ver = '1.10.2' - version @_ver + version "#{@_ver}+1" license 'LGPL-2.1+' compatibility 'all' source_url "https://github.com/flatpak/flatpak/releases/download/#{@_ver}/flatpak-#{@_ver}.tar.xz" source_sha256 'db152739d072f8ff299e4e888d8963a1b4538da7b10e0b86525be438f2e1dde4' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/flatpak-1.10.2-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/flatpak-1.10.2-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/flatpak-1.10.2-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/flatpak-1.10.2-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/flatpak-1.10.2+1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/flatpak-1.10.2+1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/flatpak-1.10.2+1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/flatpak-1.10.2+1-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: 'c75d3704f54b035af47b13aec034e762f55ef01de3193f9948af9c2f94240160', - armv7l: 'c75d3704f54b035af47b13aec034e762f55ef01de3193f9948af9c2f94240160', - i686: '5d379657448f6186f23ed5e47ccebbfc1e5b03ad930886c093451b32f0734390', - x86_64: '6b35bbf60cc693be3dd808dd697d0a5d62cbe2f830d6a856fa32aa1e15d7210b' + aarch64: 'f03b38526bd4874d0e917bac2e743929f8e118ab67796ee088f36e4712d4c35b', + armv7l: 'f03b38526bd4874d0e917bac2e743929f8e118ab67796ee088f36e4712d4c35b', + i686: 'cd76a117df4c1757410dda6f17ac5d1a46a0028ab3116ae3fea5af602774a1d4', + x86_64: 'ae83c2515abec6eb9969b69d838280f70f620f51ad21231ce5e297c87f5cff5c' }) depends_on 'appstream_glib' depends_on 'bubblewrap' depends_on 'dconf' + depends_on 'fuse2' depends_on 'libevent' depends_on 'libostree' depends_on 'libsoup2' @@ -33,8 +34,14 @@ class Flatpak < Package depends_on 'pulseaudio' depends_on 'pyparsing' depends_on 'xdg_base' + depends_on 'xdg_dbus_proxy' + depends_on 'xmlto' => :build def self.patch + # Use fuse3 + # system "sed -i 's:PKG_CHECK_MODULES(FUSE, fuse >= 2.9.2):PKG_CHECK_MODULES(FUSE, fuse3 >= 3.1.1):' configure.ac" + # system "sed -i 's:#define FUSE_USE_VERSION 26:#define FUSE_USE_VERSION 31:' revokefs/main.c" + # Source has libglnx repo as submodule @git_dir = 'libglnx' @git_hash = '4c9055ac08bb64dca146724f488cce4c1ce4c628' @@ -76,24 +83,30 @@ class Flatpak < Package def self.build system 'env NOCONFIGURE=1 ./autogen.sh' system 'filefix' - system "env BWRAP=#{CREW_PREFIX}/bin/bwrap CFLAGS='-flto=auto' \ - CXXFLAGS='-flto=auto' LDFLAGS='-flto=auto' \ - ./configure #{CREW_OPTIONS} \ - --with-system-install-dir=#{CREW_PREFIX}/var/lib/flatpak \ - --enable-sandboxed-triggers \ - --with-priv-mode=none \ - --without-systemd \ - --with-system-fonts-dir=#{CREW_PREFIX}/share/fonts:/usr/share/fonts \ - --with-system-font-cache-dirs=/usr/share/cache/fontconfig:#{CREW_PREFIX}/cache/fontconfig \ - --disable-documentation \ - --disable-maintainer-mode \ - --with-system-bubblewrap" + system "env BWRAP=#{CREW_PREFIX}/bin/bwrap \ + CFLAGS='-pipe -flto=auto -fuse-ld=gold' \ + CXXFLAGS='-pipe -flto=auto -fuse-ld=gold' \ + LDFLAGS='-flto=auto' \ + ./configure #{CREW_OPTIONS} \ + --with-system-install-dir=#{CREW_PREFIX}/var/lib/flatpak \ + --localstatedir=#{CREW_PREFIX}/var \ + --enable-sandboxed-triggers \ + --with-priv-mode=none \ + --without-systemd \ + --with-system-fonts-dir=#{CREW_PREFIX}/share/fonts:/usr/share/fonts \ + --with-system-font-cache-dirs=/usr/share/cache/fontconfig:#{CREW_PREFIX}/cache/fontconfig \ + --disable-documentation \ + --disable-maintainer-mode \ + --enable-xauth \ + --with-system-dbus-proxy \ + --with-system-bubblewrap" system 'make' end def self.install system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' - FileUtils.install "#{CREW_DEST_PREFIX}/bin/flatpak", "#{CREW_DEST_PREFIX}/bin/flatpak.elf", mode: 0o755 + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/libexec/flatpak/" + FileUtils.install "#{CREW_DEST_PREFIX}/bin/flatpak", "#{CREW_DEST_PREFIX}/libexec/flatpak/flatpak", mode: 0o755 @flatpak_sh = <<~FLATPAK_HEREDOC #!/bin/bash # Flatpak needs to be able to see fonts in #{CREW_PREFIX}/share/fonts @@ -115,28 +128,27 @@ class Flatpak < Package unset GDK_PIXBUF_MODULEDIR unset GDK_BACKEND unset FONTCONFIG_PATH - #{CREW_PREFIX}/bin/flatpak.elf \$FLATPAK_FLAGS "\$@" + #{CREW_PREFIX}/libexec/flatpak/flatpak \$FLATPAK_FLAGS "\$@" FLATPAK_HEREDOC IO.write("#{CREW_DEST_PREFIX}/bin/flatpak", @flatpak_sh, perm: 0o755) FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/dbus-1/system.d" FileUtils.mv "#{CREW_DEST_PREFIX}/etc/dbus-1/system.d/org.freedesktop.Flatpak.SystemHelper.conf", "#{CREW_DEST_PREFIX}/share/dbus-1/system.d/org.freedesktop.Flatpak.SystemHelper.conf" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @env = <<~EOF + # Flatpak configuration + export XDG_DATA_DIRS='#{CREW_PREFIX}/share:#{CREW_PREFIX}/.config/.local/share/flatpak/exports/share:#{CREW_PREFIX}/var/lib/flatpak/exports/share' + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/flatpak", @env) end def self.postinstall + system '[ -e /var/run/chrome/dconf ] || sudo mkdir /var/run/chrome/dconf' + system 'sudo chown chronos:chronos /var/run/chrome/dconf/ -Rv' puts puts 'Configuring flathub'.lightblue - system 'flatpak.elf remote-add --if-not-exists --user flathub https://flathub.org/repo/flathub.flatpakrepo' + system "#{CREW_PREFIX}/libexec/flatpak/flatpak remote-add --if-not-exists --user flathub https://flathub.org/repo/flathub.flatpakrepo" puts - # Check to see if XDG_DATA_DIRS for flatpak is in ~/.bashrc. If not, put - # it in. - @_str = "XDG_DATA_DIRS=#{CREW_PREFIX}/share:#{CREW_PREFIX}/.config/.local/share/flatpak/exports/share:#{CREW_PREFIX}/var/lib/flatpak/exports/share" - if `grep -c '#{@_str}' #{HOME}/.bashrc`.to_i.zero? - puts 'Putting XDG Environment Variables in ~/.bashrc'.lightblue - system "sed -i '/XDG_DATA_DIRS/d' ~/.bashrc" - system "echo 'export XDG_DATA_DIRS=#{CREW_PREFIX}/share:#{CREW_PREFIX}/.config/.local/share/flatpak/exports/share:#{CREW_PREFIX}/var/lib/flatpak/exports/share' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end end end diff --git a/packages/fontconfig.rb b/packages/fontconfig.rb index 6ca56ce4d..4a3754bfd 100644 --- a/packages/fontconfig.rb +++ b/packages/fontconfig.rb @@ -4,23 +4,23 @@ class Fontconfig < Package description 'Fontconfig is a library for configuring and customizing font access.' homepage 'https://www.freedesktop.org/software/fontconfig/front.html' @_ver = '2.13.93' - version "#{@_ver}-1" + version "#{@_ver}-2" license 'MIT' compatibility 'all' source_url "https://github.com/freedesktop/fontconfig/archive/#{@_ver}.tar.gz" source_sha256 'f8452c78d1a12f6966455b0d584f89553b13e970b40644c3650f690ec0b3b4fe' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/fontconfig-2.13.93-1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/fontconfig-2.13.93-1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/fontconfig-2.13.93-1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/fontconfig-2.13.93-1-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/fontconfig-2.13.93-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/fontconfig-2.13.93-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/fontconfig-2.13.93-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/fontconfig-2.13.93-2-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: 'fac3629221d8a54bba8a1a8e1fc151706a434320c2a92726508234c799cecade', - armv7l: 'fac3629221d8a54bba8a1a8e1fc151706a434320c2a92726508234c799cecade', - i686: '668b4e389a105b91ed6b75416cea01e84856eaa8d7902448c9907670e1acf13b', - x86_64: 'd38e7415b0dad534c2bdfc66a8460c6a5ba00153dade7033e757ffd8be8ea30a' + aarch64: '0047a707a1fc8531fa6bfc6fa45f2aead43ece0e65d1eaad094e4e98f3e43ec0', + armv7l: '0047a707a1fc8531fa6bfc6fa45f2aead43ece0e65d1eaad094e4e98f3e43ec0', + i686: 'abef1aab53d6880c0f43fc188a6de1ca1bf9b60c20c3f6459cdbcb40b32cb80a', + x86_64: '762b2f4a1d0d593f7f4c5000b651e9d03e98b11759a113bac0c260cc45830391' }) depends_on 'gperf' @@ -68,16 +68,16 @@ class Fontconfig < Package FONTCONF_HEREDOC IO.write("#{CREW_DEST_PREFIX}/etc/fonts/conf.d/52-chromebrew.conf", @fonts_conf, perm: 0o666) + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @env = <<~EOF + # Fontconfig configuration + export FONTCONFIG_PATH=#{CREW_PREFIX}/etc/fonts + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/fontconfig", @env) end def self.postinstall - fontconfig_in_bashrc = `grep -c "FONTCONFIG_PATH" ~/.bashrc || true` - unless fontconfig_in_bashrc.to_i.positive? - puts 'Putting fontconfig code in ~/.bashrc'.lightblue - system "echo 'export FONTCONFIG_PATH=#{CREW_PREFIX}/etc/fonts' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end # The following postinstall fails if graphite isn't installed when fontconfig # is being installed. system "env FONTCONFIG_PATH=#{CREW_PREFIX}/etc/fonts fc-cache -fv || true" diff --git a/packages/fop.rb b/packages/fop.rb index 1c7b0623a..e4e8b5d9a 100644 --- a/packages/fop.rb +++ b/packages/fop.rb @@ -3,23 +3,23 @@ require 'package' class Fop < Package description 'Apache FOP (Formatting Objects Processor) is a print formatter driven by XSL formatting objects (XSL-FO) and an output independent formatter.' homepage 'https://xmlgraphics.apache.org/fop/' - version '2.6' + version '2.6-1' license 'Apache-2.0' compatibility 'all' source_url 'https://downloads.apache.org/xmlgraphics/fop/binaries/fop-2.6-bin.tar.gz' source_sha256 'ccfd7a1d4e5a04e76723946efa1147ffa9a8715ce2b58d2a27085a8e744520f8' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/fop-2.6-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/fop-2.6-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/fop-2.6-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/fop-2.6-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/fop-2.6-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/fop-2.6-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/fop-2.6-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/fop-2.6-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'f8039a905a4835c04589f45eeb6ce6bf7a0ad749e864897f0700b42741aef606', - armv7l: 'f8039a905a4835c04589f45eeb6ce6bf7a0ad749e864897f0700b42741aef606', - i686: '566372125c92d0678f203f84235e670a2fde61499dfd8c155d476fbce99c49e0', - x86_64: '306a3da1d92fc9b4fab5124d46276142aee47af73ea0b9b96d6e6682ab1aa44d', + binary_sha256({ + aarch64: '5b7a73cd366557240852ea2ec1dc75d2f75d2b0b47c6d5634c2995aba1de79c0', + armv7l: '5b7a73cd366557240852ea2ec1dc75d2f75d2b0b47c6d5634c2995aba1de79c0', + i686: '6b830403f1596aba2a77856a892913b7b0776f2cb78cc62c1d867d8ad394db5a', + x86_64: '489c9c4000771c944e54a70e01015e0d5e62acbf1d32cea7c41eb481b506ed1c' }) depends_on 'jdk8' @@ -28,21 +28,19 @@ class Fop < Package system "mkdir -p #{CREW_DEST_PREFIX}/bin" system "mkdir -p #{CREW_DEST_LIB_PREFIX}/fop" system "cp -r . #{CREW_DEST_LIB_PREFIX}/fop" - system "chmod +x #{CREW_DEST_LIB_PREFIX}/fop/fop/fop" FileUtils.cd("#{CREW_DEST_PREFIX}/bin") do system "echo '#!/bin/bash' > fop" - system "echo 'PWD=$(pwd)' >> fop" system "echo 'cd #{CREW_LIB_PREFIX}/fop/fop' >> fop" system "echo './fop \"$@\"' >> fop" system "echo 'cd $PWD' >> fop" - system "chmod +x fop" + system 'chmod +x fop' end - end - def self.postinstall - puts - puts "To complete the installation, set the environment variable as follows:".lightblue - puts "echo 'export JAVA_HOME=#{CREW_LIB_PREFIX}/jdk8' >> ~/.bashrc && source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @fopenv = <<~FOPEOF + # Fop configuration + export JAVA_HOME=#{CREW_LIB_PREFIX}/jdk8 + FOPEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/fop", @fopenv) end end diff --git a/packages/fossil.rb b/packages/fossil.rb index 754e9ab9c..4c5117763 100644 --- a/packages/fossil.rb +++ b/packages/fossil.rb @@ -22,7 +22,7 @@ class Fossil < Package x86_64: 'e3de20c2f0f7d49d2cac73d9076fd866d8df5f781105473b15107fcc3c45b69d', }) - depends_on 'fuse' + depends_on 'fuse3' depends_on 'sqlite' def self.build diff --git a/packages/fuse2.rb b/packages/fuse2.rb new file mode 100644 index 000000000..b6bb57077 --- /dev/null +++ b/packages/fuse2.rb @@ -0,0 +1,39 @@ +require 'package' + +class Fuse2 < Package + description 'The reference implementation of the Linux FUSE (Filesystem in Userspace) interface.' + homepage 'https://github.com/libfuse/libfuse' + version '2.9.9' + license 'GPL-2+' + compatibility 'all' + source_url "https://github.com/libfuse/libfuse/releases/download/fuse-#{version}/fuse-#{version}.tar.gz" + source_sha256 'd0e69d5d608cc22ff4843791ad097f554dd32540ddc9bed7638cc6fea7c1b4b5' + + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/fuse2-2.9.9-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/fuse2-2.9.9-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/fuse2-2.9.9-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/fuse2-2.9.9-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + aarch64: '9ce364381c48373457a05ba46e5d9bb25bd4067191d2172afd88f8a51fa5c218', + armv7l: '9ce364381c48373457a05ba46e5d9bb25bd4067191d2172afd88f8a51fa5c218', + i686: '0181877ec4a17f5eedaa10a8e109622cb4960866de600c2f492d421506074c72', + x86_64: 'db93cd8c0f30caf6fcd6a56201262b1fdcb53e827697069020e43a1ccde4c971' + }) + + depends_on 'util_linux' + + def self.build + system "./configure #{CREW_OPTIONS} \ + --enable-example \ + --disable-mtab \ + --enable-util \ + --enable-lib" + system 'make' + end + + def self.install + system "make DESTDIR=#{CREW_DEST_DIR} install" + end +end diff --git a/packages/fuse.rb b/packages/fuse3.rb similarity index 62% rename from packages/fuse.rb rename to packages/fuse3.rb index 97fbf83fc..259e0f439 100644 --- a/packages/fuse.rb +++ b/packages/fuse3.rb @@ -1,6 +1,6 @@ require 'package' -class Fuse < Package +class Fuse3 < Package description 'The reference implementation of the Linux FUSE (Filesystem in Userspace) interface.' homepage 'https://github.com/libfuse/libfuse' version '3.10.2' @@ -10,16 +10,16 @@ class Fuse < Package source_sha256 '736e8d1ce65c09cb435fbbb500d53dc75f4d6e93bd325d22adc890951cf56337' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/fuse-3.10.2-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/fuse-3.10.2-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/fuse-3.10.2-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/fuse-3.10.2-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/fuse3-3.10.2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/fuse3-3.10.2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/fuse3-3.10.2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/fuse3-3.10.2-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '2f869838f88e0a8df6ef38b84b1b2c379ec2b14d0c7c95cdd7a2f759d5042e42', - armv7l: '2f869838f88e0a8df6ef38b84b1b2c379ec2b14d0c7c95cdd7a2f759d5042e42', - i686: 'fa4568332e5646bca84fbd3364bd9055f4acfbc12f47caf93bbbbc071bc6382f', - x86_64: '56c922765b937e931b86a7589dc0b08be52263c45078a42757c43ae6a5081865' + aarch64: '6e4d623810017d9dc58852f19d251fe52282578d6099ea41eac94d23eb0066e8', + armv7l: '6e4d623810017d9dc58852f19d251fe52282578d6099ea41eac94d23eb0066e8', + i686: 'd202035312895ee3bd9d260775cabba729d67996b3a3c1ce3786c83120515efa', + x86_64: 'c82701ac8f799f7716963363ab44b8a7984d580eff3ecd1d54ddbc589e08c907' }) def self.build diff --git a/packages/gdk_pixbuf.rb b/packages/gdk_pixbuf.rb index deee55b1f..d2f72d9eb 100644 --- a/packages/gdk_pixbuf.rb +++ b/packages/gdk_pixbuf.rb @@ -3,23 +3,24 @@ require 'package' class Gdk_pixbuf < Package description 'GdkPixbuf is a library for image loading and manipulation.' homepage 'https://developer.gnome.org/gdk-pixbuf' - version '2.42.4' + @_ver = '2.42.4' + version "#{@_ver}-1" license 'LGPL-2.1+' compatibility 'all' - source_url 'https://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.42/gdk-pixbuf-2.42.2.tar.xz' - source_sha256 '83c66a1cfd591d7680c144d2922c5955d38b4db336d7cd3ee109f7bcf9afef15' + source_url "https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/archive/#{@_ver}/gdk-pixbuf-#{@_ver}.tar.bz2" + source_sha256 'd94d2e67165739559a6323a23eea8ad3560ab1085e2a3356a19548c9cb88e1e9' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/gdk_pixbuf-2.42.4-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/gdk_pixbuf-2.42.4-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/gdk_pixbuf-2.42.4-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/gdk_pixbuf-2.42.4-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/gdk_pixbuf-2.42.4-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/gdk_pixbuf-2.42.4-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/gdk_pixbuf-2.42.4-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/gdk_pixbuf-2.42.4-1-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '23fc39d28ea5c1680730dcc387919446c41b57e341b8efcb8bdfa9c0662dddec', - armv7l: '23fc39d28ea5c1680730dcc387919446c41b57e341b8efcb8bdfa9c0662dddec', - i686: '259535541d24d83bc47503087eb0f84c50a29aa22e4eb61ab8ce33f465051bb5', - x86_64: '5c4ccbdf7b580052fc9788bc0d5174061ea84028851c74ce7b258d6a17413517' + aarch64: '62e8a794241bbeb7e4699617aa77dbae0e4ff7498ffac640a0ddeb09c66c0e92', + armv7l: '62e8a794241bbeb7e4699617aa77dbae0e4ff7498ffac640a0ddeb09c66c0e92', + i686: '2906220e700f765463aa12e2ca7b6500a92cdbae49f752470860fcc432986849', + x86_64: '6eefc5ee6bd5d37334e5745bff55eb240933d7751ad7eb0a78bdd965c3c50a90' }) depends_on 'glib' @@ -32,6 +33,14 @@ class Gdk_pixbuf < Package depends_on 'pango' => :build depends_on 'six' => :build + @python_deps = %w[Markdown typogrify] + + def self.prebuild + @python_deps.each do |item| + system "pip install --upgrade #{item}" + end + end + def self.build system "meson #{CREW_MESON_LTO_OPTIONS} \ -Dinstalled_tests=false \ @@ -39,10 +48,13 @@ class Gdk_pixbuf < Package -Drelocatable=true \ -Djasper=true \ -Ddebug=false \ - -Dman=false \ + -Dman=true \ builddir" system 'meson configure builddir' system 'ninja -C builddir' + @python_deps.each do |item| + system "pip uninstall --yes #{item}" + end end def self.install @@ -50,19 +62,19 @@ class Gdk_pixbuf < Package loader_dir = "#{CREW_DEST_LIB_PREFIX}/gdk-pixbuf-2.0/2.10.0/loaders" FileUtils.mkdir_p loader_dir system "touch #{loader_dir}.cache" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @gdk_pixbuf_env = <<~GDK_PIXBUF_ENV_EOF + # gdk-pixbuf configuration + export GDK_PIXBUF_MODULEDIR=#{CREW_LIB_PREFIX}/gdk-pixbuf-2.0/2.10.0/loaders + export GDK_PIXBUF_MODULE_FILE=#{CREW_LIB_PREFIX}/gdk-pixbuf-2.0/2.10.0/loaders.cache + GDK_PIXBUF_ENV_EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/gdk_pixbuf", @gdk_pixbuf_env) end def self.postinstall system 'env GDK_PIXBUF_MODULEDIR=#{CREW_LIB_PREFIX}/gdk-pixbuf-2.0/2.10.0/loaders \ GDK_PIXBUF_MODULE_FILE=#{CREW_LIB_PREFIX}/gdk-pixbuf-2.0/2.10.0/loaders.cache \ gdk-pixbuf-query-loaders --update-cache' - gdk_pixbuf_in_bashrc = `grep -c "GDK_PIXBUF_MODULEDIR" ~/.bashrc || true` - unless gdk_pixbuf_in_bashrc.to_i.positive? - puts 'Putting GDK_PIXBUF code in ~/.bashrc'.lightblue - system "echo 'export GDK_PIXBUF_MODULEDIR=#{CREW_LIB_PREFIX}/gdk-pixbuf-2.0/2.10.0/loaders' >> ~/.bashrc" - system "echo 'export GDK_PIXBUF_MODULE_FILE=#{CREW_LIB_PREFIX}/gdk-pixbuf-2.0/2.10.0/loaders.cache' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end end end diff --git a/packages/gettext.rb b/packages/gettext.rb index 058d092cb..668bd5cd7 100644 --- a/packages/gettext.rb +++ b/packages/gettext.rb @@ -4,10 +4,10 @@ class Gettext < Package description 'GNU gettext utilities are a set of tools that provides a framework to help other GNU packages produce multi-lingual messages.' homepage 'https://www.gnu.org/software/gettext/' @_ver = '0.21' - version "#{@ver}-1" + version "#{@_ver}-1" license 'GPL-3+ and LGPL-2.1+' compatibility 'all' - source_url "https://gnu.freemirror.org/gnu/gettext/gettext-#{@_ver}.tar.lz" + source_url "https://ftpmirror.gnu.org/gettext/gettext-#{@_ver}.tar.lz" source_sha256 '435b546e3880ab767c967c0731b20629a0cb0ba620e6bac2f590f401c10ebb45' binary_url({ @@ -17,25 +17,24 @@ class Gettext < Package x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/gettext-0.21-1-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '57ae562920cf6caefb4e6e764a171a8a78f18e5767668e42e4722cc63612cfa7', - armv7l: '57ae562920cf6caefb4e6e764a171a8a78f18e5767668e42e4722cc63612cfa7', - i686: '520172814ee0312877b6a0fb0d5d9f4e22473cf5bb9272facf93bf4d5597d1c0', - x86_64: 'de490d13276f5b9a48e007b57c08c64aac21730b1091be453c1373a0e1c26c52' + aarch64: '6d54ddacd45c8393893173a163b24a0b1ece327fce41b0e37d9353fd203360e7', + armv7l: '6d54ddacd45c8393893173a163b24a0b1ece327fce41b0e37d9353fd203360e7', + i686: '829a5256d748faaa93b6c5ff7ea142940536b40189222d6d0d4fba888eac0131', + x86_64: '25deed7e58cba619b5c9efae12aaec377823b28dcf8d70340c41a8604fd8365f' }) - depends_on 'ncurses' - depends_on 'libxml2' - depends_on 'icu4c' depends_on 'jdk8' => :build def self.build raise StandardError, 'Please remove libiconv before building.' if File.exist?("#{CREW_LIB_PREFIX}/libcharset.so") - system "env CFLAGS='-flto=auto' CXXFLAGS='-flto=auto' LDFLAGS='-flto=auto'\ + system 'filefix' + system "env CFLAGS='-flto=auto' CXXFLAGS='-flto=auto' LDFLAGS='-flto=auto'\ ./configure #{CREW_OPTIONS} \ - --disable-static \ - --enable-shared \ - --with-pic" + --disable-static \ + --enable-shared \ + --with-pic \ + --without-included-gettext" system 'make' end diff --git a/packages/gimp.rb b/packages/gimp.rb index f123c9ab4..d30dbffe8 100644 --- a/packages/gimp.rb +++ b/packages/gimp.rb @@ -77,8 +77,7 @@ class Gimp < Package depends_on 'sommelier' def self.build - system "env TMPDIR=#{CREW_PREFIX}/tmp \ - CFLAGS='-pipe -flto=auto -fuse-ld=gold' \ + system "env CFLAGS='-pipe -flto=auto -fuse-ld=gold' \ CXXFLAGS='-pipe -flto=auto -fuse-ld=gold' \ LDFLAGS='-flto' \ LIBS='-lm' \ diff --git a/packages/git.rb b/packages/git.rb index b4b36ca3a..fc339ec97 100644 --- a/packages/git.rb +++ b/packages/git.rb @@ -3,40 +3,40 @@ require 'package' class Git < Package description 'Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.' homepage 'https://git-scm.com/' - @_ver = '2.31.0' + @_ver = '2.31.1' version @_ver license 'GPL-2' compatibility 'all' source_url "https://github.com/git/git/archive/v#{@_ver}.tar.gz" - source_sha256 '13b3efb8eca3e3ef6e7eea6839600c37636dbac28069907beafd075ef7f45f0b' + source_sha256 'b1c0e95e9861b5d1b9ad3d8deaa2d8c7f02304ffc1b5e8869dd9fb98f9a0d436' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/git-2.31.0-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/git-2.31.0-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/git-2.31.0-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/git-2.31.0-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/git-2.31.1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/git-2.31.1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/git-2.31.1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/git-2.31.1-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '3eb7bfa293ab60c72ba430e81323979720d7d101413067d4df5fd64ed7ffcf83', - armv7l: '3eb7bfa293ab60c72ba430e81323979720d7d101413067d4df5fd64ed7ffcf83', - i686: '716d376ce2d8548d81ab2c88c3868e1eb8125dda656470509558b14b1bd5fbd5', - x86_64: '287d1307cfd7a42be9f64e2acf98447e9d6b6b640905539b60e11533506fa507' + aarch64: '86c740f001fde7008c59a3f85816d25f59190eb9a7ebd4b1f10ecc74606e4739', + armv7l: '86c740f001fde7008c59a3f85816d25f59190eb9a7ebd4b1f10ecc74606e4739', + i686: '4c14a8d247b71ab55436d688879e3ff8fa20335a1fe1160351ce51b1c9bb4568', + x86_64: '43e134e2978f2fab77d9a46191a7d8efff26306eab2c45509fc3d9bb2274f4b5' }) def self.build abort('Please remove libiconv before building.') if File.exist?("#{CREW_LIB_PREFIX}/libcharset.so") - system 'autoreconf -i' + system 'autoreconf -fiv' system "env CFLAGS='-flto=auto' CXXFLAGS='-flto=auto' \ - LDFLAGS='-flto=auto' \ - ./configure \ - #{CREW_OPTIONS} \ - --with-openssl=#{CREW_PREFIX}/etc/ssl \ - --without-tcltk \ - --with-perl=#{CREW_PREFIX}/bin/perl \ - --with-python=#{CREW_PREFIX}/bin/python3 \ - --with-gitconfig=#{CREW_PREFIX}/etc/gitconfig \ - --with-gitattributes=#{CREW_PREFIX}/etc/gitattributes" + LDFLAGS='-flto=auto' \ + ./configure \ + #{CREW_OPTIONS} \ + --with-openssl=#{CREW_PREFIX}/etc/ssl \ + --without-tcltk \ + --with-perl=#{CREW_PREFIX}/bin/perl \ + --with-python=#{CREW_PREFIX}/bin/python3 \ + --with-gitconfig=#{CREW_PREFIX}/etc/gitconfig \ + --with-gitattributes=#{CREW_PREFIX}/etc/gitattributes" system 'make' end @@ -44,19 +44,12 @@ class Git < Package system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/git-completion" FileUtils.cp_r Dir.glob('contrib/completion/.'), "#{CREW_DEST_PREFIX}/share/git-completion/" - end - def self.postinstall - puts - puts 'Git completion support is available for the following shells:'.lightblue - system "ls #{CREW_PREFIX}/share/git-completion" - puts - puts 'To add git completion for bash, execute the following:'.lightblue - puts "echo '# git completion' >> ~/.bashrc".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/share/git-completion/git-completion.bash ]; then' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/share/git-completion/git-completion.bash' >> ~/.bashrc".lightblue - puts "echo 'fi' >> ~/.bashrc".lightblue - puts 'source ~/.bashrc'.lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @git_bashd_env = <<~GIT_BASHD_EOF + # git bash completion + source #{CREW_PREFIX}/share/git-completion/git-completion.bash + GIT_BASHD_EOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/git", @git_bashd_env) end end diff --git a/packages/github_cli.rb b/packages/github_cli.rb index 2a8143cd2..964be7211 100644 --- a/packages/github_cli.rb +++ b/packages/github_cli.rb @@ -3,25 +3,23 @@ require 'package' class Github_cli < Package description 'Official Github CLI tool' homepage 'https://cli.github.com/' - version '1.0.0' + version '1.8.1' license 'MIT' compatibility 'all' - source_url 'https://github.com/cli/cli/archive/v1.0.0.tar.gz' - source_sha256 'e3d1c341829f5b885dce9aa2bf4bc84db48072752250f6fdb2d62903caf07cfb' - - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/github_cli-1.0.0-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/github_cli-1.0.0-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/github_cli-1.0.0-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/github_cli-1.0.0-chromeos-x86_64.tar.xz', + source_url 'https://github.com/cli/cli/archive/refs/tags/v1.8.1.tar.gz' + source_sha256 '5bdbc589a6d5cca241b2dc467d846a8f23c465d78efd898271f18b636608d6e6' + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/github_cli-1.8.1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/github_cli-1.8.1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/github_cli-1.8.1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/github_cli-1.8.1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'f105f30044c96869f9f2c199a6907d7518ce69a6e7dc8de3059f2c2e1716d1e2', - armv7l: 'f105f30044c96869f9f2c199a6907d7518ce69a6e7dc8de3059f2c2e1716d1e2', - i686: 'b28ff38226112dcdb6c37b46fe8c84bbf28d709ae6d68ba102d2de4b72cf4a42', - x86_64: '4949a7f29a571f59c8262f7b007a02cc238900d9999f10ad2941975fc2e3878b', - + binary_sha256({ + aarch64: 'fa3db74e10915c3edb47bc8f92b934dddb5fbb284ba9526c3e207826b3f8f949', + armv7l: 'fa3db74e10915c3edb47bc8f92b934dddb5fbb284ba9526c3e207826b3f8f949', + i686: '490bea45749ecc20f57a49e78ea323e45fda376d4437dfa4ecc01f7a34ea972b', + x86_64: 'c82ab211a3c9653e4f16a6aed36bc377ffa54a6d193b1d51a076dbf91faf1997' }) depends_on 'go' => :build @@ -33,10 +31,4 @@ class Github_cli < Package def self.install system "install -Dm755 bin/gh #{CREW_DEST_PREFIX}/bin/gh" end - - def self.postinstall - puts - puts "Type 'gh' to get started.".lightblue - puts - end end diff --git a/packages/go.rb b/packages/go.rb index 6db2599d8..fa5e1ba57 100644 --- a/packages/go.rb +++ b/packages/go.rb @@ -3,24 +3,24 @@ require 'package' class Go < Package description 'Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.' homepage 'https://golang.org/' - @_ver = '1.16' + @_ver = '1.16.3' version @_ver license 'BSD' compatibility 'all' source_url "https://dl.google.com/go/go#{@_ver}.src.tar.gz" - source_sha256 '7688063d55656105898f323d90a79a39c378d86fe89ae192eb3b7fc46347c95a' + source_sha256 'b298d29de9236ca47a023e382313bcc2d2eed31dfa706b60a04103ce83a71a25' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/go-1.16-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/go-1.16-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/go-1.16-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/go-1.16-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/go-1.16.3-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/go-1.16.3-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/go-1.16.3-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/go-1.16.3-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '5c8a7c1dba8d2d58cf474e6d0dfbe0d327268b3795fa6d59c84cf7e578c890e5', - armv7l: '5c8a7c1dba8d2d58cf474e6d0dfbe0d327268b3795fa6d59c84cf7e578c890e5', - i686: 'c1e8ef3998c06c069e49703af7f8c8bc719dcbd3c488322d9b3c3db765ee4dc8', - x86_64: '163773e1e201b0829189724b6781c6aa8e78eccf2041aa3cb09f07d7bc44e777' + aarch64: '2f6ab6029594d5563bd1b020ff0982d960a8d569e0081d1a36f4972a436e2e1b', + armv7l: '2f6ab6029594d5563bd1b020ff0982d960a8d569e0081d1a36f4972a436e2e1b', + i686: '13df993fe2af5ab01b1d4f28808dab883107ad62fb4dd566970b52d1decd26aa', + x86_64: 'f4676ad5ab1f1c83e73e4dfd1b94794a7630e9d1880e854ea81da9ffe912cd8f' }) @env ||= '' @@ -45,7 +45,6 @@ class Go < Package when 'aarch64', 'armv7l' FileUtils.cd 'src' do @env += "GOROOT='..'" - @env += " TMPDIR=#{CREW_PREFIX}/tmp" @env += " GOROOT_FINAL=#{CREW_PREFIX}/share/go" @env += ' GOHOSTARCH=arm' if ARCH == 'aarch64' # install with go_bootstrap if go is not in the path @@ -64,7 +63,7 @@ class Go < Package case ARCH when 'aarch64', 'armv7l' Dir.chdir 'src' do - system "PATH=\"#{Dir.pwd}/../bin:$PATH\" GOROOT=\"#{Dir.pwd}/..\" TMPDIR=\"#{CREW_PREFIX}/tmp\" go tool dist test" + system "PATH=\"#{Dir.pwd}/../bin:$PATH\" GOROOT=\"#{Dir.pwd}/..\" go tool dist test" end end end @@ -82,20 +81,29 @@ class Go < Package FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/bin" FileUtils.ln_s "#{CREW_PREFIX}/share/go/bin/go", "#{CREW_DEST_PREFIX}/bin" FileUtils.ln_s "#{CREW_PREFIX}/share/go/bin/gofmt", "#{CREW_DEST_PREFIX}/bin" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @gorun = <<~EOF + # Uncomment the line starting with "export" below to use `go run` + # Don't forget to uncomment it when you're done + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/go-run", @gorun) + @godev = <<~EOF + # Go development configuration + if [ ! -e #{CREW_PREFIX}/work/go ]; then + mkdir -vp #{CREW_PREFIX}/work/go + fi + if [ ! -e #{HOME}/go ]; then + ln -sv #{CREW_PREFIX}/work/go #{HOME}/go + fi + export PATH="$PATH:$HOME/go/bin" + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/go-dev", @godev) end def self.postinstall puts - puts "Installed Go for #{ARCH} in #{CREW_PREFIX}/share/go".lightblue - puts - puts 'To use `go run`, execute the following:'.lightblue - puts "export TMPDIR=#{CREW_PREFIX}/tmp".lightblue - puts - puts 'To develop with `go`, execute the following:'.lightblue - puts "mkdir -p #{CREW_PREFIX}/work/go".lightblue - puts "ln -s #{CREW_PREFIX}/work/go $HOME/go".lightblue - puts 'export PATH="$HOME/go/bin:$PATH"'.lightblue - puts "export TMPDIR=#{CREW_PREFIX}/tmp".lightblue + puts "Edit #{CREW_PREFIX}/etc/env.d/go-run to be able to use go-run".lightblue puts end end diff --git a/packages/go_bootstrap.rb b/packages/go_bootstrap.rb index 1d5c38e9b..52014c484 100644 --- a/packages/go_bootstrap.rb +++ b/packages/go_bootstrap.rb @@ -24,7 +24,7 @@ class Go_bootstrap < Package def self.build FileUtils.cd('src') do - system "TMPDIR=#{CREW_PREFIX}/tmp ./make.bash" + system "./make.bash" end end diff --git a/packages/gvfs.rb b/packages/gvfs.rb index 0d48962aa..644684301 100644 --- a/packages/gvfs.rb +++ b/packages/gvfs.rb @@ -28,7 +28,7 @@ class Gvfs < Package depends_on 'dconf' depends_on 'docbook_xsl' => :build depends_on 'elogind' => :build - depends_on 'fuse' + depends_on 'fuse3' depends_on 'gcr' depends_on 'glib' depends_on 'gtk3' => :build diff --git a/packages/handbrake.rb b/packages/handbrake.rb index 26c2111fd..104fa4ba6 100644 --- a/packages/handbrake.rb +++ b/packages/handbrake.rb @@ -34,7 +34,6 @@ class Handbrake < Package end def self.build - ENV['TMPDIR'] = "#{CREW_PREFIX}/tmp" system "env CFLAGS='-pipe -flto=auto' CXXFLAGS='-pipe -flto=auto' \ ./configure --prefix=#{CREW_PREFIX} --enable-x265 --enable-numa --enable-fdk-aac --harden" Dir.chdir 'build' do diff --git a/packages/hub.rb b/packages/hub.rb index 0f2df0a00..d2e5e033a 100644 --- a/packages/hub.rb +++ b/packages/hub.rb @@ -3,23 +3,23 @@ require 'package' class Hub < Package description 'hub is a command-line wrapper for git that makes you better at GitHub.' homepage 'https://hub.github.com/' - version '2.4.0' + version '2.14.2' license 'MIT' compatibility 'all' - source_url 'https://github.com/github/hub/archive/v2.4.0.tar.gz' - source_sha256 '894eb112be9aa0464fa2c63f48ae8e573ef9e32a00bad700e27fd09a0cb3be4b' + source_url "https://github.com/github/hub/archive/refs/tags/v#{version}.tar.gz" + source_sha256 'e19e0fdfd1c69c401e1c24dd2d4ecf3fd9044aa4bd3f8d6fd942ed1b2b2ad21a' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/hub-2.4.0-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/hub-2.4.0-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/hub-2.4.0-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/hub-2.4.0-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/hub-2.14.2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/hub-2.14.2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/hub-2.14.2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/hub-2.14.2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'cf87b6f4db9da4397e2c3c8c91efe65f6d104238ebac43a74b5ff8e33ea71a79', - armv7l: 'cf87b6f4db9da4397e2c3c8c91efe65f6d104238ebac43a74b5ff8e33ea71a79', - i686: 'd2ee1d2942eeaec70926d93ea25dcf30d69fffa55bf017b25dd2a72c0d0a554e', - x86_64: '6b06e10fc0aa5ae7be07cd74bbae122eca0815d4e2c52dc92f5e11000282bf24', + binary_sha256({ + aarch64: '1f1b9adacc34fc75c35fb4789b929dba0361bb8f66910c2ff1e5e580fd02d97a', + armv7l: '1f1b9adacc34fc75c35fb4789b929dba0361bb8f66910c2ff1e5e580fd02d97a', + i686: '0f0f1901d1c73e998e17abcab8a6bf69b8494ae8b2f0d14556abd33b59f5efd6', + x86_64: 'c1720760d44e772419129c0ae27cbdab8b9e8c29c7e578990dc38015b69081c2' }) depends_on 'go' => :build @@ -27,9 +27,5 @@ class Hub < Package def self.install FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/bin" system "script/build -o #{CREW_DEST_PREFIX}/bin/hub" - puts - puts "You will need to add an alias in order to use hub as a git wrapper:".lightblue - puts "echo \"alias git=hub\" >> ~/.bashrc && source ~/.bashrc".lightblue - puts end end diff --git a/packages/hunspell.rb b/packages/hunspell.rb index ce8d782dd..e12ad07e2 100644 --- a/packages/hunspell.rb +++ b/packages/hunspell.rb @@ -14,9 +14,9 @@ class Hunspell < Package if ARGV[0] == 'install' puts puts "Enter your preferred language:" - puts "1 = English (US)" - puts "2 = French (FR)" - puts "3 = Spanish (ANY)" + puts "1 = American English" + puts "2 = Français" + puts "3 = Español" puts "0 = Cancel" while version = STDIN.gets.chomp diff --git a/packages/hunspell_en_us.rb b/packages/hunspell_en_us.rb index 5faab6ba0..10f31cb06 100644 --- a/packages/hunspell_en_us.rb +++ b/packages/hunspell_en_us.rb @@ -3,23 +3,23 @@ require 'package' class Hunspell_en_us < Package description 'Hunspell US English dictionary' homepage 'http://hunspell.github.io/' - version '1.7.0' + version '1.7.0-1' license 'MPL-1.1, GPL-2 and LGPL-2.1' compatibility 'all' source_url 'https://github.com/hunspell/hunspell/archive/v1.7.0.tar.gz' source_sha256 'bb27b86eb910a8285407cf3ca33b62643a02798cf2eef468c0a74f6c3ee6bc8a' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_en_us-1.7.0-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_en_us-1.7.0-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_en_us-1.7.0-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_en_us-1.7.0-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_en_us-1.7.0-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_en_us-1.7.0-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_en_us-1.7.0-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_en_us-1.7.0-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '6e1a21976f02659b1ecd7b2c4ac5b39f05798ea6f1ba0cf582fa1b24906fcaf8', - armv7l: '6e1a21976f02659b1ecd7b2c4ac5b39f05798ea6f1ba0cf582fa1b24906fcaf8', - i686: '5d73dad2268cd03f84cc2f11052f9e917f50d833ac06d0c5c603d70944fced3f', - x86_64: '5ef3c02a61ed5edd4cc10020b824ea7b654a8b3eec7ec7bc6dd972c8b4188def', + binary_sha256({ + aarch64: '5533a1b89550da537e9243cab913e51f8736218e1163773a147cadb78626f279', + armv7l: '5533a1b89550da537e9243cab913e51f8736218e1163773a147cadb78626f279', + i686: '1ce9ea2baaab15b09c72e2ce7ce6af118a0ab6d7777e874d26770ea8c8175750', + x86_64: '254be4f7588feb30908fd02d86e88ea75284ab1188d5dce2605425179b681919' }) depends_on 'hunspell_base' @@ -28,9 +28,17 @@ class Hunspell_en_us < Package system 'git clone -b libreoffice-6-1 --depth 1 git://anongit.freedesktop.org/libreoffice/dictionaries.git' system "install -Dm644 dictionaries/en/en_US.aff #{CREW_DEST_HOME}/Library/Spelling/en_US.aff" system "install -Dm644 dictionaries/en/en_US.dic #{CREW_DEST_HOME}/Library/Spelling/en_US.dic" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @env = <<~EOF + # American English hunspell configuration + export DICTIONARY=en_US + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/hunspell_en_us", @env) end def self.postinstall + # This willbe a cron job later system 'git clone -b libreoffice-6-1 --depth 1 git://anongit.freedesktop.org/libreoffice/dictionaries.git' FileUtils.cp 'dictionaries/en/en_US.aff', "#{HOME}/Library/Spelling/en_US.aff" FileUtils.cp 'dictionaries/en/en_US.dic', "#{HOME}/Library/Spelling/en_US.dic" @@ -38,8 +46,5 @@ class Hunspell_en_us < Package puts puts "To update the dictionaries periodically, execute 'crew postinstall hunspell_en_us'.".lightblue puts - puts "To complete the installation, execute the following:".lightblue - puts "echo 'export DICTIONARY=en_US' >> ~/.bashrc && source ~/.bashrc".lightblue - puts end end diff --git a/packages/hunspell_es_any.rb b/packages/hunspell_es_any.rb index 734ce5275..d2d7f05d4 100644 --- a/packages/hunspell_es_any.rb +++ b/packages/hunspell_es_any.rb @@ -1,25 +1,25 @@ require 'package' class Hunspell_es_any < Package - description 'Hunspell Spanish dictionary' + description 'Diccionarios de español de Hunspell' homepage 'http://hunspell.github.io/' - version '1.7.0' + version '1.7.0-1' license 'MPL-1.1, GPL-2 and LGPL-2.1' compatibility 'all' source_url 'https://github.com/hunspell/hunspell/archive/v1.7.0.tar.gz' source_sha256 'bb27b86eb910a8285407cf3ca33b62643a02798cf2eef468c0a74f6c3ee6bc8a' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_es_any-1.7.0-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_es_any-1.7.0-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_es_any-1.7.0-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_es_any-1.7.0-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_es_any-1.7.0-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_es_any-1.7.0-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_es_any-1.7.0-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_es_any-1.7.0-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '910ae757e555654eda6b36fd90ba51a14122c4766236ec686311f19751c249b1', - armv7l: '910ae757e555654eda6b36fd90ba51a14122c4766236ec686311f19751c249b1', - i686: '142e9aab8a3b5be1e1e791fce20e1b4e38feae6ee0e3acd30644975a4323f924', - x86_64: '85aadc212025474ef99365c6227d7ac417c906c8406b012839327a5da39171fe', + binary_sha256({ + aarch64: 'a90ff23957171cf1af1124701ca68c9f46cb7893fedeb568f90238b7d43d4078', + armv7l: 'a90ff23957171cf1af1124701ca68c9f46cb7893fedeb568f90238b7d43d4078', + i686: '9c3c01eadd76055d27f2c517cb06571445f370a519f0eeff28b17f116643bceb', + x86_64: '984019dd5ea744163b7992162256e6e71a91ce1e7341c543d28c38e2f324e86d' }) depends_on 'hunspell_base' @@ -28,6 +28,13 @@ class Hunspell_es_any < Package system 'git clone -b libreoffice-6-1 --depth 1 git://anongit.freedesktop.org/libreoffice/dictionaries.git' system "install -Dm644 dictionaries/es/es_ANY.aff #{CREW_DEST_HOME}/Library/Spelling/es_ANY.aff" system "install -Dm644 dictionaries/es/es_ANY.dic #{CREW_DEST_HOME}/Library/Spelling/es_ANY.dic" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @env = <<~EOF + # Configuración de hunspell + export DICTIONARY=es_ANY + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/hunspell_es_any", @env) end def self.postinstall @@ -36,10 +43,7 @@ class Hunspell_es_any < Package FileUtils.cp 'dictionaries/es/es_ANY.dic', "#{HOME}/Library/Spelling/es_ANY.dic" FileUtils.rm_rf 'dictionaries/' puts - puts "To update the dictionaries periodically, execute 'crew postinstall hunspell_es_any'".lightblue - puts - puts "To complete the installation, execute the following:".lightblue - puts "echo 'export DICTIONARY=es_ANY' >> ~/.bashrc && source ~/.bashrc".lightblue + puts "Para actualizar los diccionarios periódicamente, ejecute 'crew postinstall hunspell_es_any'".lightblue puts end end diff --git a/packages/hunspell_fr_fr.rb b/packages/hunspell_fr_fr.rb index ca8c876c7..f12fe111b 100644 --- a/packages/hunspell_fr_fr.rb +++ b/packages/hunspell_fr_fr.rb @@ -1,25 +1,25 @@ require 'package' class Hunspell_fr_fr < Package - description 'Hunspell French dictionary' + description 'Dictionnaire Français Hunspell' homepage 'http://hunspell.github.io/' - version '1.7.0' + version '1.7.0-2' license 'MPL-1.1, GPL-2 and LGPL-2.1' compatibility 'all' source_url 'https://github.com/hunspell/hunspell/archive/v1.7.0.tar.gz' source_sha256 'bb27b86eb910a8285407cf3ca33b62643a02798cf2eef468c0a74f6c3ee6bc8a' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_fr_fr-1.7.0-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_fr_fr-1.7.0-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_fr_fr-1.7.0-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_fr_fr-1.7.0-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_fr_fr-1.7.0-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_fr_fr-1.7.0-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_fr_fr-1.7.0-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/hunspell_fr_fr-1.7.0-2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'bd10e474d96b5a3c8ff0085fdbae104099d7d11b1591b48dd6918506a1de4bf0', - armv7l: 'bd10e474d96b5a3c8ff0085fdbae104099d7d11b1591b48dd6918506a1de4bf0', - i686: '50a195c7cddf14f0a15cb8cf73e3ed98219a1de46ed6f5470176c443899a4034', - x86_64: 'ebb968ba879d0e14497b79f6d4156b82d5d2ee18080fd1e4a5fc5eb709c45f50', + binary_sha256({ + aarch64: 'f9436296b3b3cc53ed1307e21493754054037fa4ee69e8d047316d7d9906ce07', + armv7l: 'f9436296b3b3cc53ed1307e21493754054037fa4ee69e8d047316d7d9906ce07', + i686: '3d3d35a011256158f200ea5761ac3562f534733865a03c6f1023284e79235bca', + x86_64: 'aea9ec478d565bb9b240157630ae265e11f108652293131b439c8bf43ed546b9' }) depends_on 'hunspell_base' @@ -28,6 +28,13 @@ class Hunspell_fr_fr < Package system 'git clone -b libreoffice-6-1 --depth 1 git://anongit.freedesktop.org/libreoffice/dictionaries.git' system "install -Dm644 dictionaries/fr_FR/fr.aff #{CREW_DEST_HOME}/Library/Spelling/fr_FR.aff" system "install -Dm644 dictionaries/fr_FR/fr.dic #{CREW_DEST_HOME}/Library/Spelling/fr_FR.dic" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @env = <<~EOF + # Configuración de hunspell + export DICTIONARY=fr_FR + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/hunspell_fr_fr", @env) end def self.postinstall @@ -38,8 +45,5 @@ class Hunspell_fr_fr < Package puts puts "To update the dictionaries periodically, execute 'crew postinstall hunspell_fr_fr'".lightblue puts - puts "To complete the installation, execute the following:".lightblue - puts "echo 'export DICTIONARY=fr_FR' >> ~/.bashrc && source ~/.bashrc".lightblue - puts end end diff --git a/packages/intel_media_driver.rb b/packages/intel_media_driver.rb index 8b7da1b21..c195f25f9 100644 --- a/packages/intel_media_driver.rb +++ b/packages/intel_media_driver.rb @@ -4,21 +4,23 @@ class Intel_media_driver < Package description 'The Intel(R) Media Driver for VAAPI is a new VA-API (Video Acceleration API) user mode driver supporting hardware accelerated decoding, encoding, and video post processing for GEN based graphics hardware.' homepage 'https://github.com/intel/media-driver' @_ver = '20.4.5' - version @_ver + version "#{@_ver}-1" license 'BSD-3, and MIT' - compatibility 'x86_64' - source_url "https://github.com/intel/media-driver/archive/intel-media-#{@_ver}.tar.gz" - source_sha256 '3d856a963127ddd6690fc6dac521d7674947675d5f20452f1e6f45c0fc83f9e6' + case ARCH + when 'x86_64' + compatibility 'x86_64' + source_url "https://github.com/intel/media-driver/archive/intel-media-#{@_ver}.tar.gz" + source_sha256 '3d856a963127ddd6690fc6dac521d7674947675d5f20452f1e6f45c0fc83f9e6' - depends_on 'gmmlib' - depends_on 'libva' - - binary_url({ - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/intel_media_driver-20.4.5-chromeos-x86_64.tar.xz' - }) - binary_sha256({ - x86_64: '0710ad9dd76b97b62849cfe6179dae0e884e56c475332b03f889d5eaa121ffff' - }) + binary_url({ + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/intel_media_driver-20.4.5-1-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + x86_64: '0cc7a352ff10ca44659c49e8ebace37dc8c96a936d66fd28c1c17b7d8c709419' + }) + depends_on 'gmmlib' + depends_on 'libva' + end def self.preflight abort 'Not an Intel processor, aborting.'.lightred unless `grep -c 'GenuineIntel' /proc/cpuinfo`.to_i.positive? @@ -43,17 +45,12 @@ class Intel_media_driver < Package def self.install system "DESTDIR=#{CREW_DEST_DIR} ninja -C builddir install" - end - def self.postinstall - @_str = 'export LIBVA_DRIVER_NAME=iHD' - if `grep -c '#{@_str}' #{HOME}/.bashrc`.to_i.zero? - puts 'Performing env-setup...' - system "echo '#{@_str}' >> #{HOME}/.bashrc" - puts - puts 'To complete the installation, execute the following:'.lightblue - puts 'source ~/.bashrc'.lightblue - puts - end + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @env = <<~EOF + # intel_media_driver configuration + export LIBVA_DRIVER_NAME=iHD + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/intel_media_driver", @env) end end diff --git a/packages/ipfs.rb b/packages/ipfs.rb index 6e32b728e..7cbaaeb37 100644 --- a/packages/ipfs.rb +++ b/packages/ipfs.rb @@ -23,7 +23,7 @@ class Ipfs < Package }) depends_on 'go' => :build - depends_on 'fuse' + depends_on 'fuse3' def self.build system 'mkdir -p ../src/github.com/ipfs/go-ipfs' diff --git a/packages/kubectl.rb b/packages/kubectl.rb index 5b1f0a33e..4862dfe35 100644 --- a/packages/kubectl.rb +++ b/packages/kubectl.rb @@ -26,7 +26,6 @@ class Kubectl < Package depends_on "rsync" => :build def self.build - ENV['TMPDIR'] = "#{CREW_PREFIX}/tmp" # Override the -j$NPROC set by crew with -j1 to workaround a race issue system "make", "-j1", "generated_files" system "make", "kubectl" diff --git a/packages/libgee.rb b/packages/libgee.rb index 05ddcd908..93794d17e 100644 --- a/packages/libgee.rb +++ b/packages/libgee.rb @@ -26,8 +26,7 @@ class Libgee < Package def self.build system '[ -x configure ] || NOCONFIGURE=1 ./autogen.sh' - system "env TMPDIR=#{CREW_PREFIX}/tmp \ - CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \ + system "env CFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \ CXXFLAGS='-pipe -fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \ LDFLAGS='-fno-stack-protector -U_FORTIFY_SOURCE -flto=auto' \ ./configure #{CREW_OPTIONS}" diff --git a/packages/libostree.rb b/packages/libostree.rb index 5342db7dd..11c019e68 100644 --- a/packages/libostree.rb +++ b/packages/libostree.rb @@ -27,7 +27,7 @@ class Libostree < Package depends_on 'gpgme' depends_on 'libsoup' depends_on 'e2fsprogs' - depends_on 'fuse' + depends_on 'fuse3' depends_on 'libarchive' depends_on 'avahi' depends_on 'gtk_doc' => :build diff --git a/packages/libva_intel_driver_hybrid.rb b/packages/libva_intel_driver_hybrid.rb index e38e81102..bef075c73 100644 --- a/packages/libva_intel_driver_hybrid.rb +++ b/packages/libva_intel_driver_hybrid.rb @@ -3,25 +3,26 @@ require 'package' class Libva_intel_driver_hybrid < Package description 'VA-API implementation for Intel G45 and HD Graphics family' homepage 'https://github.com/intel/intel-vaapi-driver' - version '2.4.1' + version '2.4.1-1' license 'MIT' compatibility 'i686 x86_64' case ARCH when 'i686', 'x86_64' source_url 'https://github.com/intel/intel-vaapi-driver/archive/2.4.1.tar.gz' source_sha256 '03cd7e16acc94f828b6e7f3087863d8ca06e99ffa3385588005b1984bdd56157' + + binary_url({ + i686: 'https://dl.bintray.com/chromebrew/chromebrew/libva_intel_driver_hybrid-2.4.1-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libva_intel_driver_hybrid-2.4.1-1-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + i686: 'ff155f22b24b2c58a434e3b866f47f367b92817835d15f62034311ee607dc289', + x86_64: 'e9c740a0bd917ecbb69b822ce9df1609f415776ab5a5e553eb0a83bc93a35f90' + }) + depends_on 'igt_gpu_tools' end - binary_url({ - i686: 'https://dl.bintray.com/chromebrew/chromebrew/libva_intel_driver_hybrid-2.4.1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libva_intel_driver_hybrid-2.4.1-chromeos-x86_64.tar.xz' - }) - binary_sha256({ - i686: '44544381f5d72ee7a564d7d44a9857e42413f1337dc3f1e8e41d4d785644c981', - x86_64: '1573c67aeab4b6919a8979688962d4f2bbab0da8fd8497b9970424c10fe25aae' - }) - def self.patch # Only relevant if intel-gpu-tools is installed, # since then the shaders will be recompiled @@ -37,17 +38,12 @@ class Libva_intel_driver_hybrid < Package def self.install system "DESTDIR=#{CREW_DEST_DIR} ninja -C builddir install" - end - def self.postinstall - @_str = 'export LIBVA_DRIVER_NAME=i965' - if `grep -c '#{@_str}' #{HOME}/.bashrc`.to_i.zero? - puts 'Performing env-setup...' - system "echo '#{@_str}' >> #{HOME}/.bashrc" - puts - puts 'To complete the installation, execute the following:'.lightblue - puts 'source ~/.bashrc'.lightblue - puts - end + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @env = <<~EOF + # libva_intel_driver_hybrid configuration + export LIBVA_DRIVER_NAME=i965 + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/libva_intel_driver_hybrid", @env) end end diff --git a/packages/mandb.rb b/packages/mandb.rb index c678ff2a2..04c82d499 100644 --- a/packages/mandb.rb +++ b/packages/mandb.rb @@ -24,6 +24,7 @@ class Mandb < Package }) depends_on 'gdbm' + depends_on 'glibc' depends_on 'groff' => :build depends_on 'libpipeline' depends_on 'libseccomp' @@ -60,7 +61,6 @@ class Mandb < Package # we can't write to /usr/lib/tmpfiles.d # we can't create the user 'man' # the pager is not at the default location - system './configure --help' system "env CFLAGS='-pipe -flto=auto' CXXFLAGS='-pipe -flto=auto' \ LDFLAGS='-flto=auto' \ ./configure \ @@ -82,12 +82,5 @@ class Mandb < Package def self.postinstall system "env MANPATH=#{CREW_MAN_PREFIX} mandb -psc" - pager_in_bashrc = `grep -c "PAGER" ~/.bashrc || true` - unless pager_in_bashrc.to_i.positive? - puts 'Putting PAGER=most in ~/.bashrc'.lightblue - system "echo 'export PAGER=most' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end end end diff --git a/packages/mutt.rb b/packages/mutt.rb index 358d9b2e3..8da829fb1 100644 --- a/packages/mutt.rb +++ b/packages/mutt.rb @@ -3,30 +3,26 @@ require 'package' class Mutt < Package description 'Mutt is a small but very powerful text-based mail client for Unix operating systems.' homepage 'http://mutt.org/' - version '1.9.2' + version '2.0.6' license 'GPL-2' compatibility 'all' - source_url 'ftp://ftp.mutt.org/pub/mutt/mutt-1.9.2.tar.gz' - source_sha256 'a2e152a352bbf02d222d54074199d9c53821c19f700c4cb85f78fa85faed7896' + source_url 'ftp://ftp.mutt.org/pub/mutt/mutt-2.0.6.tar.gz' + source_sha256 '81e31c45895fd624747f19106aa2697d2aa135049ff2e9e9db0a6ed876bcb598' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-1.9.2-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-1.9.2-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-1.9.2-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-1.9.2-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-2.0.6-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-2.0.6-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-2.0.6-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-2.0.6-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '0acaa6fa2863afa8da56a61ba99d365e2bdd73dc56e9801ee9b6e9338d33e2a2', - armv7l: '0acaa6fa2863afa8da56a61ba99d365e2bdd73dc56e9801ee9b6e9338d33e2a2', - i686: '97e12bc88aff256ea46c6389c69a5cf2623908c423ca43f08d6a905c0cb50391', - x86_64: 'e8ca9e36db89e76471118d9620df06e9f6eac43c20eefd01810a98ca80149583', + binary_sha256({ + aarch64: '2f3f18827cb8a2c0a5a48e04397c4c4bf811cad82a8a235081a9f54ba227308f', + armv7l: '2f3f18827cb8a2c0a5a48e04397c4c4bf811cad82a8a235081a9f54ba227308f', + i686: 'd43f6599f9c83c487a2302015e1be9c8d28702fe8d8feab092cbc5b37a54e4a4', + x86_64: '3dedfd9092e58cba771c3af7079bf608b11960df2d30989254187501befccecc' }) - depends_on 'gdbm' - depends_on 'libcyrussasl' depends_on 'libxslt' - depends_on 'openssl' - depends_on 'perl' def self.build system "./configure \ @@ -42,13 +38,13 @@ class Mutt < Package def self.install system "mkdir -p #{CREW_DEST_PREFIX}/mail" - system "make", "DESTDIR=#{CREW_DEST_DIR}", "install" - end + system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' - def self.postinstall - puts - puts "To finish the installation, execute the following:".lightblue - puts "echo 'export SASL_PATH=#{CREW_PREFIX}/lib/sasl2' >> ~/.bashrc && source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @muttenv = <<~MUTTEOF + # Mutt configuration + export SASL_PATH=#{CREW_PREFIX}/lib/sasl2 + MUTTEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/mutt", @muttenv) end end diff --git a/packages/nano.rb b/packages/nano.rb index e3239e8b5..530525efc 100644 --- a/packages/nano.rb +++ b/packages/nano.rb @@ -3,24 +3,24 @@ require 'package' class Nano < Package description 'Nano\'s ANOther editor, an enhanced free Pico clone.' homepage 'https://www.nano-editor.org/' - @_ver = '5.6' + @_ver = '5.6.1' version @_ver license 'GPL-3' compatibility 'all' source_url "https://nano-editor.org/dist/v5/nano-#{@_ver}.tar.xz" - source_sha256 'fce183e4a7034d07d219c79aa2f579005d1fd49f156db6e50f53543a87637a32' + source_sha256 '760d7059e0881ca0ee7e2a33b09d999ec456ff7204df86bee58eb6f523ee8b09' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/nano-5.6-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/nano-5.6-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/nano-5.6-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/nano-5.6-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/nano-5.6.1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/nano-5.6.1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/nano-5.6.1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/nano-5.6.1-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '591c7d34de17429fe24e2c72b298c23791e6e87da58f914359d8152ec70b00ab', - armv7l: '591c7d34de17429fe24e2c72b298c23791e6e87da58f914359d8152ec70b00ab', - i686: '42c85d4a27d9c99a85661385dbbaacc95e09e7ab7878ca7665e17c7527582695', - x86_64: 'cb60149f951bd3cbff70a5d097c6d422591cc48dabe40552e59404f48b4cc866' + aarch64: '1a421406267c513aed8d65ec02d9b2e796e4ca1dcc044d00e5b1b8a5543796e4', + armv7l: '1a421406267c513aed8d65ec02d9b2e796e4ca1dcc044d00e5b1b8a5543796e4', + i686: '0b5f611c9cde46159191a255127761a04c4e1e6c865a41fff8d048ac596ed938', + x86_64: 'da8530aac92bd6b84dd3b142baa4586db42e5c0880172a55d9fa7383f91fc408' }) depends_on 'xdg_base' @@ -30,8 +30,8 @@ class Nano < Package end def self.build - system "env CFLAGS='-pipe -flto=auto' \ - CXXFLAGS='-pipe -flto=auto' \ + system "env CFLAGS='-pipe -flto=auto -fuse-ld=gold' \ + CXXFLAGS='-pipe -flto=auto -fuse-ld=gold' \ LDFLAGS='-flto=auto' \ ./configure #{CREW_OPTIONS} \ --enable-threads=posix \ @@ -82,9 +82,5 @@ class Nano < Package puts puts 'Personal configuration file is located in $HOME/.nanorc'.lightblue puts - puts 'To make nano your default editor, execute the following:'.lightblue - puts - puts "echo 'EDITOR=#{CREW_PREFIX}/bin/nano' >> ~/.bashrc && source ~/.bashrc".lightblue - puts end end diff --git a/packages/nodebrew.rb b/packages/nodebrew.rb index 810129a6b..8ad613925 100644 --- a/packages/nodebrew.rb +++ b/packages/nodebrew.rb @@ -4,23 +4,23 @@ class Nodebrew < Package description 'Node.js version manager' homepage 'https://github.com/hokaccha/nodebrew' @_ver = '1.0.1' - version "#{@_ver}-1" + version "#{@_ver}-2" license 'MIT' compatibility 'all' source_url "https://github.com/hokaccha/nodebrew/archive/v#{@_ver}.tar.gz" source_sha256 'c34e7186d4fd493c5417ad5563ad39fd493a42695bd9a7758c3df10380e43399' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/nodebrew-1.0.1-1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/nodebrew-1.0.1-1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/nodebrew-1.0.1-1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/nodebrew-1.0.1-1-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/nodebrew-1.0.1-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/nodebrew-1.0.1-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/nodebrew-1.0.1-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/nodebrew-1.0.1-2-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: 'e3c4bfac2033982be9859766dc9b7c00a018cbdc0c233f54b0725295baabd770', - armv7l: 'e3c4bfac2033982be9859766dc9b7c00a018cbdc0c233f54b0725295baabd770', - i686: 'ca1437cc074946cd723a691a89ca127d3c1f95beea6015fa74cf66fe074a6c22', - x86_64: 'bcf965ab509fca115094ba9ed146c0b9fe43a37055b2b233b32cf77bde659f08' + aarch64: 'ea1dc71bbdb987b742474128b4836e643beec4abcd48c7a2bc695092f8b19d39', + armv7l: 'ea1dc71bbdb987b742474128b4836e643beec4abcd48c7a2bc695092f8b19d39', + i686: 'b07ef1989b2f09f340eee6901d00652639f6e4dfb7c47d958bfebfe267fd5285', + x86_64: 'f564dade9448caa2763eddb292060e0dab2c17740f0b898c71432dc8e2ce3d48' }) def self.install @@ -35,24 +35,25 @@ class Nodebrew < Package FileUtils.ln_s "#{CREW_PREFIX}/share/nodebrew/current/bin/node", "#{CREW_DEST_PREFIX}/bin/nodejs" FileUtils.ln_s "#{CREW_PREFIX}/share/nodebrew", "#{CREW_DEST_HOME}/.nodebrew" FileUtils.ln_sf "#{CREW_PREFIX}/share/nodebrew", "#{HOME}/.nodebrew" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @bashd = <<~NODEBREWCOMPLETIONEOF + # nodebrew bash completion + source #{CREW_PREFIX}/share/nodebrew/completions/bash/nodebrew-completion + NODEBREWCOMPLETIONEOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/nodebrew", @bashd) + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @env = <<~'NODEBREWENVEOF' + # nodebrew configuration + export PATH="$PATH:$HOME/.nodebrew/current/bin" + NODEBREWENVEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/nodebrew", @env) end def self.postinstall FileUtils.ln_sf "#{CREW_PREFIX}/share/nodebrew/default", "#{CREW_PREFIX}/share/nodebrew/current" puts - puts 'Nodebrew completion support is available for the following shells:'.lightblue - puts 'bash fish zsh'.lightblue - puts - puts 'To add nodebrew completion for bash, execute the following:'.lightblue - puts "echo '# nodebrew completion' >> ~/.bashrc".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/share/nodebrew/completions/bash/nodebrew-completion ]; then' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/share/nodebrew/completions/bash/nodebrew-completion' >> ~/.bashrc".lightblue - puts "echo 'fi' >> ~/.bashrc".lightblue - puts 'source ~/.bashrc'.lightblue - puts - puts 'To complete the installation, execute the following:'.lightblue - puts "echo 'export PATH=\$HOME/.nodebrew/current/bin:\$PATH' >> ~/.bashrc && source ~/.bashrc".lightblue - puts puts 'To install the latest node, execute:'.lightblue puts 'nodebrew install-binary latest'.lightblue puts 'nodebrew use latest'.lightblue @@ -60,12 +61,12 @@ class Nodebrew < Package end def self.remove - if Dir.exists? "#{CREW_PREFIX}/share/nodebrew" + if Dir.exist? "#{CREW_PREFIX}/share/nodebrew" puts print "Would you like to remove #{CREW_PREFIX}/share/nodebrew? [y/N] " - response = STDIN.getc + response = $stdin.getc case response - when "y", "Y" + when 'y', 'Y' FileUtils.rm_rf "#{CREW_PREFIX}/share/nodebrew" puts "#{CREW_PREFIX}/share/nodebrew removed.".lightred else diff --git a/packages/nvm.rb b/packages/nvm.rb index 7015a7a71..f6b3b4079 100644 --- a/packages/nvm.rb +++ b/packages/nvm.rb @@ -9,6 +9,19 @@ class Nvm < Package source_url 'https://github.com/nvm-sh/nvm/archive/v0.35.3.tar.gz' source_sha256 'a88c8c1e920ca24c09a2f9f0733afa9d6ccf03fe068e9ffba488416d9710d4fb' + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/nvm-0.35.3-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/nvm-0.35.3-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/nvm-0.35.3-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/nvm-0.35.3-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + aarch64: 'eba4a5fdb550729b0d406cf5dd5791f0c4bc166d8cfc195abadc60a8323b6445', + armv7l: 'eba4a5fdb550729b0d406cf5dd5791f0c4bc166d8cfc195abadc60a8323b6445', + i686: '89f5bed7552b0f80689c3dd2dd46c1357b4b77a96502216d794098e6a3d607c7', + x86_64: '864317f63b74224ed74bc131c5596e11524abb277e717494111c98d75fd86de2' + }) + def self.install system "sed -i 's,\$HOME/.nvm,#{CREW_DEST_PREFIX}/share/nvm,g' install.sh" system "NVM_DIR=#{CREW_DEST_PREFIX}/share/nvm && bash install.sh" @@ -16,15 +29,10 @@ class Nvm < Package system "rm -rf #{CREW_DEST_PREFIX}/share/nvm/test" end - def self.postinstall + def self.remove puts - puts "To complete the installation, execute:".lightblue - puts "source ~/.bashrc".lightblue - puts - puts "To uninstall, execute the following:".lightblue - puts "crew remove nvm".lightblue + puts "Don't forget to run:" puts "rm -rf #{CREW_PREFIX}/share/nvm".lightblue - puts "Delete any lines with NVM_DIR in ~/.bashrc.".lightblue puts end end diff --git a/packages/packer_completion.rb b/packages/packer_completion.rb index d21bb6709..218474c20 100644 --- a/packages/packer_completion.rb +++ b/packages/packer_completion.rb @@ -3,37 +3,34 @@ require 'package' class Packer_completion < Package description 'Add bash autocompletion for packer.' homepage 'https://github.com/mrolli/packer-bash-completion' - version '1.0.0' + version '1.0.0-1' license 'MIT' compatibility 'all' - source_url 'https://github.com/mrolli/packer-bash-completion/archive/1.0.0.tar.gz' - source_sha256 '20ebfacd3f3a60f8dbd09e25b97d3b6e5049cbdf00a2d607fe79eaaef39e1eea' + source_url 'https://github.com/mrolli/packer-bash-completion/archive/refs/tags/1.4.3.tar.gz' + source_sha256 'af7b3b49b29ffdb05b519dad2d83066f3d166dd8e29abd406ca0f3d480901df4' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/packer_completion-1.0.0-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/packer_completion-1.0.0-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/packer_completion-1.0.0-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/packer_completion-1.0.0-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/packer_completion-1.0.0-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/packer_completion-1.0.0-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/packer_completion-1.0.0-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/packer_completion-1.0.0-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '9334ea5ec25ee0207576ad8064e7d05bb3f7d56e38e788443992ee646f00eee7', - armv7l: '9334ea5ec25ee0207576ad8064e7d05bb3f7d56e38e788443992ee646f00eee7', - i686: 'ffe610cfa7cc113af4f2a6ec505aa2897aae771b0a3069b659fa53ae24aba902', - x86_64: '72db1d2343fc28baaaef56b8aaca87442b3d713f99ca3e3889b920a816f2c4b2', + binary_sha256({ + aarch64: 'f5b7d5298e8d26c88409399074af9d00335dc7e30ba521fb9f413043324885a7', + armv7l: 'f5b7d5298e8d26c88409399074af9d00335dc7e30ba521fb9f413043324885a7', + i686: '07c51b5dfbd4b38b75fcfabacdd2d1dbcfc71d4ad5bdc3284b3b685707e750c7', + x86_64: '44a68bde192c65ed695b496815dce5b09b826973a25100fd6262eb69144b884a' }) def self.install - system "install -Dm644 packer #{CREW_PREFIX}/share/packer-bash-completion/packer" - end + FileUtils.mkdir "#{CREW_PREFIX}/share/packer-bash-completion/" + FileUtils.install 'packer', "#{CREW_PREFIX}/share/packer-bash-completion/packer", mode: 644, verbose: true - def self.postinstall - puts - puts "To complete installation, execute the following:".lightblue - puts "echo '# packer completion' >> ~/.bashrc".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/share/packer-bash-completion/packer ]; then' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/share/packer-bash-completion/packer' >> ~/.bashrc".lightblue - puts "echo 'fi' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @env = <<~EOF + # Packer bash completion + source #{CREW_PREFIX}/share/packer-bash-completion/packer + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/packer_completion", @env) end end diff --git a/packages/php71.rb b/packages/php71.rb index 2a4f09a33..a25ea4756 100644 --- a/packages/php71.rb +++ b/packages/php71.rb @@ -61,7 +61,6 @@ class Php71 < Package end def self.build - ENV['TMPDIR'] = "#{CREW_PREFIX}/tmp" system './configure', "--prefix=#{CREW_PREFIX}", "--docdir=#{CREW_PREFIX}/doc", diff --git a/packages/php72.rb b/packages/php72.rb index a2bfd2006..d813de7ca 100644 --- a/packages/php72.rb +++ b/packages/php72.rb @@ -61,7 +61,6 @@ class Php72 < Package end def self.build - ENV['TMPDIR'] = "#{CREW_PREFIX}/tmp" ENV['CFLAGS'] = ' -liconv' system './configure', "--prefix=#{CREW_PREFIX}", diff --git a/packages/php73.rb b/packages/php73.rb index 1664376f6..c2a0846b7 100644 --- a/packages/php73.rb +++ b/packages/php73.rb @@ -61,7 +61,7 @@ class Php73 < Package end def self.build - system "env TMPDIR='#{CREW_PREFIX}/tmp' CFLAGS='-pipe -ltinfo' \ + system "env CFLAGS='-pipe -ltinfo' \ ./configure \ --prefix=#{CREW_PREFIX} \ --docdir=#{CREW_PREFIX}/doc \ diff --git a/packages/php74.rb b/packages/php74.rb index fedecc5e6..11d954f6e 100644 --- a/packages/php74.rb +++ b/packages/php74.rb @@ -66,7 +66,7 @@ class Php74 < Package end def self.build - system "env LD_LIBRARY_PATH=#{CREW_LIB_PREFIX} TMPDIR='#{CREW_PREFIX}/tmp' CFLAGS='-pipe' \ + system "env LD_LIBRARY_PATH=#{CREW_LIB_PREFIX} CFLAGS='-pipe' \ ./configure \ --prefix=#{CREW_PREFIX} \ --docdir=#{CREW_PREFIX}/doc \ diff --git a/packages/php80.rb b/packages/php80.rb index 3cda20cec..2a8df0f28 100644 --- a/packages/php80.rb +++ b/packages/php80.rb @@ -66,7 +66,7 @@ class Php80 < Package end def self.build - system "env LD_LIBRARY_PATH=#{CREW_LIB_PREFIX} TMPDIR='#{CREW_PREFIX}/tmp' CFLAGS='-pipe' \ + system "env LD_LIBRARY_PATH=#{CREW_LIB_PREFIX} CFLAGS='-pipe' \ ./configure \ --prefix=#{CREW_PREFIX} \ --docdir=#{CREW_PREFIX}/doc \ diff --git a/packages/pkgsrc.rb b/packages/pkgsrc.rb index c950e0e4f..57d42b1a0 100644 --- a/packages/pkgsrc.rb +++ b/packages/pkgsrc.rb @@ -3,31 +3,19 @@ require 'package' class Pkgsrc < Package description 'pkgsrc is a framework for building third-party software on NetBSD and other UNIX-like systems' homepage 'https://github.com/NetBSD/pkgsrc' - version '2020Q1' + version '2021Q1' license '' # Can't find license compatibility 'all' - source_url 'https://github.com/NetBSD/pkgsrc/archive/6ba7d2a6ee1388ad515177f5964681f2f6c13f13.tar.gz' - source_sha256 'fe2cf98d294cdd298c9191c33c5223860f73e9bed8b9d137f0c32a579ea49803' - - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/pkgsrc-2020Q1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/pkgsrc-2020Q1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/pkgsrc-2020Q1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/pkgsrc-2020Q1-chromeos-x86_64.tar.xz', - }) - binary_sha256 ({ - aarch64: '3e5874fdcfe1f9bbc4379c408ea2c306938b8b81aab05a733b0431cd4560c777', - armv7l: '3e5874fdcfe1f9bbc4379c408ea2c306938b8b81aab05a733b0431cd4560c777', - i686: 'cc7393a04bcb20413e773d265c8855554bb38d4e16bb3b802029a21d9f8a2708', - x86_64: 'b461407fd6f86a40d4c5edae331096e57c2d9cdd0fff2e2de6f2d6ab06f53b6a', - }) + source_url 'https://github.com/NetBSD/pkgsrc/archive/ccaf3cb68a965f1b055b3e04485d725fc7043813.tar.gz' + source_sha256 '16039f24bb84d5046832e462cfd7a21c5f53dd15792a9e6b71fa4faec3a7ab4e' def self.build - system "cat << 'EOF' > pkglocate -#!/bin/bash -cd #{CREW_PREFIX}/pkgsrc -./pkglocate \"\$@\" -EOF" + @pkglocate = <<~EOF + #!/bin/bash + cd #{CREW_PREFIX}/pkgsrc + ./pkglocate "$@" + EOF + IO.write("pkglocate", @pkglocate) end def self.install @@ -41,7 +29,6 @@ EOF" end ENV['SH'] = '/bin/bash' ENV['OS_VARIANT'] = 'chromeos' - ENV['TMPDIR'] = "#{CREW_PREFIX}/tmp" FileUtils.chdir 'bootstrap' do system "./bootstrap --abi=#{abi} --preserve-path --unprivileged --prefix=#{CREW_PREFIX}/pkg \ --pkgdbdir=#{CREW_PREFIX}/pkg/pkgdb --sysconfdir=#{CREW_PREFIX}/pkg/etc --varbase=#{CREW_PREFIX}/pkg/var \ @@ -62,9 +49,19 @@ EOF" FileUtils.rm_rf 'wrk' end system "install -Dm755 pkglocate #{CREW_DEST_PREFIX}/pkg/sbin/pkglocate" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @env = <<~EOF + # NetBSD pkgsrc configuration + source #{CREW_PREFIX}/share/s/s-completion.bash + export PATH="$PATH:#{CREW_PREFIX}/pkg/bin:#{CREW_PREFIX}/pkg/gnu/bin:#{CREW_PREFIX}/pkg/sbin" + export MANPATH="$MANPATH:#{CREW_PREFIX}/pkg/man" + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/pkgsrc", @env) end def self.postinstall + # This needs more help than saltedcoffii can do right now puts puts "You may wish to have the vulnerabilities file downloaded daily so that it" puts "remains current. This may be done by adding an appropriate entry to the root" @@ -112,11 +109,6 @@ EOF" puts puts "Thank you for using pkgsrc!".lightgreen puts - puts "To finish the installation, execute the following:".lightblue - puts "echo 'export PATH=\"#{CREW_PREFIX}/pkg/bin:#{CREW_PREFIX}/pkg/gnu/bin:#{CREW_PREFIX}/pkg/sbin:\$PATH\"' >> ~/.bashrc".lightblue - puts "echo 'export MANPATH=\"#{CREW_PREFIX}/pkg/man:\$MANPATH\"' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts puts "To install packages, execute the following:".lightblue puts "cd #{CREW_PREFIX}/pkgsrc//".lightblue puts "bmake package-install".lightblue @@ -125,8 +117,11 @@ EOF" puts puts "To search packages, execute 'pkglocate '.".lightblue puts + end + + def self.remove + puts puts "To completely remove pkgsrc and all packages, execute the following:".lightblue - puts "crew remove pkgsrc".lightblue puts "rm -rf #{CREW_PREFIX}/pkg #{CREW_PREFIX}/pkgsrc".lightblue puts end diff --git a/packages/plowshare.rb b/packages/plowshare.rb index 7962f8a36..000043366 100644 --- a/packages/plowshare.rb +++ b/packages/plowshare.rb @@ -3,39 +3,35 @@ require 'package' class Plowshare < Package description 'Command-line tool and engine for managing sharing websites' homepage 'https://github.com/mcrapet/plowshare' - version '2.1.7' + version '2.1.7-1' license 'GPL-3' compatibility 'all' source_url 'https://github.com/mcrapet/plowshare/archive/v2.1.7.tar.gz' source_sha256 'c17d0cc1b3323f72b2c1a5b183a9fcef04e8bfc53c9679a4e1523642310d22ad' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/plowshare-2.1.7-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/plowshare-2.1.7-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/plowshare-2.1.7-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/plowshare-2.1.7-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/plowshare-2.1.7-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/plowshare-2.1.7-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/plowshare-2.1.7-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/plowshare-2.1.7-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '5cd75b7293848e6d5507978fadd107343970f87ca3f41c6ddbbe6a3a3572a845', - armv7l: '5cd75b7293848e6d5507978fadd107343970f87ca3f41c6ddbbe6a3a3572a845', - i686: 'ff7f23967d3168ac16c95fe43c6a1312675827b12b2bca26297001354606314f', - x86_64: '5d416217cb31c3fc9ab7b33cdcd78c5c9c49b7334145b7bbe99465a4b3c7f995', + binary_sha256({ + aarch64: '0ea3edec905fbdd53d7b94ae485878905008c9945f5861eda3724f0804d52d5b', + armv7l: '0ea3edec905fbdd53d7b94ae485878905008c9945f5861eda3724f0804d52d5b', + i686: '40c24122a6a953e2da2f4b23593a3f141fc8591bcf09c9292fcefe8bbde5c703', + x86_64: '7febe5e161d02172925313b232c9f9615459395a296856e93df3d9ed36defad8' }) depends_on 'recode' def self.install system 'make', "PREFIX=#{CREW_PREFIX}", "DESTDIR=#{CREW_DEST_DIR}", 'install' - end - def self.postinstall - puts - puts "To add command completion for bash, execute the following:".lightblue - puts "echo '# plowdown completion' >> ~/.bashrc".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/share/bash-completion/completions/plowdown ]; then' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/share/bash-completion/completions/plowdown' >> ~/.bashrc".lightblue - puts "echo 'fi' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @plowshareenv = <<~PLOWSHAREEOF + # plowshare bash completion + source #{CREW_PREFIX}/share/bash-completion/completions/plowdown + PLOWSHAREEOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/plowshare", @plowshareenv) end end diff --git a/packages/postgres.rb b/packages/postgres.rb index 76d5a67e9..e8ccb3c99 100644 --- a/packages/postgres.rb +++ b/packages/postgres.rb @@ -3,58 +3,64 @@ require 'package' class Postgres < Package description 'PostgreSQL is a powerful, open source object-relational database system.' homepage 'https://www.postgresql.org/' - version '9.6.16' + version '9.6.16-1' license 'PostgreSQL and GPL-2' compatibility 'all' source_url 'https://ftp.postgresql.org/pub/source/v9.6.16/postgresql-9.6.16.tar.bz2' source_sha256 '5c6cba9cc0df70ba2b128c4a87d0babfce7c0e2b888f70a9c8485745f66b22e7' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/postgres-9.6.16-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/postgres-9.6.16-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/postgres-9.6.16-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/postgres-9.6.16-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/postgres-9.6.16-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/postgres-9.6.16-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/postgres-9.6.16-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/postgres-9.6.16-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '867751a956524f30cb1f56d5f047eabcbf2602d3528872c20a1a75814c1d9cdd', - armv7l: '867751a956524f30cb1f56d5f047eabcbf2602d3528872c20a1a75814c1d9cdd', - i686: '949fad150bc9ee82d1b261ff9c58eb52cc71d47ce78a3a51594121b0d9504f40', - x86_64: '99943c68314298f96c9cf43644b7092963e503ee03b6828067da12add581352e', + binary_sha256({ + aarch64: '6211702e02c1cd622ce2c5b27d72ef69136fe0b59e099a9360130224455281ba', + armv7l: '6211702e02c1cd622ce2c5b27d72ef69136fe0b59e099a9360130224455281ba', + i686: 'cd46d490470c4cd16d09f23f63b78ecd92bcb74739f19fee42eeb86ca70f563d', + x86_64: 'ea73f2fb333ee217ae2adf184b54d300b5b856c0ad1848349f78fd46390e1932' }) # Feel free to change this directory prior to compiling. - PGDATA = "#{CREW_PREFIX}/data/pgsql" + + # Future work: this directory isn't FHS compliant + PGDATA = "#{CREW_PREFIX}/data/pgsql".freeze def self.build system "sed -i 's,PGDATA=\"/usr/local/pgsql/data\",PGDATA=\"#{PGDATA}\",' contrib/start-scripts/linux" system "./configure \ --prefix=#{CREW_PREFIX} \ --libdir=#{CREW_LIB_PREFIX}" - system "make world" + system 'make world' end def self.install # This conditional is needed for installation only. - unless Dir.exists? "#{PGDATA}" - system "mkdir", "-p", "#{PGDATA}" - system "chmod", "700", "#{PGDATA}" + unless Dir.exist? PGDATA.to_s + system 'mkdir', '-p', PGDATA.to_s + system 'chmod', '700', PGDATA.to_s end - system "make", "DESTDIR=#{CREW_DEST_DIR}", "install-world" + system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install-world' + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @postgresenv = <<~POSTGRESEOF + # PostgreSQL configuration + export PGDATA="#{PGDATA}" + POSTGRESEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/postgres", @postgresenv) end def self.postinstall # This conditional is needed for installation only. If this package is updated in the future, # there is no need to initialize the data directory and display messages again. - unless File.exists? "#{PGDATA}/PG_VERSION" + unless File.exist? "#{PGDATA}/PG_VERSION" system "initdb -D #{PGDATA}" puts - puts "To complete the installation, execute the following:".lightblue - puts "echo 'export PGDATA=\"#{PGDATA}\"' >> ~/.bashrc && source ~/.bashrc".lightblue - puts - puts "To start postgres: pg_ctl -l logfile start".lightblue - puts "To stop postgres: pg_ctl stop".lightblue - puts "Create a database: createdb ".lightblue - puts "Connect to database: psql ".lightblue + puts 'To start postgres: pg_ctl -l logfile start'.lightblue + puts 'To stop postgres: pg_ctl stop'.lightblue + puts 'Create a database: createdb '.lightblue + puts 'Connect to database: psql '.lightblue puts end end diff --git a/packages/python27.rb b/packages/python27.rb index 0181b1eaa..d703c1510 100644 --- a/packages/python27.rb +++ b/packages/python27.rb @@ -29,7 +29,6 @@ class Python27 < Package # Proxy setting breaks test_httpservers, test_ssl, # test_urllib, test_urllib2, test_urllib2_localnet. # So, modifying environment variable to make pass tests. - ENV['TMPDIR'] = "#{CREW_PREFIX}/tmp" def self.build # IMPORTANT: Do not build with python27 already installed or pip will not be included. diff --git a/packages/python3.rb b/packages/python3.rb index abfa8863b..ac7060849 100644 --- a/packages/python3.rb +++ b/packages/python3.rb @@ -31,7 +31,7 @@ class Python3 < Package depends_on 'libffi' depends_on 'libtirpc' => :build depends_on 'ncurses' - depends_on 'openssl' + depends_on 'openssl' depends_on 'readline' depends_on 'sqlite' # depends_on 'tcl' # Needed for tkinter support @@ -58,8 +58,7 @@ class Python3 < Package # test_urllib, test_urllib2, test_urllib2_localnet. # So, modifying environment variable to make pass tests. - system "env TMPDIR=#{CREW_PREFIX}/tmp \ - CFLAGS='' \ + system "env CFLAGS='' \ CXXFLAGS='' \ CC='gcc -pthread' \ CPPFLAGS='#{@cppflags}' \ @@ -96,7 +95,7 @@ class Python3 < Package # Using /tmp breaks test_distutils, test_subprocess # Proxy setting breaks test_httpservers, test_ssl, # test_urllib, test_urllib2, test_urllib2_localnet - # system "TMPDIR=#{CREW_PREFIX}/tmp http_proxy= https_proxy= ftp_proxy= make test" + # system "http_proxy= https_proxy= ftp_proxy= make test" end def self.install diff --git a/packages/rack.rb b/packages/rack.rb deleted file mode 100644 index e40ef4931..000000000 --- a/packages/rack.rb +++ /dev/null @@ -1,43 +0,0 @@ -require 'package' - -class Rack < Package - description 'The Rackspace Command Line Interface (rack CLI) is a unified tool for managing your Rackspace services.' - homepage 'https://github.com/rackspace/rack' - version '1.2' - license 'MIT' - compatibility 'all' - source_url 'https://raw.githubusercontent.com/rackspace/rack/1.2/README.md' - source_sha256 '2681ad55f204718cb8bcc8cbe0b2da66897f3310cb78576ae248a252a9b7f544' - - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/rack-1.2-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/rack-1.2-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/rack-1.2-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/rack-1.2-chromeos-x86_64.tar.xz', - }) - binary_sha256 ({ - aarch64: 'f260e4c1d348686568f7848e9dc5f70a156e38552efe2322ab10afe349614e8c', - armv7l: 'f260e4c1d348686568f7848e9dc5f70a156e38552efe2322ab10afe349614e8c', - i686: 'b7e25830c451727f4693ffb97eeebd35e1091a7b5fad2ca365ea768890b66594', - x86_64: '7a80c8cd2dbb9591844f24f06d7ec5d7ee3e07687ef4bc0d564223a7d7d6a609', - }) - - depends_on 'go' => :build - - def self.install - system "go get github.com/rackspace/rack" - system "cd ~/go/src/github.com/rackspace/rack && git checkout 1.2" - system "install -Dm644 ~/go/src/github.com/rackspace/rack/setup/commandcompletion_bash.sh #{CREW_DEST_PREFIX}/share/rack/commandcompletion_bash.sh" - system "go build -o #{CREW_DEST_PREFIX}/bin/rack github.com/rackspace/rack" - end - - def self.postinstall - puts - puts "To add command completion in bash, execute the following:".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/share/rack/commandcompletion_bash.sh ]; then' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/share/rack/commandcompletion_bash.sh' >> ~/.bashrc".lightblue - puts "echo 'fi' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue - puts - end -end diff --git a/packages/ripgrep.rb b/packages/ripgrep.rb index dc236ea7d..53cea360b 100644 --- a/packages/ripgrep.rb +++ b/packages/ripgrep.rb @@ -35,7 +35,6 @@ class Ripgrep < Package end def self.check - ENV['TMPDIR'] = "#{CREW_PREFIX}/tmp" system 'cargo test --all' end diff --git a/packages/ruby.rb b/packages/ruby.rb index 700a7f77d..9abf6a79c 100644 --- a/packages/ruby.rb +++ b/packages/ruby.rb @@ -40,7 +40,7 @@ class Ruby < Package end def self.check - system "TMPDIR=#{CREW_PREFIX}/tmp make check || true" + system "make check || true" end def self.install diff --git a/packages/rust.rb b/packages/rust.rb index 1a2d4b811..d00ce29f8 100644 --- a/packages/rust.rb +++ b/packages/rust.rb @@ -3,29 +3,28 @@ require 'package' class Rust < Package description 'Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety.' homepage 'https://www.rust-lang.org/' - @_ver = '1.50.0' + @_ver = '1.51.0' version @_ver license 'Apache-2.0 and MIT' compatibility 'all' - source_url "https://github.com/rust-lang/rust/archive/#{@_ver}.tar.gz" - source_sha256 '112114380a4f4ec98c30313ce9047183ee0c95ef2b28beeb7b77e6cd47a9294e' + source_url 'file:///dev/null' + source_sha256 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/rust-1.50.0-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/rust-1.50.0-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/rust-1.50.0-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/rust-1.50.0-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/rust-1.51.0-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/rust-1.51.0-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/rust-1.51.0-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/rust-1.51.0-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: 'd2418d5a95549dbff1f00c766d10ec5659c5454d3a2c9714e06da2506dbd7338', - armv7l: 'd2418d5a95549dbff1f00c766d10ec5659c5454d3a2c9714e06da2506dbd7338', - i686: 'a0edbe5d75b58110109121cc4ecc8864379486cf239f0c1871fc0fc5a89271f2', - x86_64: '788595312dcba26702aacaebc9978bd6de95c475b9cb01cf408ee773a41a5abe' + aarch64: '1673202f5a6ff0b3753468bc96084da810ba1d5952c207be459556598faa6f68', + armv7l: '1673202f5a6ff0b3753468bc96084da810ba1d5952c207be459556598faa6f68', + i686: '07b04e4b808aba2e34a98ace8939a7b3285c41e99596a5560ac941729635e90a', + x86_64: 'e272a06829c9bb3d1c14752b668767bd85911231ba48e3a6281fc746b40ac19a' }) def self.install ENV['RUST_BACKTRACE'] = 'full' - ENV['TMPDIR'] = "#{CREW_PREFIX}/tmp" ENV['CARGO_HOME'] = "#{CREW_DEST_PREFIX}/share/cargo" ENV['RUSTUP_HOME'] = "#{CREW_DEST_PREFIX}/share/rustup" case ARCH @@ -55,32 +54,22 @@ class Rust < Package FileUtils.rm_rf("#{CREW_DEST_PREFIX}/share/rustup/toolchains/stable-#{default_host}/share/doc/") FileUtils.ln_sf("#{CREW_PREFIX}/share/cargo", "#{CREW_DEST_HOME}/.cargo") FileUtils.ln_sf("#{CREW_PREFIX}/share/rustup", "#{CREW_DEST_HOME}/.rustup") - end - def self.postinstall - system "rustup completions bash > #{CREW_PREFIX}/share/bash-completion/completions/rustup" - rust_in_bashrc = `grep -c "RUSTUP_HOME" ~/.bashrc || true` - unless rust_in_bashrc.to_i.positive? - puts 'Putting RUST code in ~/.bashrc'.lightblue - system "echo 'export CARGO_HOME=#{CREW_PREFIX}/share/cargo' >> ~/.bashrc" - system "echo 'export RUSTUP_HOME=#{CREW_PREFIX}/share/rustup' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - end - puts - puts 'To add bash completion for cargo, execute the following:'.lightblue - puts "echo '# cargo completion' >> ~/.bashrc".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/share/bash-completion/completions/cargo ]; then' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/share/bash-completion/completions/cargo' >> ~/.bashrc".lightblue - puts "echo 'fi' >> ~/.bashrc".lightblue - puts 'source ~/.bashrc'.lightblue - puts - puts 'To add bash completion for rustup, execute the following:'.lightblue - puts "echo '# rustup completion' >> ~/.bashrc".lightblue - puts "echo 'if [ -f #{CREW_PREFIX}/share/bash-completion/completions/rustup ]; then' >> ~/.bashrc".lightblue - puts "echo ' source #{CREW_PREFIX}/share/bash-completion/completions/rustup' >> ~/.bashrc".lightblue - puts "echo 'fi' >> ~/.bashrc".lightblue - puts 'source ~/.bashrc'.lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @rustconfigenv = <<~RUSTCONFIGEOF + # Rustup and cargo configuration + export CARGO_HOME=#{CREW_PREFIX}/share/cargo + export RUSTUP_HOME=#{CREW_PREFIX}/share/rustup + RUSTCONFIGEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/rust", @rustconfigenv) + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @rustcompletionenv = <<~RUSTCOMPLETIONEOF + # Rustup and cargo bash completion + source #{CREW_PREFIX}/share/bash-completion/completions/cargo + source #{CREW_PREFIX}/share/bash-completion/completions/rustup + RUSTCOMPLETIONEOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/rust", @rustcompletionenv) + system "#{CREW_DEST_PREFIX}/share/cargo/bin/rustup completions bash > #{CREW_DEST_PREFIX}/share/bash-completion/completions/rustup" end end diff --git a/packages/s.rb b/packages/s.rb index 684d9349f..7bd1dfd06 100644 --- a/packages/s.rb +++ b/packages/s.rb @@ -2,54 +2,36 @@ require 'package' class S < Package description 'Open a web search in your terminal.' - homepage 'https://github.com/zquestz/s' - version '0.5.10' + homepage 'https://github.com/zquestz/s/' + @_ver = '0.5.15' + version @_ver license 'GPL-3+' compatibility 'all' case ARCH when 'aarch64', 'armv7l' - source_url 'https://github.com/zquestz/s/releases/download/v0.5.10/s-linux_arm.zip' - source_sha256 '4d31cbb3f81a52946d9e40e1d3ebb650d7112c5c3d45c07ae29435bfea2c0dea' + source_url "https://github.com/zquestz/s/releases/download/v#{@_ver}/s-linux_arm.zip" + source_sha256 'ddffb211f117395a736f679a8a96cc726ac46c50fdfe1a6e2c4bb4494b970cd0' when 'i686' - source_url 'https://github.com/zquestz/s/releases/download/v0.5.10/s-linux_386.zip' - source_sha256 'ff94e41816bcaadbd0edd334fae634e71afd1bb4f2acb5dc52f6849714c64e68' + source_url "https://github.com/zquestz/s/releases/download/v#{@_ver}/s-linux_386.zip" + source_sha256 '8724b0ea6ec0e8abedcdc87f2efccd12a848ff1267149f8ca14b46251649cffc' when 'x86_64' - source_url 'https://github.com/zquestz/s/releases/download/v0.5.10/s-linux_amd64.zip' - source_sha256 '1e9a379071171ffaa28ce4d697389a70b115955335e41cfbbd37197404129d49' + source_url "https://github.com/zquestz/s/releases/download/v#{@_ver}/s-linux_amd64.zip" + source_sha256 '38c29001936f1758159cc935b3ab97d1dee75c35ceacd8bd5ada3837b306192f' end - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/s-0.5.10-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/s-0.5.10-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/s-0.5.10-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/s-0.5.10-chromeos-x86_64.tar.xz', - }) - binary_sha256 ({ - aarch64: 'a9b1301b6fd3283a7464b4820d115079d79ba7f2b09c14a635bab851721a3f77', - armv7l: 'a9b1301b6fd3283a7464b4820d115079d79ba7f2b09c14a635bab851721a3f77', - i686: 'bad1fcf5147b65d4d527512fdfe9aa7e8cdfb20ab9598d98bacf91b7df4c3b1e', - x86_64: '8a904b6a061c4efa8c55ea2af93f7a5be5af42fafcfc1cc7233fd9f28afeb1f5', - }) - - depends_on 'links' - depends_on 'unzip' + depends_on 'unzip' => :build def self.install - system "mkdir -p #{CREW_DEST_PREFIX}/bin" - system "mkdir -p #{CREW_DEST_DIR}/home/#{USER}/user" - system "cp autocomplete/s-completion.bash /home/#{USER}/user/.s-completion.bash" - system "cp autocomplete/s-completion.bash #{CREW_DEST_DIR}/home/#{USER}/user/.s-completion.bash" - system "cp autocomplete/s.fish /home/#{USER}/user/.s.fish" - system "cp autocomplete/s.fish #{CREW_DEST_DIR}/home/#{USER}/user/.s.fish" - system "cp s #{CREW_DEST_PREFIX}/bin" - puts "" - puts "In order to enable autocomplete for bash, execute the following:".lightblue - puts "echo \"source ~/.s-completion.bash\" >> ~/.bashrc && source ~/.bashrc".lightblue - puts "" - puts "In order to enable a default search binary, execute the following:".lightblue - puts "echo \"alias s='s -b links'\" >> ~/.bashrc && source ~/.bashrc".lightblue - puts "" - puts "Example usage: s [-b links] best linux command line utilities".lightblue - puts "" + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/bin" + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/s/" + FileUtils.cp "autocomplete/s-completion.bash", "#{CREW_DEST_PREFIX}/share/s/" + FileUtils.cp 's', "#{CREW_DEST_PREFIX}/bin" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @env = <<~EOF + # s bash completion + source #{CREW_PREFIX}/share/s/s-completion.bash + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/s", @env) end end diff --git a/packages/sl.rb b/packages/sl.rb index 84edfec88..9503ca221 100644 --- a/packages/sl.rb +++ b/packages/sl.rb @@ -2,27 +2,74 @@ require 'package' class Sl < Package description 'Steam Locomotive runs across your terminal when you type "sl" as you meant to type "ls".' - homepage 'https://github.com/mtoyoda/sl' + homepage 'https://github.com/mtoyoda/sl/' version '5.02' license 'Toyoda' compatibility 'all' source_url 'https://github.com/mtoyoda/sl/archive/5.02.tar.gz' source_sha256 '1e5996757f879c81f202a18ad8e982195cf51c41727d3fea4af01fdcbbb5563a' + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/sl-5.02-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/sl-5.02-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/sl-5.02-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/sl-5.02-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + aarch64: '6eec64e45434268292b6c3529799b67ddca817418807fe3ce724a3c0f6a5be84', + armv7l: '6eec64e45434268292b6c3529799b67ddca817418807fe3ce724a3c0f6a5be84', + i686: '1e8ce70c5f1b292c3187e708bd2603de328af24e64b0f6e3c38fec41b1db0083', + x86_64: 'e357445a2f8c73f9e9de3fd0b5e5383d809991b0633b82bd1ce28e0ced33c315' + }) + + def self.patch + @addeoption = <<~EOF + --- a/sl.c + +++ b/sl.c + @@ -53,6 +53,7 @@ + int LOGO = 0; + int FLY = 0; + int C51 = 0; + +int INTR = 0; + + int my_mvaddstr(int y, int x, char *str) + { + @@ -73,6 +74,7 @@ + case 'F': FLY = 1; break; + case 'l': LOGO = 1; break; + case 'c': C51 = 1; break; + + case 'e': INTR = 1; break; + default: break; + } + } + @@ -88,7 +90,9 @@ + } + } + initscr(); + - signal(SIGINT, SIG_IGN); + + if (INTR == 1) { + + signal(SIGINT, SIG_IGN); + + } + noecho(); + curs_set(0); + nodelay(stdscr, TRUE); + EOF + IO.write('add_-e_option.patch', @addeoption) + system 'patch -Np1 -i add_-e_option.patch' + + system "sed -i 's:#include :#include :' sl.c" + end + def self.build - system "sed -i 's,curses.h,#{CREW_PREFIX}/include/ncurses/curses.h,' sl.c" - system "make" + system 'gcc -o sl sl.c -O2 -pipe -flto=auto -fuse-ld=gold -lncursesw -ltinfow' end def self.install - system "install -Dm755 sl #{CREW_DEST_PREFIX}/bin/sl" - end - - def self.postinstall - puts - puts 'sl does this annoying thing where it doesn\'t allow you to cancel with ^C.' - puts 'To disable this "feature", run' - puts 'echo "alias sl=\'sl -e\'" >> ~/.bashrc && source ~/.bashrc' - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/bin/" + FileUtils.mkdir_p "#{CREW_DEST_MAN_PREFIX}/man1/" + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/include/" + FileUtils.install 'sl', "#{CREW_DEST_PREFIX}/bin/sl", mode: 0o755 + FileUtils.install 'sl.1', "#{CREW_DEST_MAN_PREFIX}/man1/sl.1", mode: 0o644 + FileUtils.install 'sl.h', "#{CREW_DEST_PREFIX}/include/sl.h", mode: 0o644 end end diff --git a/packages/sommelier.rb b/packages/sommelier.rb index 4a5189623..b0192068b 100644 --- a/packages/sommelier.rb +++ b/packages/sommelier.rb @@ -3,23 +3,23 @@ require 'package' class Sommelier < Package description 'Sommelier works by redirecting X11 programs to the built-in ChromeOS Exo Wayland server.' homepage 'https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/sommelier/' - version '20210109-1' + version '20210109-2' license 'BSD-Google' compatibility 'all' source_url 'file:///dev/null' source_sha256 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' binary_url({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/sommelier-20210109-1-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/sommelier-20210109-1-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/sommelier-20210109-1-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/sommelier-20210109-1-chromeos-x86_64.tar.xz' + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/sommelier-20210109-2-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/sommelier-20210109-2-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/sommelier-20210109-2-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/sommelier-20210109-2-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: 'c076c1f99a018eb4c75de3768445e322bcfbc2221942b967a928924ec798e6b0', - armv7l: 'c076c1f99a018eb4c75de3768445e322bcfbc2221942b967a928924ec798e6b0', - i686: '98d5f94ef0f633da694b1525d1e01ad8ddf82fbb14996c52eec6b7ef51f5fed7', - x86_64: '45cf6f34a6fc6bd1bb5238eba9fb7dfbf5e528c6496dcad2d9048aeec4ac20ed' + aarch64: 'b518f2f3086e611f6bcdd8cd2b8b67d70956b96c5c43174e26685be6bd7aa0c4', + armv7l: 'b518f2f3086e611f6bcdd8cd2b8b67d70956b96c5c43174e26685be6bd7aa0c4', + i686: '74a2838593c1297e37127335d6e2aad9402caf264960bf05405434cec67eb254', + x86_64: '7e9689e28331c1d9be1f30c9deb6a77fae2519ccb753ef0ffb53faac324bf7e8' }) depends_on 'coreutils' # for readlink in wrapper script @@ -28,7 +28,6 @@ class Sommelier < Package depends_on 'libxcomposite' => :build depends_on 'libxfixes' => :build depends_on 'libxkbcommon' - depends_on 'llvm' => :build depends_on 'mesa' depends_on 'pixman' depends_on 'procps' # for pgrep in wrapper script @@ -255,6 +254,16 @@ EOF" system "install -Dm644 .sommelier-default.env #{CREW_DEST_HOME}/.sommelier-default.env" end end + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d" + @sommelierenv = <<~SOMMELIERENVEOF + # Sommelier loading code + set -a + source ~/.sommelier-default.env + source ~/.sommelier.env + set +a + SOMMELIERENVEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/sommelier", @sommelierenv) end def self.postinstall @@ -271,14 +280,14 @@ EOF" sommelier_in_bashrc = `grep -c "set -a ; source ~/.sommelier-default.env ; source ~/.sommelier.env ; set +a" ~/.bashrc || true` unless sommelier_in_bashrc.to_i.positive? puts 'Putting sommelier loading code in ~/.bashrc'.lightblue - system "echo '# Sommelier environment variables + daemon' >> ~/.bashrc" - system "echo 'set -a ; source ~/.sommelier-default.env ; source ~/.sommelier.env ; set +a' >> ~/.bashrc" + system "echo '# Sommelier daemon' >> ~/.bashrc" system "echo 'startsommelier' >> ~/.bashrc" puts 'To complete the installation, execute the following:'.orange puts 'source ~/.bashrc'.orange end puts - puts 'To adjust sommelier environment variables, create ~/.sommelier.env'.lightblue + FileUtils.touch "#{HOME}/.sommelier.env" unless File.exist? "#{HOME}/.sommelier.env" + puts 'To adjust sommelier environment variables, edit ~/.sommelier.env'.lightblue puts 'Default values are in ~/.sommelier-default.env'.lightblue puts puts "To start the sommelier daemon, run 'startsommelier'".lightblue diff --git a/packages/squashfuse.rb b/packages/squashfuse.rb index 3ec096efe..214129b7c 100644 --- a/packages/squashfuse.rb +++ b/packages/squashfuse.rb @@ -25,7 +25,7 @@ class Squashfuse < Package x86_64: 'df130e28a509798c98213a139936e6711b7d6d97b2510f3194820cb47e22631d' }) - depends_on 'fuse' + depends_on 'fuse3' depends_on 'lzo' def self.build diff --git a/packages/sshfs.rb b/packages/sshfs.rb index 84d9e577b..56b33fd6d 100644 --- a/packages/sshfs.rb +++ b/packages/sshfs.rb @@ -23,7 +23,7 @@ class Sshfs < Package }) depends_on 'glib' - depends_on 'fuse' + depends_on 'fuse3' def self.build system "./configure --prefix=#{CREW_PREFIX}" diff --git a/packages/stack.rb b/packages/stack.rb index d98d2be60..2a1e855ed 100644 --- a/packages/stack.rb +++ b/packages/stack.rb @@ -3,14 +3,15 @@ require 'package' class Stack < Package description 'The Haskell Tool Stack - Stack is a cross-platform program for developing Haskell projects. It is aimed at Haskellers both new and experienced.' homepage 'https://docs.haskellstack.org/en/stable/README/' - version '2.3.1' + @_ver = '2.5.1' + version @_ver license 'BSD' compatibility 'x86_64' case ARCH when 'x86_64' - source_url 'https://github.com/commercialhaskell/stack/releases/download/v2.3.1/stack-2.3.1-linux-x86_64.tar.gz' - source_sha256 'b753cd21d446aea16a221326ec686e3acdf1b146c714a77b5d27fd855475554d' + source_url "https://github.com/commercialhaskell/stack/releases/download/v#{@_ver}/stack-#{@_ver}-linux-x86_64.tar.gz" + source_sha256 'c83b6c93d6541c0bce2175085a04062020f4160a86116e20f3b343b562f2d1e8' end def self.install @@ -20,17 +21,18 @@ class Stack < Package system "echo 'local-bin-path: #{CREW_PREFIX}/bin' > #{CREW_DEST_PREFIX}/.stack/config.yaml" system "echo 'local-programs-path: #{CREW_PREFIX}/share/stack' >> #{CREW_DEST_PREFIX}/.stack/config.yaml" FileUtils.ln_s "#{CREW_PREFIX}/.stack", "#{CREW_DEST_HOME}/.stack" + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @env = <<~EOF + # Haskell stack bash completion + eval "$(stack --bash-completion-script stack)" + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/stack", @env) end - def self.postinstall - puts - puts "To enable stack auto-completion, execute the following:".lightblue - puts "echo '# enable stack auto-completion' >> ~/.bashrc".lightblue - puts "echo 'eval \"\$(stack --bash-completion-script stack)\"' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue + def self.remove puts puts "To completely uninstall stack, execute the following:".lightblue - puts "crew remove stack".lightblue puts "rm -rf #{CREW_PREFIX}/share/stack".lightblue puts "rm -rf ~/.stack".lightblue puts diff --git a/packages/stressng.rb b/packages/stressng.rb index 9a81876b4..2b6fd1fb4 100644 --- a/packages/stressng.rb +++ b/packages/stressng.rb @@ -3,47 +3,39 @@ require 'package' class Stressng < Package description 'stress-ng will stress test a computer system in various selectable ways.' homepage 'https://kernel.ubuntu.com/~cking/stress-ng/' - version '0.11.22' + # 0.12.06 would not build as of 2021.04.07 + @_ver = '0.12.05' + version @_ver license 'GPL-2' compatibility 'all' - source_url 'https://kernel.ubuntu.com/~cking/tarballs/stress-ng/stress-ng-0.11.22.tar.xz' - source_sha256 '408153d64be1d8a8d584e5f48d9fd09602adf4095a17c0b542cb41e636cf0464' + source_url "https://kernel.ubuntu.com/~cking/tarballs/stress-ng/stress-ng-#{@_ver}.tar.xz" + source_sha256 'af7779aee38e6d94726ed7d5cf36384a64d50c86e42fff89c141d8609913f425' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/stressng-0.11.22-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/stressng-0.11.22-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/stressng-0.11.22-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/stressng-0.11.22-chromeos-x86_64.tar.xz', - }) - binary_sha256 ({ - aarch64: '0720d4a1d77eec74276340abc0744905cc8c134224b7dfff4312a365d18d92a4', - armv7l: '0720d4a1d77eec74276340abc0744905cc8c134224b7dfff4312a365d18d92a4', - i686: '259742d2a4f8c170a922617eef24c03018a4bdd2132ac20693331de13c4a8ba9', - x86_64: '996e29261b54bebc9bc63efe5df4f00dba7b86a29e4653fcdfa4a220aaf270d2', - }) + depends_on 'libbsd' + + def self.patch + system "sed -i 's:BINDIR=/usr/bin:BINDIR=#{CREW_PREFIX}/bin:' Makefile" + system "sed -i 's:MANDIR=/usr/share/man/man1:MANDIR=#{CREW_MAN_PREFIX}/man1:' Makefile" + system "sed -i 's:JOBDIR=/usr/share/stress-ng/example-jobs:JOBDIR=#{CREW_PREFIX}/share/stress-ng/example-jobs:' Makefile" + system "sed -i 's:BASHDIR=/usr/share/bash-completion/completions:BASHDIR=#{CREW_PREFIX}/share/bash-completion/completions:' Makefile" + end def self.build - system 'make', - "BINDIR=#{CREW_PREFIX}/bin", - "MANDIR=#{CREW_PREFIX}/share/man/man1", - "JOBDIR=#{CREW_PREFIX}/share/stress-ng/example-jobs", - "BASHDIR=#{CREW_PREFIX}/share/bash-completion/completions" + system "env CFLAGS='-pipe -flto=auto -fuse-ld=gold' \ + CC='gcc' \ + make" end def self.install - system 'make', - "DESTDIR=#{CREW_DEST_DIR}", - "BINDIR=#{CREW_PREFIX}/bin", - "MANDIR=#{CREW_PREFIX}/share/man/man1", - "JOBDIR=#{CREW_PREFIX}/share/stress-ng/example-jobs", - "BASHDIR=#{CREW_PREFIX}/share/bash-completion/completions", - 'install' - end + system "env CFLAGS='-pipe -flto=auto -fuse-ld=gold' \ + CC='gcc' \ + make DESTDIR=#{CREW_DEST_DIR} install" - def self.postinstall - puts - puts "To add bash completion, execute the following:".lightblue - puts "echo 'source #{CREW_PREFIX}/share/bash-completion/completions/stress-ng' >> ~/.bashrc && source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/bash.d/" + @env = <<~EOF + # stressng bash completion + source #{CREW_PREFIX}/share/bash-completion/completions/stress-ng + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/bash.d/stressng", @env) end end diff --git a/packages/syncthing.rb b/packages/syncthing.rb index 6139bf215..9abeb8c5e 100644 --- a/packages/syncthing.rb +++ b/packages/syncthing.rb @@ -26,7 +26,7 @@ class Syncthing < Package def self.build #The system tmp dir is mounted noexec, and the build will fail if it is used - system "TMPDIR=#{CREW_PREFIX}/tmp go run build.go -version v0.14.40" + system "go run build.go -version v0.14.40" end def self.install diff --git a/packages/texlive.rb b/packages/texlive.rb index f33394a9f..8bdd4743d 100644 --- a/packages/texlive.rb +++ b/packages/texlive.rb @@ -3,54 +3,152 @@ require 'package' class Texlive < Package description 'TeX Live is an easy way to get up and running with the TeX document production system.' homepage 'https://www.tug.org/texlive/' - version '20201101' - license 'metapackage' + version '20200406' + license 'GPL-2 and GPL-3' compatibility 'all' - source_url 'file:///dev/null' - source_sha256 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' + source_url 'https://github.com/TeX-Live/texlive-source/archive/refs/tags/svn58528.tar.gz' + source_sha256 '5c2e53d25d2f85d511bb3fa238e2de718ce27e22db83559284570b5c380f4bed' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/texlive-20201101-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/texlive-20201101-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/texlive-20201101-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/texlive-20201101-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/texlive-20200406-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/texlive-20200406-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/texlive-20200406-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/texlive-20200406-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '99138e8f8ebe9757f4e8a01a477f3d7a96a6120b7932370becad051888668c4e', - armv7l: '99138e8f8ebe9757f4e8a01a477f3d7a96a6120b7932370becad051888668c4e', - i686: '2fdecfceeb8138757eed544186fb888569f6dbb6e4eb44db5a6b449034f06e82', - x86_64: '4628da71f94b1aeded431efdf7136b605702af9b01b4377d8c6c42e9e98dc61d', + binary_sha256({ + aarch64: 'c6f87231b92dd7627ad33bb1038eeb5167b70b52c669a6c87277e8cb8ad7c53a', + armv7l: 'c6f87231b92dd7627ad33bb1038eeb5167b70b52c669a6c87277e8cb8ad7c53a', + i686: 'c7329f858b8acf873dd2f31be3d5230ac7d2d6e78156d1f919410a9223d493f8', + x86_64: '250e8b5a02c440efbcba35c32227537039b1934e97ccc6a83e1fcd57fc42e81c' }) + depends_on 'freetype' + depends_on 'harfbuzz' + depends_on 'libpng' + depends_on 'cairo' + depends_on 'libpaper' + depends_on 'graphite' + depends_on 'libxmu' + depends_on 'libxaw' + depends_on 'pixman' + depends_on 'poppler' + # depends_on 'lua' + # depends_on 'luajit' + depends_on 'zziplib' + depends_on 'texinfo' => :build + + def self.prebuild + # This is for people building with limited filespace + Dir.chdir 'libs' do + FileUtils.rm_rf 'cairo' + FileUtils.rm_rf 'freetype2' + FileUtils.rm_rf 'gd' + FileUtils.rm_rf 'gmp' + FileUtils.rm_rf 'graphite2' + FileUtils.rm_rf 'harfbuzz' + FileUtils.rm_rf 'libpaper' + FileUtils.rm_rf 'libpng' + # FileUtils.rm_rf 'lua53' + # FileUtils.rm_rf 'luajit' + FileUtils.rm_rf 'mfpr' + FileUtils.rm_rf 'pixman' + FileUtils.rm_rf 'poppler' + FileUtils.rm_rf 'zlib' + FileUtils.rm_rf 'zziplib' + end + end + def self.build - system "curl -#LO ftp://ftp.fu-berlin.de/tex/CTAN/systems/texlive/tlnet/install-tl-unx.tar.gz" - system "curl -#LO ftp://ftp.fu-berlin.de/tex/CTAN/systems/texlive/tlnet/install-tl-unx.tar.gz.sha512" - system "cat install-tl-unx.tar.gz.sha512 | xargs | cut -d' ' -f1 > sha512" - sha512 = open('sha512').read.chomp - abort 'Checksum mismatch. :/ Try again.'.lightred unless Digest::SHA512.hexdigest( File.read('install-tl-unx.tar.gz') ) == sha512 - system "tar xvf install-tl-unx.tar.gz" - system "mv install-tl-20*/* ." - system "rm -rf install-tl-20*/" + system 'filefix' + FileUtils.mkdir 'builddir' + Dir.chdir 'builddir' do + system "env CFLAGS='-pipe -fuse-ld=gold' \ + CXXFLAGS='-pipe -fuse-ld=gold' \ + ../configure #{CREW_OPTIONS} \ + --disable-bibtex-x \ + --disable-chktex \ + --disable-cjkutils \ + --disable-detex \ + --disable-dialog \ + --disable-dvi2tty \ + --disable-dvisvgm \ + --disable-largefile \ + --disable-lcdf-typetools \ + --disable-multiplatform \ + --disable-native-texlive-build \ + --disable-pdfopen \ + --disable-ps2pkm \ + --disable-t1utils \ + --disable-tex4htk \ + --disable-ttf2pk2 \ + --disable-vlna \ + --disable-xindy \ + --enable-biber \ + --enable-dvipng \ + --enable-dvipsk \ + --enable-epsfwin \ + --enable-ipc \ + --enable-luatex \ + --enable-mftalkwin \ + --enable-ps2eps \ + --enable-psutils \ + --enable-regiswin \ + --enable-shared \ + --enable-tektronixwin \ + --enable-unitermwin \ + --enable-xetex \ + --with-banner-add='Chromebrew' \ + --with-ln-s \ + --with-ps=gs \ + --with-system-cairo \ + --with-system-freetype2 \ + --with-system-gd \ + --with-system-gmp \ + --with-system-graphite2 \ + --with-system-harfbuzz \ + --with-system-icu \ + --with-system-libpaper \ + --with-system-libpng \ + --with-system-mpfr \ + --with-system-pixman \ + --with-system-poppler \ + --with-system-zlib \ + --with-system-zziplib \ + --with-texinfo \ + --with-x \ + --with-x-dvi-toolkit=motif" + + # Options to add with later packages + # --with-system-kpathsea \ + # --with-system-ptexenc \ + # --with-system-teckit \ + # --with-system-xpdf \ + + # Texlive doesn't support these options (yet) + #--with-system-lua53 \ + #--with-system-luajit \ + system 'make' + end end def self.install - dir = "#{CREW_DEST_PREFIX}/share/texlive" - system "yes I | TEXLIVE_INSTALL_PREFIX=#{dir} \ - TEXLIVE_INSTALL_TEXMFVAR=#{dir}/local/texmf-var \ - TEXLIVE_INSTALL_TEXMFCONFIG=#{dir}/local/texmf-config \ - TEXLIVE_INSTALL_TEXMFHOME=#{dir}/local \ - ./install-tl --scheme=basic --no-cls" - system "find #{dir} -iname '*.pdf' -delete" # saving some space - system "find #{dir}/20*/texmf-dist/doc -type f -and -not -path '*man*' -delete" - system "find #{dir} -name 'tlmgr' -exec {} init-usertree ';'" + Dir.chdir 'builddir' do + system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' + end + + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + path = `echo #{CREW_PREFIX}/share/texlive/20*`.chomp + @env = <<~EOF + # texlive configuration + export PATH="$PATH:#{path}/bin/#{ARCH}-linux" + export MANPATH="$MANPATH:#{path}/bin/texmf-dist/doc/man" + EOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/FIXME", @env) end def self.postinstall - path = `echo #{CREW_PREFIX}/share/texlive/20*`.chomp - puts "\nPlease add texlive to your PATH and MANPATH to be able to use the executables and manpages. Use the following commands:".lightblue - puts " echo \"export PATH=\$PATH:#{path}/bin/#{ARCH}-linux\" >> ~/.bashrc".lightblue - puts " echo \"export MANPATH=\$MANPATH:#{path}/bin/texmf-dist/doc/man\" >> ~/.bashrc".lightblue - puts " source ~/.bashrc".lightblue + puts puts "\nThis is a very small installation, with only the basic packages. To install more, use `tlmgr install `.".lightblue + puts end end diff --git a/packages/transmission.rb b/packages/transmission.rb index e171f0c68..7dd7a2e8b 100644 --- a/packages/transmission.rb +++ b/packages/transmission.rb @@ -3,31 +3,38 @@ require 'package' class Transmission < Package description 'A fast, easy, and free BitTorrent client.' homepage 'https://transmissionbt.com/' - version '2.94' + version '2.94-1' license ' GPL-2, GPL-3 or Transmission-OpenSSL-exception, GPL-2 and MIT' compatibility 'all' source_url 'https://github.com/transmission/transmission-releases/raw/master/transmission-2.94.tar.xz' source_sha256 '35442cc849f91f8df982c3d0d479d650c6ca19310a994eccdaa79a4af3916b7d' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/transmission-2.94-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/transmission-2.94-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/transmission-2.94-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/transmission-2.94-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/transmission-2.94-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/transmission-2.94-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/transmission-2.94-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/transmission-2.94-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '2550c620eb6fee75a6befecf309fcd21623b24435f882ff1e3568e7345067c1d', - armv7l: '2550c620eb6fee75a6befecf309fcd21623b24435f882ff1e3568e7345067c1d', - i686: '36d7efd04e5cd565cd7a114a9cb354315107e4a812c33abc08e81f68314e3984', - x86_64: 'a9af6f808910d3e52436fe1690c28a691d8e870f5a6573a6576af4e98e665c7c', + binary_sha256({ + aarch64: '87d5d1c8270dcbf151f98643c6d5d56961d22727133050076b3a7b0ccfd7c073', + armv7l: '87d5d1c8270dcbf151f98643c6d5d56961d22727133050076b3a7b0ccfd7c073', + i686: '7e123b75979b3945475ee098e0703f6e471973b2a3a9ab89f6b22971449a3b7c', + x86_64: 'bdaeb4c976dbf7caa9870c4c2bd1c1dd91b4c5145cb8cb5649d5af9c4e5da88d' }) - depends_on 'curl' + depends_on 'atk' + depends_on 'cairo' + depends_on 'freetype' => :build + depends_on 'gdk_pixbuf' depends_on 'glib' depends_on 'gnome_icon_theme' + depends_on 'gtk3' + depends_on 'harfbuzz' depends_on 'hicolor_icon_theme' depends_on 'libevent' + depends_on 'libevent' => :build depends_on 'miniupnpc' + depends_on 'pango' depends_on 'shared_mime_info' depends_on 'xdg_base' depends_on 'sommelier' @@ -35,17 +42,19 @@ class Transmission < Package def self.patch # Fixes error when building .po files system "sed -i 's,GTK_DIR = gtk po,GTK_DIR = gtk,' Makefile.in" + system 'filefix' end def self.build - system './configure', - "--prefix=#{CREW_PREFIX}", - "--libdir=#{CREW_LIB_PREFIX}", - '--disable-dependency-tracking', - '--enable-lightweight', - '--enable-daemon', - '--enable-cli', - '--with-gtk' + system "env CFLAGS='-flto=auto' CXXFLAGS='-flto=auto' \ + LDFLAGS='-flto=auto' \ + ./configure \ + #{CREW_OPTIONS} \ + --disable-dependency-tracking \ + --enable-lightweight \ + --enable-daemon \ + --enable-cli \ + --with-gtk" system 'make' system "echo '#!/bin/bash' > starttransmission" system "echo 'TRAN=\$(pidof transmission-daemon 2> /dev/null)' >> starttransmission" @@ -76,29 +85,29 @@ class Transmission < Package end def self.install - system "make", "DESTDIR=#{CREW_DEST_DIR}", "install" + system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' system "install -Dm755 starttransmission #{CREW_DEST_PREFIX}/bin/starttransmission" system "install -Dm755 stoptransmission #{CREW_DEST_PREFIX}/bin/stoptransmission" end def self.postinstall puts - puts "To start the cli client, execute `transmission-cli`".lightblue + puts 'To start the cli client, execute `transmission-cli`'.lightblue puts - puts "To start the gui client, execute `transmission-gtk`".lightblue + puts 'To start the gui client, execute `transmission-gtk`'.lightblue puts - puts "To start the daemon, execute `starttransmission`".lightblue + puts 'To start the daemon, execute `starttransmission`'.lightblue puts - puts "To stop the daemon, execute `stoptransmission`".lightblue + puts 'To stop the daemon, execute `stoptransmission`'.lightblue puts - puts "To start the daemon on login, execute the following:".lightblue + puts 'To start the daemon on login, execute the following:'.lightblue puts "echo '# Start the transmission daemon' >> ~/.bashrc".lightblue puts "echo 'if [ -f #{CREW_PREFIX}/bin/starttransmission ]; then' >> ~/.bashrc".lightblue puts "echo ' #{CREW_PREFIX}/bin/starttransmission' >> ~/.bashrc".lightblue puts "echo 'fi' >> ~/.bashrc".lightblue - puts "source ~/.bashrc".lightblue + puts 'source ~/.bashrc'.lightblue puts - puts "Configuration files are stored in `~/.config/transmission-daemon`".lightblue + puts 'Configuration files are stored in `~/.config/transmission-daemon`'.lightblue puts end end diff --git a/packages/vdev.rb b/packages/vdev.rb index e70bf6377..59aff041b 100644 --- a/packages/vdev.rb +++ b/packages/vdev.rb @@ -22,7 +22,7 @@ class Vdev < Package x86_64: 'f8384c3a8b057e48d13889a9ce8433b16d44f74a6750273323a53aa782bf24be', }) - depends_on 'fuse' + depends_on 'fuse3' depends_on 'libpstat' depends_on 'fskit' depends_on 'lvm2' diff --git a/packages/waf.rb b/packages/waf.rb index 3c6d561c0..f49124f99 100644 --- a/packages/waf.rb +++ b/packages/waf.rb @@ -3,32 +3,31 @@ require 'package' class Waf < Package description 'The Waf build system' homepage 'https://waf.io/' - version '1.9.13' + version '2.0.22' license 'BSD-3' compatibility 'all' - source_url 'https://github.com/waf-project/waf/archive/waf-1.9.13.tar.gz' - source_sha256 '08d41e9e50398b2f07d74b0cef7b9f02d33787d6d27d2a0e6df5732bbd95bebc' + source_url 'https://gitlab.com/ita1024/waf/-/archive/waf-2.0.22/waf-waf-2.0.22.tar.bz2' + source_sha256 '7368b14adba94467c920161aaca3e54384aca392acb7dc8ee37d53ce29dac781' - binary_url ({ - aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/waf-1.9.13-chromeos-armv7l.tar.xz', - armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/waf-1.9.13-chromeos-armv7l.tar.xz', - i686: 'https://dl.bintray.com/chromebrew/chromebrew/waf-1.9.13-chromeos-i686.tar.xz', - x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/waf-1.9.13-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/waf-2.0.22-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/waf-2.0.22-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/waf-2.0.22-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/waf-2.0.22-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'de828d9a81f18da0c7dc966623e2f41815f6bd42a723b5bd3eda444eb9b93538', - armv7l: 'de828d9a81f18da0c7dc966623e2f41815f6bd42a723b5bd3eda444eb9b93538', - i686: 'a18ef4d76efe3e6fd2e125c0df3a589851d11c06dd7c22cdf8bb1ec7e0a9ca20', - x86_64: 'b577a4768c54331ac09d4d6eb4e6258ad6a0e6b1267cec468c5dd33c1b01bff4', + binary_sha256({ + aarch64: '4c346775014015f83c14d94d99e2d6b5189aec388399140fc1ae060b4cf0d82f', + armv7l: '4c346775014015f83c14d94d99e2d6b5189aec388399140fc1ae060b4cf0d82f', + i686: '253756f480475b38c6470446f5467d1aad0e2a5b04766d4c901ea3d4bce735a4', + x86_64: 'dbe0d9ec1bcb7d4700c866f66ddd0f8406643dc6462e5830521bb5c881cf0b71' }) depends_on 'help2man' - depends_on 'python27' unless File.exists? "#{CREW_PREFIX}/bin/python" def self.build system './waf-light configure build' system './waf-light --tools=compat15' - system "help2man -N ./waf > waf.1" + system 'help2man -N ./waf > waf.1' case ARCH when 'x86_64' system "sed -i 's,/lib/,/lib64/,' waf" @@ -43,12 +42,12 @@ class Waf < Package system "cp waf-light #{CREW_DEST_PREFIX}/bin" system "cp waf.1 #{CREW_DEST_PREFIX}/man/man1" system "cp -r waflib/ #{CREW_DEST_LIB_PREFIX}" - end - def self.postinstall - puts - puts "To complete the installation, execute the following:".lightblue - puts "echo 'export WAFDIR=#{CREW_LIB_PREFIX}' >> ~/.bashrc && source ~/.bashrc".lightblue - puts + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @wafenv = <<~WAFEOF + # waf build system configuration + export WAFDIR=#{CREW_LIB_PREFIX} + WAFEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/waf", @wafenv) end end diff --git a/packages/xdg_base.rb b/packages/xdg_base.rb index 18f1632e8..26f4e7cd8 100644 --- a/packages/xdg_base.rb +++ b/packages/xdg_base.rb @@ -3,12 +3,25 @@ require 'package' class Xdg_base < Package description 'XDG Base Directory Specification Configuration' homepage 'https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html' - version '0.7-7' + version '0.7-7-1' license 'GPL-3+' compatibility 'all' source_url 'file:///dev/null' source_sha256 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/xdg_base-0.7-7-1-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/xdg_base-0.7-7-1-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/xdg_base-0.7-7-1-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/xdg_base-0.7-7-1-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + aarch64: '2ec80e4af5d9791083b8004542b4fda18160a8773ef42a7390ec3018927c37ea', + armv7l: '2ec80e4af5d9791083b8004542b4fda18160a8773ef42a7390ec3018927c37ea', + i686: '34df15da8d205ac30a6a439829851502676e9f3484d1c823cdffb65eeba91327', + x86_64: '6e8adac27ccf434f6e4c227487cc6d0ab262093c34095170ec351537a003981b' + }) + def self.preinstall # Save any previous configuration, if it exists. if File.directory?("#{HOME}/.config") && !File.symlink?("#{HOME}/.config") && !FileUtils.cp_r("#{HOME}/.config", @@ -22,30 +35,25 @@ class Xdg_base < Package end end + def self.install + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/env.d/" + @xdgbaseenv = <<~XDGBASEEOF + # Chromebrew's XDG configuration + # See https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html + # XDG Base Directory Specification Environment Variables + export XDG_CACHE_HOME=#{CREW_PREFIX}/.cache + export XDG_CONFIG_DIRS=#{CREW_PREFIX}/etc/xdg + export XDG_CONFIG_HOME=#{CREW_PREFIX}/.config + export XDG_DATA_DIRS=#{CREW_PREFIX}/share + export XDG_DATA_HOME=#{CREW_PREFIX}/.config/.local/share + export XDG_RUNTIME_DIR=/var/run/chrome + XDGBASEEOF + IO.write("#{CREW_DEST_PREFIX}/etc/env.d/xdg_base", @xdgbaseenv) + end + def self.postinstall FileUtils.mkdir_p "#{CREW_PREFIX}/.config/.local/share" FileUtils.mkdir_p "#{CREW_PREFIX}/.cache" FileUtils.mkdir_p "#{CREW_PREFIX}/etc/xdg" - @_str = "XDG_CONFIG_HOME=#{CREW_PREFIX}/.config" - if `grep -c '#{@_str}' #{HOME}/.bashrc`.to_i.zero? - puts 'Putting XDG Environment Variables in ~/.bashrc'.lightblue - system "echo '# See https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html' >> ~/.bashrc" - system "echo '# XDG Base Directory Specification Environment Variables' >> ~/.bashrc" - system "sed -i '/XDG_CACHE_HOME=/d' ~/.bashrc" - system "sed -i '/XDG_CONFIG_DIRS/d' ~/.bashrc" - system "sed -i '/XDG_CONFIG_HOME/d' ~/.bashrc" - system "sed -i '/XDG_DATA_DIRS/d' ~/.bashrc" - system "sed -i '/XDG_DATA_HOME/d' ~/.bashrc" - system "sed -i '/XDG_RUNTIME_DIR/d' ~/.bashrc" - system "echo 'export XDG_CACHE_HOME=#{CREW_PREFIX}/.cache' >> ~/.bashrc" - system "echo 'export XDG_CONFIG_DIRS=#{CREW_PREFIX}/etc/xdg' >> ~/.bashrc" - system "echo 'export XDG_CONFIG_HOME=#{CREW_PREFIX}/.config' >> ~/.bashrc" - system "echo 'export XDG_DATA_DIRS=#{CREW_PREFIX}/share' >> ~/.bashrc" - system "echo 'export XDG_DATA_HOME=#{CREW_PREFIX}/.config/.local/share' >> ~/.bashrc" - system "echo 'export XDG_RUNTIME_DIR=/var/run/chrome' >> ~/.bashrc" - puts 'To complete the installation, execute the following:'.orange - puts 'source ~/.bashrc'.orange - puts 'or reboot'.red - end end end diff --git a/packages/zziplib.rb b/packages/zziplib.rb new file mode 100644 index 000000000..b1d3811c2 --- /dev/null +++ b/packages/zziplib.rb @@ -0,0 +1,49 @@ +require 'package' + +class Zziplib < Package + description 'The ZZIPlib provides read access on ZIP-archives and unpacked data.' + homepage 'http://zziplib.sourceforge.net/' + version '0.13.72' + license 'GPL-2' + compatibility 'all' + source_url 'https://github.com/gdraheim/zziplib/archive/refs/tags/v0.13.72.tar.gz' + source_sha256 '93ef44bf1f1ea24fc66080426a469df82fa631d13ca3b2e4abaeab89538518dc' + + binary_url({ + aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/zziplib-0.13.72-chromeos-armv7l.tar.xz', + armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/zziplib-0.13.72-chromeos-armv7l.tar.xz', + i686: 'https://dl.bintray.com/chromebrew/chromebrew/zziplib-0.13.72-chromeos-i686.tar.xz', + x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/zziplib-0.13.72-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + aarch64: '2670ba6fa4866b63fd6e70070a169e530355ccc66938189ac9b679a2d9fb4f92', + armv7l: '2670ba6fa4866b63fd6e70070a169e530355ccc66938189ac9b679a2d9fb4f92', + i686: '2e80d0c5286bf3fdaa1b8e1e2a03aefc34c979c716eb89098d855973e5fcc94d', + x86_64: 'cf37a998b62be10582f351b78173f87788a9006deb31bb4fed0cfe63d50e3fc3' + }) + + depends_on 'samurai' => :build + depends_on 'xmlto' => :build + + def self.build + FileUtils.mkdir 'builddir' + Dir.chdir 'builddir' do + system "env CFLAGS='-flto=auto' CXXFLAGS='-flto=auto' LDFLAGS='-flto=auto'\ + cmake -G Ninja #{CREW_CMAKE_OPTIONS} \ + -DCP=/bin/cp \ + -DGZIP=/bin/gzip \ + -DMKZIP=#{CREW_PREFIX}/bin/zip \ + -DMV=/bin/mv \ + -DPKG_CONFIG_EXECUTABLE=#{CREW_PREFIX}/bin/pkg-config \ + -DPYTHON_EXECUTABLE=/usr/local/bin/python3 \ + -DRM=/bin/rm \ + -DTAR=/bin/tar \ + -DUNZIP=#{CREW_PREFIX}/bin/unzip .." + system 'samu' + end + end + + def self.install + system "DESTDIR=#{CREW_DEST_DIR} samu -C builddir install" + end +end diff --git a/tools/core_packages.txt b/tools/core_packages.txt index 931c8a7ee..2ce4e39e9 100644 --- a/tools/core_packages.txt +++ b/tools/core_packages.txt @@ -10,6 +10,7 @@ c_ares ca_certificates cmake compressdoc +crew_profile_base curl diffutils doxygen