[Nix-dev] Re: udev 151

Tony White tonywhite100 at googlemail.com
Thu Apr 15 00:08:26 CEST 2010


2010/4/14 Lluís Batlle i Rossell <viriketo at gmail.com>:
> On Wed, Apr 14, 2010 at 09:26:29PM +0400, Yury G. Kudryashov wrote:
>> Tony White wrote:
>>
>> > On 13 April 2010 23:22, Yury G. Kudryashov
>> > Hi Yury,
>> > How will this effect /root/test-firmware for say if I just wanted to
>> > chuck in some firmware to test, will that location no longer exist?
>> We can copy your /root/test-firmware into /nix/store. You'll need to nixos-
>> rebuild after each change in /root/test-firmware but you'll have rollbacks.
> The very purpose of /root/test-firmware in the udev firmware paths was
> explicitly to avoid building anything. It helps, if you boot a nixos cd, and
> for your wifi card to work you need to put a driver there.
> I also used it for aircrack, for temporary firmwares.
>
>> > I don't think any one can object if you just make it work but upstream
>> > should IMO accept your request because the maintainer will hopefully
>> > understand that impure paths are generally bad when programming
>> > anything modular.
>> If I will not recieve an answer till Sunday, I'll use the second approach.
> I think that you could ask for a :-separated kind of paths in that variable.
>
> Regards,
> Lluís.
> _______________________________________________
> nix-dev mailing list
> nix-dev at cs.uu.nl
> https://mail.cs.uu.nl/mailman/listinfo/nix-dev
>

Hi all,
Yeah, I agree with Lluís. /root/test-firmware is meant to be an impure
path used for testing firmware without any need for a rebuild. That
was my concern. Preserving the functionality.
It's important to have that function, as I found out when trying to
get my two wireless devices to work without a wired network
connection. I have used it a few times now just to build an expression
of the same firmware, even if it is impure.
Kernel firmware is one of those special cases where under certain
circumstances, someone like me may need a blob loaded and before a
rebuild. So that a derivation containing said firmware may be built
using the same firmware blob loaded by a dependant network adapter's
kernel driver module or other firmware blob dependant hardware's
driver module.
I do not know but would guess that the bsd kernel in nix may make use
of /root/test-firmware also.

Please preserve the location and functionality if you can. There are
plenty of kernel modules out there which do require firmware but there
exists no nix expression in nixpkgs for. Many wireless adapters for
example.
It also makes no sense for certain firmware blobs to have an
expression in nixpkgs because of proprietary licensing terms. So it
needs to be as easy as possible for someone new to nix to just get on
line and build their own firmware derivations. Then they can use the
purity provided by the nix store and remove their required firmware
blob from the impure path.
A firmware expression is also a nice easy first expression to write if
new to NixOS. Some new users will turn off if the processes to connect
to the net with a wireless adapter which requires a firmware blob is
insanely difficult.
The install cds do not ship with firmware and the installer usually
won't work unless you are on line so that path and function needs to
be preserved.

Thanks,
Tony



More information about the nix-dev mailing list