FNAL ASIC Compute provides standardized configurations for the following FNAL ASIC computing systems:
- MacOS VNC Client
- Linux VNC Server
The MacOS VNC Client currently supports the following features:
- Automatic Kerberos authentication and token renewal without password prompts.
- Manage VNC connections from FNAL MacOS VNC Clients to FNAL Linux VNC Servers with
the
vnctools
scripts. - Display git repo information in the command prompt.
- Standard FNAL Kerberos and SSH configurations.
The configurations can installed using the following code snippet:
curl -sL https://github.com/ic-designer/fnal-asic-compute/archive/refs/tags/0.8.0.tar.gz | tar xz
make -C fnal-asic-compute-0.8.0 install
The Makefile retrieves information from the operating system to determine which configuration to install. As shown below, the Makefile first determines the operating system, then passes the target to the configuration specific target.
UNAME_OS:=$(shell sh -c 'uname -s 2>/dev/null')
ifeq ($(UNAME_OS),Darwin)
TARGET_CONFIG := fnal-asic-config-macos-client
else ifeq ($(UNAME_OS),Linux)
TARGET_CONFIG := fnal-asic-config-linux-server
else
$(error Unsupported operating system, $(UNAME_OS))
endif
SRCDIR_ROOT = $(TARGET_CONFIG)
The macOS client configuration provides the following user configuration files:
~/.kerberos/krb5.conf
- FNAL Kerberos Configuration for MacOS~/.kerberos/krbtools-keytab
- Helper script to generate keytab file needed for passwordless authentication.~/.ssh/config
- FNAL SSH client configurations.~/.zshrc
- Base zsh run command file.
The environment variables provided below are also supported. These variables can be uniquely set
for each user by adding to the override file ~/.zshrc_local
.
KRB5_PRINCIPAL
- Overrides the default kerberos principal if defined.
The MacOS client configuration also installs vnctools
to help manage VNC connections.
The Linux server configuration provides the following user configuration files:
~/.local/bin/filename-search-and-replace
- Bash script for renaming files using search and replace.~/.local/bin/isntall-pyenv
- Bash scrip to help install pyenv.~/.ssh/config
- FNAL SSH server configurations.~/.bashrc
- Base bash run command file.~/.bash_profile
- Base profile file.
Run make
help to list the supported make targets.
$ make help
Available targets:
check Performs a mock installation and uninstallation.
clean Delete all files created by make.
help Provides this help message
install Install the configuration for the current OS
test Performs a mock installation and uninstallation.
uninstall Uninstalls the configuration for the current OS