nix-powerpc/flake.nix
Chloe Bethel 7036f5db2a etc
2025-02-10 14:51:16 +00:00

77 lines
2.1 KiB
Nix

# based on https://artemis.sh/2023/06/06/cross-compile-nixos-for-great-good.html
{
description = "system configuration for ppc";
inputs = {
nixpkgs.url = "github:stary2001/nixpkgs/stary/ppc32";
common.url = "github:stary2001/nix-common";
};
outputs =
{
self,
common,
nixpkgs,
}:
rec {
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt-rfc-style;
formatter.aarch64-linux = nixpkgs.legacyPackages.aarch64-linux.nixfmt-rfc-style;
nixosConfigurations.lancom = nixpkgs.legacyPackages.x86_64-linux.pkgsCross.powerpc.nixos {
imports = [
(import ./minimal.nix)
(import ./ssh-keys.nix)
(import ./locale.nix)
common.nixosModules.wait-online-any
(import ./ppc.nix)
(import ./nginx.nix)
(import ./config.nix)
(import ./disable-systemd-security.nix)
(
{ pkgs, lib, ... }:
{
networking.hostName = "lancom";
boot.kernelPackages = pkgs.linuxPackagesFor (pkgs.callPackage ./lancom-kernel.nix { });
system.boot.loader.kernelFile = "uImage";
fileSystems."/" = {
device = "/dev/nvme0n1p2";
fsType = "ext4";
};
}
)
];
};
nixosConfigurations.wiiu = nixpkgs.legacyPackages.x86_64-linux.pkgsCross.powerpc.nixos {
imports = [
(import ./minimal.nix)
(import ./ssh-keys.nix)
common.nixosModules.wait-online-any
(import ./ppc.nix)
(import ./nginx.nix)
(import ./config.nix)
(import ./disable-systemd-security.nix)
(
{ pkgs, lib, ... }:
{
networking.hostName = "nixos";
boot.kernelPackages = pkgs.linuxPackagesFor (pkgs.callPackage ./wiiu-kernel-6.6.nix { });
system.boot.loader.kernelFile = "dtbImage.wiiu";
fileSystems."/" = {
device = "/dev/sda1";
fsType = "ext4";
};
}
)
];
};
};
}