Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
56c58e3
Extend gitignore
alalazo Jun 16, 2026
c428650
basics: split "Installing Packages" into subsections
alalazo Jun 16, 2026
11a3bbb
Add a paragraph explaining the overall spack architecture
alalazo Jun 16, 2026
3bbae8f
Update releases/v1.1 -> releases/v1.2
alalazo Jun 16, 2026
9468048
Move high-level highlights to introduction
alalazo Jun 16, 2026
0497b30
Minor fixes
alalazo Jun 16, 2026
e2cb0da
Shorten and improve "Installing Packages"
alalazo Jun 16, 2026
074848a
Demote Compiler flags
alalazo Jun 16, 2026
d2bff02
Reorder "Spec Syntax" subsections
alalazo Jun 16, 2026
5b6f960
Move "Querying Installations" into its own section
alalazo Jun 16, 2026
d047d4b
Add intro to "Spec Syntax"
alalazo Jun 16, 2026
ebc16a3
Update output
alalazo Jun 16, 2026
87c3593
Fix "Installing Packages"
alalazo Jun 16, 2026
31d6044
Fix "Transitive Dependencies"
alalazo Jun 16, 2026
d0dd491
Fix "Transitive Dependencies"
alalazo Jun 16, 2026
7f90404
Fix "Virtual Dependencies"
alalazo Jun 16, 2026
6242ad4
First draft
alalazo Jun 16, 2026
8bb5b6e
Add missing output
alalazo Jun 16, 2026
1586d86
Polish the section
alalazo Jun 17, 2026
dba308b
Polish the section
alalazo Jun 17, 2026
54b8a19
Temporarily disable output generation
alalazo Jun 17, 2026
90d1609
Mechanical update of the environment section
alalazo Jun 17, 2026
6bf8c20
Minor fixes
alalazo Jun 18, 2026
5bafd0f
Don't use a non-matching temporary environment
alalazo Jun 18, 2026
86b5008
Shorten introduction, but maintain the same content
alalazo Jun 18, 2026
eec5264
Improved "Working with environments" section
alalazo Jun 18, 2026
069509d
Improved "Working with environments" section
alalazo Jun 18, 2026
0b3d07c
Added an "Environment on disk" section
alalazo Jun 18, 2026
a5f3f3f
Added an "Environment on disk" section
alalazo Jun 18, 2026
220ba06
Added an "Environment on disk" section
alalazo Jun 18, 2026
f879ed5
Added a "Configuring environments" section
alalazo Jun 18, 2026
c9f8171
Trimmed redundant section
alalazo Jun 18, 2026
20409cb
First complete draft of the "Environments" tutorial
alalazo Jun 18, 2026
2a335e3
Minor fixes
alalazo Jun 18, 2026
7933c1b
Minor fixes
alalazo Jun 18, 2026
cfae192
Less notes in the initial section
alalazo Jun 18, 2026
3d515bc
Update Stacks to Ubuntu 26.04
alalazo Jun 18, 2026
c859b87
Add spec groups
alalazo Jun 18, 2026
dba5f8c
Fix last nits
alalazo Jun 18, 2026
78a532f
Fix last nits
alalazo Jun 18, 2026
96e1a64
Merge branch 'main' into isc26/stacks-update
alecbcs Jun 19, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion _static/images/stacks-unify.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
55 changes: 23 additions & 32 deletions outputs/stacks.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,44 +15,37 @@ spack env activate --create ~/stacks
fake_example stacks/setup-0 "spack env activate --create ~/stacks" "/bin/true"
example stacks/setup-0 "spack env status"

example stacks/setup-1 "spack add gcc@12 %gcc@11"
example stacks/setup-1 "spack env view disable"
fake_example stacks/setup-1 "spack config edit" "/bin/true"
# Simple compiler-only environment (before introducing spec groups)
cat "$project/stacks/examples/compiler.spack.stack.yaml" > ~/stacks/spack.yaml
example stacks/compiler-0 "spack concretize"
example --tee stacks/compiler-0 "spack install"

example stacks/setup-2 "spack concretize"
example stacks/setup-2 "spack install"
# Spec groups section: one spec with explicit %gcc@16
cat "$project/stacks/examples/groups-0.spack.stack.yaml" > ~/stacks/spack.yaml
example stacks/groups-0 "spack concretize"

