summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathon Fernyhough2019-01-06 19:11:47 +0000
committerJonathon Fernyhough2019-01-06 19:11:47 +0000
commit299bf1f606e1fdccbfa82b48673c860d425a87fe (patch)
treebe98d8a01210f5a56df21a5fb5d9ec97bff4ceaa
parent896e07d8efae7c63e5ffd2149e39af54241ca52e (diff)
downloadaur-299bf1f606e1fdccbfa82b48673c860d425a87fe.tar.gz
Generate Project.toml
-rw-r--r--.SRCINFO10
-rw-r--r--PKGBUILD51
2 files changed, 52 insertions, 9 deletions
diff --git a/.SRCINFO b/.SRCINFO
index d7a5ce1bdf9f..1f28174a01d0 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = julia-ijulia
pkgdesc = Julia-language backend combined with the Jupyter interactive environment
pkgver = 1.15.1
- pkgrel = 2
+ pkgrel = 3
url = https://github.com/JuliaLang/IJulia.jl
arch = any
license = MIT
@@ -16,9 +16,13 @@ pkgbase = julia-ijulia
depends = julia-zmq
depends = jupyter
source = julia-ijulia-1.15.1.tar.gz::https://github.com/JuliaLang/IJulia.jl/archive/v1.15.1.tar.gz
- source = Project.toml
+ source = julia-ijulia-Deps.toml::https://raw.githubusercontent.com/JuliaRegistries/General/ccf2fdff37e06ab95d1d5de487f66de0268cabb8/I/IJulia/Deps.toml
+ source = julia-ijulia-Package.toml::https://raw.githubusercontent.com/JuliaRegistries/General/ccf2fdff37e06ab95d1d5de487f66de0268cabb8/I/IJulia/Package.toml
+ source = julia-ijulia-Versions.toml::https://raw.githubusercontent.com/JuliaRegistries/General/ccf2fdff37e06ab95d1d5de487f66de0268cabb8/I/IJulia/Versions.toml
sha256sums = f6c228d7e2e172161983f9e5abf111726773ab6008ef976382f1507f48f6a88a
- sha256sums = b781b82943b5cdd8ed46e273e2e903e117fc9b99a0923a98ea9183a9a5f17da8
+ sha256sums = dcdb09b20e51ea32814516904292ea28cc2dff1e0db7bcd7bb594a5e38663393
+ sha256sums = 8f528e7a9177c8b3a30fb17b50b9fbc3bbc4f8a677a3d4cc940446182885e6b0
+ sha256sums = 0042ae63c62ccaaed382eab4d969669cf5397fb6bb83a8403b0c79adb6ba9aa9
pkgname = julia-ijulia
diff --git a/PKGBUILD b/PKGBUILD
index 544446308918..727b3b18dffb 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,7 +3,7 @@
pkgname=julia-ijulia
_pkgname=IJulia
pkgver=1.15.1
-pkgrel=2
+pkgrel=3
pkgdesc='Julia-language backend combined with the Jupyter interactive environment'
arch=(any)
url=https://github.com/JuliaLang/IJulia.jl
@@ -22,12 +22,50 @@ makedepends=(
julia-versionparsing
)
+_commit=ccf2fdff37e06ab95d1d5de487f66de0268cabb8
source=($pkgname-$pkgver.tar.gz::https://github.com/JuliaLang/$_pkgname.jl/archive/v$pkgver.tar.gz
- Project.toml)
+ $pkgname-Deps.toml::https://raw.githubusercontent.com/JuliaRegistries/General/$_commit/${_pkgname:0:1}/$_pkgname/Deps.toml
+ $pkgname-Package.toml::https://raw.githubusercontent.com/JuliaRegistries/General/$_commit/${_pkgname:0:1}/$_pkgname/Package.toml
+ $pkgname-Versions.toml::https://raw.githubusercontent.com/JuliaRegistries/General/$_commit/${_pkgname:0:1}/$_pkgname/Versions.toml)
sha256sums=('f6c228d7e2e172161983f9e5abf111726773ab6008ef976382f1507f48f6a88a'
- 'b781b82943b5cdd8ed46e273e2e903e117fc9b99a0923a98ea9183a9a5f17da8')
+ 'dcdb09b20e51ea32814516904292ea28cc2dff1e0db7bcd7bb594a5e38663393'
+ '8f528e7a9177c8b3a30fb17b50b9fbc3bbc4f8a677a3d4cc940446182885e6b0'
+ '0042ae63c62ccaaed382eab4d969669cf5397fb6bb83a8403b0c79adb6ba9aa9')
+
+_slug() {
+ local uuid=$(grep uuid $pkgname-Package.toml | cut -f3 -d' ')
+ local sha1=$(grep \"$pkgver\" -a1 $pkgname-Versions.toml | tail -n1 | cut -f3 -d' ')
+ julia -e "u = Base.UUID($uuid);
+ s = Base.SHA1(hex2bytes($sha1));
+ println(Base.version_slug(u,s));"
+}
+
+_deps() {
+ julia -e "using Pkg
+
+ alldeps = Pkg.TOML.parsefile(\"$srcdir/$pkgname-Deps.toml\")
+ version = join(split(\"$pkgver\", \".\")[1:2],\".\")
+ deps = Dict{String,Any}()
+
+ for (key, value) in alldeps
+ vers = split(key, \"-\")
+
+ if version == vers[1] || (version > vers[1] && length(vers) == 2 && version <= vers[2])
+ merge!(deps, value)
+ end
+ end
+
+ Pkg.TOML.print(deps)"
+}
prepare() {
+ # Generate a Project.toml from Registry metadata
+ rm -f Project.toml && touch Project.toml
+ cat $pkgname-Package.toml >> Project.toml
+ echo -e "version = \"$pkgver\"" >> Project.toml
+ echo -e "\n[deps]" >> Project.toml
+ echo -e "$(_deps)" | sort >> Project.toml
+
cd $_pkgname.jl-$pkgver/deps
# Hard-code check for conda to fail. We want it to fail so we use the system jupyter.
@@ -51,10 +89,11 @@ check() {
}
package() {
- install -d "$pkgdir"/usr/share/julia/vendor
+ install -d "$pkgdir"/usr/share/julia/{vendor,packages/$_pkgname}
- cp -r $_pkgname.jl-$pkgver "$pkgdir"/usr/share/julia/vendor/$_pkgname
- install -m644 Project.toml "$pkgdir"/usr/share/julia/vendor/$_pkgname/Project.toml
+ cp -r $_pkgname.jl-$pkgver "$pkgdir"/usr/share/julia/vendor/$_pkgname
+ install -m644 Project.toml "$pkgdir"/usr/share/julia/vendor/$_pkgname/Project.toml
+ ln -s ../../vendor/$_pkgname "$pkgdir"/usr/share/julia/packages/$_pkgname/$(_slug)
install -Dm644 $_pkgname.jl-$pkgver/LICENSE.md "$pkgdir"/usr/share/licenses/$pkgname/LICENSE