7 Commits

Author SHA1 Message Date
8dab0d82ba Update fox documentation in website
All checks were successful
CI / build:cross (pull_request) Successful in 8s
CI / build:all (pull_request) Successful in 16s
CI / build:all (push) Successful in 3s
CI / build:cross (push) Successful in 8s
Reviewed-by: Aleix Boné <abonerib@bsc.es>
2026-02-04 15:08:13 +01:00
958dcd4774 Add emonteir user to apex and fox
Reviewed-by: Aleix Boné <abonerib@bsc.es>
2026-02-04 15:08:08 +01:00
7a6e4232de Add nom and nixfmt-tree to system packages
All checks were successful
CI / build:all (pull_request) Successful in 55m38s
CI / build:all (push) Successful in 27m13s
CI / build:cross (push) Successful in 55m5s
CI / build:cross (pull_request) Successful in 8s
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2026-02-03 15:17:30 +01:00
3b56e905e5 Add standalone home-manager to system packages
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2026-02-03 15:17:29 +01:00
2d41309466 Format and sort default package list
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2026-02-03 15:17:24 +01:00
deb0cd1488 Allow USB access to TC1 from Gitlab Runner
All checks were successful
CI / build:cross (pull_request) Successful in 8s
CI / build:all (pull_request) Successful in 16s
CI / build:all (push) Successful in 4s
CI / build:cross (push) Successful in 8s
Reviewed-by: Aleix Boné <abonerib@bsc.es>
2026-01-23 17:56:16 +01:00
cd1f502ecc Allow user USB access to FTDI device in tent
Reviewed-by: Aleix Boné <abonerib@bsc.es>
2026-01-23 17:56:11 +01:00
12 changed files with 86 additions and 58 deletions

View File

@@ -4,6 +4,13 @@
# Use the GRUB 2 boot loader.
boot.loader.grub.enable = true;
# Enable GRUB2 serial console
boot.loader.grub.extraConfig = ''
serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1
terminal_input --append serial
terminal_output --append serial
'';
boot.kernel.sysctl = {
"kernel.perf_event_paranoid" = lib.mkDefault "-1";

View File

@@ -2,11 +2,36 @@
{
environment.systemPackages = with pkgs; [
vim wget git htop tmux pciutils tcpdump ripgrep nix-index nixos-option
nix-diff ipmitool freeipmi ethtool lm_sensors cmake gnumake file tree
ncdu perf ldns pv
cmake
ethtool
file
freeipmi
git
gnumake
home-manager
htop
ipmitool
ldns
lm_sensors
ncdu
nix-diff
nix-index
nix-output-monitor
nixfmt-tree
nixos-option
pciutils
perf
pv
ripgrep
tcpdump
tmux
tree
vim
wget
# From jungle overlay
osumb nixgen
nixgen
osumb
];
programs.direnv.enable = true;

View File

@@ -194,6 +194,19 @@
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOlRX7ZCnqtUJYCxKgWmgSrFCYuA2LHY96rVwqxXPl86 aaguirre@BSC-8488184117"
];
};
emonteir = {
uid = 9656;
isNormalUser = true;
home = "/home/Computational/emonteir";
description = "Erwin Royson Monteiro";
group = "Computational";
hosts = [ "apex" "fox" ];
hashedPassword = "$6$0mU88zd3ZuK5NiJQ$DFWL5RMLH6esQM5UyhBCiiNryw4lDDmvJp7Usz3tmevnsiSJr6u0RsUKAnR/K8GRBFrV1.GocrgNjKjik5GY//";
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOKZKot/Y3F5Wq9pQIXlCbyvQuVVeWMCsAC96Nd+LTcG erwin@Oreo"
];
};
};
groups = {

View File

@@ -11,11 +11,4 @@
"console=tty1"
"console=ttyS0,115200"
];
# Enable GRUB2 serial console
boot.loader.grub.extraConfig = ''
serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1
terminal_input --append serial
terminal_output --append serial
'';
}

View File

