Compare commits

...

6 commits

Author SHA1 Message Date
sinavir
b85d86c685 update liminix 2024-03-15 13:15:41 +01:00
sinavir
0698cbb25c update liminix 2024-02-22 22:16:09 +01:00
sinavir
3251fc2698 router: update liminix, refactor 2024-01-26 19:43:04 +01:00
sinavir
ccd7e80da7 liminix: add fancy ping 2024-01-24 13:33:30 +01:00
sinavir
886b9e7c0c router: add all my hacks to make ubifs work 2024-01-23 13:36:46 +01:00
sinavir
aa55031cfd router: use liminix submodule 2024-01-23 13:36:46 +01:00
7 changed files with 22 additions and 50 deletions

3
.gitmodules vendored Normal file
View file

@ -0,0 +1,3 @@
[submodule "machines/router/liminix"]
path = machines/router/liminix
url = https://git.dgnum.eu/HackENS/liminix-fork.git

1
machines/router/.gitignore vendored Normal file
View file

@ -0,0 +1 @@
belkin-boot*.log

View file

@ -7,7 +7,6 @@
{ config, pkgs, lib, modulesPath, ... } :
let
liminix = (import ./npins).liminix;
inherit (pkgs.liminix.services) bundle oneshot longrun;
inherit (pkgs) serviceFns;
# EDIT: you can pick your preferred RFC1918 address space
@ -22,13 +21,22 @@ in rec {
ipaddr = "10.0.0.8";
};
};
hardware = {
flash = {
eraseBlockSize = 131072;
};
};
hardware.flash.eraseBlockSize = 126976;
hardware.ubi = {
# PLEASE remove this when using the real ROM. These are just tweaks to make tftpboot working
minIOSize = lib.mkForce "1";
eraseBlockSize = lib.mkForce "130944";
};
imports = [
"${liminix}/modules/network"
"${liminix}/modules/ssh"
"${liminix}/modules/outputs/ubimage.nix"
(modulesPath + "/network")
(modulesPath + "/ssh")
(modulesPath + "/outputs/ubimage.nix")
];
rootfsType = "ubifs";
hostname = "hackens-router"; # EDIT

View file

@ -3,13 +3,6 @@
, liminix-config ? ./configuration.nix
}:
let
patchedLiminix = pkgs.applyPatches {
name = "liminix-patched";
src = liminix;
patches = [
./liminix-dtbsize.patch
];
};
pkgs = import nixpkgs {};
liminix = builtins.toString ./liminix;
in
(import patchedLiminix { inherit nixpkgs liminix-config; device = import (patchedLiminix + "/devices/belkin-rt3200"); })
(import liminix { inherit nixpkgs liminix-config; device = import (liminix + "/devices/belkin-rt3200"); })

@ -0,0 +1 @@
Subproject commit 5bb68f24b539db1d9591ea320436b9dbdd2dc354

View file

@ -1,23 +0,0 @@
diff --git a/modules/outputs/tftpboot.nix b/modules/outputs/tftpboot.nix
index ad6ed63..9773042 100644
--- a/modules/outputs/tftpboot.nix
+++ b/modules/outputs/tftpboot.nix
@@ -73,8 +73,6 @@ in {
rootfsStart=${toString cfg.loadAddress}
rootfsSize=$(binsize64k ${o.rootfs} )
dtbStart=$(($rootfsStart + $rootfsSize))
- dtbSize=$(binsize ${o.dtb} )
- imageStart=$(($dtbStart + $dtbSize))
imageSize=$(binsize ${image})
ln -s ${o.manifest} manifest
@@ -102,6 +100,9 @@ in {
fdtput -p -t s dtb /reserved-memory/$node compatible phram
fdtput -p -t lx dtb /reserved-memory/$node reg $ac_prefix $(hex $rootfsStart) $sz_prefix $(hex $rootfsSize)
+ dtbSize=$(binsize ./dtb )
+ imageStart=$(($dtbStart + $dtbSize))
+
cmd="liminix ${cmdline} mtdparts=phram0:''${rootfsSize}(rootfs) phram.phram=phram0,''${rootfsStart},''${rootfsSize},${toString config.hardware.flash.eraseBlockSize} root=/dev/mtdblock0";
fdtput -t s dtb /chosen bootargs "$cmd"

View file

@ -1,21 +1,10 @@
{
"pins": {
"liminix": {
"type": "Git",
"repository": {
"type": "Git",
"url": "https://gti.telent.net/dan/liminix"
},
"branch": "main",
"revision": "83ee488e4c81124380b8bd4ff8183e632f30eb91",
"url": null,
"hash": "08mpx615kpqzvwallf91gdqv8rhc2avdgfwldka598ynydlq1wnw"
},
"nixpkgs": {
"type": "Channel",
"name": "nixpkgs-unstable",
"url": "https://releases.nixos.org/nixpkgs/nixpkgs-24.05pre572676.b06ff4bf8f4a/nixexprs.tar.xz",
"hash": "1alh0waf9hjhxqnxwkmc6g1fq9h1m498g269yncdnhhkiglg73kx"
"url": "https://releases.nixos.org/nixpkgs/nixpkgs-24.05pre586231.f33dd27a47eb/nixexprs.tar.xz",
"hash": "15i504pd3y9r0c2fwyjwsc1j8055h20w0j2sj4ij5igvin7v3k9l"
}
},
"version": 3