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

NvFetcher.Nvchecker

Contents

Description

nvchecker is a program checking new versions of packages. We encode the checking process into shake build system, generating configuration of nvchecker and calling it externally. Now we call nvchecker for each VersionSource, which seems not to be efficient, but it's tolerable when running in parallel.

Meanwhile, we lose the capabilities of tracking version updates, i.e. normally nvchecker will help us maintain a list of old versions, so that we are able to know which package's version is updated in this run. Fortunately, we can reimplement this using shake database, see nvcheckerRule for details.

Synopsis

Types

data VersionSource Source #

The input of nvchecker

Constructors

GitHubRelease 

Fields

Git 

Fields

Pypi 

Fields

ArchLinux 

Fields

Aur 

Fields

Manual 

Fields

Repology 

Fields

Instances

Instances details
Eq VersionSource Source # 
Instance details

Defined in NvFetcher.Types

Ord VersionSource Source # 
Instance details

Defined in NvFetcher.Types

Show VersionSource Source # 
Instance details

Defined in NvFetcher.Types

Generic VersionSource Source # 
Instance details

Defined in NvFetcher.Types

Associated Types

type Rep VersionSource :: Type -> Type #

Hashable VersionSource Source # 
Instance details

Defined in NvFetcher.Types

Binary VersionSource Source # 
Instance details

Defined in NvFetcher.Types

NFData VersionSource Source # 
Instance details

Defined in NvFetcher.Types

Methods

rnf :: VersionSource -> () #

type Rep VersionSource Source # 
Instance details

Defined in NvFetcher.Types

type RuleResult VersionSource Source # 
Instance details

Defined in NvFetcher.Types

data NvcheckerResult Source #

The result of running nvchecker

Constructors

NvcheckerResult 

Fields

Instances

Instances details
Eq NvcheckerResult Source # 
Instance details

Defined in NvFetcher.Types

Show NvcheckerResult Source # 
Instance details

Defined in NvFetcher.Types

Generic NvcheckerResult Source # 
Instance details

Defined in NvFetcher.Types

Associated Types

type Rep NvcheckerResult :: Type -> Type #

Hashable NvcheckerResult Source # 
Instance details

Defined in NvFetcher.Types

FromJSON NvcheckerResult Source # 
Instance details

Defined in NvFetcher.Types

Binary NvcheckerResult Source # 
Instance details

Defined in NvFetcher.Types

NFData NvcheckerResult Source # 
Instance details

Defined in NvFetcher.Types

Methods

rnf :: NvcheckerResult -> () #

type Rep NvcheckerResult Source # 
Instance details

Defined in NvFetcher.Types

type Rep NvcheckerResult = D1 ('MetaData "NvcheckerResult" "NvFetcher.Types" "nvfetcher-0.1.0.0-inplace" 'False) (C1 ('MetaCons "NvcheckerResult" 'PrefixI 'True) (S1 ('MetaSel ('Just "nvNow") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Version) :*: S1 ('MetaSel ('Just "nvOld") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Version))))

Rules

nvcheckerRule :: Rules () Source #

Rules of nvchecker