<clever>
dminuoso_: sounds like classic x86 serial drivers, just assuming all 4 are present
<clever>
dminuoso_: possibly, whats the serial port named under /dev/ ?
<clever>
dminuoso_: and then try to enable early-printk for it in linux
<clever>
dminuoso_: id say start by figuring out what uart you are using for the boot menu
<clever>
and even an IR port
<clever>
dminuoso_: it has hdmi, usb host, usb device, a bloody microphone right on the pcb, wifi, sata, lipo battery charging
<clever>
dminuoso_: the banana pi also looks like somebody couldnt decide where to stop with features
<clever>
dminuoso_: there is a spot on the bottom of the pcb for an eeprom, that stores the switch defaults, but the eeprom is missing, and the datasheets are nowhere to be found
<clever>
dminuoso_: only after linux boots, can linux tell it, "stop that, your supposed to be a firewall!!"
<clever>
dminuoso_: the critical problem with the banana pi, is that the "dumb" switch defaults to bridging every port, so your LAN and WAN are linked on bootup
<clever>
dminuoso_: this is just a "dumb" switch ic, with the management interface wired to an allwinner a20 chip, along with 1 of the ethernet ports
<clever>
dminuoso_: basically, the switch IC out of most "dumb" switches, is capable of doing managed-switch tasks, but the cpu to drive the entire UI is missing
<clever>
dminuoso_: sounds a lot like the banana pi series of boards
<clever>
Twey: nixos generates a setuid wrapper, renames it to dumpcap in this case, and that wrapper then runs the real dumpcap, after gaining root
<clever>
Twey: that allows wireshark's gui to run without root, but still capture packets
<clever>
Twey: this configures dumpcap to be setuid root, and only executable by members of the wireshark group
<clever>
dminuoso_: which switch is this? heh, a networking switch or a nintendo switch?
<clever>
Twey: i do also have an example with bridging i can link, one min
<clever>
Twey: `-net user` is the simplest network to setup, if you just want basic tcp/udp stuff
<clever>
dminuoso_: the kernel config file, when you build the kernel
<clever>
dminuoso_: i think with the right kernel config, earlyprintk causes the kernel to just blindly write bytes to a magic address, extremely early in the boot process, before drivers are even online
<clever>
dminuoso_: this, plus configuring the earlycon in .config, so the kernel knows where to send it
<clever>
dminuoso_: ive had similar problems with linux on the rpi, with custom firmware, early-con helps a lot
<clever>
Ankhers: if you want to use clang to compile things
<clever>
Ankhers: you want clangStdenv.mkDerivation
2020-01-14
<clever>
medard: there are also pre-made virtualbox images, with nixos installed already
<clever>
nDuff: maybe something else failed while booting, check the journal?
<clever>
nDuff: nixos should create that, on bootup
<clever>
Jarva[m]: updating the firmware could change hte order of devices
<clever>
Jarva[m]: it might be a firmware problem with the motherboard, re-allocating bus's
<clever>
,locate
<clever>
Jarva[m]: pciutils, and it would help to have an lspci from both wlp1s0 and wlp2s0
<clever>
,locate bin/lspci
<clever>
so the 3, means its on pci bus #3, and the 0 means its device zero on that bus, 03:00
<clever>
for me, wlp3s0 is 03:00.0 Network controller: Intel Corporation Wireless 8265 / 8275 (rev 78)
<clever>
Jarva[m]: what does lspci say about that card?
<clever>
das_j: that not really feasible, because the hash depends on which compiler you used
<clever>
dalto5: for example, it took ~2 days to add a new cpu arch to nixpkgs, and then i was able to pull together 3 different cross-compilers (vc4, arm-embeded, arm-linux) trivially, and start building stuff for the rpi
<clever>
dalto5: one of my most recent projects, is making heavy use of the cross-compile stuff in nixpkgs
<clever>
the difference is just which tests they check for
<clever>
dalto5: both nixos-unstable and nixpkgs-unstable point to whatever version of master has most recently passed a certain set of tests
<clever>
dalto5: for the next 3 weeks, every nixpkgs-unstable user came out of the wood-work, asking why the machine stopped booting :P
<clever>
dalto5: few years ago, grub began corrupting the grub config file, and nixos-unstable correctly stopped updating
<clever>
dalto5: nixos-unstable goes thru extra testing, to make sure it wont brick a nixos machine
2020-01-13
<clever>
samueldr: ive spent days before trying to figure out what to google to find it :P
<clever>
kalbasit: set nixpkgs.system in the machine config
<clever>
Rovanion: when ran as root, nix-env operates on roots profile, which is normally in $PATH for every user
<clever>
jakobrs: by default, it will basically diff `ls` before and after unpacking, and guess where it should cd, based on what unpacking made
<clever>
jakobrs: sourceRoot must be set to the name of what you should cd into
<clever>
so i would prefer to just use a patch
<clever>
__monty__: sed can silently do nothing, if the source changes
<clever>
__monty__: builtins.replaceStrings can only work on strings that exist at the nix level, so it wont handle files within the source
<clever>
__monty__: and i prefer .patch files, because those will fail if the thing your patching cant be found
<clever>
__monty__: only the 1st is patching the source, the rest are wrapping the compiled binary to set vars at runtime
<clever>
spelled it out too much, heh
<clever>
,runtimedeps __monty__
<clever>
rajivr___: i tend to just stick them where it makes the most sense, programs.vim.fat is a custom option that controls if vim depends on clang at runtime
<clever>
,2
<clever>
,1
<clever>
,
<clever>
,runtimeDependencies __monty__
2020-01-12
<clever>
evanjs: thats all of the arguments that nixpkgs can accept, as an example
<clever>
kalbasit: lower numbers are prefered, the official cache is 40, and a hydra is 100
<clever>
lol
<clever>
grw: more that github may be the latest source, and your not running the latest, of both modules
<clever>
grw: check against the actual version of the source your using
<clever>
grw: videodev and v4l2_common may not be compatible with eachother, youll want to compare their sources and see if they disagree on v4l2_ctrl_query_fill
<clever>
grw: next, you want to check the source for both v4l2_common and videodev, do they actually both export v4l2_ctrl_query_fill? perhaps the module isnt compatible with that kernel version?
<clever>
grw: the problem, is that nixos itself, is using .extend to adjust the .kernel attribute some, which undoes whatever // did
<clever>
grw: for example, linuxPackages_4_19 = super.linuxPackages_4_19.extend (kself: ksuper: { ... });
<clever>
grw: .extend takes an overlay
<clever>
grw: you must use the proper override function
<clever>
grw: // on kernelPackages breaks
<clever>
grw: which thing are you overriding?
<clever>
and current-system?
<clever>
grw: ls -l /run/{current,booted}-system/kernel
<clever>
grw: and what does `uname -a` report?
<clever>
grw: your mixing the 4.19 modules, with a not 4.19 kernel
<clever>
grw: you must use config.boot.kernelPackages.tbs
<clever>
grw: thats your problem
<clever>
grw: can you paste your extraModulePackages line?
<clever>
jackdk: the .bashrc stuff checks if you have any channels, when deciding if your channels should be in NIX_PATH
<clever>
jackdk: you need to relog the first time you add a channel to non-root
<clever>
thats only needed if the thing your importing returns a function
<clever>
lovesegfault: lists with functions in them can do that
<clever>
lovesegfault: check my vim.nix for a basic 1 option example
<clever>
and nixos will merge things for you, and put the result into config.custom.confg
<clever>
and then custom.config = mkMerge [ a b c ]
<clever>
define some custom nixos options
<clever>
then nixos encounters an object with an _type of "merge", it will merge them, but only within nixos options
<clever>
if builtins.pathExists ./secrets.nix then import ./secrets.nix else {
2020-01-09
<clever>
submodules dont work on builtins.fetchGit
<clever>
tpham: only pkgs.fetchgit has a fetchSubmodules = true;
<clever>
thomashoneyman: same
<clever>
thomashoneyman: ssl and acme wont work without being publicly reachable for example
<clever>
thomashoneyman: this is also reusing the hydra config that actually gets deployed with nixops, and it just has a few mkForce entries, to tweak it
<clever>
thomashoneyman: basically, nix-build test-hydra-locally.nix && ./result, then browse http://localhost:8080/
<clever>
thomashoneyman: have you seen my test-hydra-locally.nix?
<clever>
thomashoneyman: bumping ram should also work, if you find the swap doesnt perform enough and are willing to up the machine size
<clever>
inferencerules: one option is to do `pkgs2 = import <nixpkgs> {};` and then use `pkgs2.fetchFromGitHub
<clever>
inferencerules: imports can never depend on pkgs
<clever>
DigitalKiwi: recursive nix would let you make something that behaves like distcc+ccache
<clever>
DigitalKiwi: distcc would violate the purity of the build sandbox
<clever>
DigitalKiwi: if you callPackage with stdenv = gcc8Stdenv; then stdenv within that file, refers to gcc8Stdenv
<clever>
via .override or just a 2nd callPackage
<clever>
DigitalKiwi: looks like its mostly a style change, having it in all-packages.nix would make it simpler to build it on another version without having to edit the default.nix
<clever>
DigitalKiwi: but those are more in terms of user error, rather then an os installer trying to wipe everything on its own
<clever>
as long as you dont delete the wrong partition or mkfs the wrong device
<clever>
smolck: should be completely safe
<clever>
smolck: you will want to mount the root to /mnt before you mount home to /mnt/home
<clever>
smolck: yep
<clever>
smolck: probably better to use a 2nd /boot for nixos, efi allows multiple boot partitions
<clever>
smolck: nixos has both systemd-boot and grub, and the install process will update the efi vars to point to whichever you enabled
<clever>
smolck: yep
<clever>
smolck: so when the directions tell you to partition the disk up and format everything, just mount your existing home to /mnt/home instead
<clever>
smolck: nixos doesnt automate partitioning or formatting