-
Notifications
You must be signed in to change notification settings - Fork 3
/
profiles.mk
35 lines (27 loc) · 1.2 KB
/
profiles.mk
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
#
# Profiles
#
# Store items doesn't have useful mtime, so we rely on guix.lock to prevent
# unecessary rebuilds
guix: target/guix-time-marker
target/profiles:
mkdir -p target/profiles
target/guix-time-marker: channels/channels-lock.scm
make target/profiles/guix
touch $@
target/profiles/guix: target/profiles channels/channels-lock.scm
guix pull -C channels/channels-lock.scm -p ${GUIX_PROFILE} \
${PULL_EXTRA_OPTIONS}
target/profiles/guix-local: target/profiles channels/channels-lock-local.scm
guix pull -C channels/channels-lock-local.scm -p ${GUIX_PROFILE} \
${PULL_EXTRA_OPTIONS}
channels/channels-lock.scm: channels/channels.scm
echo -e "(use-modules (guix channels))\n" > ./channels/channels-lock-tmp.scm
guix time-machine -C ./channels/channels.scm -- \
describe -f channels >> ./channels/channels-lock-tmp.scm
mv ./channels/channels-lock-tmp.scm ./channels/channels-lock.scm
channels/channels-lock-local.scm: channels/channels-local.scm
echo -e "(use-modules (guix channels))\n" > ./channels/channels-lock-tmp.scm
guix time-machine -C ./channels/channels-local.scm -- \
describe -f channels >> ./channels/channels-lock-tmp.scm
mv ./channels/channels-lock-tmp.scm ./channels/channels-lock-local.scm