Build images

This commit is contained in:
asonix 2023-02-18 23:04:54 -06:00
commit 16595f9cdd
3 changed files with 114 additions and 0 deletions

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
/result

48
flake.lock Normal file
View file

@ -0,0 +1,48 @@
{
"nodes": {
"nixos-aarch64-images": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1676782443,
"narHash": "sha256-z0EUeHX/f0z6iO6R+R3JX/QdbYzNaM655Zz6chmz4G4=",
"ref": "refs/heads/main",
"rev": "6f45acca5d7d9aa7a1176168b3ed3c6e309172c5",
"revCount": 68,
"type": "git",
"url": "https://git.asonix.dog/asonix/nixos-aarch64-images"
},
"original": {
"type": "git",
"url": "https://git.asonix.dog/asonix/nixos-aarch64-images"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1676721149,
"narHash": "sha256-mN2EpTGxxVNnFZLoLWRwh6f7UWhXy4qE+wO2CZyrXps=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "5f4e07deb7c44f27d498f8df9c5f34750acf52d2",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"nixos-aarch64-images": "nixos-aarch64-images",
"nixpkgs": "nixpkgs"
}
}
},
"root": "root",
"version": 7
}

65
flake.nix Normal file
View file

@ -0,0 +1,65 @@
{
description = "A very basic flake";
# pin this to unstable
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixos-aarch64-images = {
url = "git+https://git.asonix.dog/asonix/nixos-aarch64-images";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, nixos-aarch64-images }:
let
asonix-key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD3+mNUlokSKZQNXJAuGm2LCHelKuElWLJArzIYZQYEPbrFaE+J8VtfNbMMD1qVI21ksfcqvFQW4aiP4+BFDxTOGW0uBmUHWKxkyyU39y2yhnsa+svwwIooc+Iwkxw0atzSMEBb94UaZlq9cKMSnG9RGeRFqfYnW2s49wpU79wk6zEFUuOHCMKn4R7zqkPac7IyjxZeKlspY3fOasNH4zyrkbhEOlvrwEOdRNTRNCWWzDcinIVZjfmErHlSynshx9yLnCGkLBxHSxgI2TVyR3RlQ3aGbHtB3QN5X7/T/dwXJFJ11P1Q2bC3XP3hHCogDqXcPvDTFSQEM/mZuFcKNbsn asonix@asonix-tower";
trusted-public-keys = "firestar:spmMw07mO3cxflq5g2GazhE7ddgEoz6QLwaiCnyz/fg=";
userModule = {
users.users.asonix = {
isNormalUser = true;
description = "Tavi";
extraGroups = [ "wheel" ];
openssh.authorizedKeys.keys = [ asonix-key ];
initialPassword = "changeme";
};
};
baseModule = ({ lib, ... }: {
# Nix config
nix.extraOptions = ''
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= ${trusted-public-keys}
'';
services.openssh = {
enable = true;
settings.PermitRootLogin = lib.mkForce "prohibit-password";
};
});
buildConfig = {
kernel = nixos-aarch64-images.packages.x86_64-linux.kernels.testing-rockchip;
modules = [
baseModule
userModule
];
};
in
with nixos-aarch64-images.packages.x86_64-linux;
{
packages.x86_64-linux = {
modules = buildModules buildConfig;
quartz64a = buildQuartz64A buildConfig;
quartz64b = buildQuartz64B buildConfig;
soquartz-blade = buildSoQuartzBlade buildConfig;
soquartz-cm4 = buildSoQuartzCM4 buildConfig;
soquartz-model-a = buildSoQuartzModelA buildConfig;
rock64 = buildRock64 buildConfig;
rockPro64 = buildRockPro64 buildConfig;
rockPro64V2 = buildRockPro64V2 buildConfig;
rock-pc-rk3399 = buildRockPCRk3399 buildConfig;
pinebook-pro = buildPinebookPro buildConfig;
};
};
}