Skip to content

Commit 2ba5133

Browse files
committed
Update installation docs
- Add sysprog21/chisel-bootcamp prebuilt image supporting x86-64 and Arm64 - Include nerdctl as Docker-compatible alternative - Update Scala tooling: use latest coursier with auto-version detection - Simplify Almond installation to official recommended method - Fix deprecated URLs: git.io coursier → GitHub releases, AdoptOpenJDK → Adoptium - Remove obsolete Cadence AWS/Chamber internal tooling sections - Clarify Jupyter Lab vs Notebook distinction in Docker environment
1 parent 6c113a5 commit 2ba5133

File tree

2 files changed

+64
-98
lines changed

2 files changed

+64
-98
lines changed

Install.md

Lines changed: 45 additions & 96 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,49 @@
11
## Local Setup Instructions
22

3-
If you want to run the bootcamp locally, run the following instructions below for your particular situation.
4-
Note that we include a custom javascript file for Jupyter, so if you already have Jupyter installed, you still need to install the custom.js file.
3+
If you want to run the bootcamp locally, follow the instructions below for your platform.
54

6-
Note: Make sure you are using **Java 8** (NOT Java 9) and have the JDK8 installed. Coursier/jupyter-scala does not appear to be compatible with Java 9 yet as of January 2018.
7-
8-
If you do have multiple version of Java, make sure to select Java 8 (1.8) before running `jupyter notebook`:
5+
Note: Java 11 or later is recommended. If you have multiple Java versions installed, select the appropriate version before running `jupyter notebook`:
96

107
* On Windows: https://gist.github.com/rwunsch/d157d5fe09e9f7cdc858cec58c8462d6
11-
* On Mac OS: https://stackoverflow.com/questions/21964709/how-to-set-or-change-the-default-java-jdk-version-on-os-x
8+
* On macOS: https://stackoverflow.com/questions/21964709/how-to-set-or-change-the-default-java-jdk-version-on-os-x
129

13-
### Local Installation using Docker - Linux/Mac/Windows
10+
### Local Installation using Docker - Linux/macOS/Windows
1411

