<samueldr> not yet
<samueldr> but I wanted to do something similar
<samueldr> the ROC-RK3399-PC has an issue with TYPE_C, deleting type-c.ko may be enough not to rebuild everything
<samueldr> (I set it to =n)
<bennofs> in that case, wouldn't blacklisting be enough?
<samueldr> turns out it's not enough
<samueldr> I think it's something about blacklisting blacklisting the module from being loaded by the hardware prober
<samueldr> I figure *something else* is loading the module
<samueldr> it may as well fail in a horrible firey ball by deleting type-c.ko :)
<bennofs> you could also remove it from the device tree maybe?
<samueldr> I don't know, maybe
<samueldr> still, deleting the .ko is trivial to test
<samueldr> simply didn't get to it, at the time I didn't know if other issues existed in the kernel
orivej has quit [Ping timeout: 272 seconds]
wavirc22 has quit [Ping timeout: 260 seconds]
mDuff has joined #nixos-aarch64
lovesegfault has quit [Quit: WeeChat 2.7]
h0m1 has quit [Ping timeout: 272 seconds]
h0m1 has joined #nixos-aarch64
orivej has joined #nixos-aarch64
<clever> samueldr: i now have usb and ethernet!!
<samueldr> nice!
<samueldr> on lk or linux, or only firmware?
<mDuff> Hmm. I don't see a way to add new dtbs or other content to the sd_image assembled by raspberrypi-builder.sh
<mDuff> would a patch that looks for an optional environment variable, and plumbs that through from the nix module, be accepted?
rajivr___ has joined #nixos-aarch64
<samueldr> raspberrypi-builder.sh?
<samueldr> dtbs, we ship those from linux
<samueldr> it's a mainline generic image
<samueldr> though if a systemm wants to customize that, hardware..deviceTree.base can be used
<mDuff> specific goal: I'm trying to get g_ether to work; to do that following the approach used for Raspian &c., I'd add dtoverlay=dwc2 to config.txt, and put overlays/dwc2.dtb on the same filesystem.
* mDuff pokes at config.hardware.deviceTree to try to make sense of how it's supposed to be used.
<mDuff> ...okay, if the only thing I need to do is assign `config.hardware.deviceTree.overlays`, that is indeed pretty simple.
magnetophon has joined #nixos-aarch64
<magnetophon> I read https://mobile.nixos.org/ and watched https://hooktube.com/watch?v=229PpjZZouw, hoping tho get answer to the question: how much work is there to be done before calling and mobile data work?
<magnetophon> Also: is it likely to be worked on or even finished as part of the grant?
mDuff has quit [Ping timeout: 258 seconds]
<clever> samueldr: linux, with the non-lk firmware
<clever> samueldr: i'm now preparing to netboot nixos with iscsi rootfs
<samueldr> neat
<clever> samueldr: i was doing everything exactly as i should have
<samueldr> magnetophon: not sure yet, and part of the grant
<clever> samueldr: but, the pre-existing sdcard setup code, just overwrites the gpio config, for the entire gpio40-59 bank
<samueldr> aw
<clever> samueldr: which undid my fix on gpio42, breaking the ethernet/usb
<samueldr> how rude!
<clever> i fixed the sdcard stuff, and now network works almost perfectly
<clever> the mac addr isnt set correctly, so its totally randomized, on each boot
<magnetophon> samueldr: Thanks! Followup: is it realistic to hope you might finish working calling+data as partof the grant?
<samueldr> hopefully, the way that particular grant works is I'm paid on delivery
<samueldr> I did some preliminary search and it seemed all possible
<clever> samueldr: hmmm, do you remember off the top of your head, how to make nixos cross-compile from configuration.nix?
<samueldr> check in crossy-system, nixpkgs.crossSystem IIRC
<samueldr> cross-system*
<clever> > pkgs.lib.systems.examples.raspberryPi
<clever> { config = "armv6l-unknown-linux-gnueabihf"; platform = { ... }; }
<{^_^}> { config = "armv6l-unknown-linux-gnueabihf"; platform = <CODE>; }
<clever> hmmm, aiming for arm7 not 6...
<clever> armv7l-hf-multiplatform will probably do...
<samueldr> > pkgsCross.armv7l-hf-multiplatform
<{^_^}> { AAAAAASomeThingsFailToEvaluate = <CODE>; AMB-plugins = <CODE>; AgdaSheaves = <CODE>; AgdaStdlib = <CODE>; CoinMP = <CODE>; DisnixWebService = <CODE>; EBTKS = <CODE>; EmptyEpsilon = <CODE>; FIL-plugi...
<samueldr> oops!
<clever> 4 nixpkgs.crossSystem = lib.systems.examples.armv7l-hf-multiplatform;
<clever> error: attribute 'system' missing, at /nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/misc/nixpkgs.nix:231:18
<clever> 230 if config.nixpkgs.crossSystem != null
<clever> 231 then config.nixpkgs.crossSystem.system
<samueldr> nixpkgs.crossSystem.system = "armv7l-linux"; # clever
<clever> crossSystem.system then?
<clever> ah, thats much simpler
<samueldr> when I said "check in cross-system" I meant my repo, where I have an example of both three main arms
<clever> ah
<samueldr> also there's configuration.nix with the required workarounds if you're building a nixos "usual" system
<samueldr> and of note, master/unstable is currently broken for cross
<clever> i'm using a pin from when i added vc4 cross-compile support
<samueldr> then all bets are off
<samueldr> (you will likely need some of the workarounds still)
<clever> yeah
<clever> i'll reference it as things fail
<clever> [0/731 built, 4/384/591 copied (1092.9/2548.6 MiB), 767.7/1474.4 MiB DL] fetching openldap-2.4.48.tgz from http://nas.localnet:8081
<clever> might take a while...
<thefloweringash> What do the aarch64 builders set their `cores` value to? I'm looking at that chromium build which is 10 hours in and up to 9796 of 36546 files. The builder machine on grafana is taking ~6% cpu, which is about two cores if you assume a 32 core machine. Chromium halves its core allocation, so I'm guessing `cores = 4`?
<thefloweringash> I'm guessing it's not going to make the 2 day cutoff
<thefloweringash> oh, it's actually running two jobs. it seems like chromium is then taking ~3%, or 1 core
magnetophon has quit [Remote host closed the connection]
<samueldr> thefloweringash: I think it's something about how even if it's big-parallel it can be scheduled to a non big-parallel machine
<samueldr> not sure
<thefloweringash> I didn't realize there were non big-parallel aarch64 machines. is there a repo I pick through instead of asking dumb questions?
<samueldr> I might be wrong, but I assumed big-parallel was "this machine builds big parallelized stuff"
<samueldr> the same 48 core machine could be 2 jobs, tagged big-parallel, or 24 jobs, not tagged
<samueldr> I don't know if the arm builders are documented
* samueldr checks
<samueldr> or even any packet machine?
<thefloweringash> there's this repo: https://github.com/grahamc/packet-nix-builder
<samueldr> I don't see the in-use configuration
<samueldr> >> /run/keys/hydra-packet-import.json
<samueldr> part of the secrets I figure
<thefloweringash> though does hydra use that value?
<thefloweringash> I guess it must since the machines file doesn't include a cores option
<samueldr> I don't know
<thefloweringash> think I might open a PR to make the core restriction in chromium only apply to x86_64
<thefloweringash> opened #78347
<{^_^}> https://github.com/NixOS/nixpkgs/pull/78347 (by thefloweringash, 22 seconds ago, open): chromium: increase parallelism on aarch64
orivej has quit [Ping timeout: 258 seconds]
<thefloweringash> if I have a moment of weakness, is there a recommended device for running mobile nixos?
zarel has quit [Ping timeout: 240 seconds]
misuzu has quit [*.net *.split]
davidtwco has quit [*.net *.split]
chessai has quit [*.net *.split]
alienpirate5 has quit [*.net *.split]
balsoft has quit [*.net *.split]
Ox4A6F has quit [*.net *.split]
Ashy has quit [*.net *.split]
hexa- has quit [*.net *.split]
fpletz has quit [*.net *.split]
Dezgeg has quit [*.net *.split]
bennofs[m] has quit [*.net *.split]
thefloweringash has quit [*.net *.split]
contrun[m] has quit [*.net *.split]
Ultrasauce has quit [*.net *.split]
simpson has quit [*.net *.split]
flokli has quit [*.net *.split]
veleiro has quit [Ping timeout: 252 seconds]
dtz has quit [Ping timeout: 252 seconds]
worldofpeace has quit [Ping timeout: 252 seconds]
CrystalGamma[m] has quit [Ping timeout: 252 seconds]
cornu has quit [Ping timeout: 252 seconds]
NickHu has quit [Ping timeout: 250 seconds]
Smith[m] has quit [Ping timeout: 245 seconds]
thequux[m] has quit [Ping timeout: 245 seconds]
danielrf[m] has quit [Ping timeout: 245 seconds]
colemickens has quit [Ping timeout: 246 seconds]
Ericson2314 has quit [Ping timeout: 260 seconds]
Dezgeg has joined #nixos-aarch64
simpson has joined #nixos-aarch64
fpletz has joined #nixos-aarch64
flokli has joined #nixos-aarch64
hexa- has joined #nixos-aarch64
Ultrasauce has joined #nixos-aarch64
hexa- has quit [Max SendQ exceeded]
hexa- has joined #nixos-aarch64
zupo has joined #nixos-aarch64
zarel has joined #nixos-aarch64
zupo has quit [Ping timeout: 260 seconds]
zupo has joined #nixos-aarch64
zupo has quit [Client Quit]
Ashy has joined #nixos-aarch64
chessai has joined #nixos-aarch64
davidtwco has joined #nixos-aarch64
misuzu has joined #nixos-aarch64
t184256 has left #nixos-aarch64 ["Disconnected: Replaced by new connection"]
t184256 has joined #nixos-aarch64
wavirc22 has joined #nixos-aarch64
Acou_Bass has quit [Ping timeout: 268 seconds]
Acou_Bass has joined #nixos-aarch64
colemickens has joined #nixos-aarch64
NickHu has joined #nixos-aarch64
CrystalGamma[m] has joined #nixos-aarch64
Ericson2314 has joined #nixos-aarch64
thefloweringash has joined #nixos-aarch64
danielrf[m] has joined #nixos-aarch64
alienpirate5 has joined #nixos-aarch64
balsoft has joined #nixos-aarch64
bennofs[m] has joined #nixos-aarch64
worldofpeace has joined #nixos-aarch64
thequux[m] has joined #nixos-aarch64
cornu has joined #nixos-aarch64
Smith[m] has joined #nixos-aarch64
Irenes[m] has joined #nixos-aarch64
marijan[m] has joined #nixos-aarch64
dtz has joined #nixos-aarch64
Ox4A6F has joined #nixos-aarch64
contrun[m] has joined #nixos-aarch64
orivej has joined #nixos-aarch64
zupo has joined #nixos-aarch64
orivej has quit [Ping timeout: 240 seconds]
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ryantrinkle has joined #nixos-aarch64
orivej has joined #nixos-aarch64
zupo has joined #nixos-aarch64
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<clever> /nix/store/cn6wrpkr257i51jnhwx2c5qaa8n9n36f-stdenv-linux/setup: line 1282: /nix/store/y7zi1qpap5qy367p8m92w201hsyw3f7w-fontconfig-2.10.2-armv7l-unknown-linux-gnueabihf-bin/bin/fc-cache: cannot execute binary file: Exec format error
<thefloweringash> what's the context for that?
<clever> cross-compiline nixos to arm
<clever> its trying to run an arm binary on x86
WilliButz has quit [Quit: bye]
<clever> builder for '/nix/store/7y6qj9cscr3v80jsd2rwsxaj3pgd6vny-fc-cache.drv' failed with exit code 126; last 1 log lines:
WilliButz has joined #nixos-aarch64
<thefloweringash> I figured that much, wondering which package you're trying to build and if this is a new thing
<thefloweringash> I did most of my cross compiling on my aarch64 box, so I'm wondering if I just don't notice things like that
<clever> its likely a cross bug, not a native bug
<clever> /home/clever/nixpkgs/nixos/modules/config/fonts/fontconfig.nix: pkgs.writeText "fc-00-nixos-cache.conf" ''
<clever> this depends on the above
<thefloweringash> right, but aarch64->armv7l cross can still run the host system binaries on the build system, unless you can disable that somehow
<clever> 477 (mkIf cfg.enable {
<clever> 481 (mkIf (cfg.enable && !cfg.penultimate.enable) {
<clever> thefloweringash: ah yeah, and only some aarch64 machines can run arm32
<clever> 22 cfg = config.fonts.fontconfig;
<clever> 16 fonts.fontconfig.enable = false;
<clever> that should shoo it away!
<thefloweringash> looks like #51563
<{^_^}> https://github.com/NixOS/nixpkgs/issues/51563 (by eburimu, 1 year ago, open): makeFontsCache & makeFontsConf don't cross compile
<thefloweringash> so uh, about that armv7l vm project? :-)
<thefloweringash> more seriously, I'm still interested in the project but I don't know how to keep tabs on progress. if there's a way I can help let me know.
<DigitalKiwi> is there a way on nixos raspberry pi to tell what version of raspberry pi there is
<DigitalKiwi> it is*
<sphalerite> DigitalKiwi: probably look at the device tree somewhere in /sys/firmware
<samueldr> thefloweringash: your previous aarch64 android phone, if it meets some requirements
<samueldr> what I mean is the best device is one you already have
<samueldr> THEN, not sure exactly
<DigitalKiwi> found it
<samueldr> the most useful ones for development are those with serial access
<DigitalKiwi> ty!
<samueldr> some sony ones have the UART documented by sony, on their site, but through test points, meaning you need to open the phone
<thefloweringash> I'm not an android user, I'd be looking at getting something just for playing with the mobile stuff
<samueldr> google's pixel line (and nexus) have serial access
<DigitalKiwi> looks in a different spot (that doesn't exist)
<samueldr> then, other devices are a big ball of unknown on that subject
<samueldr> it's extremely device and OEM dependent
<samueldr> (for serial access)
<samueldr> now, any aarch64 device in this list will start you with a leg up: the kernel port is done and the device is booting https://mobile.nixos.org/devices/index.html
<samueldr> but where's the fun in that!
<DigitalKiwi> sphalerite++
<{^_^}> sphalerite's karma got increased to 78
<samueldr> if you plan to look into a device which doesn't have a port yet, and is not a "GNU/Linux first" type of device
<samueldr> the main things to look out for: (1) bootloader unlock possible (2) kernel sources
<samueldr> and helpful things to look out for (3) TWRP with source (4) existing ports
<samueldr> ports of other android-based systems*
orivej has quit [Ping timeout: 268 seconds]
orivej has joined #nixos-aarch64
<clever> samueldr: perl is failing to cross-compile, is that a known issue? fixed at some point?
<gchristensen> I don't think perl has ever really cross compiled?
<samueldr> it does, otherwise stuff wouldn't work?
<gchristensen> hrm
<clever> make: *** No rule to make target 'install'. Stop.
<clever> builder for '/nix/store/wafnfj5p1dflxfcqwnkilwzkajaa0z9m-perl5.30.0-XML-Parser-2.46-armv7l-unknown-linux-gnueabihf.drv' failed with exit code 2
<samueldr> all I can say is that cross-system was tested to cross-compile the sd image for 19.09 and current staging as of yesterday
<samueldr> ah
<samueldr> that's fixe
<samueldr> fixed*
<clever> current staging has working cross-compile?
<{^_^}> #75132 (by samueldr, 6 weeks ago, open): perlPackages.XMLParser: Work around cross-compilation regression
* samueldr is curious
<samueldr> the fix isn't required now
<samueldr> so I figure something better fixed it higher in the stack
<samueldr> clever: it did yesterday
<samueldr> things can move fast :)
<samueldr> cross-system (with changes I pushed yesterday) worked with cdfb32d17a988c9fe2952c586f7ea8c2b6ca7115
<clever> [clever@system76:~/apps/rpi-open-firmware]$ niv update nixpkgs -a branch=staging -a repo=nixpkgs
<clever> rev: acdb256910f6b48f7d40465bf3f18ccc4e8bd81e
<clever> ive set my hydra loose on it
zupo has joined #nixos-aarch64
zupo has quit [*.net *.split]
orivej has quit [*.net *.split]
srk has quit [*.net *.split]
cptchaos83 has quit [*.net *.split]
lopsided98 has quit [*.net *.split]
zupo has joined #nixos-aarch64
cptchaos83 has joined #nixos-aarch64
srk has joined #nixos-aarch64
lopsided98 has joined #nixos-aarch64
orivej has joined #nixos-aarch64
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<clever> samueldr: and it cross-compiles!
<clever> now, to add my iscsi stuff into the mix, and try and make it boot...
<samueldr> I think you mean "add more complexity into the mix and hope it still builds" :)
<clever> pretty much :P
<clever> i also dont yet have a nix built kernel booting
<clever> so i cant easily get modules into the mix
<samueldr> oh
<clever> so i'm staticly building everything into the kernel
<clever> step 1, dropbear...
<clever> [root@system76:~]# mount -v /dev/mmcblk0p1 /mnt/ && cp -v --copy-contents /home/clever/apps/rpi-open-firmware/result/initrd /home/clever/apps/rpi/linux/build/arch/arm/boot/zImage /mnt/ && umount /mnt/
<clever> <<< NixOS Stage 1 >>>
<clever> samueldr: thats progress!
<clever> but it just hangs there, silently
<samueldr> set -x
<clever> 147 boot.trace|debugtrace)
<clever> 149 set -x
<clever> 151 boot.shell_on_fail)
<clever> samueldr: zero difference
<clever> i just realized, how is it even printing to the console
<clever> thats something i havent ironed out fully
<samueldr> lol
<samueldr> I was thinking a set-x prefixed to the top of the script, as that set -x could happen too late
<clever> earlyMountScript is still fairly early
<samueldr> if it's failing between earlyMountScript and that echo
<samueldr> or even sourcing that early mount script
<clever> i think i'll just edit nixpkgs directly
<clever> like you said
<clever> + echo console t[ 2.736447] usb 1-1: New USB device found, idVendor=0424, idProduct=9514, bcdDevice= 2.00
<clever> tyAMA0,115200
<clever> +[ 2.745645] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 set -- console ttyAMA0,115200
<clever> samueldr: it goes silent when it tries to parse console=
<samueldr> oh no!
<samueldr> how many `console=` are there?
<samueldr> you know they're not multiplexed, right?
<clever> 138 set -- $(IFS==; echo $o)
<clever> 1 print-fatal-signals=1 console=ttyAMA0,115200 earlyprintk loglevel=7 root=/dev/mmcblk0p2 printk.devkmsg=on boot.trace boot.shell_on_fail
<clever> just one
<clever> line 138 is the last thing it ran
<clever> if i delete that part of the code, it then hangs at:
<clever> + set -- root /dev/mmcblk0p2
<clever> 163 root=*)
<clever> 167 set -- $(IFS==; echo $o)
<clever> samueldr: any ideas?
<samueldr> both times it seems to come from parsing an option, weird
<samueldr> could it be simply time based, and that happens around the same time?
<clever> very
<samueldr> those are hard to debug!
<samueldr> the ROC-RK3399-PC in mainline linux has a bug where the type-c module kills the power supply for a short duration when enabled
<samueldr> you see, a laptop would rely on a battery for that fraction of a second
<samueldr> but the ROC-RK3399-PC uses type-c as its only power source!
<clever> i know that the power is fine in this case, because the kernel keeps printing for another 2 seconds, as usb comes online
<clever> and the gpu prints 100 seconds later, as a debug timer confirms what linux has done to the state
<samueldr> oh, I haven't finished my story
<samueldr> well, I think you connected the dots
<samueldr> at some point during the boot, always around the same lines, it just would crash
<samueldr> hard
<samueldr> but it never got to printing anything about type-c!
<clever> uart fifo?
<clever> i had some similar weirdness, where i was only configuring the pin mux after i printed things
<samueldr> I think the issue is that there was nothing that tried to print at that moment
<clever> so id always loose the first 16 characters
<clever> or rather, i lost everything except the last 16 chars
<clever> because it only configured the pins correctly, once it was done printing, and the last 16 chars where in the fifo
<samueldr> anyway, disabled TYPE_C, on a third of a hunch, a third of reading vague stuff about type-c and that board, and a final third of realizing the power was off at that point
<clever> linux is definitely sitll responding, the echo in the tty reacts
<clever> samueldr: the only thing i can think of right now, is that maybe the cross-compiled shell is faulty...
<samueldr> unlikely
<samueldr> try the same staging build using cross-system on the official pi firmware and see