nvfetcher-0.5.0.0: Generate nix sources expr for the latest version of packages
Copyright(c) 2021-2022 berberman
LicenseMIT
Maintainerberberman <berberman@yandex.com>
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

NvFetcher

Description

The main module of nvfetcher. If you want to create CLI program with it, it's enough to import only this module.

Example:

module Main where

import NvFetcher

main :: IO ()
main = runNvFetcher packageSet

packageSet :: PackageSet ()
packageSet = do
  define $ package "feeluown-core" fromPypi "feeluown"
  define $ package "qliveplayer" fromGitHub (THMonster, QLivePlayer)

You can find more examples of packages in Main_example.hs.

Running the created program:

  • main -- abbreviation of main build
  • main build -- build nix sources expr from given packageSet
  • main clean -- delete .shake dir and generated nix file

All shake options are inherited.

Synopsis

Documentation

runNvFetcher :: PackageSet () -> IO () Source #

Run nvfetcher with CLI options

This function calls runNvFetcherNoCLI, using def Config overridden by CLIOptions. Use this function to create your own Haskell executable program.

runNvFetcher' :: Config -> PackageSet () -> IO () Source #

Similar to runNvFetcher, but uses custom config instead of def overridden by CLIOptions

runNvFetcherNoCLI :: Config -> Target -> PackageSet () -> IO () Source #

Entry point of nvfetcher