Skip to content

Commit b9040c0

Browse files
committed
Lint and update Markdown files
1 parent a39d088 commit b9040c0

File tree

8 files changed

+166
-155
lines changed

8 files changed

+166
-155
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,10 @@
99
!/.gitattributes
1010
!/.gitignore
1111
!/.hadolint.yml
12+
!/.markdownlint.yml
1213
!/CODE_OF_CONDUCT.md
14+
!/CUDA_NOTES.md
15+
!/DEVTOOLS_NOTES.md
1316
!/LICENSE
1417
!/NOTES.md
1518
!/README.md

.markdownlint.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
MD033: false
2+
MD036: false
3+
MD041: false

CODE_OF_CONDUCT.md

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -45,16 +45,16 @@ or harmful.
4545

4646
Community leaders have the right and responsibility to remove, edit, or reject
4747
comments, commits, code, wiki edits, issues, and other contributions that are
48-
not aligned to this Code of Conduct, and will communicate reasons for
49-
moderation decisions when appropriate.
48+
not aligned to this Code of Conduct, and will communicate reasons formoderation
49+
decisions when appropriate.
5050

5151
## Scope
5252

5353
This Code of Conduct applies within all community spaces, and also applies when
5454
an individual is officially representing the community in public spaces.
55-
Examples of representing our community include using an official e-mail
56-
address, posting via an official social media account, or acting as an
57-
appointed representative at an online or offline event.
55+
Examples of representing our community include using an official e-mail address,
56+
posting via an official social media account, or acting as an appointed
57+
representative at an online or offline event.
5858

5959
## Enforcement
6060

@@ -116,13 +116,17 @@ the community.
116116

