new orleans - # aptget install leiningen reviving the …...summary: small poll for my new operating...
TRANSCRIPT
![Page 1: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/1.jpg)
# aptget install leiningen
Reviving the Debian Clojure Ecosystem
Elana HashmanThe Debian Project
ClojureSYNC – New Orleans, LA
@ehashdn
![Page 2: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/2.jpg)
Outline
What is Debian?
Why do Linux distributions package software?
What are the benefits of downstream packagers?
Building Clojure projects… without leiningen's help
Conclusion, Q&A
![Page 3: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/3.jpg)
What is Debian?
![Page 4: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/4.jpg)
The '90s
![Page 5: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/5.jpg)
Summary: small poll for my new operating systemDate: 25 Aug 91 20:57:08 GMT
Hello everybody out there using minix
I'm doing a (free) operating system (just a hobby, won't be big andprofessional like gnu) for 386(486) AT clones. This has been brewingsince april, and is starting to get ready. I'd like any feedback onthings people like/dislike in minix, as my OS resembles it somewhat(same physical layout of the filesystem (due to practical reasons)among other things).
I've currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I'll get something practical within a few months, andI'd like to know what features most people would want. Any suggestionsare welcome, but I won't promise I'll implement them :)
Linus ([email protected])
PS. Yes it's free of any minix code, and it has a multithreaded fs. It is NOT protable (uses 386 task switching etc), and it probably neverwill support anything other than ATharddisks, as that's all I have :(.
![Page 6: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/6.jpg)
Where do you even get software these days?!
![Page 7: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/7.jpg)
![Page 8: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/8.jpg)
![Page 9: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/9.jpg)
![Page 10: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/10.jpg)
![Page 11: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/11.jpg)
![Page 12: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/12.jpg)
Linux + GNU = GNU/Linux Distribution
![Page 13: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/13.jpg)
The First Linux Distributions
![Page 14: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/14.jpg)
Debian GNU/Linux
![Page 15: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/15.jpg)
100% Free Software
100% Volunteer-built
![Page 16: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/16.jpg)
Debian is a very popular base OS...
Ubuntu
Knoppix
![Page 17: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/17.jpg)
You might be using it on Docker Hub
base for 7 out of 11 top images
![Page 18: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/18.jpg)
Why would users want OS packages?
Why not use the upstream sources directly?
![Page 19: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/19.jpg)
Building software is hard.
![Page 20: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/20.jpg)
![Page 21: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/21.jpg)
Security is HARD.
![Page 22: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/22.jpg)
Software installations should work together.
![Page 23: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/23.jpg)
`aptget install` is easier!
![Page 24: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/24.jpg)
Packaging software doesn't just help end users:it helps the development community, too!
![Page 25: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/25.jpg)
What happened to Clojure in Debian?
![Page 26: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/26.jpg)
“Elana, we need more women in Debian.Why don't you pick up packaging leiningen?”
– Tom Marble, Clojeur with no shame
![Page 27: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/27.jpg)
“Tom, I barely even know how to put a Debian package together. Besides, who's stupid enough to
commit hundreds of unpaid hours to this?”
![Page 28: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/28.jpg)
“Tom, I barely even know how to put a Debian package together. Besides, who's stupid enough to
commit hundreds of unpaid hours to this?”
Narrator: SHE WAS
![Page 29: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/29.jpg)
Leiningen was the missing center of the Debian Clojure ecosystem. For some reason, it
went for four years without a maintainer.
![Page 30: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/30.jpg)
Reviving the Leiningenpackage was … a journey
![Page 31: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/31.jpg)
Step 1: Build a dependency tree.
![Page 32: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/32.jpg)
[cheshire "5.6.3"] [com.fasterxml.jackson.core/jacksoncore "2.7.5"] [com.fasterxml.jackson.dataformat/jacksondataformatcbor "2.7.5"] [com.fasterxml.jackson.dataformat/jacksondataformatsmile "2.7.5"] [tigris "0.1.1"] [classlojure "0.6.6"] [useful "0.8.3alpha8"] [org.clojure/tools.macro "0.1.1"] [cljhttp "2.0.1"] [commonscodec "1.10" :exclusions [[org.clojure/clojure]]] [org.apache.httpcomponents/httpclient "4.5" :exclusions [[org.clojure/clojure]]] [org.apache.httpcomponents/httpcore "4.4.1" :exclusions [[org.clojure/clojure]]] [org.apache.httpcomponents/httpmime "4.5" :exclusions [[org.clojure/clojure]]] [potemkin "0.4.1" :exclusions [[org.clojure/clojure]]] [cljtuple "0.2.2"] [riddley "0.1.10"] [pedantic "0.2.0"] [net.cgrand/parsley "0.9.3" :exclusions [[org.clojure/clojure]]] [net.cgrand/regex "1.1.0"] [org.clojure/tools.nrepl "0.2.12"] [reply "0.3.7" :exclusions [[ring/ringcore] [org.thnetos/cdclient]]] [cljstacktrace "0.2.7"] [com.cemerick/drawbridge "0.0.6" :exclusions [[org.clojure/tools.nrepl]]] [jline "2.12.1"] [net.cgrand/sjacket "0.1.1" :exclusions [[org.clojure/clojure]]] [org.clojure/tools.cli "0.3.1"] [trptcolin/versioneer "0.1.1"] [stencil "0.5.0" :exclusions [[org.clojure/core.cache]]] [quoin "0.1.2"] [scout "0.1.0"]
![Page 33: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/33.jpg)
Step 2: Reconcile the depversions against Debian.
![Page 34: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/34.jpg)
Step 3: Send emails.
![Page 35: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/35.jpg)
Step 4: (deus ex machina)Upstream developer rescues youfrom 7+ missing dependencies.
![Page 36: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/36.jpg)
Debian benefit #1:improved upstream code
![Page 37: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/37.jpg)
Debian benefit #2:improved upstream security
UPGRADE POMEGRANATE IF YOU USE VERSION ⚠ [0.0.12,0.4.0alpha1) ⚠
![Page 38: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/38.jpg)
Step 5: Package the dependencies.
![Page 39: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/39.jpg)
What does a Debian package look like?
A tarball of the original source code
Debian paperwork– The control file – The copyright file– The rules file – The changelog – Patches to apply to the original source
![Page 40: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/40.jpg)
Source: scoutclojureSection: javaMaintainer: Debian Clojure Maintainers <clojure[email protected]>Uploaders: Eugenio CanoManuel Mendoza <[email protected]>BuildDepends: debhelper (>= 10), mavenrepohelper (>= 1.7), defaultjdk, javahelper (>= 0.43), libclojurejava (>= 1.8)StandardsVersion: 4.1.1VcsGit: https://anonscm.debian.org/git/pkgclojure/scout.gitHomepage: https://github.com/davidsantiago/scout
Package: libscoutclojureArchitecture: allDepends: ${java:Depends}, ${misc:Depends}Description: Clojure library to parse strings
![Page 41: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/41.jpg)
Format: 1.0UpstreamName: scoutSource: https://github.com/davidsantiago/scout
Files: *Copyright: Copyright (C) 2012 David Santiago <[email protected]>License: EPL1
Files: debian/*Copyright: Copyright (C) 2013 Eugenio CanoManuel Mendoza <[email protected]>License: EPL1
License: EPL1 Eclipse Public License v 1.0 . THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
![Page 42: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/42.jpg)
#!/usr/bin/make f PRODUCED_JAR=scout.jar
%: dh $@ with javahelper,maven_repo_helper
override_jh_build: jar cf $(PRODUCED_JAR) C src .
override_jh_clean: jh_clean rm f $(CURDIR)/$(PRODUCED_JAR)
![Page 43: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/43.jpg)
scoutclojure (0.1.11) unstable; urgency=low
* Make debian/* license EPL1 compatible * Use mavenrepohelper during the build * Removed unused javabuild file * Include maven metadata in scout.jar
Eugenio CanoManuel Mendoza <[email protected]> Thu, 29 Aug 2013 20:09:51 0400
scoutclojure (0.1.01) unstable; urgency=low
* Initial release. (Closes: #709628)
Eugenio CanoManuel Mendoza <[email protected]> Mon, 29 Apr 2013 18:20:53 +0200
![Page 44: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/44.jpg)
From: Elana Hashman <[email protected]>Date: Thu, 21 Dec 2017 18:09:35 +0000Subject: Build in offline mode with local repo
project.clj | 4 +++ 1 file changed, 3 insertions(+), 1 deletion()
diff git a/project.clj b/project.cljindex fc32d11..606d727 100644 a/project.clj+++ b/project.clj@@ 36,4 +36,6 @@ :offline (comp (partial notany? identity) (juxt :online :disabled))} :sourcepaths ["leiningencore/src" "src"] :evalin :leiningen)+ :evalin :leiningen+ :offline? true+ :localrepo "debian/mavenrepo")
![Page 45: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/45.jpg)
Hardest part = filling out the rules file
![Page 46: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/46.jpg)
PRODUCED_JAR=scout.jar
%: dh $@ with javahelper,maven_repo_helper
override_jh_build: jar cf $(PRODUCED_JAR) C src .
override_jh_clean: jh_clean rm f $(CURDIR)/$(PRODUCED_JAR)
Rules file: Clojure build without a build framework
![Page 47: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/47.jpg)
$ jar tvf /usr/share/java/gettext.jar 0 Mon Apr 28 15:42:26 METAINF/ 68 Mon Apr 28 15:42:26 METAINF/MANIFEST.MF 5413 Mon Apr 28 15:42:24 gnu/gettext/DumpResource.class 639 Mon Apr 28 15:42:26 gnu/gettext/GetURL$1.class 1624 Mon Apr 28 15:42:26 gnu/gettext/GetURL.class
$ jar xvf /usr/share/java/gettext.jar
$ cat METAINF/MANIFEST.MFManifestVersion: 1.0CreatedBy: 1.7.0_51 (Oracle Corporation)...MainClass: com.example.MyClassNameClassPath: . pkg1.jar path/to/pkg2.jar
![Page 48: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/48.jpg)
0 Feb 10 22:23:22 METAINF/ 69 Feb 10 22:23:22 METAINF/MANIFEST.MF 0 Aug 19 02:55:02 scout/ 6514 Aug 19 02:55:02 scout/core.clj
JAR Built with Debian
![Page 49: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/49.jpg)
122 Feb 10 METAINF/MANIFEST.MF 1996 Feb 10 METAINF/maven/scout/scout/pom.xml 433 Feb 10 METAINF/leiningen/scout/scout/project.clj 3218 Feb 10 METAINF/leiningen/scout/scout/README.md 11252 Feb 10 METAINF/leiningen/scout/scout/LICENSE 0 Feb 10 METAINF/ 0 Feb 10 METAINF/maven/ 0 Feb 10 METAINF/maven/scout/ 0 Feb 10 METAINF/maven/scout/scout/ 136 Feb 10 METAINF/maven/scout/scout/pom.properties 0 Aug 19 scout/ 6514 Aug 19 scout/core.clj
JAR Built with Leiningen
![Page 50: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/50.jpg)
$ java cp \ # Invoke Java, specify a classpath /usr/share/java/clojure.jar:/usr/share/java/scout.jar \ clojure.main \ # Run clojure.main e '(use '"'"'scout.core)' # Pass it some code
WARNING: peek already refers to: #'clojure.core/peek in namespace: user, being replaced by: #'scout.core/peek
$ echo $? 0
Running a Clojure JAR directly
![Page 51: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/51.jpg)
Things this taught me about how Clojure works
1) Clojure is a single jar.Invoking the main function runs the compiler.
2) Clojure finds dependencies via inclusion on the Java classpath.
3) Clojure libraries are (usually) source code tarballs.
![Page 52: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/52.jpg)
Demo: Build Scout
![Page 53: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/53.jpg)
Step 6: Upload the dependencies.
![Page 54: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/54.jpg)
Step 7: Package Leiningen.
![Page 55: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/55.jpg)
![Page 56: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/56.jpg)
Step 7.1: Set your hair on fire.
![Page 57: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/57.jpg)
Debian benefit #3: making sureupstream actually builds from source
![Page 58: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/58.jpg)
“Hasn't anyone tried tobuild this from source?!”
“no.” – Ancient Debian proverb
![Page 59: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/59.jpg)
%:dh $@ with javahelper buildsystem=maven
override_dh_auto_build:cp resources/leiningen/bootclasspathdeps.clj \ leiningencore/src/leiningen/bootclasspathdeps.clj
dh_auto_build f leiningencore/pom.xml installecho $(LEIN_BOOTSTRAP) > leiningencore/.leinbootstrap
chmod a+x bin/leinbin/lein uberjarbin/lein pomcp bin/lein bin/leinstandalonecp bin/leinpkg bin/lein
![Page 60: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/60.jpg)
# Jars needed to bootstrap leiningen, one per line, with # debian/mavenrepo/ removed.BOOTSTRAP_JARS=
leiningencore/leiningencore/$(VER)/leiningencore$(VER).jar \bultitude/bultitude/debian/bultitudedebian.jar \com/google/guava/guava/debian/guavadebian.jar \com/hypirion/io/debian/iodebian.jar \commonsio/commonsio/debian/commonsiodebian.jar \...org/apache/maven/mavenmodel/3.x/mavenmodel3.x.jar \org/clojure/clojure/debian/clojuredebian.jar \org/clojure/data.xml/debian/data.xmldebian.jar \org/jsoup/jsoup/debian/jsoupdebian.jar \org/slf4j/slf4japi/debian/slf4japidebian.jar \org/slf4j/slf4jnop/debian/slf4jnopdebian.jar \org/tcrawley/dynapath/debian/dynapathdebian.jar \robert/hooke/debian/hookedebian.jar
![Page 61: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/61.jpg)
Demo: Build Leiningen
![Page 62: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/62.jpg)
Step 8: Upload leiningen.
![Page 63: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/63.jpg)
Step 8.1: Get rejected byFTP Master for not writing down your name in the copyright file.
![Page 64: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/64.jpg)
Step 8.2: Re-upload and get ACCEPTed!!
![Page 65: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/65.jpg)
You can `aptget install` it!
![Page 66: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/66.jpg)
What's next from here?
Clojure 1.9 �
tools.deps and clj wrapper
Boot
Debian build helper for Leiningen
Offer help to other distros (e.g. Fedora)
Fixing bugs and keeping at it!
![Page 67: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/67.jpg)
The Debian Clojure Team
Apollon Oikonomopoulos: PuppetDB Server
Elana Hashman: Leiningen, Clojure
Emmanuel Bourg: kept all the unmaintained packages alive
Rob Browning: Emacs
Sean Whitton: CIDER
Tom Marble: Boot
![Page 68: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/68.jpg)
What a long, strange trip it's been.
![Page 69: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/69.jpg)
Questions?
![Page 70: New Orleans - # aptget install leiningen Reviving the …...Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix I'm doing](https://reader036.vdocument.in/reader036/viewer/2022071007/5fc4d430e24c9828d772bac0/html5/thumbnails/70.jpg)
Thank you!
Thanks to: Clint Adams, Frances Hocutt, Rackspace
Talk page with slides, further reading, etc.will soon be up at: https://hashman.ca/talks