example stacks/unify-0 "spack add netlib-scalapack %gcc@12 ^openblas ^openmpi"
example stacks/unify-0 "spack add netlib-scalapack %gcc@12 ^openblas ^mpich"

# Can't be concretized due to unify: true, but not worth showing because it's slow and leads to
# an "internal concretizer error" that confuses users.
# example --expect-error stacks/unify-1 "spack concretize"
# Introduce override: same spec without %gcc@16 (no output captured)
cat "$project/stacks/examples/groups-1.spack.stack.yaml" > ~/stacks/spack.yaml

# Tuning concretizer section: load yaml with two conflicting specs
example stacks/unify-2 "spack config get concretizer | grep unify"

example stacks/unify-3 "spack config add concretizer:unify:false"
cat "$project/stacks/examples/1.spack.stack.yaml" > ~/stacks/spack.yaml
example stacks/unify-3 "spack concretize"

example stacks/unify-4 "spack add netlib-scalapack %gcc@12 ^netlib-lapack ^openmpi"
example stacks/unify-4 "spack add netlib-scalapack %gcc@12 ^netlib-lapack ^mpich"

# Spec matrices section
cat "$project/stacks/examples/2.spack.stack.yaml" > ~/stacks/spack.yaml
example stacks/concretize-0 "spack concretize"
example stacks/concretize-0 "spack install"

example stacks/concretize-01 "spack find"

# Reusable definitions section
cat "$project/stacks/examples/3.spack.stack.yaml" > ~/stacks/spack.yaml
example stacks/concretize-1 "spack concretize"
example stacks/concretize-1 "spack find -l"

# py-scipy with exclude
cat "$project/stacks/examples/4bis.spack.stack.yaml" > ~/stacks/spack.yaml
example stacks/concretize-3 "spack concretize"
example stacks/concretize-3 "spack install"

example stacks/concretize-4 "spack find -ld py-scipy"

# Conditional definitions section
cat "$project/stacks/examples/5.spack.stack.yaml" > ~/stacks/spack.yaml
example stacks/concretize-5 "spack concretize"
example stacks/concretize-5 "spack find -cl netlib-scalapack"
Expand All @@ -63,14 +56,19 @@ fake_example stacks/concretize-6 "spack concretize" "/bin/true"
spack concretize
example stacks/concretize-6 "spack find -cl netlib-scalapack"

# Install the full stack
example --tee stacks/install-0 "spack install"

# Environment Views section
cat "$project/stacks/examples/6.spack.stack.yaml" > ~/stacks/spack.yaml

example stacks/view-0 "spack concretize"
example stacks/view-0 "ls ~/stacks/views/default"
example stacks/view-0 "ls ~/stacks/views/default/lib"
example stacks/view-0 "ls ~/stacks/views/full"
example stacks/view-0 "ls ~/stacks/views/full/gcc/"
example stacks/view-0 "ls ~/stacks/views/full/gcc/gcc-12.3.0-gcc-11.4.0"
gcc_dir=$(ls ~/stacks/views/full/gcc/ | head -1)
example stacks/view-0 "ls ~/stacks/views/full/gcc/$gcc_dir"

cat "$project/stacks/examples/7.spack.stack.yaml" > ~/stacks/spack.yaml

Expand All @@ -79,17 +77,14 @@ example stacks/view-1 "ls ~/stacks/views/default"
example stacks/view-1 "ls ~/stacks/views/default/lib"
example stacks/view-1 "ls ~/stacks/views/full"

example stacks/modules-0 "spack add [email protected] %gcc@11"
example stacks/modules-0 "spack concretize"
example stacks/modules-0 "spack install"

# Module Files section: lmod is already installed as part of the compiler group
. "$(spack location -i lmod)/lmod/lmod/init/bash"

example --tee stacks/modules-1 "module --version"

cat "$project/stacks/examples/8.spack.stack.yaml" > ~/stacks/spack.yaml
spack module lmod refresh -y
module use "$HOME/stacks/modules/linux-ubuntu22.04-x86_64/Core"
module use "$HOME/stacks/modules/linux-ubuntu26.04-x86_64/Core"

example --tee stacks/modules-2 "module av"

Expand All @@ -102,10 +97,6 @@ example --tee stacks/modules-3 "module av"
example --tee stacks/modules-3 "module unload gcc"
module unload gcc

# TODO: Spack v1.1 compiler mixing causes name clashes in module files
# Need to write a work around in the tutorial to teach audience how
# to deal with this.

