infrastructure/hosts/thalassa/aoife/uni.nix
Vivian c253f696a9
Some checks are pending
Lint / lint (push) Waiting to run
small updates
2024-11-22 11:11:28 +01:00

88 lines
2.1 KiB
Nix

# Config options needed for various university courses, such as:
# * Wireless IoT and Local Area Networks
# * Network Security
# * Smart Phone Sensing
# * PDP
# * RTS
{ pkgs, ... }:
{
environment.systemPackages = with pkgs; [ ];
hardware.saleae-logic = {
enable = true;
package = pkgs.saleae-logic-2;
};
programs.wireshark = {
enable = true;
package = pkgs.wireshark;
};
programs.mininet.enable = true;
virtualisation = {
podman.enable = true;
# virtualbox.host = {
# enable = true;
# };
docker = {
enable = false;
storageDriver = "btrfs";
};
};
users.extraGroups.plugdev = { };
users.extraUsers.vivian.extraGroups = [
# "wireshark"
# "docker"
# "lxd"
# "vboxusers"
"plugdev"
"dialout"
];
programs.nix-ld = {
enable = true;
package = pkgs.nix-ld-rs;
libraries = [
];
};
# Vivado udev
services.udev.packages = [
pkgs.platformio-core
pkgs.openocd
(pkgs.writeTextFile {
name = "xilinx-dilligent-usb-udev";
destination = "/etc/udev/rules.d/52-xilinx-digilent-usb.rules";
text = ''
ATTR{idVendor}=="1443", MODE:="666"
ACTION=="add", ATTR{idVendor}=="0403", ATTR{manufacturer}=="Digilent", MODE:="666"
'';
})
(pkgs.writeTextFile {
name = "xilinx-pcusb-udev";
destination = "/etc/udev/rules.d/52-xilinx-pcusb.rules";
text = ''
ATTR{idVendor}=="03fd", ATTR{idProduct}=="0008", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="0007", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="0009", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="000d", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="000f", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="0013", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="0015", MODE="666"
'';
})
(pkgs.writeTextFile {
name = "xilinx-ftdi-usb-udev";
destination = "/etc/udev/rules.d/52-xilinx-ftdi-usb.rules";
text = ''
ACTION=="add", ATTR{idVendor}=="0403", ATTR{manufacturer}=="Xilinx", MODE:="666"
'';
})
];
}