<clever>
its in .gitignore, and i manually sync it around
<clever>
Orbstheorem: i just dont put my secrets in git, simple
<clever>
Orbstheorem: and fileExists
<clever>
Orbstheorem: what if you just use the name to detect that, secrets.nix vs secrets.nix.bin ?
<clever>
Dandellion[m]: yes
<clever>
Orbstheorem: why are you using readFile? and not just a path
<clever>
obadz: i just `ls -ltrh /tmp`
<clever>
dgarzon: oh, and nix only needs a nixbld group if ran as root, if you drop root, but keep +w to /nix/store/, it will run in single-user mode
<clever>
dgarzon: so it happens much later on, at runtime
<clever>
dgarzon: the main way to cheat around that perf issue, is to have something like .bashrc do that initial setup when the user tries to open a shell inside the vm
<clever>
dgarzon: also, runAsRoot makes the performance of generating the docker image much worse
<clever>
samueldr: wow
<clever>
fyuuri: if your on the nixos livecd, `passwd ; systemctl start sshd`
<clever>
fyuuri: can you pastebin the output of `fdisk -l /dev/sda ; blkid /dev/sda*` and your configuration.yaml?
<clever>
so you must now create a partition to define where stage 1.5 goes, and clearly mark it as in-use
<clever>
but the GPT tables are bigger, and extend into that region, and ban such ugly practices :P
<clever>
with MBR disks, grub puts stage 1.5 in the "unused" space between sector 1 and partition 1
<clever>
1mb in size, no fs, not mounted, not formatted
<clever>
fyuuri: if you want legacy booting on gpt, you must have a bios boot partition
<clever>
the <cardano_pkgs> has higher priority
<clever>
Orbstheorem: that will either use <cardano_pkgs> or the result of fetch-nixpkgs.nix
<clever>
so you could just add it to that repo, and then its set
<clever>
the file expects to live inside zkeme80
<clever>
then run it!
<clever>
siraben: this will compile everything, including the emulator, and the rom, and generate a bash script, that just opens the rom in the emulator
<clever>
[clever@system76:~/apps/zkeme80]$ nix-build tilem.nix -A runit && ./result
<clever>
and on to phase 2!
<clever>
oh, i see a new err
<clever>
i updated the gist to include the new tilem.nix
<clever>
[clever@system76:~/apps/zkeme80]$ nix-build tilem.nix -A forth
<clever>
thats nix, it creates a /build/ and cd's into it
<clever>
;;; failed to create path for auto-compiled file "/build/smiley-os.scm"
<clever>
;;; WARNING: compilation of /build/smiley-os.scm failed:
<clever>
i did clone your zkeme80
<clever>
siraben: does smiley-os have to be built first? or have a .scm tacked on the end?
<clever>
;;; In procedure stat: No such file or directory: "/build/smiley-os"
<clever>
ilya-fedin: you could also override openresolv = null;, like with nano
<clever>
that script should delete old kernels too
<clever>
ilya-fedin: but you then need to run the install-bootloader script in the current nixos, to re-sync /boot with that
<clever>
ilya-fedin: if you told it to delete profiles (with either -d or --delete-older-than), then it will delete the generations from /nix/var/nix/profiles/system
<clever>
nixos-rebuild is the only way to update that
<clever>
so the old kernels will remain, but the top-level nixos will be missing in /nix/store/ and they will fail to boot
<clever>
GC wont delete anything in /boot/
<clever>
slabity: you must nixos-rebuild after a GC, to regenerate the grub config
<clever>
if a module lacks both config and options, nixos will automatically wrap it in a config = { ... }; for you
<clever>
all config must be in the config attribute
<clever>
i also try to avoid with, it defers "variable not in scope" type errors until much later, and i suspct it harms performance slightly
<clever>
or put `with lib;` near the top
<clever>
ilya-fedin: lib.mkOption
<clever>
or an echo
<clever>
which might just be a kernel param
<clever>
so you just need to change the default scheduler
<clever>
ilya-fedin: using this nixos option, you can force nixos to load it before mounting the rootfs
<clever>
boot.initrd.kernelModules
<clever>
List of modules that are always loaded by the initrd.
<clever>
ilya-fedin: at least on my machine, its empty by default
<clever>
[ ]
<clever>
nix-repl> config.boot.kernelPatches
<clever>
# nix repl '<nixpkgs/nixos>'
<clever>
ilya-fedin: boot.kernelPatches requires the kernel rebuilding in full, but if you can build it out-of-tree, you can use boot.kerenelPackages
<clever>
but you still need -lfoo to make it link to libfoo.so
<clever>
the stdenv deals with -L flags, which affect where -lfoo searches
<clever>
you need to pass the right -l flags, -lcl or -lopencl i'm guessing
<clever>
-p will have g++ by default
<clever>
,overlays
<clever>
ottidmes: wut! :D
<clever>
ilya-fedin: make an overlay that just sets nano = null; ?
<clever>
you want to either highprio resolvconf, or use an overlay to affect pkgs.openresolv
<clever>
ilya-fedin: that will add a 2nd openresolv that is at low prio, but not affect the 1st openresolv
<clever>
ottidmes: the backtraces give better locations, and its easier to manage when you want to share it between several files
<clever>
imports is often far simpler
<clever>
then query the metadata on that rev
<clever>
the most you can do, is to brute-force eval "${pkgs.hello}" from every revision of nixpkgs, until you find one that matches your current hello binary (and pray it lacks overrides)
<clever>
and once its turned into a .drv file, all metadata is lost
<clever>
then realization turns drv files into compiled products
<clever>
the nix-instantiate pass turns nix expressions into .drv files (visible with nix show-derivation)
<clever>
nDuff: .meta is not stored in along with storepaths
<clever>
nDuff: what kind of metadata?
<clever>
lokado: if possible, try just running the electron binary from pkgs.electron on that packages dir
<clever>
spacetato: yeah
<clever>
its either an entry from pkgs.vscode-extensions, or an attrset