cat "$project/stacks/examples/9.spack.stack.yaml" > ~/stacks/spack.yaml
example stacks/modules-4 "spack module lmod refresh --delete-tree -y"

Expand Down
86 changes: 86 additions & 0 deletions outputs/stacks/compiler-0.out
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
$ spack concretize
==> Concretized 2 specs:
[b] vlwdxlj [email protected]+binutils+bootstrap~graphite+libsanitizer~mold~nvptx~piclibs+profiled+strip build_system=autotools build_type=Release languages:='c,c++,fortran' platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[+] cuzgmus ^[email protected]~debuginfod+gas~gprofng~headers~interwork+ld~libiberty~lto~nls~pgo+plugins build_system=autotools compress_debug_sections=zlib libs:=shared,static platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[+] mmywg7x ^[email protected] build_system=generic platform=linux os=ubuntu26.04 target=x86_64_v3
[b] ao2onuz ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[+] vbwvgwx ^[email protected] build_system=autotools libs:=shared,static platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] z7wqeps ^[email protected]~nls build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] k25xiih ^[email protected] build_system=autotools patches:=21f0a03,72dee13,e273643 platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[e] yjlog5x ^[email protected]+binutils+bootstrap~graphite+libsanitizer~mold~nvptx~piclibs~profiled~strip build_system=autotools build_type=RelWithDebInfo languages:='c,c++,fortran' platform=linux os=ubuntu26.04 target=x86_64_v3
[+] xm76mt3 ^[email protected] build_system=generic platform=linux os=ubuntu26.04 target=x86_64_v3
[e] yc4n2pp ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3
[b] r4lhaok ^[email protected]~guile build_system=generic platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[+] xpmsy5x ^[email protected]+cxx build_system=autotools libs:=shared,static patches:=28a6673 platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[b] jo3eg4r ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3
[b] yhkgfai ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] y6uqrto ^[email protected]+sigsegv build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[b] phcmfqk ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] 3gdq456 ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] mguwetc ^[email protected]+static build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[+] hhjyyqy ^[email protected]~pic build_system=autotools libs:=shared,static platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] punbqrx ^[email protected] build_system=autotools patches:=440b954 platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[+] gxmoxea ^[email protected] build_system=autotools libs:=shared,static platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[+] melg7ga ^[email protected] build_system=autotools libs:=shared,static platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] sf5iutv ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3
[b] bvphs3b ^[email protected]+cpanm+opcode+open+shared+threads build_system=generic platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] 27d4iyp ^[email protected]+cxx~docs+stl build_system=autotools patches:=26090f4,b231fcc platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[+] cbtgjrh ^[email protected]~debug~pic+shared build_system=generic platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] cq4dkuc ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] ohmdb2l ^less@692 build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] jvlaabk ^[email protected]~xs build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[+] sle3ix4 ^[email protected]+bzip2+curses+git~libunistring+libxml2+pic+shared+tar+xz build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[+] ujlg2ua ^[email protected]+pic~python+shared build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[+] f5xe4px ^[email protected] build_system=autotools zip=pigz platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[+] afklka7 ^[email protected] build_system=makefile platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[+] ekvivpv ^[email protected]~symlinks+termlib abi=none build_system=autotools patches:=7a351bc platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[+] g72d7i3 ^[email protected]+compat+new_strategies+opt+pic+shared build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[+] 63aruxk ^[email protected]+programs build_system=makefile compression:=none libs:=shared,static platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[b] wf22jsg [email protected]+auto_swap~redirect build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] ywyq4f5 ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] litd2mh ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[b] q66mudl ^[email protected]+shared build_system=makefile fetcher=curl platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] j2fa7xl ^[email protected]~gssapi~ldap~libidn2~librtmp~libssh~libssh2+nghttp2 build_system=autotools libs:=shared,static tls:=openssl platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[b] 4lyasaz ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[+] 33yozp5 ^[email protected]~docs+shared build_system=generic certs=mozilla platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]
[b] axeuqg3 ^ca-certificates-mozilla@2026-03-19 build_system=generic platform=linux os=ubuntu26.04 target=x86_64_v3
[b] 4qgksuy ^[email protected] build_system=makefile patches:=179330d,24582ff,251d575,3371314,44599c8,47e9def,4e5a081,59c0983,64f6498,74bc961,7d8e5c7,81ca46c,881d2ed,aced0f2,b6f64d7,b7a14c3,c9a863e,ee9e260,f6f6236,f88b9d4,fde8f9d platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] su5b2hs ^[email protected] build_system=lua platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] egzwtik ^[email protected] build_system=lua platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[+] bkzcu2s ^[email protected]~obsolete_api build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[+] yvl6jpi ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] ci53fkm ^[email protected]+nls build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] a27iqiv ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %[email protected]
[b] d4ibosb ^[email protected] build_system=autotools platform=linux os=ubuntu26.04 target=x86_64_v3 %c,[email protected]

