aboutsummaryrefslogtreecommitdiffhomepage
path: root/org/config_env.org
blob: 145160fe1d1078fa26a4dd394d1b679c9a71cd8f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
-*- mode: org -*-
#+TITLE:       spine (doc_reform) (project) environment
#+DESCRIPTION: env envrc used by make & nix
#+FILETAGS:    :spine:build:tools:
#+AUTHOR:      Ralph Amissah
#+EMAIL:       [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
#+COPYRIGHT:   Copyright (C) 2015 - 2023 Ralph Amissah
#+LANGUAGE:    en
#+STARTUP:     content hideblocks hidestars noindent entitiespretty
#+PROPERTY:    header-args  :exports code
#+PROPERTY:    header-args+ :noweb yes
#+PROPERTY:    header-args+ :results no
#+PROPERTY:    header-args+ :cache no
#+PROPERTY:    header-args+ :padline no
#+PROPERTY:    header-args+ :mkdirp yes
#+OPTIONS:     H:3 num:nil toc:t \n:t ::t |:t ^:nil -:t f:t *:t

- [[./doc-reform.org][doc-reform.org]]  [[../org/][org/]]
- [[./config_nix.org][config_nix.org]]
- [[./config_make.org][config_make.org]]

* envrc
** envrc :envrc:

#+HEADER: :tangle ../.envrc
#+BEGIN_SRC sh
if [ -f .envrc-local ]; then
  source_env_if_exists .envrc-local || source .envrc-local
fi
if [ -f .envrc-nix ]; then
  source_env_if_exists .envrc-nix || source .envrc-nix
fi
#+END_SRC

** .envrc-nix

- https://github.com/nix-community/nix-direnv
  - source_url
    - direnv fetchurl "https://raw.githubusercontent.com/nix-community/nix-direnv/<<direnv-version>>/direnvrc" "<<direnv-sha>>"
    - ${NixDirEnvVersion}

#+HEADER: :tangle ../.envrc-nix
#+BEGIN_SRC sh
NIX_ENFORCE_PURITY=1
# - https://github.com/nix-community/nix-direnv
NixDirEnvVersion="<<direnv-version>>"
NixDirEnvSHA="<<direnv-sha>>"
if ! has nix_direnv_version || ! nix_direnv_version ${NixDirEnvVersion}; then
  source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/${NixDirEnvVersion}/direnvrc" "${NixDirEnvSHA}"
fi
watch_file flake.lock
watch_file flake.nix
watch_file shell.nix
watch_file makefile
watch_file .envrc
watch_file .envrc-local
watch_file .envrc-nix
nix_direnv_watch_file flake.nix
nix_direnv_watch_file shell.nix
nix_direnv_watch_file .envrc
nix_direnv_watch_file .envrc-local
nix_direnv_watch_file .envrc-nix
#nix flake update
#nix flake check
echo ""
PATH_add result/bin
nix flake show
#use flake .
#+END_SRC

#+NAME: direnv-version
#+BEGIN_SRC sh
2.4.0
#+END_SRC

#+NAME: direnv-sha
#+BEGIN_SRC sh
sha256-XQzUAvL6pysIJnRJyR7uVpmUSZfc7LSgWQwq/4mBr1U=
#+END_SRC

#+BEGIN_SRC sh
2.3.0
#+END_SRC

#+BEGIN_SRC sh
sha256-Dmd+j63L84wuzgyjITIfSxSD57Tx7v51DMxVZOsiUD8=
#+END_SRC

#+NAME: direnv-sha_
#+BEGIN_SRC sh
sha256-0000000000000000000000000000000000000000000=
#+END_SRC

#+BEGIN_SRC sh
- https://github.com/nix-community/nix-direnv
NixDirEnvSHA="sha256-0000000000000000000000000000000000000000000="
direnv fetchurl https://raw.githubusercontent.com/nix-community/nix-direnv/${NixDirEnvVersion}/direnvrc
#+END_SRC

** .envrc-local CHECK MODIFY

- bespoke modify appropriately and generate if needed

#+HEADER: :tangle ../.envrc-local_
#+HEADER: :noweb yes
#+BEGIN_SRC sh
if [[ ! -d ./.git ]]; then
  git init
  git add .
fi
export DFLAGS="-O2 -inline -boundscheck=on -color=on"
export SpineBIN=result/bin
export SpinePROJ=~/grotto/repo/git.repo/projects/doc-reform/code/software/spine
export SpineDOC=.
export SpinePOD=${SpineDOC}/markup/pod
export SpineOUT=/srv/www/spine
export SpineSearchActionLocal='http://localhost/spine_search'
export SpineSearchActionRemote='https://sisudoc.org/spine_search'
export SpineCGIform='spine_search'
export SpineSQLdb='spine.search.db'
export SpineCGIbin=/var/www/cgi/cgi-bin
export SpineDBpath=/var/www/sqlite
#export SpineDBpath=/srv/www/spine/sqlite
echo '
  .envrc-local echo ❯❯

  ❯❯ nix flake update && nix flake check --show-trace && nix flake show && nix develop ".#devShell" -c zsh

  ❯❯ nix develop
  ❯❯ nix develop -c zsh
  ❯❯ nix develop ".#dsh-overlay-ldc" --print-build-logs

  ❯❯ nix build
  ❯❯ nix build ".#default" --print-build-logs
'
#+END_SRC

#+BEGIN_SRC sh
#export NIX_PATH=/nix/var/nix/profiles/per-user/root/channels/nixos
#export NIX_PATH=/srv/nix/nixpkgs
#export NIX_PATH=nixpkgs=/srv/nix/nixpkgs
#+END_SRC