From e87032597e7a691a2f1661eb5cb352e9a3dbd872 Mon Sep 17 00:00:00 2001 From: defanor Date: Mon, 20 Nov 2017 04:18:24 +0300 Subject: Prepare for binary releases Add Makefile and deb-control file to generate basic Debian packages and archives with binaries. --- Makefile | 19 +++++++++++++++++++ README.org | 8 ++++++-- deb/DEBIAN/control | 15 +++++++++++++++ pancake.cabal | 2 ++ 4 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 Makefile create mode 100644 deb/DEBIAN/control diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..2642506 --- /dev/null +++ b/Makefile @@ -0,0 +1,19 @@ +VERSION := $(shell grep '^version:' pancake.cabal | cut -d ' ' -f14- -) +NAME ?= "pancake-${VERSION}" + +deb: + cabal configure --prefix=/usr + cabal build + cabal copy --destdir=deb + dpkg-deb --build deb/ ${NAME}.deb + +bin: + cabal configure --prefix=/usr/local + cabal build + cabal copy --destdir=${NAME}-bin + tar -cz -f ${NAME}-bin.tgz -P ${NAME}-bin + +clean: + rm -rf ${NAME}.deb ${NAME}-bin.tgz ${NAME}-bin/ deb/usr/ dist/ + +.PHONY: deb bin clean diff --git a/README.org b/README.org index 4af923e..3ae84de 100644 --- a/README.org +++ b/README.org @@ -11,9 +11,13 @@ be combined with software that provides better user interfaces -- such as emacs, rlwrap, tmux, screen. * Installation +** Pancake +~cabal install~ would build and install pancake and its documentation. +Alternatively, basic Debian packages and binary releases are +available. -Use ~cabal install~ to install pancake, ~M-x package-install-file RET -/path/to/pancake.el RET~ to install its emacs interface. To set it as +** Emacs interface +~M-x package-install-file RET /path/to/pancake.el RET~. To set it as your default emacs browser: #+BEGIN_SRC elisp diff --git a/deb/DEBIAN/control b/deb/DEBIAN/control new file mode 100644 index 0000000..5221de6 --- /dev/null +++ b/deb/DEBIAN/control @@ -0,0 +1,15 @@ +Package: pancake +Version: 0.1.4 +Maintainer: defanor +Description: A CLI/Emacs web/gopher/file browser. + Pancake utilizes pandoc and external downloaders such as curl, adding + support for Gopher directories and plain text files, and invoking + external applications (e.g., image and PDF viewers) depending on its + configuration. +Architecture: amd64 +Section: web +Priority: extra +Homepage: https://defanor.uberspace.net/projects/pancake/ +Depends: libtinfo5, zlib1g, libc6, libgmp10, libffi6 +Recommends: curl +Suggests: rlwrap diff --git a/pancake.cabal b/pancake.cabal index bf9831a..97aec47 100644 --- a/pancake.cabal +++ b/pancake.cabal @@ -19,6 +19,8 @@ extra-source-files: ChangeLog.md , README.org , pancake.el , pancake.1 + , Makefile + , deb/DEBIAN/control cabal-version: >=1.10 source-repository head type: git -- cgit v1.2.3