$ spack install
[ ] d4ibosb [email protected] fetching from build cache (0s)
[ ] 4qgksuy [email protected] fetching from build cache (0s)
[ ] k25xiih [email protected] fetching from build cache (0s)
[ ] 4qgksuy [email protected] relocating (0s)
[ ] 4lyasaz [email protected] fetching from build cache (0s)
[ ] vlwdxlj [email protected] fetching from build cache (0s)
[ ] d4ibosb [email protected] relocating (0s)
[ ] k25xiih [email protected] relocating (0s)
[ ] 4lyasaz [email protected] relocating (0s)
[+] 4qgksuy [email protected] /home/spack/spack/opt/spack/linux-x86_64_v3/unzip-6.0-4qgksuyohalb7cfo76mqqjlmndeh3tyg (0s)
[+] k25xiih [email protected] /home/spack/spack/opt/spack/linux-x86_64_v3/readline-8.3-k25xiihp5dun6qwe3e5ouzdigwr5yuvz (0s)
[+] 4lyasaz [email protected] /home/spack/spack/opt/spack/linux-x86_64_v3/nghttp2-1.67.1-4lyasazuklpnvidiw4ty5wvybxvkh7na (0s)
[ ] vlwdxlj [email protected] relocating (0s)
[ ] j2fa7xl [email protected] fetching from build cache (0s)
[ ] j2fa7xl [email protected] relocating (0s)
[+] j2fa7xl [email protected] /home/spack/spack/opt/spack/linux-x86_64_v3/curl-8.20.0-j2fa7xlzdvkagqked76erodvcmcd2oqp (0s)
[ ] q66mudl [email protected] fetching from build cache (0s)
[ ] q66mudl [email protected] relocating (0s)
[+] q66mudl [email protected] /home/spack/spack/opt/spack/linux-x86_64_v3/lua-5.4.8-q66mudlsappt33u2frzcijegjay54ep3 (0s)
[ ] egzwtik [email protected] fetching from build cache (0s)
[ ] su5b2hs [email protected] fetching from build cache (0s)
[ ] egzwtik [email protected] relocating (0s)
[ ] su5b2hs [email protected] relocating (0s)
[+] su5b2hs [email protected] /home/spack/spack/opt/spack/linux-x86_64_v3/lua-luafilesystem-1.9.0-su5b2hsgwgk2a4b7hkys2r23kf3me6lh (0s)
[+] egzwtik [email protected] /home/spack/spack/opt/spack/linux-x86_64_v3/lua-luaposix-36.3-egzwtikjsfubsjiqpwdjemys3xqv2ytf (1s)
[+] d4ibosb [email protected] /home/spack/spack/opt/spack/linux-x86_64_v3/tcl-8.6.17-d4ibosbgfm7536ij2dmdu6nnll5g5zpm (1s)
[ ] wf22jsg [email protected] fetching from build cache (0s)
[ ] wf22jsg [email protected] relocating (0s)
[+] wf22jsg [email protected] /home/spack/spack/opt/spack/linux-x86_64_v3/lmod-8.7.67-wf22jsggn5vfsyoyuqm6ban76y7333we (0s)
[+] vlwdxlj [email protected] /home/spack/spack/opt/spack/linux-x86_64_v3/gcc-16.1.0-vlwdxljzbis42fjrlecvyo4tmuq5eebn (1s)
5 changes: 0 additions & 5 deletions outputs/stacks/compiler-find-0.out

This file was deleted.

2 changes: 0 additions & 2 deletions outputs/stacks/compiler-find-1.out

This file was deleted.

7 changes: 0 additions & 7 deletions outputs/stacks/compiler-list-0.out

This file was deleted.

Loading
Loading