@@ -3,13 +3,13 @@
{
imports = [
../common/base.nix
../common/xeon/console.nix
../module/amd-uprof.nix
../module/emulation.nix
../module/nvidia.nix
../module/slurm-client.nix
../module/hut-substituter.nix
./wireguard.nix
./serial-console.nix
];
# Don't turn off on August as UPC has different dates.
@@ -19,9 +19,6 @@
# Select the this using the ID to avoid mismatches
boot.loader.grub.device = "/dev/disk/by-id/wwn-0x500a07514b0c1103";
# Increase time so we can boot other entries
boot.loader.timeout = 60;
# No swap, there is plenty of RAM
swapDevices = lib.mkForce [];
@@ -34,10 +31,7 @@
# Use performance for benchmarks
powerManagement.cpuFreqGovernor = "performance";
# Enable amd-uprof in >= 6.15 kernels only
services.amd-uprof.enable =
let ver = config.boot.kernelPackages.kernel.version;
in (lib.strings.compareVersions ver "6.15") >= 0;
services.amd-uprof.enable = true;
# Disable NUMA balancing
boot.kernel.sysctl."kernel.numa_balancing" = 0;
@@ -48,11 +42,6 @@
# Disable NMI watchdog to save one hw counter (for AMD uProf)
boot.kernel.sysctl."kernel.nmi_watchdog" = 0;
specialisation.oldKernel.configuration = {
system.nixos.tags = [ "old-kernel" ];
boot.kernelPackages = lib.mkForce pkgs.linuxPackages_6_12;
};
services.openssh.settings.X11Forwarding = true;
services.fail2ban.enable = true;

View File

@@ -1,21 +0,0 @@
{
# Restart the serial console
systemd.services."serial-getty@ttyS1" = {
enable = true;
wantedBy = [ "getty.target" ];
serviceConfig.Restart = "always";
};
# Enable serial console
boot.kernelParams = [
"console=tty1"
"console=ttyS1,115200"
];
# Enable GRUB2 serial console
boot.loader.grub.extraConfig = ''
serial --unit=1 --speed=115200 --word=8 --parity=no --stop=1
terminal_input --append serial
terminal_output --append serial
'';
}

View File

@@ -4,8 +4,8 @@ let
name = "jungle-web";
src = pkgs.fetchgit {
url = "https://jungle.bsc.es/git/rarias/jungle-website.git";
rev = "52abaf4d71652a9ef77a0b098db14ca33bffff4c";
hash = "sha256-/ul9GazbOrOkmlvSgDz/+2W+V+ir5725Y7mVLc3rb0M=";
rev = "5f18335d14126d2fef134c0cd441771436f7dfa1";
hash = "sha256-s9VBF91sQ7hg9+lrwNFPYgoXTTyXaQcAulCiGJgWERo=";
};
buildInputs = [ pkgs.hugo ];
buildPhase = ''

27
m/module/tc1-board.nix Normal file
View File

@@ -0,0 +1,27 @@
{ lib, pkgs, ... }:
{
# Allow user access to FTDI USB device
services.udev.packages = lib.singleton (pkgs.writeTextFile {
# Needs to be < 73
name = "60-ftdi-tc1.rules";
text = ''
# Bus 003 Device 003: ID 0403:6011 Future Technology Devices International, Ltd FT4232H Quad HS USB-UART/FIFO IC
# Use := to make sure it doesn't get changed later
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6011", MODE:="0666"
'';
destination = "/etc/udev/rules.d/60-ftdi-tc1.rules";
});
# Allow access to USB for docker in GitLab runner
services.gitlab-runner = {
services.gitlab-bsc-docker = {
registrationFlags = [
# We need raw access to the USB port to reboot the board
"--docker-devices /dev/bus/usb/003/003"
# And TTY access for the serial port
"--docker-devices /dev/ttyUSB2"
];
};
};
}

View File

@@ -4,7 +4,6 @@
imports = [
../common/base.nix
../common/ssf/hosts.nix
../common/xeon/console.nix
../module/emulation.nix
../module/debuginfod.nix
../module/nvidia.nix

View File

@@ -16,6 +16,7 @@
../module/p.nix
../module/vpn-dac.nix
../module/hut-substituter.nix
../module/tc1-board.nix
];
# Select the this using the ID to avoid mismatches

View File

@@ -4,8 +4,8 @@ let
name = "jungle-web";
src = pkgs.fetchgit {
url = "https://jungle.bsc.es/git/rarias/jungle-website.git";
rev = "52abaf4d71652a9ef77a0b098db14ca33bffff4c";
hash = "sha256-/ul9GazbOrOkmlvSgDz/+2W+V+ir5725Y7mVLc3rb0M=";
rev = "5f18335d14126d2fef134c0cd441771436f7dfa1";
hash = "sha256-s9VBF91sQ7hg9+lrwNFPYgoXTTyXaQcAulCiGJgWERo=";
};
buildInputs = [ pkgs.hugo ];
buildPhase = ''

View File

@@ -9,15 +9,13 @@
, nanos6
, nodes
, nosv
, mkl
, mpi
, tampi
, openblas
, ovni
, gitBranch ? "master"
, gitURL ? "ssh://git@bscpm04.bsc.es/rarias/bench6.git"
, gitCommit ? "fe30c2cfe36b535ef26a0054e010bc005e88ba04"
, useMkl ? true
, gitCommit ? "bf29a53113737c3aa74d2fe3d55f59868faea7b4"
}:
stdenv.mkDerivation rec {
@@ -44,13 +42,10 @@ stdenv.mkDerivation rec {
nosv
mpi
tampi
ovni
] ++ (if (useMkl) then [
mkl
] else [
openblas
openblas.dev
]);
ovni
];
env = {
NANOS6_HOME = nanos6;