OpenWRT: Difference between revisions

From NixOS Wiki
imported>Mic92
needs binutils
imported>Makefu
add infos about the last state
Line 3: Line 3:
== Building OpenWRT with a nix shell ==
== Building OpenWRT with a nix shell ==
Download [https://gist.github.com/Mic92/b59054188c595e5652cacf50485583e0 this Gist] as your <code>shell.nix</code> in the same folder as openwrt and run <code>nix-shell</code> in this folder.
Download [https://gist.github.com/Mic92/b59054188c595e5652cacf50485583e0 this Gist] as your <code>shell.nix</code> in the same folder as openwrt and run <code>nix-shell</code> in this folder.
This gist has been tested with the following inputs:
* Nixpkgs Revision <code>bee172501de3b4496ff81cc1621d307f167e9382</code>
* OpenWRT revision <code>0f063f8ac70943ff1f383c9bd05d1792730fe614</code>
Due to the very delicate OpenWRT dev environment it may be necessary to pin the nixpkgs revision you are using. This can be done by replacing the first lines of the gist with:
<syntaxHighlight lang=nix>
{ opkgs ? import <nixpkgs> {} }:                         
                                                         
let                                                       
  pkgs = import (opkgs.fetchFromGitHub {                 
    owner = "NixOS"; repo = "nixpkgs-channels";           
    rev = "bee172501de3b4496ff81cc1621d307f167e9382";     
    sha256 = "14jn7jiq4likrm7fry2m3q3rmv3y4xjfnwx13wh6iqd8c3bcjd12";                                                 
  }) {};
...
</syntaxHighlight>

Revision as of 21:43, 25 March 2018

Building OpenWRT with a nix shell

Download this Gist as your shell.nix in the same folder as openwrt and run nix-shell in this folder. This gist has been tested with the following inputs:

  • Nixpkgs Revision bee172501de3b4496ff81cc1621d307f167e9382
  • OpenWRT revision 0f063f8ac70943ff1f383c9bd05d1792730fe614

Due to the very delicate OpenWRT dev environment it may be necessary to pin the nixpkgs revision you are using. This can be done by replacing the first lines of the gist with:

{ opkgs ? import <nixpkgs> {} }:                           
                                                           
let                                                        
  pkgs = import (opkgs.fetchFromGitHub {                   
    owner = "NixOS"; repo = "nixpkgs-channels";            
    rev = "bee172501de3b4496ff81cc1621d307f167e9382";      
    sha256 = "14jn7jiq4likrm7fry2m3q3rmv3y4xjfnwx13wh6iqd8c3bcjd12";                                                   
  }) {};
...