--- bedstead-3.251.orig/debian/README.source +++ bedstead-3.251/debian/README.source @@ -0,0 +1,9 @@ +This packages is maintained in Git following the procedures in +dgit-maint-merge(7). Running dpkg-source -x on the source package +also produces the source of the package, ready for editing. The +source package format is "1.0" (non-native) to avoid tedious mucking +around with debian/patches. + +Upstream releases are merged from upstream Git tags. To build the +"upstream tarball", use "gbp export-orig", "git deborig", or anything +else that can build a .orig tarball based on the upstream release tag. --- bedstead-3.251.orig/debian/changelog +++ bedstead-3.251/debian/changelog @@ -0,0 +1,32 @@ +bedstead (3.251-2) unstable; urgency=medium + + * New binary package xfonts-bedstead containing X bitmap fonts. + * New binary package consolefonts-bedstead containing console + fonts. + + -- Ben Harris Sat, 08 Feb 2025 13:53:10 +0000 + +bedstead (3.251-1) unstable; urgency=medium + + * New upstream release. See NEWS for details. + * Build-Depends updated for new upstream version. + * debian/watch updated for new upstream version-number pattern. + * Glyph naming in rom.ps corrected (cherry-picked from upstream). + * Reference SAA5054 ROM image hash corrected to match upstream and more + closely match a real SAA5054. + * Vcs-* fields added to debian/control. + * Rules-Requires-Root set to "no". + * debian/README.source added. + * debian/gbp.conf added. + * debian/upstream/metadata added. + * debian/copyright converted to DEP-5 and expanded. + * debian/docs and debian/install renamed to package-specific name. + * debian/source/options added. + + -- Ben Harris Mon, 03 Feb 2025 23:13:24 +0000 + +bedstead (002.009-1) unstable; urgency=medium + + * Initial release. Closes: #1084211. + + -- Ben Harris Sun, 20 Oct 2024 00:32:09 +0100 --- bedstead-3.251.orig/debian/clean +++ bedstead-3.251/debian/clean @@ -0,0 +1,4 @@ +*.pcf +*.pcf.gz +*.psf +*.psf.gz --- bedstead-3.251.orig/debian/consolefonts-bedstead.README.Debian +++ bedstead-3.251/debian/consolefonts-bedstead.README.Debian @@ -0,0 +1,6 @@ +Bedstead on the Linux console +============================= + +To use Bedstead as a console font, edit /etc/default/console-setup to +set FONTFACE="Bedstead" and either FONTSIZE="6x10" or +FONTSIZE="12x20". See console-setup(5) for more details. --- bedstead-3.251.orig/debian/consolefonts-bedstead.install +++ bedstead-3.251/debian/consolefonts-bedstead.install @@ -0,0 +1 @@ +*.psf.gz /usr/share/consolefonts --- bedstead-3.251.orig/debian/control +++ bedstead-3.251/debian/control @@ -0,0 +1,58 @@ +Source: bedstead +Maintainer: Ben Harris +Section: non-free/fonts +Priority: optional +Build-Depends: fonttools, ghostscript, xfonts-utils, bdf2psf, + debhelper-compat (= 13) +Standards-Version: 4.7.0 +Homepage: https://bjh21.me.uk/bedstead/ +Vcs-Browser: https://browse.dgit.debian.org/bedstead.git/ +Vcs-Git: https://git.dgit.debian.org/bedstead +Rules-Requires-Root: no +XS-Autobuild: yes + +Package: fonts-bedstead +Architecture: all +Multi-Arch: foreign +Depends: ${misc:Depends} +Description: monospaced fonts inspired by SAA5050 character generator + Bedstead is a family of angular monospaced fonts based on the + characters produced by the Mullard SAA5050 series of Teletext + Character Generators as used in the BBC Microcomputer. The SAA5050 + fonts were bitmaps, but Bedstead extends its smoothing algorithm to + continuity, producing something suitable for modern high-resolution + displays. + . + Bedstead includes all the character designs from the SAA5050 and its + various sister chips, including Cyrillic and Hebrew alphabets. It + also has a large number of custom-designed glyphs, all of them of + following the same design rules as the originals. + . + This package contains the OpenType font files for Bedstead in two + weights (medium and bold) and six widths (ultra condensed, extra + condensed, condensed, semi condensed, normal, and extended). + +Package: xfonts-bedstead +Architecture: all +Multi-Arch: foreign +Depends: ${misc:Depends} +Description: console fonts inspired by SAA5050 character generator + Bedstead is a family of angular monospaced fonts based on the + characters produced by the Mullard SAA5050 series of Teletext + Character Generators as used in the BBC Microcomputer. + . + This packages contains bitmap fonts suitable for use with the + X Window System. It includes 10-pixel and 20-pixel medium fonts + and a 20-pixel bold font. + +Package: consolefonts-bedstead +Architecture: all +Multi-Arch: foreign +Depends: ${misc:Depends} +Description: console fonts inspired by SAA5050 character generator + Bedstead is a family of angular monospaced fonts based on the + characters produced by the Mullard SAA5050 series of Teletext + Character Generators as used in the BBC Microcomputer. + . + This packages contains bitmap fonts suitable for use on Linux text + consoles in 10-pixel and 20-pixel sizes. --- bedstead-3.251.orig/debian/copyright +++ bedstead-3.251/debian/copyright @@ -0,0 +1,224 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Bedstead +Upstream-Contact: Ben Harris +Source: Git repository linked from https://bjh21.me.uk/bedstead/ +Disclaimer: + Bedstead is not part of Debian because it is not entirely free. While + there are no restrictions on the distribution and use of the typefaces + as typefaces, the original SAA5050 character designs are still under + copyright as artistic works in the United Kingdom and use of them + other than by making and using typefaces might infringe that + copyright. +Comment: + None of the files in the upstream package include copyright notices + or are under licences that require their preservation. +License: CC0-1.0 and CDPA-s55 + +Files: * debian/* +Copyright: No copyright notice +License: CC0-1.0 + +Files: bedstead.c titlebg.jpg +Copyright: No copyright notice +License: CC0-1.0 and CDPA-s55 +Comment: The SAA5050 series of character-generator chips, whose + character bitmaps Bedstead is based on, were marketed in 1982 or + earlier. + +Files: debian/copyright +Copyright: © Crown and database right +License: CC0-1.0 and OGL-UK-3.0 +Comment: OGL-UK-3.0 applies to the CDPA-s55 excerpt below and the text + of the OGL itself. + +License: CC0-1.0 + A copy of CC0 1.0 Universal is available on Debian systems in + /usr/share/common-licenses/CC0-1.0 + +Comment: This is section 55 of the Copyright, Designs and Patents Act 1988. + Obtained from . + Contains public sector information licensed under the Open Government + Licence v3.0. +License: CDPA-s55 + 55 Articles for producing material in particular typeface. + . + (1) This section applies to the copyright in an artistic work + consisting of the design of a typeface where articles specifically + designed or adapted for producing material in that typeface have been + marketed by or with the licence of the copyright owner. + . + (2) After the period of 25 years from the end of the calendar year in + which the first such articles are marketed, the work may be copied by + making further such articles, or doing anything for the purpose of + making such articles, and anything may be done in relation to + articles so made, without infringing copyright in the work. + . + (3) In subsection (1) “marketed” means sold, let for hire or offered + or exposed for sale or hire, in the United Kingdom or elsewhere. + +Comment: Obtained from . + Contains public sector information licensed under the Open Government + Licence v3.0. +License: OGL-UK-3.0 + Open Government Licence v3.0 + . + You are encouraged to use and re-use the Information that is available + under this licence freely and flexibly, with only a few conditions. + . + Using Information under this licence + . + Use of copyright and database right material expressly made available + under this licence (the 'Information') indicates your acceptance of + the terms and conditions below. + . + The Licensor grants you a worldwide, royalty-free, perpetual, + non-exclusive licence to use the Information subject to the + conditions below. + . + This licence does not affect your freedom under fair dealing or fair + use or any other copyright or database right exceptions and + limitations. + . + You are free to: + . + copy, publish, distribute and transmit the Information; + . + adapt the Information; + . + exploit the Information commercially and non-commercially for + example, by combining it with other Information, or by including + it in your own product or application. + . + You must (where you do any of the above): + . + acknowledge the source of the Information in your product or + application by including or linking to any attribution statement + specified by the Information Provider(s) and, where possible, + provide a link to this licence; + . + If the Information Provider does not provide a specific + attribution statement, you must use the following: Contains public + sector information licensed under the Open Government Licence + v3.0. + . + If you are using Information from several Information Providers + and listing multiple attributions is not practical in your product + or application, you may include a URI or hyperlink to a resource + that contains the required attribution statements. + . + These are important conditions of this licence and if you fail to + comply with them the rights granted to you under this licence, or + any similar licence granted by the Licensor, will end + automatically. + . + Exemptions + . + This licence does not cover: + . + personal data in the Information; + . + Information that has not been accessed by way of publication or + disclosure under information access legislation (including the + Freedom of Information Acts for the UK and Scotland) by or with + the consent of the Information Provider; + . + departmental or public sector organisation logos, crests and the + Royal Arms except where they form an integral part of a document + or dataset; + . + military insignia; + . + third party rights the Information Provider is not authorised to + license; + . + other intellectual property rights, including patents, trade + marks, and design rights; and + . + identity documents such as the British Passport + . + Non-endorsement + . + This licence does not grant you any right to use the Information in a + way that suggests any official status or that the Information + Provider and/or Licensor endorse you or your use of the Information. + . + No warranty + . + The Information is licensed 'as is' and the Information Provider + and/or Licensor excludes all representations, warranties, obligations + and liabilities in relation to the Information to the maximum extent + permitted by law. + . + The Information Provider and/or Licensor are not liable for any + errors or omissions in the Information and shall not be liable for + any loss, injury or damage of any kind caused by its use. The + Information Provider does not guarantee the continued supply of the + Information. + . + Governing Law + . + This licence is governed by the laws of the jurisdiction in which the + Information Provider has its principal place of business, unless + otherwise specified by the Information Provider. + . + Definitions + . + In this licence, the terms below have the following meanings: + . + 'Information' means information protected by copyright or by + database right (for example, literary and artistic works, content, + data and source code) offered for use under the terms of this + licence. + . + 'Information Provider' means the person or organisation providing + the Information under this licence. + . + 'Licensor' means any Information Provider which has the authority + to offer Information under the terms of this licence or the Keeper + of Public Records, who has the authority to offer Information + subject to Crown copyright and Crown database rights and + Information subject to copyright and database right that has been + assigned to or acquired by the Crown, under the terms of this + licence. + . + 'Use' means doing any act which is restricted by copyright or + database right, whether in the original medium or in any other + medium, and includes without limitation distributing, copying, + adapting, modifying as may be technically necessary to use it in a + different mode or format. + . + 'You', 'you' and 'your' means the natural or legal person, or body + of persons corporate or incorporate, acquiring rights in the + Information (whether the Information is obtained directly from the + Licensor or otherwise) under this licence. + . + About the Open Government Licence + . + The National Archives has developed this licence as a tool to enable + Information Providers in the public sector to license the use and + re-use of their Information under a common open licence. The National + Archives invites public sector bodies owning their own copyright and + database rights to permit the use of their Information under this + licence. + . + The Keeper of the Public Records has authority to license Information + subject to copyright and database right owned by the Crown. The + extent of the offer to license this Information under the terms of + this licence is set out in the UK Government Licensing Framework. + . + This is version 3.0 of the Open Government Licence. The National + Archives may, from time to time, issue new versions of the Open + Government Licence. If you are already using Information under a + previous version of the Open Government Licence, the terms of that + licence will continue to apply. + . + These terms are compatible with the Creative Commons Attribution + License 4.0 and the Open Data Commons Attribution License, both of + which license copyright and database rights. This means that when the + Information is adapted and licensed under either of those licences, + you automatically satisfy the conditions of the OGL when you comply + with the other licence. The OGLv3.0 is Open Definition compliant. + . + Further context, best practice and guidance can be found in the UK + Government Licensing Framework section on The National Archives + website. --- bedstead-3.251.orig/debian/fonts-bedstead.docs +++ bedstead-3.251/debian/fonts-bedstead.docs @@ -0,0 +1,3 @@ +CONTRIBUTING +NEWS +bedstead-complement.pdf --- bedstead-3.251.orig/debian/fonts-bedstead.install +++ bedstead-3.251/debian/fonts-bedstead.install @@ -0,0 +1 @@ +*.otf /usr/share/fonts/opentype/bedstead --- bedstead-3.251.orig/debian/gbp.conf +++ bedstead-3.251/debian/gbp.conf @@ -0,0 +1,12 @@ +[DEFAULT] +# Repository-layout settings. These include ones that are gbp +# defaults just in case the defaults change. +pristine-tar = False +upstream-branch = upstream/latest +upstream-tag = upstream/%(version)s +upstream-tree = TAG +debian-branch = debian/latest +debian-tag = debian/%(version)s + +# Allow work on any branch. +ignore-branch = True --- bedstead-3.251.orig/debian/rules +++ bedstead-3.251/debian/rules @@ -0,0 +1,61 @@ +#!/usr/bin/make -f +%: + dh $@ + +override_dh_compress: + dh_compress -X.pdf + +### Build X fonts from upstream BDFs. + +PCFGZS = bedstead-10.pcf.gz bedstead-20.pcf.gz bedstead-bold-20.pcf.gz + +%.pcf: %.bdf + bdftopcf -t -o $@ $< + +%.pcf.gz: %.pcf + gzip -9nk $< + +### Build console fonts from upstream BDFs. + +# We restrict ourselves to codesets that are reasonably well-covered +# by Bedstead. + +SMALL_CODESETS = CyrKoi CyrSlav Greek Hebrew Lat15 Lat2 Lat38 +FULL_CODESETS = FullCyrSlav FullGreek +LARGE_CODESETS = Uni2 + +CODESETS = $(SMALL_CODESETS) $(LARGE_CODESETS) \ + $(addprefix Full, $(FULL_CODESETS)) + +SMALL_PSFS = $(addsuffix -Bedstead20x12.psf,$(SMALL_CODESETS)) \ + $(addsuffix -Bedstead10x6.psf,$(SMALL_CODESETS)) +FULL_PSFS = $(addsuffix -Bedstead20x12.psf,$(FULL_CODESETS)) \ + $(addsuffix -Bedstead10x6.psf,$(FULL_CODESETS)) +LARGE_PSFS = $(addsuffix -Bedstead20x12.psf,$(LARGE_CODESETS)) \ + $(addsuffix -Bedstead10x6.psf,$(LARGE_CODESETS)) +PSFS = $(SMALL_PSFS) $(FULL_PSFS) $(LARGE_PSFS) +PSFGZS = $(addsuffix .gz,$(PSFS)) + +B2PDIR = /usr/share/bdf2psf + +$(SMALL_PSFS): size = 256 +$(LARGE_PSFS) $(FULL_PSFS): size = 512 +$(SMALL_PSFS): fontset = $(B2PDIR)/fontsets/$*.256 +$(FULL_PSFS): fontset = $(B2PDIR)/fontsets/$(subst Full,,$*).256 +$(LARGE_PSFS): fontset = $(B2PDIR)/fontsets/$*.512 +$(SMALL_PSFS) $(LARGE_PSFS): equivs = $(B2PDIR)/standard.equivalents +$(FULL_PSFS): equivs = /dev/null + +symbols = $(B2PDIR)/ascii.set+$(B2PDIR)/linux.set+$(fontset)+:$(B2PDIR)/useful.set + +%-Bedstead20x12.psf: bedstead-20.bdf + bdf2psf --fb bedstead-20.bdf $(equivs) $(symbols) $(size) $@ +%-Bedstead10x6.psf: bedstead-10.bdf + bdf2psf --fb bedstead-10.bdf $(equivs) $(symbols) $(size) $@ + +%.psf.gz: %.psf + gzip -9nk $< + + +execute_after_dh_auto_build: $(PCFGZS) $(PSFGZS) + true --- bedstead-3.251.orig/debian/screenshot.svg +++ bedstead-3.251/debian/screenshot.svg @@ -0,0 +1,156 @@ + + + + + + + + + + + + A + Bedstead + Aa Ee RrBb Gg Jj + abcdefghijklmnopqrstuvwxyz0123456789 + Acorn DFS + + + + + + + + + + + + + + --- bedstead-3.251.orig/debian/source/format +++ bedstead-3.251/debian/source/format @@ -0,0 +1 @@ +1.0 --- bedstead-3.251.orig/debian/source/options +++ bedstead-3.251/debian/source/options @@ -0,0 +1 @@ +-sk --- bedstead-3.251.orig/debian/tests/control +++ bedstead-3.251/debian/tests/control @@ -0,0 +1,10 @@ +Tests: fc-list +Depends: fonts-bedstead, fontconfig +Restrictions: superficial + +Tests: rom +Depends: fonts-bedstead, ghostscript + +Tests: xlsfonts +Depends: xfonts-bedstead, x11-utils +Restrictions: superficial --- bedstead-3.251.orig/debian/tests/fc-list +++ bedstead-3.251/debian/tests/fc-list @@ -0,0 +1,38 @@ +#! /bin/bash + +# Check that Fontconfig can find all of the Bedstead fonts that should +# be installed. This doesn't check the precise output of fc-list +# because the test system might contain additional fonts that match +# "Bedstead". + +set -euo pipefail + +cd -- "${AUTOPKGTEST_TMP}" + +sort >expected <actual + +echo "fc-list output:" +cat actual + +comm -13 actual expected >missing + +if [ -s missing ]; then + echo "Missing from fc-list output:" + cat missing + exit 1 +fi --- bedstead-3.251.orig/debian/tests/rom +++ bedstead-3.251/debian/tests/rom @@ -0,0 +1,28 @@ +#! /bin/bash + +# Known-answer tests for Bedstead. rom.ps is meant to reproduce the +# SAA505x character ROM images, so its output should be invariant in +# the absence of bugs. The hashes here are not derived from real ROM +# images, but from Git commit 239363800f6beaf74d8cafe275d11cb8a8501abb, +# which is believed to be correct. + +set -euo pipefail + +for i in 0 1 2 3 4 5 6 7; do + gs -I/usr/share/fonts/opentype/bedstead \ + -P -q -dSAFER -sDEVICE=bit -o "${AUTOPKGTEST_TMP}/saa505${i}.rom" \ + -- rom.ps "SAA505${i}" +done + +cd -- "${AUTOPKGTEST_TMP}" +[ -n "${AUTOPKGTEST_ARTIFACTS-}" ] && cp -- *.rom "${AUTOPKGTEST_ARTIFACTS}" +sha256sum -c <expected <actual + +echo "xlsfonts output:" +cat actual + +comm -13 actual expected >missing + +if [ -s missing ]; then + echo "Missing from xlsfonts output:" + cat missing + exit 1 +fi + +# Check that each alias maps to precisely one font. +for a in bedstead-10 bedstead-20 bedstead-bold-20; do + count="$(xlsfonts "$a" | wc -l)" + if [ "$count" -eq 1 ]; then + echo "xlsfonts $a correctly returned one result" + else + echo "xlsfonts $a returned $count results, not 1" >&2 + exit 1 + fi +done --- bedstead-3.251.orig/debian/upstream/metadata +++ bedstead-3.251/debian/upstream/metadata @@ -0,0 +1,2 @@ +Repository: https://bjh21.me.uk/bedstead/.git +Repository-Browse: https://www.chiark.greenend.org.uk/ucgi/~bjharris/git/bedstead.git/ --- bedstead-3.251.orig/debian/watch +++ bedstead-3.251/debian/watch @@ -0,0 +1,3 @@ +version=4 +opts="mode=git,gitmode=full" \ + https://bjh21.me.uk/@PACKAGE@/.git refs/tags/@PACKAGE@-@ANY_VERSION@ --- bedstead-3.251.orig/debian/xfonts-bedstead.alias +++ bedstead-3.251/debian/xfonts-bedstead.alias @@ -0,0 +1,3 @@ +bedstead-10 -bjh21-Bedstead-Medium-R-Normal--*-10-*-*-C-*-ISO10646-1 +bedstead-20 -bjh21-Bedstead-Medium-R-Normal--*-20-*-*-C-*-ISO10646-1 +bedstead-bold-20 -bjh21-Bedstead-Bold-R-Normal--*-20-*-*-C-*-ISO10646-1 --- bedstead-3.251.orig/debian/xfonts-bedstead.install +++ bedstead-3.251/debian/xfonts-bedstead.install @@ -0,0 +1,2 @@ +*.pcf.gz /usr/share/fonts/X11/misc +debian/xfonts-bedstead.alias /etc/X11/fonts/misc --- bedstead-3.251.orig/rom.ps +++ bedstead-3.251/rom.ps @@ -77,7 +77,7 @@ /X/Y/Z/edieresis/ecircumflex/ugrave.roundjoined/icircumflex/numbersign /egrave/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o /p/q/r/s/t/u/v/w - /x/y/z/acircumflex/ocircumflex.large/ucircumflex/ccedilla.angular/filledbox + /x/y/z/acircumflex/ocircumflex.large/ucircumflex/ccedilla.square/filledbox 128 { /.notdef } repeat ] /Encoding defineresource /SAA5055