bd5affa362
This deals with the possible security problem that someone could make an unusually low UUID and generate keys that are all constructed to hash to a number that, mod the number of repositories in the group, == 0. So balanced preferred content would always put those keys in the repository with the low UUID as long as the group contains the number of repositories that the attacker anticipated. Presumably the attacker than holds the data for ransom? Dunno. Anyway, the partial solution is to use HMAC (sha256) with all the UUIDs combined together as the "secret", and the key as the "message". Now any change in the set of UUIDs in a group will invalidate the attacker's constructed keys from hashing to anything in particular. Given that there are plenty of other things someone can do if they can write to the repository -- including modifying preferred content so only their repository wants files, and numcopies so other repositories drom them -- this seems like safeguard enough. Note that, in balancedPicker, combineduuids is memoized.
1142 lines
28 KiB
Text
1142 lines
28 KiB
Text
Name: git-annex
|
|
Version: 10.20240808
|
|
Cabal-Version: 1.12
|
|
License: AGPL-3
|
|
Maintainer: Joey Hess <id@joeyh.name>
|
|
Author: Joey Hess
|
|
Stability: Stable
|
|
Copyright: 2010-2024 Joey Hess
|
|
License-File: COPYRIGHT
|
|
Homepage: http://git-annex.branchable.com/
|
|
Build-type: Custom
|
|
Category: Utility
|
|
Synopsis: manage files with git, without checking their contents into git
|
|
Description:
|
|
git-annex allows managing files with git, without checking the file
|
|
contents into git. While that may seem paradoxical, it is useful when
|
|
dealing with files larger than git can currently easily handle, whether due
|
|
to limitations in memory, time, or disk space.
|
|
.
|
|
It can store large files in many places, from local hard drives, to a
|
|
large number of cloud storage services, including S3, WebDAV,
|
|
and rsync, and many other usable via plugins.
|
|
Files can be stored encrypted with gpg, so that the cloud storage
|
|
provider cannot see your data. git-annex keeps track of where each file
|
|
is stored, so it knows how many copies are available, and has many
|
|
facilities to ensure your data is preserved.
|
|
.
|
|
git-annex can also be used to keep a folder in sync between computers,
|
|
noticing when files are changed, and automatically committing them
|
|
to git and transferring them to other computers. The git-annex webapp
|
|
makes it easy to set up and use git-annex this way.
|
|
-- The tarball uploaded to hackage does not include every non-haskell
|
|
-- file in the git repo. The website is left out, as are man pages,
|
|
-- so is build machinery for standalone apps, and packages.
|
|
-- Include only files that are needed make cabal install git-annex work.
|
|
Extra-Source-Files:
|
|
stack.yaml
|
|
README
|
|
CHANGELOG
|
|
NEWS
|
|
doc/license/GPL
|
|
doc/license/AGPL
|
|
doc/logo.svg
|
|
doc/logo_16x16.png
|
|
Assistant/WebApp/routes
|
|
static/activityicon.gif
|
|
static/css/bootstrap.css
|
|
static/css/bootstrap-theme.css
|
|
static/js/jquery.ui.core.js
|
|
static/js/longpolling.js
|
|
static/js/jquery.full.js
|
|
static/js/jquery.ui.sortable.js
|
|
static/js/jquery.ui.mouse.js
|
|
static/js/jquery.ui.widget.js
|
|
static/js/bootstrap.js
|
|
static/syncicon.gif
|
|
static/favicon.ico
|
|
static/fonts/glyphicons-halflings-regular.woff
|
|
static/fonts/glyphicons-halflings-regular.eot
|
|
static/fonts/glyphicons-halflings-regular.svg
|
|
static/fonts/glyphicons-halflings-regular.ttf
|
|
templates/sidebar/main.hamlet
|
|
templates/sidebar/alert.hamlet
|
|
templates/bootstrap.hamlet
|
|
templates/error.cassius
|
|
templates/README
|
|
templates/error.hamlet
|
|
templates/documentation/license.hamlet
|
|
templates/documentation/repogroup.hamlet
|
|
templates/documentation/about.hamlet
|
|
templates/dashboard/main.hamlet
|
|
templates/dashboard/transfers.cassius
|
|
templates/dashboard/transfers.hamlet
|
|
templates/dashboard/metarefresh.hamlet
|
|
templates/page.cassius
|
|
templates/page.hamlet
|
|
templates/control/repairrepository.hamlet
|
|
templates/control/repairrepository/done.hamlet
|
|
templates/control/notrunning.julius
|
|
templates/control/notrunning.hamlet
|
|
templates/control/repositoryswitcher.hamlet
|
|
templates/control/shutdown.hamlet
|
|
templates/control/log.hamlet
|
|
templates/page.julius
|
|
templates/repolist.julius
|
|
templates/configurators/adddrive/combine.hamlet
|
|
templates/configurators/adddrive/setupmodal.hamlet
|
|
templates/configurators/adddrive/encrypt.hamlet
|
|
templates/configurators/newrepository.hamlet
|
|
templates/configurators/needglaciercli.hamlet
|
|
templates/configurators/adds3.hamlet
|
|
templates/configurators/genkeymodal.hamlet
|
|
templates/configurators/main.hamlet
|
|
templates/configurators/needconnection.hamlet
|
|
templates/configurators/newrepository/form.hamlet
|
|
templates/configurators/newrepository/first.hamlet
|
|
templates/configurators/newrepository/combine.hamlet
|
|
templates/configurators/enablewebdav.hamlet
|
|
templates/configurators/pairing/local/inprogress.hamlet
|
|
templates/configurators/pairing/local/prompt.hamlet
|
|
templates/configurators/pairing/wormhole/prompt.hamlet
|
|
templates/configurators/pairing/wormhole/start.hamlet
|
|
templates/configurators/pairing/disabled.hamlet
|
|
templates/configurators/addglacier.hamlet
|
|
templates/configurators/fsck.cassius
|
|
templates/configurators/edit/nonannexremote.hamlet
|
|
templates/configurators/edit/webrepository.hamlet
|
|
templates/configurators/edit/repository.hamlet
|
|
templates/configurators/unused.hamlet
|
|
templates/configurators/ssh/testmodal.hamlet
|
|
templates/configurators/ssh/expiredpassword.hamlet
|
|
templates/configurators/ssh/error.hamlet
|
|
templates/configurators/ssh/combine.hamlet
|
|
templates/configurators/ssh/enable.hamlet
|
|
templates/configurators/ssh/add.hamlet
|
|
templates/configurators/ssh/setupmodal.hamlet
|
|
templates/configurators/ssh/confirm.hamlet
|
|
templates/configurators/enableia.hamlet
|
|
templates/configurators/fsck.hamlet
|
|
templates/configurators/addrepository/archive.hamlet
|
|
templates/configurators/addrepository/cloud.hamlet
|
|
templates/configurators/addrepository/connection.hamlet
|
|
templates/configurators/addrepository/ssh.hamlet
|
|
templates/configurators/addrepository/misc.hamlet
|
|
templates/configurators/addrepository/wormholepairing.hamlet
|
|
templates/configurators/rsync.net/add.hamlet
|
|
templates/configurators/rsync.net/encrypt.hamlet
|
|
templates/configurators/needgcrypt.hamlet
|
|
templates/configurators/needtor.hamlet
|
|
templates/configurators/needmagicwormhole.hamlet
|
|
templates/configurators/enabledirectory.hamlet
|
|
templates/configurators/fsck/status.hamlet
|
|
templates/configurators/fsck/form.hamlet
|
|
templates/configurators/fsck/preferencesform.hamlet
|
|
templates/configurators/fsck/formcontent.hamlet
|
|
templates/configurators/delete/finished.hamlet
|
|
templates/configurators/delete/start.hamlet
|
|
templates/configurators/delete/currentrepository.hamlet
|
|
templates/configurators/unused/form.hamlet
|
|
templates/configurators/adddrive.hamlet
|
|
templates/configurators/preferences.hamlet
|
|
templates/configurators/addia.hamlet
|
|
templates/configurators/enableaws.hamlet
|
|
templates/configurators/addrepository.hamlet
|
|
templates/actionbutton.hamlet
|
|
templates/repolist.hamlet
|
|
templates/controlmenu.hamlet
|
|
templates/notifications/longpolling.julius
|
|
Utility/libkqueue.h
|
|
|
|
Flag Assistant
|
|
Description: Enable git-annex assistant, webapp, and watch command
|
|
Default: True
|
|
|
|
Flag Pairing
|
|
Description: Enable pairing
|
|
|
|
Flag Production
|
|
Description: Enable production build (slower build; faster binary)
|
|
|
|
Flag ParallelBuild
|
|
Description: Enable production build (slower build; faster binary)
|
|
Default: False
|
|
Manual: True
|
|
|
|
Flag TorrentParser
|
|
Description: Use haskell torrent library to parse torrent files
|
|
|
|
Flag MagicMime
|
|
Description: Use libmagic to determine file MIME types
|
|
|
|
Flag Crypton
|
|
Description: Use the crypton library rather than the no longer maintained cryptonite
|
|
|
|
Flag Servant
|
|
Description: Use the servant library, enabling using annex+http urls and git-annex p2phttp
|
|
|
|
Flag Benchmark
|
|
Description: Enable benchmarking
|
|
Default: True
|
|
|
|
Flag DebugLocks
|
|
Description: Debug location of MVar/STM deadlocks
|
|
Default: False
|
|
|
|
Flag Dbus
|
|
Description: Enable dbus support
|
|
|
|
source-repository head
|
|
type: git
|
|
location: git://git-annex.branchable.com/
|
|
|
|
custom-setup
|
|
Setup-Depends:
|
|
base (>= 4.11.1.0 && < 5.0),
|
|
split,
|
|
filepath,
|
|
exceptions,
|
|
bytestring,
|
|
filepath-bytestring (>= 1.4.2.1.4),
|
|
process (>= 1.6.3),
|
|
time (>= 1.5.0),
|
|
directory (>= 1.2.7.0),
|
|
async,
|
|
utf8-string,
|
|
Cabal (< 4.0)
|
|
|
|
Executable git-annex
|
|
Main-Is: git-annex.hs
|
|
Build-Depends:
|
|
base (>= 4.11.1.0 && < 5.0),
|
|
network-uri (>= 2.6),
|
|
optparse-applicative (>= 0.14.2),
|
|
containers (>= 0.5.8),
|
|
exceptions (>= 0.6),
|
|
stm (>= 2.3),
|
|
mtl (>= 2),
|
|
uuid (>= 1.2.6),
|
|
process (>= 1.6.3),
|
|
data-default,
|
|
case-insensitive,
|
|
random,
|
|
dlist,
|
|
unix-compat (>= 0.5 && < 0.8),
|
|
SafeSemaphore,
|
|
async,
|
|
directory (>= 1.2.7.0),
|
|
disk-free-space,
|
|
filepath,
|
|
filepath-bytestring (>= 1.4.2.1.1),
|
|
IfElse,
|
|
monad-logger (>= 0.3.10),
|
|
free,
|
|
utf8-string,
|
|
bytestring,
|
|
text,
|
|
sandi,
|
|
monad-control,
|
|
transformers,
|
|
bloomfilter (>= 2.0.0),
|
|
edit-distance,
|
|
resourcet,
|
|
http-client (>= 0.5.3),
|
|
http-client-tls,
|
|
http-types (>= 0.7),
|
|
http-conduit (>= 2.3.0),
|
|
http-client-restricted (>= 0.0.2),
|
|
conduit,
|
|
time (>= 1.5.0),
|
|
old-locale,
|
|
persistent-sqlite (>= 2.8.1),
|
|
persistent (>= 2.8.1),
|
|
persistent-template,
|
|
unliftio-core,
|
|
microlens,
|
|
aeson,
|
|
vector,
|
|
tagsoup,
|
|
unordered-containers,
|
|
feed (>= 1.0.0),
|
|
regex-tdfa,
|
|
socks,
|
|
byteable,
|
|
stm-chans,
|
|
securemem,
|
|
crypto-api,
|
|
memory,
|
|
deepseq,
|
|
split,
|
|
attoparsec (>= 0.13.2.2),
|
|
concurrent-output (>= 1.10),
|
|
unbounded-delays,
|
|
QuickCheck (>= 2.10.0),
|
|
tasty (>= 1.2),
|
|
tasty-hunit,
|
|
tasty-quickcheck,
|
|
tasty-rerun,
|
|
ansi-terminal >= 0.9,
|
|
aws (>= 0.20),
|
|
DAV (>= 1.0),
|
|
network (>= 3.0.0.0),
|
|
network-bsd,
|
|
git-lfs (>= 1.2.0),
|
|
clock (>= 0.2.0.0)
|
|
CC-Options: -Wall
|
|
GHC-Options: -Wall -fno-warn-tabs -Wincomplete-uni-patterns
|
|
Default-Language: Haskell2010
|
|
Default-Extensions: LambdaCase
|
|
Other-Extensions: TemplateHaskell
|
|
-- Some things don't work with the non-threaded RTS.
|
|
GHC-Options: -threaded
|
|
|
|
-- Fully optimize for production.
|
|
if flag(Production)
|
|
-- Lower memory systems can run out of memory with -O2, so
|
|
-- optimise slightly less.
|
|
if arch(arm)
|
|
GHC-Options: -O2 -optlo-O2
|
|
else
|
|
GHC-Options: -O2
|
|
else
|
|
GHC-Options: -O0
|
|
|
|
if flag(ParallelBuild)
|
|
GHC-Options: -j
|
|
|
|
-- Avoid linking with unused dynamic libraries.
|
|
if os(linux) || os(freebsd)
|
|
GHC-Options: -optl-Wl,--as-needed
|
|
|
|
if flag(Crypton)
|
|
Build-Depends: crypton
|
|
CPP-Options: -DWITH_CRYPTON
|
|
else
|
|
Build-Depends: cryptonite (>= 0.23)
|
|
|
|
if flag(Servant)
|
|
Build-Depends:
|
|
servant,
|
|
servant-server,
|
|
servant-client,
|
|
servant-client-core,
|
|
warp (>= 3.2.8),
|
|
warp-tls (>= 3.2.2),
|
|
stm (>= 2.5.1)
|
|
CPP-Options: -DWITH_SERVANT
|
|
Other-Modules:
|
|
Command.P2PHttp
|
|
P2P.Http
|
|
P2P.Http.Server
|
|
P2P.Http.State
|
|
|
|
if (os(windows))
|
|
Build-Depends:
|
|
Win32 ((>= 2.6.1.0 && < 2.12.0.0) || >= 2.13.4.0),
|
|
setenv,
|
|
process (>= 1.6.2.0),
|
|
silently (>= 1.2.5.1)
|
|
else
|
|
Build-Depends: unix (>= 2.7.2)
|
|
|
|
if flag(Assistant) && ! os(solaris) && ! os(gnu)
|
|
CPP-Options: -DWITH_ASSISTANT -DWITH_WEBAPP
|
|
Build-Depends:
|
|
mountpoints,
|
|
yesod (>= 1.4.3),
|
|
yesod-static (>= 1.5.1),
|
|
yesod-form (>= 1.4.8),
|
|
yesod-core (>= 1.6.0),
|
|
path-pieces (>= 0.2.1),
|
|
warp (>= 3.2.8),
|
|
warp-tls (>= 3.2.2),
|
|
wai,
|
|
wai-extra,
|
|
blaze-builder,
|
|
clientsession,
|
|
template-haskell,
|
|
shakespeare (>= 2.0.11)
|
|
Other-Modules:
|
|
Assistant
|
|
Assistant.Alert
|
|
Assistant.Alert.Utility
|
|
Assistant.BranchChange
|
|
Assistant.Changes
|
|
Assistant.Commits
|
|
Assistant.Common
|
|
Assistant.CredPairCache
|
|
Assistant.DaemonStatus
|
|
Assistant.DeleteRemote
|
|
Assistant.Drop
|
|
Assistant.Fsck
|
|
Assistant.Gpg
|
|
Assistant.Install
|
|
Assistant.MakeRemote
|
|
Assistant.MakeRepo
|
|
Assistant.Monad
|
|
Assistant.NamedThread
|
|
Assistant.Pairing
|
|
Assistant.Pairing.MakeRemote
|
|
Assistant.Pairing.Network
|
|
Assistant.Pushes
|
|
Assistant.RemoteControl
|
|
Assistant.Repair
|
|
Assistant.RepoProblem
|
|
Assistant.Restart
|
|
Assistant.ScanRemotes
|
|
Assistant.Ssh
|
|
Assistant.Sync
|
|
Assistant.Threads.Committer
|
|
Assistant.Threads.ConfigMonitor
|
|
Assistant.Threads.Cronner
|
|
Assistant.Threads.DaemonStatus
|
|
Assistant.Threads.Exporter
|
|
Assistant.Threads.Glacier
|
|
Assistant.Threads.Merger
|
|
Assistant.Threads.MountWatcher
|
|
Assistant.Threads.NetWatcher
|
|
Assistant.Threads.PairListener
|
|
Assistant.Threads.ProblemFixer
|
|
Assistant.Threads.Pusher
|
|
Assistant.Threads.RemoteControl
|
|
Assistant.Threads.SanityChecker
|
|
Assistant.Threads.TransferPoller
|
|
Assistant.Threads.TransferScanner
|
|
Assistant.Threads.TransferWatcher
|
|
Assistant.Threads.Transferrer
|
|
Assistant.Threads.UpgradeWatcher
|
|
Assistant.Threads.Upgrader
|
|
Assistant.Threads.Watcher
|
|
Assistant.Threads.WebApp
|
|
Assistant.TransferQueue
|
|
Assistant.TransferSlots
|
|
Assistant.Types.Alert
|
|
Assistant.Types.BranchChange
|
|
Assistant.Types.Changes
|
|
Assistant.Types.Commits
|
|
Assistant.Types.CredPairCache
|
|
Assistant.Types.DaemonStatus
|
|
Assistant.Types.NamedThread
|
|
Assistant.Types.Pushes
|
|
Assistant.Types.RemoteControl
|
|
Assistant.Types.RepoProblem
|
|
Assistant.Types.ScanRemotes
|
|
Assistant.Types.ThreadName
|
|
Assistant.Types.ThreadedMonad
|
|
Assistant.Types.TransferQueue
|
|
Assistant.Types.TransferSlots
|
|
Assistant.Types.UrlRenderer
|
|
Assistant.Unused
|
|
Assistant.Upgrade
|
|
Assistant.WebApp
|
|
Assistant.WebApp.Common
|
|
Assistant.WebApp.Configurators
|
|
Assistant.WebApp.Configurators.AWS
|
|
Assistant.WebApp.Configurators.Delete
|
|
Assistant.WebApp.Configurators.Edit
|
|
Assistant.WebApp.Configurators.Fsck
|
|
Assistant.WebApp.Configurators.IA
|
|
Assistant.WebApp.Configurators.Local
|
|
Assistant.WebApp.Configurators.Pairing
|
|
Assistant.WebApp.Configurators.Preferences
|
|
Assistant.WebApp.Configurators.Ssh
|
|
Assistant.WebApp.Configurators.Unused
|
|
Assistant.WebApp.Configurators.Upgrade
|
|
Assistant.WebApp.Configurators.WebDAV
|
|
Assistant.WebApp.Control
|
|
Assistant.WebApp.DashBoard
|
|
Assistant.WebApp.Documentation
|
|
Assistant.WebApp.Form
|
|
Assistant.WebApp.Gpg
|
|
Assistant.WebApp.MakeRemote
|
|
Assistant.WebApp.Notifications
|
|
Assistant.WebApp.OtherRepos
|
|
Assistant.WebApp.Page
|
|
Assistant.WebApp.Pairing
|
|
Assistant.WebApp.Repair
|
|
Assistant.WebApp.RepoId
|
|
Assistant.WebApp.RepoList
|
|
Assistant.WebApp.SideBar
|
|
Assistant.WebApp.Types
|
|
Command.Assistant
|
|
Command.Watch
|
|
Command.WebApp
|
|
Utility.Mounts
|
|
Utility.Yesod
|
|
Utility.WebApp
|
|
|
|
if os(linux)
|
|
Build-Depends: hinotify (>= 0.3.10)
|
|
CPP-Options: -DWITH_INOTIFY
|
|
Other-Modules: Utility.DirWatcher.INotify
|
|
else
|
|
if os(darwin)
|
|
Build-Depends: hfsevents
|
|
CPP-Options: -DWITH_FSEVENTS
|
|
Other-Modules:
|
|
Utility.DirWatcher.FSEvents
|
|
else
|
|
if os(windows)
|
|
Build-Depends: Win32-notify
|
|
CPP-Options: -DWITH_WIN32NOTIFY
|
|
Other-Modules: Utility.DirWatcher.Win32Notify
|
|
else
|
|
if (! os(solaris) && ! os(gnu) && ! os(linux))
|
|
CPP-Options: -DWITH_KQUEUE
|
|
C-Sources: Utility/libkqueue.c
|
|
Includes: Utility/libkqueue.h
|
|
Other-Modules: Utility.DirWatcher.Kqueue
|
|
|
|
if flag(Dbus)
|
|
if (os(linux))
|
|
Build-Depends: dbus (>= 0.10.7), fdo-notify (>= 0.3)
|
|
CPP-Options: -DWITH_DBUS -DWITH_DESKTOP_NOTIFY -DWITH_DBUS_NOTIFICATIONS
|
|
Other-Modules: Utility.DBus
|
|
|
|
if flag(Pairing)
|
|
Build-Depends: network-multicast, network-info
|
|
CPP-Options: -DWITH_PAIRING
|
|
|
|
if flag(TorrentParser)
|
|
Build-Depends: torrent (>= 10000.0.0)
|
|
CPP-Options: -DWITH_TORRENTPARSER
|
|
|
|
if flag(MagicMime)
|
|
Build-Depends: magic
|
|
CPP-Options: -DWITH_MAGICMIME
|
|
|
|
if flag(Benchmark)
|
|
Build-Depends: criterion
|
|
CPP-Options: -DWITH_BENCHMARK
|
|
|
|
if flag(DebugLocks)
|
|
CPP-Options: -DDEBUGLOCKS
|
|
|
|
Other-Modules:
|
|
Annex
|
|
Annex.Action
|
|
Annex.AdjustedBranch
|
|
Annex.AdjustedBranch.Merge
|
|
Annex.AdjustedBranch.Name
|
|
Annex.AutoMerge
|
|
Annex.Balanced
|
|
Annex.BloomFilter
|
|
Annex.Branch
|
|
Annex.Branch.Transitions
|
|
Annex.BranchState
|
|
Annex.CatFile
|
|
Annex.ChangedRefs
|
|
Annex.CheckAttr
|
|
Annex.CheckIgnore
|
|
Annex.Cluster
|
|
Annex.Common
|
|
Annex.Concurrent
|
|
Annex.Concurrent.Utility
|
|
Annex.Content
|
|
Annex.Content.Presence
|
|
Annex.Content.Presence.LowLevel
|
|
Annex.Content.LowLevel
|
|
Annex.Content.PointerFile
|
|
Annex.CopyFile
|
|
Annex.CurrentBranch
|
|
Annex.Debug
|
|
Annex.Debug.Utility
|
|
Annex.Difference
|
|
Annex.DirHashes
|
|
Annex.Drop
|
|
Annex.Environment
|
|
Annex.Export
|
|
Annex.ExternalAddonProcess
|
|
Annex.FileMatcher
|
|
Annex.Fixup
|
|
Annex.GitOverlay
|
|
Annex.HashObject
|
|
Annex.Hook
|
|
Annex.Import
|
|
Annex.Ingest
|
|
Annex.Init
|
|
Annex.InodeSentinal
|
|
Annex.Journal
|
|
Annex.Link
|
|
Annex.Locations
|
|
Annex.LockFile
|
|
Annex.LockPool
|
|
Annex.Magic
|
|
Annex.MetaData
|
|
Annex.MetaData.StandardFields
|
|
Annex.Multicast
|
|
Annex.Notification
|
|
Annex.NumCopies
|
|
Annex.Path
|
|
Annex.Perms
|
|
Annex.PidLock
|
|
Annex.Proxy
|
|
Annex.Queue
|
|
Annex.ReplaceFile
|
|
Annex.RemoteTrackingBranch
|
|
Annex.SafeDropProof
|
|
Annex.SpecialRemote
|
|
Annex.SpecialRemote.Config
|
|
Annex.Ssh
|
|
Annex.StallDetection
|
|
Annex.Startup
|
|
Annex.TaggedPush
|
|
Annex.Tmp
|
|
Annex.Transfer
|
|
Annex.TransferrerPool
|
|
Annex.UntrustedFilePath
|
|
Annex.UpdateInstead
|
|
Annex.UUID
|
|
Annex.Url
|
|
Annex.VariantFile
|
|
Annex.VectorClock
|
|
Annex.VectorClock.Utility
|
|
Annex.Verify
|
|
Annex.Version
|
|
Annex.View
|
|
Annex.View.ViewedFile
|
|
Annex.Wanted
|
|
Annex.WorkerPool
|
|
Annex.WorkTree
|
|
Annex.YoutubeDl
|
|
Assistant.Install.AutoStart
|
|
Assistant.Install.Menu
|
|
Author
|
|
Backend
|
|
Backend.External
|
|
Backend.GitRemoteAnnex
|
|
Backend.Hash
|
|
Backend.URL
|
|
Backend.Utilities
|
|
Backend.Variety
|
|
Backend.VURL
|
|
Backend.VURL.Utilities
|
|
Backend.WORM
|
|
Benchmark
|
|
Build.BundledPrograms
|
|
Build.Configure
|
|
Build.DesktopFile
|
|
Build.Mans
|
|
Build.TestConfig
|
|
Build.Version
|
|
BuildInfo
|
|
BuildFlags
|
|
CmdLine
|
|
CmdLine.Action
|
|
CmdLine.Batch
|
|
CmdLine.GitAnnex
|
|
CmdLine.GitAnnex.Options
|
|
CmdLine.GitAnnexShell
|
|
CmdLine.GitAnnexShell.Checks
|
|
CmdLine.GitAnnexShell.Fields
|
|
CmdLine.AnnexSetter
|
|
CmdLine.Option
|
|
CmdLine.GitRemoteAnnex
|
|
CmdLine.GitRemoteTorAnnex
|
|
CmdLine.Seek
|
|
CmdLine.Usage
|
|
Command
|
|
Command.Add
|
|
Command.AddUnused
|
|
Command.AddUrl
|
|
Command.Adjust
|
|
Command.Assist
|
|
Command.Benchmark
|
|
Command.CalcKey
|
|
Command.CheckPresentKey
|
|
Command.Config
|
|
Command.ConfigList
|
|
Command.ConfigRemote
|
|
Command.ContentLocation
|
|
Command.Copy
|
|
Command.Dead
|
|
Command.Describe
|
|
Command.DiffDriver
|
|
Command.Direct
|
|
Command.Drop
|
|
Command.DropKey
|
|
Command.DropUnused
|
|
Command.EnableRemote
|
|
Command.EnableTor
|
|
Command.ExamineKey
|
|
Command.ExtendCluster
|
|
Command.Expire
|
|
Command.Export
|
|
Command.FilterBranch
|
|
Command.FilterProcess
|
|
Command.Find
|
|
Command.FindKeys
|
|
Command.FindRef
|
|
Command.Fix
|
|
Command.Forget
|
|
Command.FromKey
|
|
Command.Fsck
|
|
Command.FuzzTest
|
|
Command.GCryptSetup
|
|
Command.Get
|
|
Command.Group
|
|
Command.GroupWanted
|
|
Command.Help
|
|
Command.Import
|
|
Command.ImportFeed
|
|
Command.InAnnex
|
|
Command.Indirect
|
|
Command.Info
|
|
Command.Init
|
|
Command.InitCluster
|
|
Command.InitRemote
|
|
Command.Inprogress
|
|
Command.List
|
|
Command.Lock
|
|
Command.Log
|
|
Command.LookupKey
|
|
Command.Map
|
|
Command.MatchExpression
|
|
Command.Merge
|
|
Command.MetaData
|
|
Command.Migrate
|
|
Command.Mirror
|
|
Command.Move
|
|
Command.Multicast
|
|
Command.NotifyChanges
|
|
Command.NumCopies
|
|
Command.MinCopies
|
|
Command.OldKeys
|
|
Command.P2P
|
|
Command.P2PStdIO
|
|
Command.PostReceive
|
|
Command.PreCommit
|
|
Command.Proxy
|
|
Command.Pull
|
|
Command.Push
|
|
Command.ReKey
|
|
Command.ReadPresentKey
|
|
Command.RecvKey
|
|
Command.RegisterUrl
|
|
Command.ReregisterUrl
|
|
Command.Reinit
|
|
Command.Reinject
|
|
Command.RemoteDaemon
|
|
Command.RenameRemote
|
|
Command.Repair
|
|
Command.Required
|
|
Command.ResolveMerge
|
|
Command.Restage
|
|
Command.RmUrl
|
|
Command.Satisfy
|
|
Command.Schedule
|
|
Command.Semitrust
|
|
Command.SendKey
|
|
Command.SetKey
|
|
Command.SetPresentKey
|
|
Command.Smudge
|
|
Command.Status
|
|
Command.Sync
|
|
Command.Test
|
|
Command.TestRemote
|
|
Command.Transferrer
|
|
Command.TransferKey
|
|
Command.TransferKeys
|
|
Command.Trust
|
|
Command.Unannex
|
|
Command.Undo
|
|
Command.Ungroup
|
|
Command.Uninit
|
|
Command.Unlock
|
|
Command.UnregisterUrl
|
|
Command.Untrust
|
|
Command.Unused
|
|
Command.UpdateCluster
|
|
Command.UpdateProxy
|
|
Command.Upgrade
|
|
Command.VAdd
|
|
Command.VCycle
|
|
Command.VFilter
|
|
Command.VPop
|
|
Command.Version
|
|
Command.Vicfg
|
|
Command.View
|
|
Command.Wanted
|
|
Command.Whereis
|
|
Command.WhereUsed
|
|
Common
|
|
Config
|
|
Config.Cost
|
|
Config.Files
|
|
Config.Files.AutoStart
|
|
Config.DynamicConfig
|
|
Config.GitConfig
|
|
Config.Smudge
|
|
Creds
|
|
Crypto
|
|
Database.Benchmark
|
|
Database.ContentIdentifier
|
|
Database.Export
|
|
Database.Fsck
|
|
Database.Handle
|
|
Database.ImportFeed
|
|
Database.Init
|
|
Database.Keys
|
|
Database.Keys.Handle
|
|
Database.Keys.Tables
|
|
Database.Keys.SQL
|
|
Database.Queue
|
|
Database.RawFilePath
|
|
Database.Types
|
|
Database.Utility
|
|
Git
|
|
Git.AutoCorrect
|
|
Git.Branch
|
|
Git.BuildVersion
|
|
Git.Bundle
|
|
Git.CatFile
|
|
Git.CheckAttr
|
|
Git.CheckIgnore
|
|
Git.Command
|
|
Git.Command.Batch
|
|
Git.Config
|
|
Git.ConfigTypes
|
|
Git.Construct
|
|
Git.Credential
|
|
Git.CurrentRepo
|
|
Git.DiffTree
|
|
Git.DiffTreeItem
|
|
Git.Env
|
|
Git.FileMode
|
|
Git.FilePath
|
|
Git.FilterProcess
|
|
Git.Fsck
|
|
Git.GCrypt
|
|
Git.HashObject
|
|
Git.History
|
|
Git.Hook
|
|
Git.Index
|
|
Git.LockFile
|
|
Git.Log
|
|
Git.LsFiles
|
|
Git.LsTree
|
|
Git.Merge
|
|
Git.Objects
|
|
Git.PktLine
|
|
Git.Queue
|
|
Git.Quote
|
|
Git.Ref
|
|
Git.RefLog
|
|
Git.Remote
|
|
Git.Remote.Remove
|
|
Git.Repair
|
|
Git.Sha
|
|
Git.Ssh
|
|
Git.Status
|
|
Git.Tree
|
|
Git.Types
|
|
Git.UnionMerge
|
|
Git.UpdateIndex
|
|
Git.Url
|
|
Git.Version
|
|
Key
|
|
Limit
|
|
Limit.Wanted
|
|
Logs
|
|
Logs.Activity
|
|
Logs.AdjustedBranchUpdate
|
|
Logs.Chunk
|
|
Logs.Chunk.Pure
|
|
Logs.Cluster
|
|
Logs.Cluster.Basic
|
|
Logs.Config
|
|
Logs.ContentIdentifier
|
|
Logs.ContentIdentifier.Pure
|
|
Logs.Difference
|
|
Logs.Difference.Pure
|
|
Logs.EquivilantKeys
|
|
Logs.Export
|
|
Logs.Export.Pure
|
|
Logs.File
|
|
Logs.FsckResults
|
|
Logs.Group
|
|
Logs.Import
|
|
Logs.Line
|
|
Logs.Location
|
|
Logs.MapLog
|
|
Logs.MetaData
|
|
Logs.MetaData.Pure
|
|
Logs.Migrate
|
|
Logs.Multicast
|
|
Logs.NumCopies
|
|
Logs.PreferredContent
|
|
Logs.PreferredContent.Raw
|
|
Logs.Presence
|
|
Logs.Presence.Pure
|
|
Logs.Proxy
|
|
Logs.Remote
|
|
Logs.Remote.Pure
|
|
Logs.RemoteState
|
|
Logs.Restage
|
|
Logs.Schedule
|
|
Logs.SingleValue
|
|
Logs.SingleValue.Pure
|
|
Logs.Smudge
|
|
Logs.Transfer
|
|
Logs.Transitions
|
|
Logs.Trust
|
|
Logs.Trust.Basic
|
|
Logs.Trust.Pure
|
|
Logs.UUID
|
|
Logs.UUIDBased
|
|
Logs.Unused
|
|
Logs.Upgrade
|
|
Logs.View
|
|
Logs.Web
|
|
Messages
|
|
Messages.Concurrent
|
|
Messages.Internal
|
|
Messages.JSON
|
|
Messages.Progress
|
|
Messages.Serialized
|
|
P2P.Address
|
|
P2P.Annex
|
|
P2P.Auth
|
|
P2P.Http.Types
|
|
P2P.Http.Client
|
|
P2P.Http.Url
|
|
P2P.IO
|
|
P2P.Protocol
|
|
P2P.Proxy
|
|
Remote
|
|
Remote.Adb
|
|
Remote.BitTorrent
|
|
Remote.Borg
|
|
Remote.Bup
|
|
Remote.Ddar
|
|
Remote.Directory
|
|
Remote.Directory.LegacyChunked
|
|
Remote.External
|
|
Remote.External.AsyncExtension
|
|
Remote.External.Types
|
|
Remote.GCrypt
|
|
Remote.Git
|
|
Remote.GitLFS
|
|
Remote.Glacier
|
|
Remote.Helper.AWS
|
|
Remote.Helper.Chunked
|
|
Remote.Helper.Chunked.Legacy
|
|
Remote.Helper.Encryptable
|
|
Remote.Helper.ExportImport
|
|
Remote.Helper.Git
|
|
Remote.Helper.Hooks
|
|
Remote.Helper.Http
|
|
Remote.Helper.Messages
|
|
Remote.Helper.P2P
|
|
Remote.Helper.Path
|
|
Remote.Helper.ReadOnly
|
|
Remote.Helper.ThirdPartyPopulated
|
|
Remote.Helper.Special
|
|
Remote.Helper.Ssh
|
|
Remote.HttpAlso
|
|
Remote.Hook
|
|
Remote.List
|
|
Remote.List.Util
|
|
Remote.P2P
|
|
Remote.Rclone
|
|
Remote.Rsync
|
|
Remote.Rsync.RsyncUrl
|
|
Remote.S3
|
|
Remote.Tahoe
|
|
Remote.Web
|
|
Remote.WebDAV
|
|
Remote.WebDAV.DavLocation
|
|
RemoteDaemon.Common
|
|
RemoteDaemon.Core
|
|
RemoteDaemon.Transport
|
|
RemoteDaemon.Transport.GCrypt
|
|
RemoteDaemon.Transport.Tor
|
|
RemoteDaemon.Transport.Ssh
|
|
RemoteDaemon.Transport.Ssh.Types
|
|
RemoteDaemon.Types
|
|
Test
|
|
Test.Framework
|
|
Types
|
|
Types.ActionItem
|
|
Types.AdjustedBranch
|
|
Types.Availability
|
|
Types.Backend
|
|
Types.Benchmark
|
|
Types.BranchState
|
|
Types.CatFileHandles
|
|
Types.CleanupActions
|
|
Types.Cluster
|
|
Types.Command
|
|
Types.Concurrency
|
|
Types.Creds
|
|
Types.Crypto
|
|
Types.DeferredParse
|
|
Types.DesktopNotify
|
|
Types.Difference
|
|
Types.Direction
|
|
Types.Distribution
|
|
Types.Export
|
|
Types.FileMatcher
|
|
Types.GitConfig
|
|
Types.GitRemoteAnnex
|
|
Types.Group
|
|
Types.Import
|
|
Types.IndexFiles
|
|
Types.Key
|
|
Types.KeySource
|
|
Types.Link
|
|
Types.LockCache
|
|
Types.Messages
|
|
Types.MetaData
|
|
Types.Mime
|
|
Types.NumCopies
|
|
Types.ProposedAccepted
|
|
Types.RefSpec
|
|
Types.Remote
|
|
Types.RemoteConfig
|
|
Types.RemoteState
|
|
Types.RepoVersion
|
|
Types.ScheduledActivity
|
|
Types.StandardGroups
|
|
Types.StallDetection
|
|
Types.StoreRetrieve
|
|
Types.Test
|
|
Types.Transfer
|
|
Types.Transferrer
|
|
Types.TransferrerPool
|
|
Types.Transitions
|
|
Types.TrustLevel
|
|
Types.UUID
|
|
Types.Upgrade
|
|
Types.UrlContents
|
|
Types.VectorClock
|
|
Types.View
|
|
Types.WorkerPool
|
|
Upgrade
|
|
Upgrade.V0
|
|
Upgrade.V1
|
|
Upgrade.V2
|
|
Upgrade.V3
|
|
Upgrade.V4
|
|
Upgrade.V5
|
|
Upgrade.V5.Direct
|
|
Upgrade.V6
|
|
Upgrade.V7
|
|
Upgrade.V8
|
|
Upgrade.V9
|
|
Utility.Aeson
|
|
Utility.Android
|
|
Utility.Applicative
|
|
Utility.Attoparsec
|
|
Utility.AuthToken
|
|
Utility.Base64
|
|
Utility.Batch
|
|
Utility.Bloom
|
|
Utility.MonotonicClock
|
|
Utility.CoProcess
|
|
Utility.CopyFile
|
|
Utility.Daemon
|
|
Utility.Data
|
|
Utility.DataUnits
|
|
Utility.Debug
|
|
Utility.DebugLocks
|
|
Utility.DirWatcher
|
|
Utility.DirWatcher.Types
|
|
Utility.Directory
|
|
Utility.Directory.Create
|
|
Utility.Directory.Stream
|
|
Utility.DiskFree
|
|
Utility.Dot
|
|
Utility.DottedVersion
|
|
Utility.Env
|
|
Utility.Env.Basic
|
|
Utility.Env.Set
|
|
Utility.Exception
|
|
Utility.FileMode
|
|
Utility.FileSize
|
|
Utility.FileSystemEncoding
|
|
Utility.Format
|
|
Utility.FreeDesktop
|
|
Utility.Glob
|
|
Utility.Gpg
|
|
Utility.Hash
|
|
Utility.HtmlDetect
|
|
Utility.HumanNumber
|
|
Utility.HumanTime
|
|
Utility.InodeCache
|
|
Utility.IPAddress
|
|
Utility.LockFile
|
|
Utility.LockPool
|
|
Utility.LockPool.LockHandle
|
|
Utility.LockPool.STM
|
|
Utility.LogFile
|
|
Utility.Lsof
|
|
Utility.MagicWormhole
|
|
Utility.Matcher
|
|
Utility.MD5
|
|
Utility.Metered
|
|
Utility.Misc
|
|
Utility.Monad
|
|
Utility.MoveFile
|
|
Utility.Network
|
|
Utility.NotificationBroadcaster
|
|
Utility.OpenFd
|
|
Utility.OptParse
|
|
Utility.OSX
|
|
Utility.PID
|
|
Utility.PartialPrelude
|
|
Utility.Path
|
|
Utility.Path.AbsRel
|
|
Utility.Path.Max
|
|
Utility.Path.Tests
|
|
Utility.Path.Windows
|
|
Utility.Percentage
|
|
Utility.Process
|
|
Utility.Process.Shim
|
|
Utility.Process.Transcript
|
|
Utility.QuickCheck
|
|
Utility.RawFilePath
|
|
Utility.ResourcePool
|
|
Utility.Rsync
|
|
Utility.SafeCommand
|
|
Utility.SafeOutput
|
|
Utility.Scheduled
|
|
Utility.Scheduled.QuickCheck
|
|
Utility.Shell
|
|
Utility.ShellEscape
|
|
Utility.SimpleProtocol
|
|
Utility.Split
|
|
Utility.SshConfig
|
|
Utility.SshHost
|
|
Utility.StatelessOpenPGP
|
|
Utility.Su
|
|
Utility.SystemDirectory
|
|
Utility.Terminal
|
|
Utility.TimeStamp
|
|
Utility.TList
|
|
Utility.Tense
|
|
Utility.ThreadLock
|
|
Utility.ThreadScheduler
|
|
Utility.Tmp
|
|
Utility.Tmp.Dir
|
|
Utility.Tor
|
|
Utility.Touch
|
|
Utility.Tuple
|
|
Utility.Url
|
|
Utility.Url.Parse
|
|
Utility.UserInfo
|
|
Utility.Verifiable
|
|
|
|
if (os(windows))
|
|
Other-Modules:
|
|
Utility.LockFile.Windows
|
|
Utility.LockPool.Windows
|
|
else
|
|
Other-Modules:
|
|
Utility.LockFile.Posix
|
|
Utility.LockPool.Posix
|
|
Annex.LockPool.PosixOrPid
|
|
Utility.LockFile.LockStatus
|
|
Utility.LockFile.PidLock
|
|
Utility.LockPool.PidLock
|
|
Utility.LinuxMkLibs
|