Add version filter to the configuration
This commit is contained in:
		| @@ -33,6 +33,7 @@ data PackageSettings = PackageSettings | ||||
|     { name :: Text | ||||
|     , template :: Text | ||||
|     , is64 :: Bool | ||||
|     , version :: Text | ||||
|     , github :: Maybe (Text, Text) | ||||
|     , packagist :: Maybe (Text, Text) | ||||
|     , text :: Maybe (Text, [String]) | ||||
| @@ -58,6 +59,7 @@ packageSettingsCodec = PackageSettings | ||||
|     <$> Toml.text "name" .= name | ||||
|     <*> Toml.text "template" .= template | ||||
|     <*> Toml.bool "is64" .= is64 | ||||
|     <*> Toml.text "version" .= version | ||||
|     <*> Toml.dioptional (Toml.table githubCodec "github") .= github | ||||
|     <*> Toml.dioptional (Toml.table packagistCodec "packagist") .= packagist | ||||
|     <*> Toml.dioptional (Toml.table textCodec "text") .= text | ||||
|   | ||||
| @@ -190,7 +190,7 @@ latestPackagist PackageOwner{..} = do | ||||
|         fullName = Text.intercalate "/" [owner, name] | ||||
|  | ||||
|     pure $ HashMap.lookup fullName packagistPackages | ||||
|         >>= fmap (version . fst) . Vector.uncons | ||||
|         >>= fmap (getField @"version" . fst) . Vector.uncons | ||||
|  | ||||
| -- * Remote text file | ||||
|  | ||||
|   | ||||
							
								
								
									
										22
									
								
								src/Main.hs
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								src/Main.hs
									
									
									
									
									
								
							| @@ -41,7 +41,7 @@ autoUpdatable packageSettings = | ||||
|                 setting = fromJust $ find ((== "universal-ctags") . getField @"name") packageSettings | ||||
|                 template = Package.DownloadTemplate $ getField @"template" setting | ||||
|              in Package.Updater | ||||
|                 { detectLatest = latestGitHub ghArguments "(v)\\." | ||||
|                 { detectLatest = latestGitHub ghArguments (getField @"version" setting) | ||||
|                 , getVersion = repackageWithTemplate (getField @"repackage" setting) template | ||||
|                 , is64 = getField @"is64" setting | ||||
|                 } | ||||
| @@ -67,7 +67,7 @@ autoUpdatable packageSettings = | ||||
|                 setting = fromJust $ find ((== "jitsi-meet-desktop") . getField @"name") packageSettings | ||||
|                 template = Package.DownloadTemplate $ getField @"template" setting | ||||
|              in Package.Updater | ||||
|                 { detectLatest = latestGitHub ghArguments "(v)*" | ||||
|                 { detectLatest = latestGitHub ghArguments (getField @"version" setting) | ||||
|                 , getVersion = repackageWithTemplate (getField @"repackage" setting) template | ||||
|                 , is64 = getField @"is64" setting | ||||
|                 } | ||||
| @@ -80,7 +80,7 @@ autoUpdatable packageSettings = | ||||
|                 setting = fromJust $ find ((== "php82") . getField @"name") packageSettings | ||||
|                 template = Package.DownloadTemplate $ getField @"template" setting | ||||
|              in Package.Updater | ||||
|                 { detectLatest = latestGitHub ghArguments "(php-)8.2.\\d" | ||||
|                 { detectLatest = latestGitHub ghArguments  (getField @"version" setting) | ||||
|                 , getVersion = repackageWithTemplate (getField @"repackage" setting) template | ||||
|                 , is64 = getField @"is64" setting | ||||
|                 } | ||||
| @@ -93,7 +93,7 @@ autoUpdatable packageSettings = | ||||
|                 setting = fromJust $ find ((== "kitty") . getField @"name") packageSettings | ||||
|                 template = Package.DownloadTemplate $ getField @"template" setting | ||||
|              in Package.Updater | ||||
|                 { detectLatest = latestGitHub ghArguments "(v)\\." | ||||
|                 { detectLatest = latestGitHub ghArguments (getField @"version" setting) | ||||
|                 , getVersion = repackageWithTemplate (getField @"repackage" setting) template | ||||
|                 , is64 = getField @"is64" setting | ||||
|                 } | ||||
| @@ -106,7 +106,7 @@ autoUpdatable packageSettings = | ||||
|                 setting = fromJust $ find ((== "rdiff-backup") . getField @"name") packageSettings | ||||
|                 template = Package.DownloadTemplate $ getField @"template" setting | ||||
|              in Package.Updater | ||||
|                 { detectLatest = latestGitHub ghArguments "(v)\\." | ||||
|                 { detectLatest = latestGitHub ghArguments (getField @"version" setting) | ||||
|                 , getVersion = repackageWithTemplate (getField @"repackage" setting) template | ||||
|                 , is64 = getField @"is64" setting | ||||
|                 } | ||||
| @@ -119,7 +119,7 @@ autoUpdatable packageSettings = | ||||
|                 setting = fromJust $ find ((== "webex") . getField @"name") packageSettings | ||||
|                 template = Package.DownloadTemplate $ getField @"template" setting | ||||
|              in Package.Updater | ||||
|                 { detectLatest = latestText textArguments "(Linux—)*" | ||||
|                 { detectLatest = latestText textArguments (getField @"version" setting) | ||||
|                 , getVersion = repackageWithTemplate (getField @"repackage" setting) template | ||||
|                 , is64 = getField @"is64" setting | ||||
|                 } | ||||
| @@ -132,7 +132,7 @@ autoUpdatable packageSettings = | ||||
|                 setting = fromJust $ find ((== "librsync") . getField @"name") packageSettings | ||||
|                 template = Package.DownloadTemplate $ getField @"template" setting | ||||
|              in Package.Updater | ||||
|                 { detectLatest = latestGitHub ghArguments "(v)\\." | ||||
|                 { detectLatest = latestGitHub ghArguments (getField @"version" setting) | ||||
|                 , getVersion = repackageWithTemplate (getField @"repackage" setting) template | ||||
|                 , is64 = getField @"is64" setting | ||||
|                 } | ||||
| @@ -145,7 +145,7 @@ autoUpdatable packageSettings = | ||||
|                 setting = fromJust $ find ((== "dmd") . getField @"name") packageSettings | ||||
|                 template = Package.DownloadTemplate $ getField @"template" setting | ||||
|              in Package.Updater | ||||
|                 { detectLatest = latestText textArguments "\\." | ||||
|                 { detectLatest = latestText textArguments (getField @"version" setting) | ||||
|                 , getVersion = repackageWithTemplate (getField @"repackage" setting) template | ||||
|                 , is64 = getField @"is64" setting | ||||
|                 } | ||||
| @@ -158,7 +158,7 @@ autoUpdatable packageSettings = | ||||
|                 setting = fromJust $ find ((== "d-tools") . getField @"name") packageSettings | ||||
|                 template = Package.DownloadTemplate $ getField @"template" setting | ||||
|              in Package.Updater | ||||
|                 { detectLatest = latestText textArguments "\\." | ||||
|                 { detectLatest = latestText textArguments (getField @"version" setting) | ||||
|                 , getVersion = repackageWithTemplate (getField @"repackage" setting) template | ||||
|                 , is64 = getField @"is64" setting | ||||
|                 } | ||||
| @@ -197,7 +197,7 @@ autoUpdatable packageSettings = | ||||
|                 setting = fromJust $ find ((== "simde") . getField @"name") packageSettings | ||||
|                 template = Package.DownloadTemplate $ getField @"template" setting | ||||
|              in Package.Updater | ||||
|                 { detectLatest = latestGitHub ghArguments "(v)\\." | ||||
|                 { detectLatest = latestGitHub ghArguments (getField @"version" setting) | ||||
|                 , getVersion = repackageWithTemplate (getField @"repackage" setting) template | ||||
|                 , is64 = getField @"is64" setting | ||||
|                 } | ||||
| @@ -210,7 +210,7 @@ autoUpdatable packageSettings = | ||||
|                 setting = fromJust $ find ((== "nginx") . getField @"name") packageSettings | ||||
|                 template = Package.DownloadTemplate $ getField @"template" setting | ||||
|              in Package.Updater | ||||
|                 { detectLatest = latestGitHub ghArguments "(release-)\\d.[02468].\\d" | ||||
|                 { detectLatest = latestGitHub ghArguments (getField @"version" setting) | ||||
|                 , getVersion = repackageWithTemplate (getField @"repackage" setting) template | ||||
|                 , is64 = getField @"is64" setting | ||||
|                 } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user