Skip to content

Commit

Permalink
Release preparations
Browse files Browse the repository at this point in the history
  • Loading branch information
nomeata committed Mar 30, 2019
1 parent fefad83 commit bdb2a65
Show file tree
Hide file tree
Showing 9 changed files with 70 additions and 178 deletions.
8 changes: 7 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,10 @@ libtiptoi
gameanalyse
makegraphic
dist
.DS_Store
.DS_Store
result
result-*
gh-pages
cabal.project.local
dist-newstyle
tts-cache
6 changes: 3 additions & 3 deletions Building.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Building from source
the tttool cache.

nix-env -iA cachix -f https://cachix.org/api/v1/install
cachix use tttool
cachix use tttool

4. Build `tttool`:

Expand All @@ -41,6 +41,6 @@ Making a release
1. Ensure that the version number in `tttool.cabal` is up-to-date
2. Run

cp -v --no-preserve=mode $(nix-build nix -A release-zip)/* .
nix-build nix -A release-zip

3. Upload `tttool-n.m.zip`.
3. Upload `result/tttool-n.m.zip`.
3 changes: 2 additions & 1 deletion Changelog.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
# Changelog for tttool

## 1.8.1 (unreleased)
## 1.8.1 (2019-03-30)

* The SVG patterns created with `./tttool oid-code` and `./tttool oid-codes`
now have `id`s that are valid (no spaces).
* The release tarball now contains a binary for Linux as well.
* The release tarball now contains a copy of [The tttool book](http://tttool.readthedocs.io/de/latest/)

## 1.8 (2018-02-06)

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ Other resources in this repository
----------------------------------

* [`oid-decoder.html`](http://htmlpreview.github.io/?https://github.com/entropia/tip-toi-reveng/blob/master/oid-decoder.html) allows you to manually decode an OID image.
* `scripts/update.sh` downloads all gme files from the Ravensburger server (requires perl and the [XML::Simple](http://search.cpan.org/~grantm/XML-Simple/) module).
* `scripts/update.sh` downloads all gme files from the Ravensburger server (requires perl and the [XML::Simple](http://search.cpan.org/~grantm/XML-Simple/) module).

Instead of downloading all of them, you can conveniently browse them at <http://tiptoi.vakat.de/>, a service provided by Falko Oldenburg <[email protected]>.
* `gameanalyse.c` and `libtiptoi.c` is an alternative tool to investigate gme
Expand Down
69 changes: 2 additions & 67 deletions book/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,71 +5,6 @@ Installation

Um eigene Tiptoi-Bücher zu gestalten brauchst du das ``tttool``.

Windows
-------
Unter Windows oder Linux lädst du von https://github.com/entropia/tip-toi-reveng/releases die neueste Version als Zip-Datei (``tttool-version.zip``) herunter, und extrahierst sie. Du kannst das ``tttool`` direkt verwenden, es ist keine weitere Installation nötig.

Unter Windows lädst du von https://github.com/entropia/tip-toi-reveng/releases die neueste Version als Zip-Datei (``tttool-win32-version.zip``) herunter, und extrahierst sie. Du kannst das ``tttool`` direkt verwenden, es ist keine weitere Installation nötig.

Linux (Debian, Ubuntu und ähnliche)
-----------------------------------

Unter Linux kompilierst du das ``tttool`` selbst.

1. Zuerst installierst du ``git``::

$ sudo apt-get install git

2. Dann kannst lädst du dir den aktuellen Quellcode des ``tttool`` herunter::

$ git clone https://github.com/entropia/tip-toi-reveng.git tttool
$ cd tttool

3. Nun installierst du das Werkzeug ``stack``. Das geht am einfachsten mit

.. code::
curl -sSL https://get.haskellstack.org/ | sh
oder du folgst den ausführlicheren Anweisungen auf der `Stack-Homepage <https://docs.haskellstack.org/en/stable/install_and_upgrade/>`_.

4. Zulezt baust du ``tttool``. Das dauert eine Weile::

stack install --local-bin-path .


Nun solltest du im aktuellen Verzeichnis eine Datei ``tttool`` finden, die du ausführen kannst::

$ ./tttool --help
Usage: tttool [-t|--transscript FILE] [--code-dim W[xH]] [--dpi DPI]
[--pixel-size N] COMMAND
tttool-1.6.1 -- The swiss army knife for the Tiptoi hacker


macOS
-----

Die Installation unter macOS verläuft ähnlich zu der unter Linux in einem Terminal-Fenster. Zunächst benötigst du, falls noch nicht installiert, die XCode command line tools::

$ xcode-select --install

Weiterhin benötigst du den Paketmanager Homebrew (https://brew.sh/)::

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Mithilfe von Homebrew installierst du Haskell::

$ brew install haskell-stack

Nun besorgst du dir die Quellen::

$ git clone https://github.com/entropia/tip-toi-reveng.git tttool
$ cd tttool

und kompilierst sie::

$ stack install --local-bin-path .

Wie zuvor befindet sich das fertige tttool nun im aktuellen Verzeichnis::

$ ./tttool --help
Wenn du nicht Windows oder Linux benutzt, oder die Software selber kompilieren willst, dann werfe einen Blick auf die `Anweisungen im Quell-Repository <https://github.com/entropia/tip-toi-reveng/blob/master/Building.md>`_.
23 changes: 0 additions & 23 deletions gen-windows-release.sh → fetch-contrib.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,26 +33,3 @@ cp -v playmus/playmus.exe contrib/playmus.exe
# install espeak first in wine
cp ~/.wine/drive_c/Programme/eSpeak/command_line/espeak.exe contrib/
cp -r ~/.wine/drive_c/Programme/eSpeak/espeak-data/ contrib/

zip --recurse-paths $zipfile \
tttool.exe \
README.md \
Changelog.md \
oid-decoder.html \
example \
example.yaml \
Debug.yaml \
oid-table.png \
templates/README.md \
templates/*.yaml \
transcript/*.csv \
wip/* \
Audio/digits/*.ogg \
contrib/oggenc.exe \
contrib/espeak.exe \
contrib/espeak-data \
contrib/LICENSE* \
contrib/README-SDL.txt \
contrib/*.dll \
contrib/playmus.exe
echo Created $zipfile
7 changes: 4 additions & 3 deletions nix/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -56,10 +56,11 @@ in rec {
"example/.*"
"Debug.yaml"
"templates/"
"templates/.*md"
"templates/.*yaml"
"templates/.*\.md"
"templates/.*\.yaml"
"Audio/"
"Audio/digits/.*"
"Audio/digits/"
"Audio/digits/.*\.ogg"
];

contrib = ../contrib;
Expand Down
38 changes: 18 additions & 20 deletions nix/tttool.nix
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@
]; in

{
flags = { old-locale = false; bytestring_has_builder = true; };
flags = {};
package = {
specVersion = "1.10";
identifier = { name = "tttool"; version = "1.8"; };
identifier = { name = "tttool"; version = "1.8.1"; };
license = "MIT";
copyright = "2013-2017 Joachim Breitner";
copyright = "2013-2019 Joachim Breitner";
maintainer = "[email protected]";
author = "Joachim Breitner";
homepage = "https://github.com/entropia/tip-toi-reveng";
Expand All @@ -28,38 +28,36 @@
components = {
exes = {
"tttool" = {
depends = (([
depends = [
(hsPkgs.aeson)
(hsPkgs.base)
(hsPkgs.base64-bytestring)
(hsPkgs.binary)
(hsPkgs.blaze-svg)
(hsPkgs.bytestring)
(hsPkgs.containers)
(hsPkgs.directory)
(hsPkgs.executable-path)
(hsPkgs.filepath)
(hsPkgs.template-haskell)
(hsPkgs.JuicyPixels)
(hsPkgs.aeson)
(hsPkgs.hashable)
(hsPkgs.haskeline)
(hsPkgs.HPDF)
(hsPkgs.JuicyPixels)
(hsPkgs.mtl)
(hsPkgs.natural-sort)
(hsPkgs.optparse-applicative)
(hsPkgs.parsec)
(hsPkgs.process)
(hsPkgs.random)
(hsPkgs.vector)
(hsPkgs.yaml)
(hsPkgs.HPDF)
(hsPkgs.split)
(hsPkgs.optparse-applicative)
(hsPkgs.spool)
(hsPkgs.zlib)
(hsPkgs.natural-sort)
(hsPkgs.blaze-svg)
(hsPkgs.base64-bytestring)
(hsPkgs.template-haskell)
(hsPkgs.text)
] ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).lt "7.5") (hsPkgs.ghc-prim)) ++ (if flags.old-locale
then [ (hsPkgs.time) (hsPkgs.old-locale) ]
else [ (hsPkgs.time) ])) ++ (if flags.bytestring_has_builder
then [ (hsPkgs.bytestring) ]
else [ (hsPkgs.bytestring) (hsPkgs.bytestring-builder) ]);
(hsPkgs.time)
(hsPkgs.vector)
(hsPkgs.yaml)
(hsPkgs.zlib)
];
};
};
};
Expand Down
92 changes: 33 additions & 59 deletions tttool.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,20 @@ synopsis: Working with files for the Tiptoi® pen
description: The Ravensburger Tiptoi® pen is programmed via special
files. Their file format has been reverse engineered; this
is a tool to analyse and create such files.
.
For more user-facing documentation, see
<http://tttool.entropia.de/> (in German).
category: Reverse Engineering
homepage: https://github.com/entropia/tip-toi-reveng
license: MIT
license-file: LICENSE
author: Joachim Breitner
maintainer: [email protected]
copyright: 2013-2017 Joachim Breitner
copyright: 2013-2019 Joachim Breitner
build-type: Simple
extra-source-files: README.md
extra-source-files: README.md Changelog.md
cabal-version: >=1.10

flag old-locale
description:
If false then depend on time >= 1.5.
.
If true then depend on time < 1.5 together with old-locale.
default: False

Flag bytestring_has_builder
default: True

executable tttool
main-is: tttool.hs
other-modules:
Expand All @@ -51,53 +44,34 @@ executable tttool
Commands,
Utils

build-depends:
base >= 4.9 && < 4.13,
binary >= 0.5 && < 0.9,
containers >= 0.4 && <0.7,
directory >= 1.2 && < 1.4,
executable-path == 0.0.*,
filepath == 1.3.* || == 1.4.*,
template-haskell >= 2.7 && < 2.15,

JuicyPixels >= 3.2.5 && < 3.4,
aeson >= 0.7 && < 1.5,
hashable == 1.2.*,
haskeline == 0.7.*,
mtl == 2.2.*,
parsec == 3.1.*,
process >= 1.1 && < 1.7,
random >= 1.0 && < 1.2,
vector >= 0.10 && < 0.13,
yaml >= 0.8 && < 0.12,
HPDF >= 1.4.10 && < 1.5,
split == 0.2.*,
optparse-applicative >= 0.13 && < 0.15,
spool == 0.1.*,
zlib >= 0.5 && < 0.7,
natural-sort >= 0.1 && < 0.2,
blaze-svg == 0.3.*,
base64-bytestring == 1.0.*,
text == 1.2.*

if impl(ghc < 7.5)
build-depends: ghc-prim

ghc-options: -fcontext-stack=42

if flag(old-locale)
build-depends: time == 1.4.*, old-locale
else
build-depends: time >= 1.5 && < 1.9

if flag(bytestring_has_builder)
build-depends:
bytestring >= 0.10.4 && < 0.11
else
build-depends:
bytestring >= 0.10 && < 0.10.4,
bytestring-builder >= 0.10.4.1.1

build-depends: aeson >= 0.7 && < 1.5
build-depends: base >= 4.9 && < 4.13
build-depends: base64-bytestring == 1.0.*
build-depends: binary >= 0.5 && < 0.9
build-depends: blaze-svg == 0.3.*
build-depends: bytestring >= 0.10.4 && < 0.11
build-depends: containers >= 0.4 && <0.7
build-depends: directory >= 1.2 && < 1.4
build-depends: executable-path == 0.0.*
build-depends: filepath == 1.3.* || == 1.4.*
build-depends: hashable == 1.2.*
build-depends: haskeline == 0.7.*
build-depends: HPDF >= 1.4.10 && < 1.5
build-depends: JuicyPixels >= 3.2.5 && < 3.4
build-depends: mtl == 2.2.*
build-depends: natural-sort >= 0.1 && < 0.2
build-depends: optparse-applicative >= 0.13 && < 0.15
build-depends: parsec == 3.1.*
build-depends: process >= 1.1 && < 1.7
build-depends: random >= 1.0 && < 1.2
build-depends: split == 0.2.*
build-depends: spool == 0.1.*
build-depends: template-haskell >= 2.7 && < 2.15
build-depends: text == 1.2.*
build-depends: time >= 1.5 && < 1.9
build-depends: vector >= 0.10 && < 0.13
build-depends: yaml >= 0.8 && < 0.12
build-depends: zlib >= 0.5 && < 0.7

hs-source-dirs: src
default-language: Haskell2010
Expand Down

0 comments on commit bdb2a65

Please sign in to comment.