Commit c9bf7911 authored by saltedcoffii's avatar saltedcoffii

Undo master/crew-license-framework fuse mistake 💀

parent 72a8d7e1
require 'package'
class Adventure < Package
description 'Colossal Cave Adventure is a text adventure game, developed between 1975 and 1977 by Will Crowther and Don Woods for the PDP-10 mainframe.'
homepage 'https://en.wikipedia.org/wiki/Colossal_Cave_Adventure/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'adventure'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Arithmetic < Package
description 'Arithmetic is a cli game that asks you to solve simple arithmetic problems.'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'arithmetic'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Atc < Package
description 'Air Traffic Control simulator'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'atc'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Backgammon < Package
description 'Lets you play backgammon against the computer or against a friend'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'backgammon'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Battlestar < Package
description 'A stellar-tropical adventure game'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'battlestar'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Boggle < Package
description 'A cli version of Boggle inspired by the Boggle Hasbro game'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'boggle'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Bsdgames < Package
description 'A metapackage of classic text mode games from UNIX folklore.'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
is_fake
depends_on 'adventure'
depends_on 'arithmetic'
depends_on 'atc'
depends_on 'battlestar'
depends_on 'bcd'
depends_on 'boggle'
depends_on 'caesar'
depends_on 'canfield'
depends_on 'countmail'
depends_on 'cribbage'
depends_on 'dm'
depends_on 'gofish'
depends_on 'gomoku'
depends_on 'hangman'
depends_on 'hunt'
depends_on 'mille'
depends_on 'monopoly'
depends_on 'morse'
depends_on 'number'
depends_on 'phantasia'
depends_on 'pig'
depends_on 'pom'
depends_on 'ppt'
depends_on 'primes'
depends_on 'quiz'
depends_on 'rain'
depends_on 'randomlines'
depends_on 'robots'
depends_on 'snail'
depends_on 'snake'
depends_on 'tetris'
depends_on 'trek'
depends_on 'wargames'
depends_on 'worm'
depends_on 'worms'
depends_on 'wtf'
end
\ No newline at end of file
require 'package'
class Caesar < Package
description 'Performs rotated-alphabet cryptography (like rot13)'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'caesar'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Canfield < Package
description 'The solitaire card game canfield'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'canfield'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Countmail < Package
description 'Informs the user of their loneliness or lack of friends. Perfect for a pandemic.'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'countmail'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
require 'package'
class Cribbage < Package
description 'Cribbage card game'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'cribbage'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Dm < Package
description 'Dungeon Master - A game to prevent other users from playing games'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'dm'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Gofish < Package
description 'Go fish card game'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'fish'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
FileUtils.mv "#{CREW_DEST_PREFIX}/bin/fish", "#{CREW_DEST_PREFIX}/bin/gofish" # Don't clash with fish shell
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Gomoku < Package
description 'Connect-5 version of tic-tac-toe'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'gomoku'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Hack < Package
description 'A display oriented dungeons & dragons - like game'
homepage 'https://en.wikipedia.org/wiki/Colossal_Cave_Adventure/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'hack'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Hangman < Package
description 'Guess the word before it\'s too late'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'hangman'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Hunt < Package
description 'A multi-player multi-terminal game'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'hunt'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Mille < Package
description 'Mille plays a two-handed game reminiscent of the Parker Brother\'s game of Mille Bornes with you.'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'mille'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Monopoly < Package
description 'Similar to the board game Monopoly. Monitors a game between 2 to 9 users. Rule knowledge is assumed.'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'monop'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Morse < Package
description 'Reformat input as morse code'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'morse'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Number < Package
description 'Convert Arabic numerals to English'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'number'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Phantasia < Package
description 'A multiplayer interterminal fantasy game'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'phantasia'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Pig < Package
description 'Eformatray inputway asway Igpay Atinlay'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'pig'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Pom < Package
description 'Display the current phase of the moon'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'pom'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Ppt < Package
description 'Reformat input as paper tape'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'ppt'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Primes < Package
description 'Generate primes up to 2^64-1'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'primes'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Quiz < Package
description 'Tests your knowledge of random facts.'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'quiz'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Rain < Package
description 'Display animated raindrops'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'rain'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Randomlines < Package
description 'reads lines from stdin and randomly copies some to stdout'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'random'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Robots < Package
description 'Robots pits you against evil robots trying to kill you. Avoid them.'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'robots'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Snail < Package
description 'Snail from BSD games'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'snail'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Snake < Package
description 'Don\'t get eaten by the snake'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'snake'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Tetris < Package
description 'Fit shapes together to form complete rows which then vanish'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'tetris'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
Dir.chdir "#{CREW_DEST_PREFIX}/bin" do
FileUtils.symlink 'tetris-bsd', 'tetris'
end
Dir.chdir "#{CREW_DEST_PREFIX}/share/man/man6" do
FileUtils.symlink 'tetris-bsd.6.gz', 'tetris.6.gz'
end
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Trek < Package
description 'A game of space glory and war'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'trek'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Wargames < Package
description 'Wargames from BSD games'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'wargames'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Worm < Package
description 'Eat numerical digits to grow longer. Don\'t run into yourself or the edge!'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'worm'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Worms < Package
description 'Animate worms on a display terminal'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'worms'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
require 'package'
class Wtf < Package
description 'Look up terms to find out wtf they are'
homepage 'https://www.polyomino.org.uk/computer/software/bsd-games/'
version '2.17'
compatibility 'all'
source_url 'https://www.polyomino.org.uk/computer/software/bsd-games/bsd-games-2.17.tar.gz'
source_sha256 '066f924aef6c1c5ea946f588e36f303021f5dfc093944738f025d8edbc6fff60'
depends_on 'miscfiles'
depends_on 'words'
depends_on 'less'
@_bsdgame = 'wtf'
def self.patch
FileUtils.mkdir 'patches'
Dir.chdir 'patches' do
# Download patches
puts 'Downloading patches'.lightblue
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-64bitutmp.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-bg.patch"
system "curl -#LO https://raw.github.com/gentoo/gentoo/ac439edc59f851483ecb9f732f9e5c65aa057224/games-misc/bsd-games/files/bsd-games-2.17-gcc4.patch"
system "curl -#LO https://httpredir.debian.org/debian/pool/main/b/bsdgames/bsdgames_2.17-28.debian.tar.xz"
# Verify patches
puts 'Verifying patches'.lightblue
@sha256sums = <<~EOF
992f8602661cc41c3253317bfc157abe0b2041cd7d32f5a31811708e2f8c4e23 bsd-games-2.17-64bitutmp.patch
d25eb2b0e6790b6a852bce08f384994fed7b37a9d33d12d01b65e67fbd8f67d7 bsd-games-2.17-bg.patch
96639f25206401c0dde3f9f28ac287c9e26c3efb526481fa48b482f8c9ab4ac0 bsd-games-2.17-gcc4.patch
71dfc6b91b4529afcd9147fc2646930f979d083a0713ec7f2aace8c476cf5ab8 bsdgames_2.17-28.debian.tar.xz
EOF
IO.write("sha256sums", @sha256sums)
system "sha256sum -c sha256sums"
# Extract patches
puts 'Patching'.lightblue
system "tar xf bsdgames_2.17-28.debian.tar.xz"
# Patch patches :/
system "sed -i 's:backgammon/common_source/fancy.c.old:backgammon/common_source/fancy.c:g' bsd-games-2.17-bg.patch"
system "sed -i 's:bsd-games/dm/utmpentry.c:dm/utmpentry.c:g' bsd-games-2.17-64bitutmp.patch"
FileUtils.rm 'debian/patches/0006-Custom-configuration-of-Debian-package-build.patch' # Don't add a dependency on dpkg
FileUtils.rm 'debian/patches/0007-Unsorted-Debian-patches.patch'
end
# Patch
system "for patch in patches/*.patch; do patch -i ${patch} -p 0; done" # Apply gentoo's patches
system "for patch in patches/debian/patches/*.patch; do patch -t -p 1 -i ${patch}; done" # Apply debian's patches
system "sed -i 's:-lncurses:-lncurses -ltinfo:g' configure" # Add libtinfo support
system "sed -i 's:-lcrypto:-lssl -lcrypto:g' configure" # Fix openssl
system "sed -i 's:#!/bin/sh:#!/bin/bash:' configure" # dash doesn't work
system "sed -i 's:read input:read -t 0.2 input:' configure" # Make script automatic
end
def self.prebuild
puts 'Configuring'.lightblue
system "sed -i 's:-g -O2:-O2:g' configure"
system "sed -i 's:/usr/games:#{CREW_PREFIX}/bin:' wargames/wargames"
system "echo bsd_games_cfg_build_dirs='\"#{@_bsdgame}\"' >> config.params"
system "echo bsd_games_cfg_docdir='#{CREW_PREFIX}/share/doc/bsdgames' >> config.params"
system "echo bsd_games_cfg_install_prefix='#{CREW_DEST_DIR}' >> config.params"
system "echo bsd_games_cfg_gamesdir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_sbindir='#{CREW_PREFIX}/sbin' >> config.params"
system "echo bsd_games_cfg_usrbindir='#{CREW_PREFIX}/bin' >> config.params"
system "echo bsd_games_cfg_libexecdir='#{CREW_PREFIX}/libexec' >> config.params"
system "echo bsd_games_cfg_man6dir='#{CREW_MAN_PREFIX}/man6' >> config.params"
system "echo bsd_games_cfg_man8dir='#{CREW_MAN_PREFIX}/man8' >> config.params"
system "echo bsd_games_cfg_man5dir='#{CREW_MAN_PREFIX}/man5' >> config.params"
system "echo bsd_games_cfg_do_chown='n' >> config.params" # Use chronos not root
system "echo bsd_games_cfg_use_dot_so='symlinks' >> config.params"
system "echo bsd_games_cfg_sharedir='#{CREW_PREFIX}/share/games' >> config.params"
system "echo bsd_games_cfg_varlibdir='#{CREW_PREFIX}/var/games' >> config.params"
system "echo bsd_games_cfg_ncurses_includes='-I#{CREW_PREFIX}/include/ncursesw' >> config.params"
system "echo bsd_games_cfg_use_libcrypto='n' >> config.params"
system "echo bsd_games_cfg_other_cflags='-flto' >> config.params" # Link-time optimization
system "echo bsd_games_cfg_other_ldflags='-flto' >> config.params"
system "echo bsd_games_cfg_pager='$(which less)' >> config.params" # Most looks weird and more doesn't scroll up
system "echo bsd_games_cfg_dictionary_src='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_dm_configfile='#{CREW_PREFIX}/etc/dm/dm.conf' >> config.params"
system "echo bsd_games_cfg_dm_nogamesfile='#{CREW_PREFIX}/etc/dm/nogames' >> config.params"
system "echo bsd_games_cfg_hangman_wordsfile='#{CREW_PREFIX}/share/dict/words' >> config.params"
system "echo bsd_games_cfg_wtf_acronymfile='#{CREW_PREFIX}/share/misc/acryonyms' >> config.params"
system "echo bsd_games_cfg_cc='clang' >> config.params" # Didn't compile with gcc
system "echo bsd_games_cfg_cxx='clang++' >> config.params"
system "echo bsd_games_cfg_ncurses_lib='$(pkg-config --libs-only-l ncurses)' >> config.params" # Fix ncurses support
end
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.check
system "make", "check"
end
end
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment