Hi mailing list, I first ran nixos about five years ago and back then I remember I was part of the mailing list; asking lots of questions and I remember that Sander, Mark and Eelco were very helpful. :) Hi guys! Anyway, having not had suitable enough hardware at the time I ventured off and explored the wonderful world of Fedora; learned a good amount of sysadmin and finally explored centos because it appeared to offer most of what Fedora did but with a focus on long term support. After realising that centos had dropped support for 32 bit in userspace, I decided to try and get back into nixos (I saw you guys had steam working!)
I have noticed some really positive changes since I was last here : the switch from svn to git, the move to github and the creation of the nixos foundation. It certainly looks like the project is heading in the right direction and it is a credit to the work you guys are doing. Keep it up! So my intentions are now to try and keep my desktop machine at least in line with stable releases going forward, whilst also experimenting by building features which have not yet been implemented or merged into master. I am still learning the nix language and I have just recently started learning how to use git to interact with github. So my understanding of nix is not good yet and I was hoping here would be a good place to try to find a solution or two to things which don't work for me (which are likely due to my current level of understanding. Please enlighten me and do be gentle.) First off, I have been pulling from unstable master until about a week ago and it has been building consistently without issue. I read that gcc5 is a milestone for the next release https://github.com/NixOS/nixpkgs/issues/8729 and pulled and merged wkennington's tree into a new branch to have a look and see if it builds. As a result, with some patching it builds and I am in the process of testing it out. So far so good. I intend to re-factor the patches (a lot of them were very rushed,) and offer them back to wkennington to see if he will take any of them. Before I do so however, I have one outstanding issue specific to the ati-drivers package which I would like to resolve. The issue is that currently, the latest release from AMD for their fglrx display driver does not yet support xserver 1.18. In wkennington's tree xserver 1.18 is the default. By manually changing the src, sha256 and name in /nixpkgs/pkgs/servers/x11/xorg/default.nix for the xorgserver package to the same as in unstable (1.17) I was able to get the driver working. Without modifying any other packages. Because /nixpkgs/pkgs/servers/x11/xorg/default.nix is a generated file I should not be editing that file and I should be doing an overrride instead. Accept I have attempted multiple times now to overrride the pkgs.xorg.xorgserver attributes and I just can't seem to get it right. My current non-working attempt involved patching replacements.nix in the xorg folder to contain : { xorgserver = {}: makeOverridable stdenv.mkDerivation { name = "xorg-server-1.17.4"; builder = ./builder.sh; src = fetchurl { url = mirror://xorg/individual/xserver/xorg-server-1.17.4.tar.bz2; sha256 = "0mv4ilpqi5hpg182mzqn766frhi6rw48aba3xfbaj4m82v0lajqc"; }; buildInputs = [pkgconfig dri2proto dri3proto renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ]; }; and setting : nixpkgs.config.packageOverride = pkgs: { xorg.xorgserver = pkgs.xorgReplacements.xorgserver; }; in configuration.nix It builds but does not replace xorg.xserver with version 1.17. So could anyone please give me some pointers on how I should do this please? What I am looking at is the possibility of forking the current ati-drivers with a new updated package because of backwards compatibility. AMD have dropped support for some cards but NixOS can support the old driver (which supports the old cards) should xorgserver 1.17, gcc49 and kernel 4.1 be installed. In order to provide the backwards compatibility, the xserver version will need to be downgraded to 1.17 permanently if ati_unfree is true in configuration.nix, for the old version of fglrx but also in the interim for the latest version of fglrx. If AMD provide xserver 1.18 support in their next release only the old version will require an overrride. So; is making the override in configuration.nix the right solution or could anyone please point me towards a better way? Sorry that this is a long post and thanks for reading it and in advance for your help. Kind Regards, Tony
_______________________________________________ nix-dev mailing list [email protected] http://lists.science.uu.nl/mailman/listinfo/nix-dev
