aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRalph Amissah <ralph.amissah@gmail.com>2021-02-19 16:38:30 -0500
committerRalph Amissah <ralph.amissah@gmail.com>2021-02-24 16:46:47 -0500
commite1f5135800d7450ace79d7220a47ac310a617ff5 (patch)
treea323b27e813a211bc497907a88c90c2169fc8418
parent0.11.3 (diff)
build from static source-tree pre fetch depends
-rw-r--r--dub.json57
-rw-r--r--dub.selections.json4
-rw-r--r--flake.nix18
-rw-r--r--makefile52
-rw-r--r--nix/dub.selections.nix50
-rw-r--r--nix/pkglst/shell-pkgs.nix4
-rw-r--r--org/spine_build_scaffold.org330
-rwxr-xr-xproject.nix4
-rwxr-xr-xspine.nix4
9 files changed, 438 insertions, 85 deletions
diff --git a/dub.json b/dub.json
index 48dc9b4..621c4b7 100644
--- a/dub.json
+++ b/dub.json
@@ -27,11 +27,60 @@
}
},
"dependencies": {
- "d2sqlite3": "~>0.19.1",
- "imageformats": "~>7.0.2",
- "dyaml": "~>0.8.0",
- "tinyendian": "~>0.2.0"
+ "spine:d2sqlite3": "*",
+ "spine:imageformats": "*",
+ "spine:dyaml": "*"
},
+ "subPackages": [
+ {
+ "name": "d2sqlite3",
+ "description": "A thin wrapper around SQLite 3",
+ "homepage": "https://github.com/dlang-community/d2sqlite3",
+ "authors": [ "Nicolas Sicard", "Other contributors: see Github repo" ],
+ "copyright": "Copyright 2011-18 Nicolas Sicard",
+ "license": "BSL-1.0",
+ "sourcePaths": [ "./src/ext_depends/d2sqlite3/source" ],
+ "configurations": [
+ {
+ "name": "with-lib",
+ "targetType": "library",
+ "systemDependencies": "SQLite version >= 3.8.7",
+ "libs": [ "sqlite3" ],
+ "excludedSourceFiles": [ "source/tests.d" ]
+ }
+ ]
+ },
+ {
+ "name": "imageformats",
+ "description": "Decoders for PNG, TGA, BMP, JPEG and encoders for PNG, TGA, BMP.",
+ "authors": [ "Tero Hänninen" ],
+ "license": "BSL-1.0",
+ "sourcePaths": [ "./src/ext_depends/imageformats/imageformats" ]
+ },
+ {
+ "name": "dyaml",
+ "description": "YAML parser and emitter",
+ "authors": [
+ "Ferdinand Majerech",
+ "Cameron \"Herringway\" Ross"
+ ],
+ "license": "BSL-1.0",
+ "homepage": "https://github.com/dlang-community/D-YAML",
+ "copyright": "Copyright © 2011-2018, Ferdinand Majerech",
+ "sourcePaths": [
+ "./src/ext_depends/D-YAML/source/dyaml",
+ "./src/ext_depends/D-YAML/source/tinyendian"
+ ],
+ "importPaths": [
+ "./src/ext_depends/D-YAML/source/dyaml",
+ "./src/ext_depends/D-YAML/source/tinyendian"
+ ],
+ "preGenerateCommands": [
+ "rm -rf ./src/ext_depends/D-YAML/examples",
+ "rm -rf ./src/ext_depends/D-YAML/testsuite"
+ ]
+ }
+ ],
"configurations": [
{
"name": "default",
diff --git a/dub.selections.json b/dub.selections.json
index a4bd018..322586b 100644
--- a/dub.selections.json
+++ b/dub.selections.json
@@ -1,9 +1,5 @@
{
"fileVersion": 1,
"versions": {
- "d2sqlite3": "0.19.1",
- "dyaml": "0.8.3",
- "imageformats": "7.0.2",
- "tinyendian": "0.2.0"
}
}
diff --git a/flake.nix b/flake.nix
index 3a1282b..f833522 100644
--- a/flake.nix
+++ b/flake.nix
@@ -3,28 +3,12 @@
inputs = {
flake-utils.url = "github:numtide/flake-utils";
nixpkgs.url = "/nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs";
- d2sqlite3 = {
- url = "github:dlang-community/d2sqlite3";
- flake = false;
- };
- tinyendian = {
- url = "github:kiith-sa/tinyendian";
- flake = false;
- };
- dyaml = {
- url = "github:dlang-community/D-YAML";
- flake = false;
- };
- imageformats = {
- url = "github:lgvz/imageformats";
- flake = false;
- };
dub2nix-src = {
url = "github:lionello/dub2nix";
flake = false;
};
};
- outputs = { self, d2sqlite3, tinyendian, dyaml, imageformats, dub2nix-src, nixpkgs, flake-utils }:
+ outputs = { self, dub2nix-src, nixpkgs, flake-utils }:
let
pkgs = nixpkgs.legacyPackages.x86_64-linux;
in {
diff --git a/makefile b/makefile
index 7a4d979..77c2659 100644
--- a/makefile
+++ b/makefile
@@ -96,6 +96,58 @@ gitZip:
gitArchive:
git archive -v --format=tar --prefix=spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT)/ HEAD | gzip > ../spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT).tar.gz && \
echo "to unzip: tar -xzf spine-$(PROG_VER_DECLARED)-tag-$(PROG_VER_GIT).tar.gz"
+get_depends:
+ hwd=$$(echo `pwd`) && \
+ gwd="$${hwd}/src/ext_depends" && \
+ dirs=$$(echo `ls -gx $${gwd}`) && \
+ echo $${hwd} && \
+ echo $${gwd} && \
+ echo $${dirs} && \
+ cd $${gwd} && \
+ for dir in $${dirs}; do \
+ if [ -d $${dir} ]; then \
+ echo $${dir} && \
+ if [ "imageformats" == $${dir} ]; then \
+ echo $${dir} && \
+ rm -rf $${dir} && \
+ git clone --depth=1 https://github.com/tjhann/$${dir} && \
+ cd $${dir} && \
+ echo $$PWD && \
+ echo "`git rev-parse HEAD | cut -c 1-8` - $${dir}" > ../shaHEADdep_$${dir} && \
+ cd $${gwd} && \
+ rm -rf $${dir}/.git; \
+ elif [[ "d2sqlite3" == $${dir} || "D-YAML" == $${dir} || "tinyendian" == $${dir} ]]; then \
+ echo $${dir} && \
+ rm -rf $${dir} && \
+ git clone --depth=1 https://github.com/dlang-community/$${dir} && \
+ cd $${dir} && \
+ echo "`git rev-parse HEAD | cut -c 1-8` - $${dir}" > ../shaHEADdep_$${dir} && \
+ cd $${gwd} && \
+ rm -rf $${dir}/.git; \
+ fi; \
+ fi; \
+ done; \
+ ewd="$${hwd}/src/build_depends" && \
+ dirs=$$(echo `ls -gx $${ewd}`) && \
+ cd $${ewd} && \
+ for dir in $${dirs}; do \
+ if [ -d $${dir} ]; then \
+ echo $${dir} && \
+ if [[ "dub2nix" == $${dir} ]]; then \
+ echo $${dir} && \
+ rm -rf $${dir} && \
+ git clone --depth=1 https://github.com/lionello/$${dir} && \
+ cd $${dir} && \
+ echo "`git rev-parse HEAD | cut -c 1-8` - $${dir}" > ../shaHEADdep_$${dir} && \
+ cd $${ewd} && \
+ rm -rf $${dir}/.git; \
+ fi; \
+ fi; \
+ done; \
+ cd $${hwd}
+set_depends: get_depends
+ cp -vi src/ext_depends/tinyendian/source/tinyendian.d src/ext_depends/D-YAML/source/dyaml/tinyendian.d && \
+ echo "`cat src/ext_depends/shaHEADdep_tinyendian` - dyaml/tinyendian.d" >> src/ext_depends/shaHEADdep_D-YAML
dub_upgrade:
$(DUB) upgrade
default: ldc
diff --git a/nix/dub.selections.nix b/nix/dub.selections.nix
index 28f9d2e..9316b60 100644
--- a/nix/dub.selections.nix
+++ b/nix/dub.selections.nix
@@ -1,50 +1,2 @@
# This file was generated by https://github.com/lionello/dub2nix v0.2.3
-[ {
- fetch = {
- type = "git";
- url = "https://github.com/dlang-community/d2sqlite3.git";
- rev = "v0.19.1";
- sha256 = "0rnsgla6xyr8r34knf7v6dwhacra96q1b5rhxcz9246inwhvrk5k";
- fetchSubmodules = false;
- date = "2020-07-21T12:32:51+02:00";
- deepClone = false;
- leaveDotGit = false;
- path = "/nix/store/hsi8xvl15w6fwlqvs042m1z5i88yc72i-d2sqlite3";
- };
-} {
- fetch = {
- type = "git";
- url = "https://github.com/kiith-sa/tinyendian.git";
- rev = "v0.2.0";
- sha256 = "086gf5aga52wr5rj2paq54daj8lafn980x77b706vvvqaz2mlis8";
- fetchSubmodules = false;
- date = "2018-06-10T11:04:28+02:00";
- deepClone = false;
- leaveDotGit = false;
- path = "/nix/store/9c7fsmi5am84j6dq2mp3va306x3ay291-tinyendian";
- };
-} {
- fetch = {
- type = "git";
- url = "https://github.com/kiith-sa/D-YAML.git";
- rev = "v0.8.3";
- sha256 = "13wy304xjbwkpgg7ilql1lkxkm83s87jm59ffnrg26slp7cx149q";
- fetchSubmodules = false;
- date = "2020-09-19T23:46:57+02:00";
- deepClone = false;
- leaveDotGit = false;
- path = "/nix/store/3i8i56lkmw2xq3lxr5h66v909waq2mqg-D-YAML";
- };
-} {
- fetch = {
- type = "git";
- url = "https://github.com/lgvz/imageformats.git";
- rev = "v7.0.2";
- sha256 = "1mfbsmi4fs1xny4zqs6jyr04d5f4h03r9f6jadvkdqj5kd1k0ws7";
- fetchSubmodules = false;
- date = "2019-10-10T07:54:45+03:00";
- deepClone = false;
- leaveDotGit = false;
- path = "/nix/store/wn554pn21nzmpvw2hs7hvv9v9y0sgarg-imageformats";
- };
-} ]
+[ ]
diff --git a/nix/pkglst/shell-pkgs.nix b/nix/pkglst/shell-pkgs.nix
index 2b8f03e..00259da 100644
--- a/nix/pkglst/shell-pkgs.nix
+++ b/nix/pkglst/shell-pkgs.nix
@@ -1,8 +1,6 @@
{ pkgs ? import <nixpkgs> {} }:
let
- dub2nix-src = fetchTarball {
- url = "https://github.com/lionello/dub2nix/archive/master.tar.gz";
- };
+ dub2nix-src = ./src/build_depends/dub2nix/.;
dub2nix = (import dub2nix-src) { inherit pkgs; };
in
with pkgs; [
diff --git a/org/spine_build_scaffold.org b/org/spine_build_scaffold.org
index 08bf338..f476485 100644
--- a/org/spine_build_scaffold.org
+++ b/org/spine_build_scaffold.org
@@ -87,6 +87,7 @@
<<make_version_tag>>
<<make_changelog>>
<<make_project_zip_archive>>
+<<make_get_project_dependencies_github>>
<<make_dub_upgrade>>
<<make_compile_0_compiler_default>>
<<make_compile_1_compiler_all>>
@@ -348,6 +349,66 @@ all: dmd ldc gdc
all_ver: dmd_ver ldc_ver gdc_ver
#+END_SRC
+******** get project dependencies
+
+#+NAME: make_get_project_dependencies_github
+#+BEGIN_SRC makefile
+get_depends:
+ hwd=$$(echo `pwd`) && \
+ gwd="$${hwd}/src/ext_depends" && \
+ dirs=$$(echo `ls -gx $${gwd}`) && \
+ echo $${hwd} && \
+ echo $${gwd} && \
+ echo $${dirs} && \
+ cd $${gwd} && \
+ for dir in $${dirs}; do \
+ if [ -d $${dir} ]; then \
+ echo $${dir} && \
+ if [ "imageformats" == $${dir} ]; then \
+ echo $${dir} && \
+ rm -rf $${dir} && \
+ git clone --depth=1 https://github.com/tjhann/$${dir} && \
+ cd $${dir} && \
+ echo $$PWD && \
+ echo "`git rev-parse HEAD | cut -c 1-8` - $${dir}" > ../shaHEADdep_$${dir} && \
+ cd $${gwd} && \
+ rm -rf $${dir}/.git; \
+ elif [[ "d2sqlite3" == $${dir} || "D-YAML" == $${dir} || "tinyendian" == $${dir} ]]; then \
+ echo $${dir} && \
+ rm -rf $${dir} && \
+ git clone --depth=1 https://github.com/dlang-community/$${dir} && \
+ cd $${dir} && \
+ echo "`git rev-parse HEAD | cut -c 1-8` - $${dir}" > ../shaHEADdep_$${dir} && \
+ cd $${gwd} && \
+ rm -rf $${dir}/.git; \
+ fi; \
+ fi; \
+ done; \
+ ewd="$${hwd}/src/build_depends" && \
+ dirs=$$(echo `ls -gx $${ewd}`) && \
+ cd $${ewd} && \
+ for dir in $${dirs}; do \
+ if [ -d $${dir} ]; then \
+ echo $${dir} && \
+ if [[ "dub2nix" == $${dir} ]]; then \
+ echo $${dir} && \
+ rm -rf $${dir} && \
+ git clone --depth=1 https://github.com/lionello/$${dir} && \
+ cd $${dir} && \
+ echo "`git rev-parse HEAD | cut -c 1-8` - $${dir}" > ../shaHEADdep_$${dir} && \
+ cd $${ewd} && \
+ rm -rf $${dir}/.git; \
+ fi; \
+ fi; \
+ done; \
+ cd $${hwd}
+set_depends: get_depends
+ cp -vi src/ext_depends/tinyendian/source/tinyendian.d src/ext_depends/D-YAML/source/dyaml/tinyendian.d && \
+ echo "`cat src/ext_depends/shaHEADdep_tinyendian` - dyaml/tinyendian.d" >> src/ext_depends/shaHEADdep_D-YAML
+#+END_SRC
+
+gitDir=dub2nix; git clone --depth=1 https://github.com/lionello/${gitDir} | rm -rf ${gitDir}/.git
+
******** debug :debug:
#+NAME: make_compile_3_compiler_all_debug
@@ -1059,6 +1120,12 @@ gitsnapshot: distclean tangle
* dub.json :dub:config:json:
** dub.json
+*** file-system download external dependencies
+
+- d2sqlite3
+- dyaml
+ - tinyendian
+- imageformats
#+BEGIN_SRC json :tangle ../dub.json
{
@@ -1090,6 +1157,227 @@ gitsnapshot: distclean tangle
}
},
"dependencies": {
+ "spine:d2sqlite3": "*",
+ "spine:imageformats": "*",
+ "spine:dyaml": "*"
+ },
+ "subPackages": [
+ {
+ "name": "d2sqlite3",
+ "description": "A thin wrapper around SQLite 3",
+ "homepage": "https://github.com/dlang-community/d2sqlite3",
+ "authors": [ "Nicolas Sicard", "Other contributors: see Github repo" ],
+ "copyright": "Copyright 2011-18 Nicolas Sicard",
+ "license": "BSL-1.0",
+ "sourcePaths": [ "./src/ext_depends/d2sqlite3/source" ],
+ "configurations": [
+ {
+ "name": "with-lib",
+ "targetType": "library",
+ "systemDependencies": "SQLite version >= 3.8.7",
+ "libs": [ "sqlite3" ],
+ "excludedSourceFiles": [ "source/tests.d" ]
+ }
+ ]
+ },
+ {
+ "name": "imageformats",
+ "description": "Decoders for PNG, TGA, BMP, JPEG and encoders for PNG, TGA, BMP.",
+ "authors": [ "Tero Hänninen" ],
+ "license": "BSL-1.0",
+ "sourcePaths": [ "./src/ext_depends/imageformats/imageformats" ]
+ },
+ {
+ "name": "dyaml",
+ "description": "YAML parser and emitter",
+ "authors": [
+ "Ferdinand Majerech",
+ "Cameron \"Herringway\" Ross"
+ ],
+ "license": "BSL-1.0",
+ "homepage": "https://github.com/dlang-community/D-YAML",
+ "copyright": "Copyright © 2011-2018, Ferdinand Majerech",
+ "sourcePaths": [
+ "./src/ext_depends/D-YAML/source/dyaml",
+ "./src/ext_depends/D-YAML/source/tinyendian"
+ ],
+ "importPaths": [
+ "./src/ext_depends/D-YAML/source/dyaml",
+ "./src/ext_depends/D-YAML/source/tinyendian"
+ ],
+ "preGenerateCommands": [
+ "rm -rf ./src/ext_depends/D-YAML/examples",
+ "rm -rf ./src/ext_depends/D-YAML/testsuite"
+ ]
+ }
+ ],
+ "configurations": [
+ {
+ "name": "default",
+ "targetName": "spine"
+ },
+ {
+ "name": "ldc",
+ "targetName": "spine-ldc"
+ },
+ {
+ "name": "dmd",
+ "targetName": "spine-dmd"
+ }
+ ],
+ "subConfigurations": {
+ "d2sqlite3": "with-lib"
+ }
+}
+#+END_SRC
+
+*** git (interim)
+
+#+BEGIN_SRC json
+{
+ "authors": [
+ "Ralph Amissah"
+ ],
+ "copyright": "Copyright © 2015 - 2020 Ralph Amissah",
+ "name": "spine",
+ "version": "<<version_spine>>",
+ "description": "a sisu like document parser",
+ "homepage": "http://sisudoc.org",
+ "license": "AGPL-3.0+",
+ "targetPath": "./bin",
+ "sourcePaths": [ "./src/doc_reform" ],
+ "stringImportPaths": [ "./views" ],
+ "buildRequirements": [ "allowWarnings" ],
+ "targetType": "executable",
+ "platforms": [ "posix" ],
+ "buildTypes": {
+ "dmd": {
+ "dflags": [ "-J=views", "-I=src/doc_reform" ],
+ "buildOptions": [ "verbose", "inline" ],
+ "buildRequirements": [ "allowWarnings" ]
+ },
+ "ldc": {
+ "dflags": [ "-O2", "-J=views", "-I=src/doc_reform" ],
+ "buildOptions": [ "verbose", "optimize", "inline" ],
+ "buildRequirements": [ "allowWarnings" ]
+ }
+ },
+ "dependencies": {
+ "spine:d2sqlite3": "*",
+ "spine:imageformats": "*",
+ "spine:dyaml": "*"
+ },
+ "subPackages": [
+ {
+ "name": "d2sqlite3",
+ "description": "A thin wrapper around SQLite 3",
+ "homepage": "https://github.com/dlang-community/d2sqlite3",
+ "authors": [ "Nicolas Sicard", "Other contributors: see Github repo" ],
+ "copyright": "Copyright 2011-18 Nicolas Sicard",
+ "license": "BSL-1.0",
+ "sourcePaths": [ "./src/ext_depends/d2sqlite3/source" ],
+ "configurations": [
+ {
+ "name": "with-lib",
+ "targetType": "library",
+ "systemDependencies": "SQLite version >= 3.8.7",
+ "libs": [ "sqlite3" ],
+ "excludedSourceFiles": [ "source/tests.d" ]
+ }
+ ]
+ },
+ {
+ "name": "imageformats",
+ "description": "Decoders for PNG, TGA, BMP, JPEG and encoders for PNG, TGA, BMP.",
+ "authors": [ "Tero Hänninen" ],
+ "license": "BSL-1.0",
+ "sourcePaths": [ "./src/ext_depends/imageformats/imageformats" ]
+ },
+ {
+ "name": "dyaml",
+ "description": "YAML parser and emitter",
+ "authors": [
+ "Ferdinand Majerech",
+ "Cameron \"Herringway\" Ross"
+ ],
+ "license": "BSL-1.0",
+ "homepage": "https://github.com/dlang-community/D-YAML",
+ "copyright": "Copyright © 2011-2018, Ferdinand Majerech",
+ "sourcePaths": [ "./src/ext_depends/D-YAML/source/dyaml" ],
+ "importPaths": [
+ "./src/ext_depends/D-YAML/source/dyaml",
+ "./src/ext_depends/tinyendian/source"
+ ],
+ "dependencies": {
+ "tinyendian" : "~>0.2.0"
+ },
+ "preGenerateCommands": [
+ "rm -rf ./src/ext_depends/D-YAML/examples",
+ "rm -rf ./src/ext_depends/D-YAML/testsuite"
+ ]
+ },
+ {
+ "name": "tinyendian",
+ "description": "Lightweight endianness handling library",
+ "authors": [ "Ferdinand Majerech" ],
+ "license": "Boost 1.0",
+ "copyright": "Copyright © 2014, Ferdinand Majerech",
+ "homepage": "https://github.com/kiith-sa/tinyendian",
+ "importPaths": [ "./src/ext_depends/tinyendian/source" ]
+ }
+ ],
+ "configurations": [
+ {
+ "name": "default",
+ "targetName": "spine"
+ },
+ {
+ "name": "ldc",
+ "targetName": "spine-ldc"
+ },
+ {
+ "name": "dmd",
+ "targetName": "spine-dmd"
+ }
+ ],
+ "subConfigurations": {
+ "d2sqlite3": "with-lib"
+ }
+}
+#+END_SRC
+
+*** git fetched remote external dependencies (used previously)
+
+#+BEGIN_SRC json
+{
+ "authors": [
+ "Ralph Amissah"
+ ],
+ "copyright": "Copyright © 2015 - 2020 Ralph Amissah",
+ "name": "spine",
+ "version": "<<version_spine>>",
+ "description": "a sisu like document parser",
+ "homepage": "http://sisudoc.org",
+ "license": "AGPL-3.0+",
+ "targetPath": "./bin",
+ "sourcePaths": [ "./src/doc_reform" ],
+ "stringImportPaths": [ "./views" ],
+ "buildRequirements": [ "allowWarnings" ],
+ "targetType": "executable",
+ "platforms": [ "posix" ],
+ "buildTypes": {
+ "dmd": {
+ "dflags": [ "-J=views", "-I=src/doc_reform" ],
+ "buildOptions": [ "verbose", "inline" ],
+ "buildRequirements": [ "allowWarnings" ]
+ },
+ "ldc": {
+ "dflags": [ "-O2", "-J=views", "-I=src/doc_reform" ],
+ "buildOptions": [ "verbose", "optimize", "inline" ],
+ "buildRequirements": [ "allowWarnings" ]
+ }
+ },
+ "dependencies": {
"d2sqlite3": "~><<version_d2sqlite3>>",
"imageformats": "~><<version_imageformats>>",
"dyaml": "~><<version_dyaml>>",
@@ -1892,6 +2180,35 @@ nix flake update --recreate-lock-file
inputs = {
flake-utils.url = "github:numtide/flake-utils";
nixpkgs.url = "/nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs";
+ dub2nix-src = {
+ url = "github:lionello/dub2nix";
+ flake = false;
+ };
+ };
+ outputs = { self, dub2nix-src, nixpkgs, flake-utils }:
+ let
+ pkgs = nixpkgs.legacyPackages.x86_64-linux;
+ in {
+ packages.x86_64-linux.spine = pkgs.stdenv.mkDerivation {
+ name = "spine";
+ inherit self;
+ src = self;
+ shell = ./shell.nix;
+ installPhase = ''
+ install -m755 spine $out/bin/spine
+ '';
+ };
+ defaultPackage.x86_64-linux = self.packages.x86_64-linux.spine;
+ };
+}
+#+END_SRC
+
+#+BEGIN_SRC nix
+{
+ description = "a sisu like document parser";
+ inputs = {
+ flake-utils.url = "github:numtide/flake-utils";
+ nixpkgs.url = "/nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs";
d2sqlite3 = {
url = "github:dlang-community/d2sqlite3";
flake = false;
@@ -2435,7 +2752,7 @@ in {
#+NAME: nix_dub2nix_with_pkgs
#+BEGIN_SRC nix
let
- <<nix_shell_dub2nix>>
+ <<nix_shell_dub2nix_srcLocalPreFetched>>
in
with pkgs; [
<<nix_shell_with_pkgs_list>>
@@ -2443,8 +2760,17 @@ with pkgs; [
#+END_SRC
*** get dub2nix
+**** source local
+
+#+NAME: nix_shell_dub2nix_srcLocalPreFetched
+#+BEGIN_SRC nix
+dub2nix-src = ./src/build_depends/dub2nix/.;
+dub2nix = (import dub2nix-src) { inherit pkgs; };
+#+END_SRC
+
+**** source remote (github)
-#+NAME: nix_shell_dub2nix
+#+NAME: nix_shell_dub2nix_srcRemoteGitHub
#+BEGIN_SRC nix
dub2nix-src = fetchTarball {
url = "https://github.com/lionello/dub2nix/archive/master.tar.gz";
diff --git a/project.nix b/project.nix
index e5a3f60..5776186 100755
--- a/project.nix
+++ b/project.nix
@@ -9,9 +9,7 @@ mkDubDerivation rec {
pkgs.sqlite
(
let
- dub2nix-src = fetchTarball {
- url = "https://github.com/lionello/dub2nix/archive/master.tar.gz";
- };
+ dub2nix-src = ./src/build_depends/dub2nix/.;
dub2nix = (import dub2nix-src) { inherit pkgs; };
in
with pkgs; [
diff --git a/spine.nix b/spine.nix
index c3c7faa..6675db9 100755
--- a/spine.nix
+++ b/spine.nix
@@ -118,9 +118,7 @@ mkDubDerivation rec {
pkgs.sqlite
(
let
- dub2nix-src = fetchTarball {
- url = "https://github.com/lionello/dub2nix/archive/master.tar.gz";
- };
+ dub2nix-src = ./src/build_depends/dub2nix/.;
dub2nix = (import dub2nix-src) { inherit pkgs; };
in
with pkgs; [