From 3d9ad5862f8643861543acb25aa6f97953ad4f0a Mon Sep 17 00:00:00 2001 From: Amin Bandali Date: Sun, 19 Jul 2020 14:54:42 -0400 Subject: 2019/talks/: import the remaining ones adding transcripts on-site when possible --- 2019/talks/22.md | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 2019/talks/22.md (limited to '2019/talks/22.md') diff --git a/2019/talks/22.md b/2019/talks/22.md new file mode 100644 index 00000000..8099a3e3 --- /dev/null +++ b/2019/talks/22.md @@ -0,0 +1,90 @@ +[[!meta title="Packaging emacs packages for Debian - David Bremner"]] +[[!meta copyright="Copyright © 2019 David Bremner"]] + +[[!template id=vid +src="https://mirror.csclub.uwaterloo.ca/emacsconf/2019/emacsconf-2019-22-packaging-emacs-packages-for-debian--bremner.webm" +type="video/webm"]] + +### Download + +- [Video](https://mirror.csclub.uwaterloo.ca/emacsconf/2019/emacsconf-2019-22-packaging-emacs-packages-for-debian--bremner.webm) (1080p) + +### Notes + +```org +#+TITLE: Packaging Emacs packages for Debian +#+AUTHOR: David Bremner +#+PROPERTY: header-args:sh :results output :session demo :output session +* Why Debian Packages for Emacs addons? +** For users +- Extra layer of curation +- Integration testing +- Non-emacs dependencies are easy +- Co-operates with other =package.el= sources, e.g. /Melpa stable/. +** For admins +- Familiar tools +- Known trust model +- Building VM images +- Stable releases + +* Packaging demo +** setup +#+begin_src sh :var dir=(expand-file-name default-directory) +export SUDO_ASKPASS=/usr/bin/ssh-askpass +export DPKG_COLORS=never +export DEBIAN_FRONTEND=noninteractive +cd $dir +rm -rf build +mkdir build +cd build +#+end_src + +** grab the source +#+begin_src sh +git clone -q -o upstream https://github.com/takaxp/org-tree-slide.git +#+end_src + +** generate the packaging +#+begin_src sh +cd org-tree-slide +dh-make-elpa --pkg-emacsen +#+end_src + +** inspecting the results +#+begin_src elisp +(dired "build/org-tree-slide/debian") +(dired-hide-details-mode) +#+end_src + +** building the package + +#+begin_src sh +dpkg-buildpackage -uc -us -b +#+end_src + +** install the package +#+begin_src sh +sudo -A env NEEDRESTART_SUSPEND=y DEBIAN_FRONTEND=noninteractive \ + apt-get install --reinstall -q -y ../elpa-org-tree-slide*.deb