15-
Make sure you have Docker [installed](https://docs.docker.com/get-docker/) on your system.
12+
Make sure you have Docker [installed](https://docs.docker.com/get-docker/) on your system, or alternatively [nerdctl](https://github.com/containerd/nerdctl) for a Docker-compatible CLI.
1613

17-
Run the following command:
14+
#### Prebuilt Multi-Architecture Image (Recommended)
1815

19-
```
20-
docker run -it --rm -p 8888:8888 ucbbar/chisel-bootcamp
16+
The `sysprog21/chisel-bootcamp` image supports both x86-64 and Arm64 architectures. It bundles:
17+
- Ubuntu 24.04
18+
- OpenJDK 8
19+
- Scala 2.12.10 with Almond 0.9.1 kernel
20+
- Jupyter Lab
21+
- Graphviz for circuit visualization
22+
23+
Run the container:
24+
25+
Using Docker:
26+
```bash
27+
docker run -it --rm -p 8888:8888 sysprog21/chisel-bootcamp
2128
```
2229

23-
This will download a Dokcer image for the bootcamp and run it. The output will end in the following message:
30+
Using nerdctl:
31+
```bash
32+
nerdctl run -it --rm -p 8888:8888 sysprog21/chisel-bootcamp
33+
```
2434

35+
The container starts Jupyter Lab (not classic Jupyter Notebook). Look for output like:
2536
```
26-
To access the notebook, open this file in a browser:
27-
file:///home/bootcamp/.local/share/jupyter/runtime/nbserver-6-open.html
37+
To access the server, open this file in a browser:
38+
file:///home/bootcamp/.local/share/jupyter/runtime/jpserver-7-open.html
2839
Or copy and paste one of these URLs:
29-
http://79b8df8411f2:8888/?token=LONG_RANDOM_TOKEN
30-
or http://127.0.0.1:8888/?token=LONG_RANDOM_TOKEN
40+
http://d77238b933b7:8888/lab?token=TOKEN_HERE
41+
http://127.0.0.1:8888/lab?token=TOKEN_HERE
3142
```
3243

33-
Copy the last link, the one starting with https://127.0.0.1:8888 to your browser and follow the Bootcamp.
44+
Copy the last URL (starting with `http://127.0.0.1:8888/lab`) into your browser to access the bootcamp.
3445

35-
### Local Installation - Mac/Linux
46+
### Local Installation - macOS/Linux
3647

3748
This bootcamp uses Jupyter notebooks.
3849
Jupyter notebooks allow you to interactively run code in your browser.
@@ -43,9 +54,9 @@ For this bootcamp, we'll install jupyter first and then the Scala-specific jupyt
4354
#### Jupyter
4455
First install Jupyter.
4556

46-
Dependencies: openssh-client, openjdk-8-jre, openjdk-8-jdk (-headless OK for both), ca-certificates-java
57+
Dependencies: openssh-client, openjdk-11-jre, openjdk-11-jdk (-headless OK for both), ca-certificates-java
4758

48-
First, use pip3 to install jupyter (or pip for python 2): http://jupyter.org/install.html
59+
Install Jupyter using pip3 (see [Jupyter installation docs](https://jupyter.org/install)):
4960
```
5061
pip3 install --upgrade pip
5162
pip3 install jupyter --ignore-installed
@@ -66,19 +77,14 @@ pip3 install jupyterlab
6677

6778
If you experience errors or issues with this section, try running `rm -rf ~/.local/share/jupyter/kernels/scala/` first.
6879

69-
Next, download coursier and use it to install almond (see [here](https://almond.sh/docs/quick-start-install) for the source for these instructions):
70-
```
71-
curl -L -o coursier https://git.io/coursier-cli && chmod +x coursier
72-
SCALA_VERSION=2.12.10 ALMOND_VERSION=0.9.1
73-
./coursier bootstrap -r jitpack \
74-
-i user -I user:sh.almond:scala-kernel-api_$SCALA_VERSION:$ALMOND_VERSION \
75-
sh.almond:scala-kernel_$SCALA_VERSION:$ALMOND_VERSION \
76-
--sources --default=true \
77-
-o almond
78-
./almond --install
80+
Download coursier and use it to install Almond (see [Almond installation docs](https://almond.sh/docs/quick-start-install) for details):
81+
```bash
82+
curl -L -o coursier https://github.com/coursier/coursier/releases/latest/download/coursier
83+
chmod +x coursier
84+
./coursier launch --use-bootstrap almond -- --install
7985
```
8086

81-
You can delete `coursier` and `almond` files if you so desire.
87+
This installs Almond with compatible Scala 2.12 versions. You can delete the `coursier` file afterward if desired.
8288

8389
#### Visualizations
8490

@@ -105,22 +111,11 @@ If you installed Jupyter Lab, run `jupyter-lab` instead.
105111

106112
### Local Installation - Windows
107113

108-
These notes describe, in general, the way to install the Generator Bootcamp under Windows 10.
109-
Many different Windows configurations may be encountered and some changes may be required.
110-
Please let us know of there are things out of date, or should otherwise be covered here.
114+
These instructions cover Windows 10 and later. Running the command prompt in Administrator Mode is recommended for installation steps.
111115

112-
>There are several times where you may want to launch a Command (shell) window.
113-
I have discovered that launching the command window in Administrator Mode is helpful.
114-
To do that from the bottom left Launcher, find or search for 'CMD' when selecting it from
115-
the menu, right click and choose, "Launch in Administrator Mode".
116-
Find more details on this [here](http://www.thewindowsclub.com/how-to-run-command-prompt-as-an-administrator)
117-
and other places.
118-
It is also best to relauch any command windows between steps in the process (e.g. after installing Java)
119-
so that any newly installed software will be recognized.
116+
#### Install Java
120117

121-
#### Be sure Java is installed (ideally Java 8).
122-
If you type `java` into a command prompt and it says command not found, you need to install
123-
[Java](https://adoptopenjdk.net/installation.html).
118+
Ensure Java 17 LTS or later is installed. Test by typing `java -version` in a command prompt. If not found, install from [Adoptium](https://adoptium.net/temurin/releases/).
124119

125120
#### Install Jupyter
126121
Jupyter recommends using the Anaconda distribution, here is the
@@ -132,14 +127,13 @@ Windows does not recommend this, but I do. It will make it easier to run using
132127
If you did not elect to add Jupyter to the PATH, start a prompt using the
133128
"Anaconda Prompt (Anaconda3)" shortcut from the Start Menu.
134129

135-
#### Install Scala components.
130+
#### Install Scala components
136131

137-
The simplest way seems to be to download Coursier from [here](https://github.com/coursier/coursier/releases/download/v2.0.0-RC6-24/coursier).
132+
Download the latest Coursier from [GitHub releases](https://github.com/coursier/coursier/releases/latest/download/coursier).
138133

139-
Go to download folder, where `coursier` (file) is
140-
141-
```
142-
java -noverify -jar coursier launch --fork almond:0.10.6 --scala 2.12.8 -- --install
134+
Navigate to your download folder and run:
135+
```bash
136+
java -jar coursier launch almond -- --install
143137
```
144138

145139
#### Visualizations
@@ -174,49 +168,4 @@ If you require a proxy, try uncommenting and changing the relevant lines at the
174168

175169
Good Luck!
176170

177-
### Cadence AWS Setup
178-
179-
If you don't know what is Cadence AWS, or don't have access to Cadence AWS, skip this section.
180-
181-
Navigate to your working directory, which is probably your home directory.
182-
183-
```
184-
cd ~
185-
```
186-
187-
Then run the following commands.
188-
The default shell is c-shell, but if you switch to bash, source `jupyter_sh` instead of `jupyter_csh`.
189-
```
190-
source /craft/tools/jupyter/jupyter_csh
191-
```
192-
193-
The default browser, Konqueror, won't work with Jupyter.
194-
Launch Firefox in the background and set it as your default browser when it asks.
195-
```
196-
/craft/cdns_sw_inst/firefox/45.3.0esr/firefox &
197-
```
198-
199-
Clone the repo and launch Jupyter.
200-
If it asks for a token, copy and paste the *to login with a token* URL seen in the terminal.
201-
Future launches will be happy for a while.
202-
```
203-
git clone /craft/tools/chisel/generator-bootcamp.git
204-
cd generator-bootcamp
205-
jupyter notebook
206-
```
207-
208-
### Cadence Chamber Setup
209-
210-
If you don't know what the Cadence Chamber is, skip this section.
211-
Navigate to your work directory, likely `/projects/craft_flow/work/<username>/`.
212-
Then run the following commands.
213-
Note that `/proj/` is an alias to `/projects/`.
214-
If you are in bash, source `jupyter_sh` instead of `jupyter_csh`.
215-
216-
```
217-
source /proj/craft_flow/tools/jupyter/jupyter_csh
218-
git clone /proj/craft_flow/source/chisel/generator-bootcamp
219-
cd generator-bootcamp
220-
jupyter notebook
221-
```
222171

README.md

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,26 @@ It teaches you Scala along the way, and it frames the learning of Chisel on the
2424

2525
## Getting Started
2626

27-
Try it out [HERE](https://mybinder.org/v2/gh/freechipsproject/chisel-bootcamp/master)! No local installation required!
27+
### Quick Start with Docker
2828

29-
If you want to try it out locally, [look at installation instructions here](Install.md).
29+
The fastest way to get started is using the prebuilt Docker image that supports both x86-64 and Arm64:
30+
31+
Using Docker:
32+
```bash
33+
docker run -it --rm -p 8888:8888 sysprog21/chisel-bootcamp
34+
```
35+
36+
Using nerdctl:
37+
```bash
38+
nerdctl run -it --rm -p 8888:8888 sysprog21/chisel-bootcamp
39+
```
40+
41+
Then open the provided URL (starting with http://127.0.0.1:8888) in your browser.
42+
43+
### Alternative Options
44+
45+
- Try it online [HERE](https://mybinder.org/v2/gh/freechipsproject/chisel-bootcamp/master)! No local installation required!
46+
- For local installation without Docker, [look at installation instructions here](Install.md).
3047

3148
## Outline
3249

0 commit comments

Comments
 (0)