summaryrefslogtreecommitdiffstats
path: root/2019/talks/22
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--2019/talks/22.md90
-rw-r--r--2019/talks/22/discussion.md6
2 files changed, 96 insertions, 0 deletions
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 </dev/null
+#+end_src
+
+** activate the package
+#+begin_src elisp
+(package-initialize)
+(locate-library "org-tree-slide")
+#+end_src
+
+#+begin_src sh
+dpkg -L elpa-org-tree-slide < /dev/null
+#+end_src
+
+* Cleanup this buffer
+#+begin_src elisp
+(org-babel-remove-result-one-or-many 't)
+#+end_src
+
+* Configuration
+# Local Variables:
+# org-confirm-babel-evaluate: nil
+# End:
+```
diff --git a/2019/talks/22/discussion.md b/2019/talks/22/discussion.md
new file mode 100644
index 00000000..81e55f73
--- /dev/null
+++ b/2019/talks/22/discussion.md
@@ -0,0 +1,6 @@
+Nice and clear.
+Good for teaching us the goog and best practice for a beginner. With that we what to to and in which sequence.
+This cas be the start for a good developper to automate a bit and virtualize for abstract packaging in a DevOps and DevSecOps, so thank you a lot. This is very usefull !
+kf
+
+-- kf_kiff_Packaging_e4d 2019-11-14 09:40 UTC