Code Monkey home page Code Monkey logo

nixpkgs's Introduction

nixpkgs

Build Status

Custom overrides, derivations, and other helpful nix expressions.

Branches

gh-pages: Where the nix cache is deployed to. Fronted by cloudflare and a cloudflare worker that proxies gitlfs assests.

cg-worker: The cloudflare worker code.

master: Custom overrides, derivations, and other helpful nix expressions.

Adding channel

add channel with raunco alias

nix-channel --add https://nixpkgs.raunco.co/ raunco
nix-channel --update

Adding channel cache

To enable the cache, the channel must be setup as a substituter. To add in user configuration Add the following to ~/.config/nix/nix.conf(create the file if it doesn't exist) See the nix manual for more information / options such as using extra-substituters

  substituters = https://cache.nixos.org https://nixpkgs.raunco.co/cache
  trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= nixpkgs.raunco.co:bb6Y8BB7fkbRlhaUFzbubClYT5OlHyqEmCG8uh9Kt2U=

If using nix-darwin custom caches can be added for all users via nix.binaryCachePublicKeys and nix.binaryCaches (There is also option nix.trustedBinaryCaches)

Example: darwin-configuration.nix

{ config, lib, pkgs, options, ... }:

# Adds to the list that already contains https://cache.nixos.org
{
  nix.binaryCaches = [
    https://nixpkgs.raunco.co/cache
  ];

  nix.binaryCachePublicKeys = [
    nixpkgs.raunco.co:bb6Y8BB7fkbRlhaUFzbubClYT5OlHyqEmCG8uh9Kt2U=
  ];
}

Example Usage

Using nix-env you can install a package from this channel by running something like nix-env -iA raunco.nodejs-8_x, or install using nix configuration. The example below, uses home-manager

{ ... }:

let
  raunco = import <raunco> {};
in
  {
    home.packages = [
      raunco.vaulted
      raunco.rapture
    ];
  }

Developing

You can see the github actions located in .github/workflows/nix.yml. This action should test, build and deploy the cache. Eventually I would like to setup the docker/vagrant local testing with nix expressions!

Local testing

Tools needed:

  • docker
  • docker-compose
  • vagrant(osx testing)
  • virtualbox (used by vagrant)

For now, you can test via docker, docker-compose, and vagrant(for osx)

Example Docker:

# Get into a nix-ubuntu container where you can install / test building / test the channel etc
docker-compose run --rm nix-ubuntu /bin/bash

# Get into a nix container that is closer to nixos
docker-compose run --rm nix /bin/sh

Example Vagrant:

# Start osx machine
vagrant up

nixpkgs's People

Contributors

adamgoose avatar corbanr avatar dependabot[bot] avatar

Stargazers

 avatar

Watchers

 avatar  avatar

nixpkgs's Issues

Contribute libpuslar to upstream

Hello,

I have found out your libpulsar derivation and, I would like to you use it, would you mind to make a contribution to upstream? (I can do it on your behalf if you're lacking time)

Thanks in advance,
Regards.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.