117117
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
118118
version 2.0, available at
119-
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
119+
[https://www.contributor-covenant.org/version/2/0/code_of_conduct.html][v2.0].
120120

121-
Community Impact Guidelines were inspired by [Mozilla's code of conduct
122-
enforcement ladder](https://github.com/mozilla/diversity).
123-
124-
[homepage]: https://www.contributor-covenant.org
121+
Community Impact Guidelines were inspired by
122+
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].
125123

126124
For answers to common questions about this code of conduct, see the FAQ at
127-
https://www.contributor-covenant.org/faq. Translations are available at
128-
https://www.contributor-covenant.org/translations.
125+
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available
126+
at [https://www.contributor-covenant.org/translations][translations].
127+
128+
[homepage]: https://www.contributor-covenant.org
129+
[v2.0]: https://www.contributor-covenant.org/version/2/0/code_of_conduct.html
130+
[Mozilla CoC]: https://github.com/mozilla/diversity
131+
[FAQ]: https://www.contributor-covenant.org/faq
132+
[translations]: https://www.contributor-covenant.org/translations

CUDA_NOTES.md

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# Notes on CUDA
2+
3+
The CUDA and OS versions are selected as follows:
4+
5+
* CUDA: The lastest version that has image flavour `devel` including cuDNN
6+
available.
7+
* OS: The latest version that has TensortRT libraries for `amd64` available.
8+
:information_source: It is taking quite a long time for these to be available
9+
for `arm64`.
10+
11+
## Tweaks
12+
13+
**R images**
14+
15+
* R: Provide NVBLAS-enabled `R_` and `Rscript_`.
16+
* Enabled at runtime and only if `nvidia-smi` and at least one GPU are
17+
present.
18+
19+
### Environment variables
20+
21+
**Versions**
22+
23+
* `CUDA_VERSION`
24+
25+
**Miscellaneous**
26+
27+
* `CUDA_IMAGE`: The CUDA image it is derived from.
28+
* `CUDA_VISIBLE_DEVICES`: If unset (default), CUDA will use all available
29+
CUDA-capable devices.
30+
:point_right: User-settable at runtime.
31+
32+
## Settings
33+
34+
### Default
35+
36+
**R images**
37+
38+
* VS Code
39+
* Extensions > R > Rterm: Linux: `/usr/local/bin/R`
40+
41+
## Basic Linear Algebra Subprograms (BLAS)
42+
43+
The **R images** use OpenBLAS by default.
44+
45+
To have `R` and `Rscript` use NVBLAS instead,
46+
47+
1. copy the NVBLAS-enabled executables to `~/.local/bin`
48+
49+
for file in $(which {R,Rscript}); do
50+
cp "$file"_ "~/.local/bin/$(basename "$file")";
51+
done
52+
53+
1. set Extensions > R > Rterm > Linux: `/home/USER/.local/bin/R` in VS Code
54+
settings
55+
:point_right: Substitute `USER` with your user name.
56+
57+
and restart the R terminal.
58+
59+
:information_source: The
60+
[xgboost](https://cran.r-project.org/package=xgboost) package benefits greatly
61+
from NVBLAS, if it is
62+
[installed correctly](https://xgboost.readthedocs.io/en/stable/build.html).

DEVTOOLS_NOTES.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# Notes on `INSTALL_DEVTOOLS`
2+
3+
If `INSTALL_DEVTOOLS` is set, the required tools according to [microsoft/vscode > Wiki > How to Contribute](https://github.com/Microsoft/vscode/wiki/How-to-Contribute)
4+
and [coder/code-server > Docs > Contributing](https://github.com/coder/code-server/blob/main/docs/CONTRIBUTING.md)
5+
are installed.
6+
7+
Node.js is installed with corepack enabled by default. Use it to manage Yarn
8+
and/or pnpm:
9+
10+
* [Installation | Yarn - Package Manager > Updating the global Yarn version](https://yarnpkg.com/getting-started/install#updating-the-global-yarn-version)
11+
* [Installation | pnpm > Using Corepack](https://pnpm.io/installation#using-corepack)
12+
13+
## Environment variables
14+
15+
**Versions**
16+
17+
* `NODE_VERSION`
18+
19+
## System Python
20+
21+
Package `libsecret-1-dev` depends on `python3` from the system's package
22+
repository.
23+
24+
The system's Python version is installed at `/usr/bin`.
25+
26+
:information_source: Because a [more recent Python version](NOTES.md#python) is
27+
installed at `/usr/local/bin`, it takes precedence over the system's Python
28+
version.

NOTES.md

Lines changed: 35 additions & 126 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,11 @@ variables and incorporate most tweaks and default settings of the
99
[docker](https://github.com/b-data/jupyterlab-python-docker-stack)
1010
[stacks](https://github.com/b-data/jupyterlab-r-docker-stack).
1111

12-
They depend on very few
12+
They depend on very few
1313
[Dev Container Features](https://containers.dev/features) and add some extra
1414
customisation through build argument (`build.args`) and environment variables
15-
(`remoteEnv`).
15+
(`remoteEnv`).
16+
:information_source: See [Notes on `INSTALL_DEVTOOLS`](DEVTOOLS_NOTES.md).
1617

1718
## Tweaks
1819

@@ -55,8 +56,8 @@ The following startup scripts are put in place:
5556
miniconda.
5657
* `QT_QPA_PLATFORM` (R qgisprocess image): Qt Platform Plugin to use.
5758
:point_right: User-settable at runtime.
58-
* `offscreen`: Renders to an offscreen buffer. (default)
59-
* unset: Auto-detect Qt Platform Plugin.
59+
* `offscreen`: Renders to an offscreen buffer. (default)
60+
* unset: Auto-detect Qt Platform Plugin.
6061
* `LIBGL_ALWAYS_SOFTWARE=1` (R qgisprocess image): Always use software
6162
rendering.
6263
:point_right: User-settable at runtime.
@@ -82,8 +83,8 @@ The following startup scripts are put in place:
8283
:point_right: User-settable at build time with `SET_TZ`.
8384
* `PIP_USER`: The Python package install directory.
8485
:point_right: User-settable at runtime.
85-
* `1`: user directory (`~/.local`, persistent (default))
86-
* `0`: system directory (`/usr/local`, not persistent)
86+
* `1`: user directory (`~/.local`, persistent (default))
87+
* `0`: system directory (`/usr/local`, not persistent)
8788
* `CTAN_REPO`: The CTAN mirror URL. (Julia pubtools, Python scipy, R verse+
8889
images)
8990
* `OMP_NUM_THREADS`: If unset (default), BLAS/OpenMP will use as many
@@ -108,59 +109,59 @@ are installed.
108109
### Default
109110

110111
* [IPython](.devcontainer/conf/ipython/usr/local/etc/ipython/ipython_config.py):
111-
* Only enable figure formats `svg` and `pdf` for IPython.
112+
* Only enable figure formats `svg` and `pdf` for IPython.
112113
* [JupyterLab](.devcontainer/conf/jupyterlab/usr/local/share/jupyter/lab/settings/overrides.json):
113-
* Theme > Selected Theme: JupyterLab Dark
114-
* Python LSP Server: Example settings according to [jupyter-lsp/jupyterlab-lsp > Installation > Configuring the servers](https://github.com/jupyter-lsp/jupyterlab-lsp#configuring-the-servers)
114+
* Theme > Selected Theme: JupyterLab Dark
115+
* Python LSP Server: Example settings according to [jupyter-lsp/jupyterlab-lsp > Installation > Configuring the servers](https://github.com/jupyter-lsp/jupyterlab-lsp#configuring-the-servers)
115116
* VS Code
116-
* Extensions > GitLab Workflow
117-
* Ai Assisted Code Suggestions: Enabled: false
118-
* Extensions > GitLens — Git supercharged
119-
* General > Show Welcome On Install: false
120-
* General > Show Whats New After Upgrade: false
121-
* Extensions > Resource Monitor Configuration
122-
* Show: Battery: false
123-
* Show: Cpufreq: false
117+
* Extensions > GitLab Workflow
118+
* Ai Assisted Code Suggestions: Enabled: false
119+
* Extensions > GitLens — Git supercharged
120+
* General > Show Welcome On Install: false
121+
* General > Show Whats New After Upgrade: false
122+
* Extensions > Resource Monitor Configuration
123+
* Show: Battery: false
124+
* Show: Cpufreq: false
124125
* Zsh
125-
* Oh My Zsh: `~/.zshrc`
126-
* Set PATH so it includes user's private bin if it exists
126+
* Oh My Zsh: `~/.zshrc`
127+
* Set PATH so it includes user's private bin if it exists
127128

128129
**Julia images**
129130

130131
* VS Code
131-
* Extensions > Julia
132-
* Enable Crash Reporter: false
133-
* Enable Telemetry: false
132+
* Extensions > Julia
133+
* Enable Crash Reporter: false
134+
* Enable Telemetry: false
134135

135136
**R images**
136137

137138
* R: `$(R RHOME)/etc/Rprofile.site`
138-
* IRkernel: Only enable `image/svg+xml` and `application/pdf` for plot
139+
* IRkernel: Only enable `image/svg+xml` and `application/pdf` for plot
139140
display.
140-
* R Extension (VS Code): Disable help panel and revert to old behaviour.
141+
* R Extension (VS Code): Disable help panel and revert to old behaviour.
141142
* [JupyterLab](.devcontainer/r-base/conf/jupyterlab/usr/local/share/jupyter/lab/settings/overrides.json):
142-
* R LSP Server: Example settings according to [jupyter-lsp/jupyterlab-lsp > Installation > Configuring the servers](https://github.com/jupyter-lsp/jupyterlab-lsp#configuring-the-servers)
143+
* R LSP Server: Example settings according to [jupyter-lsp/jupyterlab-lsp > Installation > Configuring the servers](https://github.com/jupyter-lsp/jupyterlab-lsp#configuring-the-servers)
143144
* VS Code
144-
* Extensions > R
145-
* Bracketed Paste: true
146-
* Plot: Use Httpgd: true
147-
* Rterm: Linux: `/usr/local/bin/radian`
148-
* Rterm: Option: `["--no-save", "--no-restore"]`
149-
* Workspace Viewer: Show Object Size: true
145+
* Extensions > R
146+
* Bracketed Paste: true
147+
* Plot: Use Httpgd: true
148+
* Rterm: Linux: `/usr/local/bin/radian`
149+
* Rterm: Option: `["--no-save", "--no-restore"]`
150+
* Workspace Viewer: Show Object Size: true
150151

151152
### Customise
152153

153154
* IPython: Create file `~/.ipython/profile_default/ipython_config.py`
154-
* Valid figure formats: `png`, `retina`, `jpeg`, `svg`, `pdf`.
155+
* Valid figure formats: `png`, `retina`, `jpeg`, `svg`, `pdf`.
155156
* JupyterLab: Settings > Advanced Settings Editor
156157
* VS Code Server: Manage > Settings
157158
* Zsh
158-
* Oh My Zsh: Edit `~/.zshrc`.
159+
* Oh My Zsh: Edit `~/.zshrc`.
159160

160161
**R images**
161162

162163
* R: Create file `~/.Rprofile`
163-
* Valid plot mimetypes: `image/png`, `image/jpeg`, `image/svg+xml`,
164+
* Valid plot mimetypes: `image/png`, `image/jpeg`, `image/svg+xml`,
164165
`application/pdf`.
165166
:information_source: MIME type `text/plain` must always be specified.
166167

@@ -173,95 +174,3 @@ The Python version is selected as follows:
173174
such as numba, tensorflow, etc. – are already compatible with it.
174175

175176
This Python version is installed at `/usr/local/bin`.
176-
177-
# Additional notes on CUDA
178-
179-
The CUDA and OS versions are selected as follows:
180-
181-
* CUDA: The lastest version that has image flavour `devel` including cuDNN
182-
available.
183-
* OS: The latest version that has TensortRT libraries for `amd64` available.
184-
:information_source: It is taking quite a long time for these to be available
185-
for `arm64`.
186-
187-
## Tweaks
188-
189-
**R images**
190-
191-
* R: Provide NVBLAS-enabled `R_` and `Rscript_`.
192-
* Enabled at runtime and only if `nvidia-smi` and at least one GPU are
193-
present.
194-
195-
### Environment variables
196-
197-
**Versions**
198-
199-
* `CUDA_VERSION`
200-
201-
**Miscellaneous**
202-
203-
* `CUDA_IMAGE`: The CUDA image it is derived from.
204-
* `CUDA_VISIBLE_DEVICES`: If unset (default), CUDA will use all available
205-
CUDA-capable devices.
206-
:point_right: User-settable at runtime.
207-
208-
## Settings
209-
210-
### Default
211-
212-
**R images**
213-
214-
* VS Code
215-
* Extensions > R > Rterm: Linux: `/usr/local/bin/R`
216-
217-
## Basic Linear Algebra Subprograms (BLAS)
218-
219-
The **R images** use OpenBLAS by default.
220-
221-
To have `R` and `Rscript` use NVBLAS instead,
222-
223-
1. copy the NVBLAS-enabled executables to `~/.local/bin`
224-
```bash
225-
for file in $(which {R,Rscript}); do
226-
cp "$file"_ "~/.local/bin/$(basename "$file")";
227-
done
228-
```
229-
1. set Extensions > R > Rterm > Linux: `/home/USER/.local/bin/R` in VS Code
230-
settings
231-
:point_right: Substitute `USER` with your user name.
232-
233-
and restart the R terminal.
234-
235-
:information_source: The
236-
[xgboost](https://cran.r-project.org/package=xgboost) package benefits greatly
237-
from NVBLAS, if it is
238-
[installed correctly](https://xgboost.readthedocs.io/en/stable/build.html).
239-
240-
# Additional notes on `INSTALL_DEVTOOLS`
241-
242-
If `INSTALL_DEVTOOLS` is set, the required tools according to [microsoft/vscode > Wiki > How to Contribute](https://github.com/Microsoft/vscode/wiki/How-to-Contribute)
243-
and [coder/code-server > Docs > Contributing](https://github.com/coder/code-server/blob/main/docs/CONTRIBUTING.md)
244-
are installed.
245-
246-
Node.js is installed with corepack enabled by default. Use it to manage Yarn
247-
and/or pnpm:
248-
249-
* [Installation | Yarn - Package Manager > Updating the global Yarn version](https://yarnpkg.com/getting-started/install#updating-the-global-yarn-version)
250-
* [Installation | pnpm > Using Corepack](https://pnpm.io/installation#using-corepack)
251-
252-
## Environment variables
253-
254-
**Versions**
255-
256-
* `NODE_VERSION`
257-
258-
## System Python
259-
260-
Package `libsecret-1-dev` depends on `python3` from the system's package
261-
repository.
262-
263-
The system's Python version is installed at `/usr/bin`.
264-
265-
:information_source: Because [a more recent Python version](#python) is
266-
installed at `/usr/local/bin`, it takes precedence over the system's Python
267-
version.

0 commit comments

Comments
 (0)