mirror of
https://github.com/ryan4yin/nix-config.git
synced 2026-04-23 17:28:33 +02:00
feat: add riscv64 cluster - rolling girls
This commit is contained in:
@@ -6,6 +6,10 @@
|
||||
2. `aquamarine`: My NixOS virtual machine with R9-5900HX(8C16T), for distributed building & testing.
|
||||
3. `kana`: Yet another NixOS vm on another physical machine with R5-5625U(6C12T).
|
||||
4. `ruby`: Another NixOS vm on another physical machine with R7-5825U(8C16T).
|
||||
3. `rolling_girls`: My RISCV64 hosts.
|
||||
1. `nozomi`: Lichee Pi 4A, TH1520(4xC910@2.0G), 8GB RAM + 32G eMMC + 64G SD Card.
|
||||
2. `yukina`: Lichee Pi 4A(Internal Test Version), TH1520(4xC910@2.0G), 8GB RAM + 8G eMMC + 128G SD Card.
|
||||
3. `chiaya`: Milk-V Mars, JH7110(4xU74@1.5 GHz), 4G RAM + No eMMC + 64G SD Card.
|
||||
|
||||
# idols - Oshi no Ko
|
||||
|
||||
|
||||
69
hosts/rolling_girls/chiaya/default.nix
Normal file
69
hosts/rolling_girls/chiaya/default.nix
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
config,
|
||||
username,
|
||||
# nixos-jh7110,
|
||||
...
|
||||
} @ args:
|
||||
#############################################################
|
||||
#
|
||||
# Chiaya - NixOS Configuration for Milk-V Mars
|
||||
#
|
||||
# WIP, not working yet.
|
||||
#
|
||||
#############################################################
|
||||
{
|
||||
imports = [
|
||||
{
|
||||
# cross-compilation this flake.
|
||||
nixpkgs.crossSystem = {
|
||||
system = "riscv64-linux";
|
||||
};
|
||||
}
|
||||
|
||||
# TODO
|
||||
|
||||
../../../modules/nixos/core-riscv64.nix
|
||||
../../../modules/nixos/user-group.nix
|
||||
];
|
||||
|
||||
users.users.root.openssh.authorizedKeys.keys = config.users.users."${username}".openssh.authorizedKeys.keys;
|
||||
|
||||
# Set static IP address / gateway / DNS servers.
|
||||
networking = {
|
||||
hostName = "chiaya"; # Define your hostname.
|
||||
wireless.enable = false;
|
||||
|
||||
# Failed to enable firewall due to the following error:
|
||||
# firewall-start[2300]: iptables: Failed to initialize nft: Protocol not supported
|
||||
firewall.enable = false;
|
||||
|
||||
defaultGateway = "192.168.5.201";
|
||||
nameservers = [
|
||||
"119.29.29.29" # DNSPod
|
||||
"223.5.5.5" # AliDNS
|
||||
];
|
||||
|
||||
# Configure network proxy if necessary
|
||||
# proxy.default = "http://user:password@proxy:port/";
|
||||
# proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
|
||||
# milkv-mars RJ45 port
|
||||
interfaces.end0 = {
|
||||
useDHCP = false;
|
||||
ipv4.addresses = [
|
||||
{
|
||||
address = "192.168.5.106";
|
||||
prefixLength = 24;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "23.05"; # Did you read the comment?
|
||||
}
|
||||
80
hosts/rolling_girls/nozomi/default.nix
Normal file
80
hosts/rolling_girls/nozomi/default.nix
Normal file
@@ -0,0 +1,80 @@
|
||||
{
|
||||
config,
|
||||
username,
|
||||
nixos-licheepi4a,
|
||||
...
|
||||
} @ args:
|
||||
#############################################################
|
||||
#
|
||||
# Nozomi - NixOS configuration for Lichee Pi 4A
|
||||
#
|
||||
#############################################################
|
||||
{
|
||||
imports = [
|
||||
{
|
||||
# cross-compilation this flake.
|
||||
nixpkgs.crossSystem = {
|
||||
system = "riscv64-linux";
|
||||
};
|
||||
}
|
||||
|
||||
# import the licheepi4a module, which contains the configuration for bootloader/kernel/firmware
|
||||
(nixos-licheepi4a + "/modules/licheepi4a.nix")
|
||||
# import the sd-image module, which contains the fileSystems & kernel parameters for booting from sd card.
|
||||
(nixos-licheepi4a + "/modules/sd-image/sd-image-lp4a.nix")
|
||||
|
||||
../../../modules/nixos/core-riscv64.nix
|
||||
../../../modules/nixos/user-group.nix
|
||||
];
|
||||
|
||||
users.users.root.openssh.authorizedKeys.keys = config.users.users."${username}".openssh.authorizedKeys.keys;
|
||||
|
||||
# Set static IP address / gateway / DNS servers.
|
||||
networking = {
|
||||
hostName = "nozomi"; # Define your hostname.
|
||||
wireless.enable = false;
|
||||
|
||||
# Failed to enable firewall due to the following error:
|
||||
# firewall-start[2300]: iptables: Failed to initialize nft: Protocol not supported
|
||||
firewall.enable = false;
|
||||
|
||||
defaultGateway = "192.168.5.201";
|
||||
nameservers = [
|
||||
"119.29.29.29" # DNSPod
|
||||
"223.5.5.5" # AliDNS
|
||||
];
|
||||
|
||||
# Configure network proxy if necessary
|
||||
# proxy.default = "http://user:password@proxy:port/";
|
||||
# proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
|
||||
# LPI4A's first ethernet interface
|
||||
interfaces.end0 = {
|
||||
useDHCP = false;
|
||||
ipv4.addresses = [
|
||||
{
|
||||
address = "192.168.5.104";
|
||||
prefixLength = 24;
|
||||
}
|
||||
];
|
||||
};
|
||||
# LPI4A's second ethernet interface
|
||||
# interfaces.end1 = {
|
||||
# useDHCP = false;
|
||||
# ipv4.addresses = [
|
||||
# {
|
||||
# address = "192.168.xx.xx";
|
||||
# prefixLength = 24;
|
||||
# }
|
||||
# ];
|
||||
# };
|
||||
};
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "23.05"; # Did you read the comment?
|
||||
}
|
||||
80
hosts/rolling_girls/yukina/default.nix
Normal file
80
hosts/rolling_girls/yukina/default.nix
Normal file
@@ -0,0 +1,80 @@
|
||||
{
|
||||
config,
|
||||
username,
|
||||
nixos-licheepi4a,
|
||||
...
|
||||
} @ args:
|
||||
#############################################################
|
||||
#
|
||||
# Yukina - NixOS configuration for Lichee Pi 4A
|
||||
#
|
||||
#############################################################
|
||||
{
|
||||
imports = [
|
||||
{
|
||||
# cross-compilation this flake.
|
||||
nixpkgs.crossSystem = {
|
||||
system = "riscv64-linux";
|
||||
};
|
||||
}
|
||||
|
||||
# import the licheepi4a module, which contains the configuration for bootloader/kernel/firmware
|
||||
(nixos-licheepi4a + "/modules/licheepi4a.nix")
|
||||
# import the sd-image module, which contains the fileSystems & kernel parameters for booting from sd card.
|
||||
(nixos-licheepi4a + "/modules/sd-image/sd-image-lp4a.nix")
|
||||
|
||||
../../../modules/nixos/core-riscv64.nix
|
||||
../../../modules/nixos/user-group.nix
|
||||
];
|
||||
|
||||
users.users.root.openssh.authorizedKeys.keys = config.users.users."${username}".openssh.authorizedKeys.keys;
|
||||
|
||||
# Set static IP address / gateway / DNS servers.
|
||||
networking = {
|
||||
hostName = "yukina"; # Define your hostname.
|
||||
wireless.enable = false;
|
||||
|
||||
# Failed to enable firewall due to the following error:
|
||||
# firewall-start[2300]: iptables: Failed to initialize nft: Protocol not supported
|
||||
firewall.enable = false;
|
||||
|
||||
defaultGateway = "192.168.5.201";
|
||||
nameservers = [
|
||||
"119.29.29.29" # DNSPod
|
||||
"223.5.5.5" # AliDNS
|
||||
];
|
||||
|
||||
# Configure network proxy if necessary
|
||||
# proxy.default = "http://user:password@proxy:port/";
|
||||
# proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
|
||||
# LPI4A's first ethernet interface
|
||||
interfaces.end0 = {
|
||||
useDHCP = false;
|
||||
ipv4.addresses = [
|
||||
{
|
||||
address = "192.168.5.105";
|
||||
prefixLength = 24;
|
||||
}
|
||||
];
|
||||
};
|
||||
# LPI4A's second ethernet interface
|
||||
# interfaces.end1 = {
|
||||
# useDHCP = false;
|
||||
# ipv4.addresses = [
|
||||
# {
|
||||
# address = "192.168.xx.xx";
|
||||
# prefixLength = 24;
|
||||
# }
|
||||
# ];
|
||||
# };
|
||||
};
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "23.05"; # Did you read the comment?
|
||||
}
|
||||
Reference in New Issue
Block a user