1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
|
Source: rust-filespooler
Section: rust
Priority: optional
Build-Depends: debhelper-compat (= 13),
dh-sequence-cargo
Build-Depends-Arch: cargo:native,
rustc:native,
libstd-rust-dev,
librust-anyhow-1+backtrace-dev (>= 1.0.57-~~),
librust-anyhow-1+default-dev (>= 1.0.57-~~),
librust-bytes-1+default-dev (>= 1.1.0-~~),
librust-chrono-0.4+default-dev (>= 0.4.19-~~),
librust-clap-4+derive-dev (>= 4.1-~~),
librust-clap-4+error-context-dev (>= 4.1-~~),
librust-clap-4+help-dev (>= 4.1-~~),
librust-clap-4+std-dev (>= 4.1-~~),
librust-clap-4+usage-dev (>= 4.1-~~),
librust-clap-4+wrap-help-dev (>= 4.1-~~),
librust-command-group-5+default-dev (>= 5.0.1-~~),
librust-crc32fast-1+default-dev (>= 1.3.2-~~),
librust-fd-lock-3+default-dev (>= 3.0.5-~~),
librust-rmp-serde-1+default-dev (>= 1.1.0-~~),
librust-serde-1+default-dev (>= 1.0.137-~~),
librust-serde-1+derive-dev (>= 1.0.137-~~),
librust-tempfile-3+default-dev (>= 3.3.0-~~),
librust-tracing-0.1+default-dev (>= 0.1.34-~~),
librust-tracing-subscriber-0.3+fmt-dev (>= 0.3.11-~~),
librust-tracing-subscriber-0.3+std-dev (>= 0.3.11-~~),
librust-uuid-1+default-dev,
librust-uuid-1+v4-dev,
librust-wait-timeout-0.2+default-dev
Maintainer: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
Uploaders:
John Goerzen <jgoerzen@complete.org>
Standards-Version: 4.7.2
Vcs-Git: https://salsa.debian.org/rust-team/debcargo-conf.git [src/filespooler]
Vcs-Browser: https://salsa.debian.org/rust-team/debcargo-conf/tree/master/src/filespooler
Homepage: https://www.complete.org/filespooler/
X-Cargo-Crate: filespooler
Rules-Requires-Root: no
Package: librust-filespooler-dev
Architecture: any
Multi-Arch: same
Depends:
${misc:Depends},
librust-anyhow-1+backtrace-dev (>= 1.0.57-~~),
librust-anyhow-1+default-dev (>= 1.0.57-~~),
librust-bytes-1+default-dev (>= 1.1.0-~~),
librust-chrono-0.4+default-dev (>= 0.4.19-~~),
librust-clap-4+derive-dev (>= 4.1-~~),
librust-clap-4+error-context-dev (>= 4.1-~~),
librust-clap-4+help-dev (>= 4.1-~~),
librust-clap-4+std-dev (>= 4.1-~~),
librust-clap-4+usage-dev (>= 4.1-~~),
librust-clap-4+wrap-help-dev (>= 4.1-~~),
librust-command-group-5+default-dev (>= 5.0.1-~~),
librust-crc32fast-1+default-dev (>= 1.3.2-~~),
librust-fd-lock-3+default-dev (>= 3.0.5-~~),
librust-rmp-serde-1+default-dev (>= 1.1.0-~~),
librust-serde-1+default-dev (>= 1.0.137-~~),
librust-serde-1+derive-dev (>= 1.0.137-~~),
librust-tempfile-3+default-dev (>= 3.3.0-~~),
librust-tracing-0.1+default-dev (>= 0.1.34-~~),
librust-tracing-subscriber-0.3+fmt-dev (>= 0.3.11-~~),
librust-tracing-subscriber-0.3+std-dev (>= 0.3.11-~~),
librust-uuid-1+default-dev,
librust-uuid-1+v4-dev,
librust-wait-timeout-0.2+default-dev
Provides:
librust-filespooler+default-dev (= ${binary:Version}),
librust-filespooler-1-dev (= ${binary:Version}),
librust-filespooler-1+default-dev (= ${binary:Version}),
librust-filespooler-1.2-dev (= ${binary:Version}),
librust-filespooler-1.2+default-dev (= ${binary:Version}),
librust-filespooler-1.2.4-dev (= ${binary:Version}),
librust-filespooler-1.2.4+default-dev (= ${binary:Version})
Description: Sequential, distributed, POSIX-style job queue processing - Rust source code
Source code for Debianized Rust crate "filespooler"
Package: filespooler
Architecture: any
Section: utils
Depends:
${misc:Depends},
${shlibs:Depends},
${cargo:Depends}
Recommends:
${cargo:Recommends}
Suggests:
${cargo:Suggests}
Provides:
${cargo:Provides}
Built-Using: ${cargo:Built-Using}
Static-Built-Using: ${cargo:Static-Built-Using}
Description: Sequential, distributed, POSIX-style job queue processing
Filespooler is a Unix-style tool that facilitates local or remote command
execution, complete with stdin capture, with easy integration with various
tools. Here's a brief Filespooler feature list:
.
- It can easily use tools such as S3, Dropbox, Syncthing, NNCP, ssh, UUCP, USB
drives, CDs, etc. as transport.
.
- Translation: you can use basically anything that is a filesystem as a
transport
.
- It can use arbitrary decoder command pipelines (eg, zcat, stdcat, gpg, age,
etc) to pre-process stored packets.
.
- It can send and receive packets by pipes.
.
- Its storage format is simple on-disk files with locking.
.
- It supports one-to-one and one-to-many configurations.
.
- Locking is unnecessary when writing new jobs to the queue, and many arbitrary
tools (eg, Syncthing, Dropbox, etc) can safely write directly to the queue
without any assistance.
.
- Queue processing is strictly ordered based on the order on the creation
machine, even if job files are delivered out of order to the destination.
.
- stdin can be piped into the job creation tool, and piped to a later executor
at process time on a remote machine.
.
- The file format is lightweight; less than 100 bytes overhead unless large
extra parameters are given.
.
- The queue format is lightweight; having 1000 different queues on a Raspberry
Pi would be easy.
.
- Processing is stream-based throughout; arbitrarily-large packets are fine and
sizes in the TB range are no problem.
.
- The Filespooler command, fspl, is extremely lightweight, consuming less than
10MB of RAM on x86_64.
.
- Filespooler has extensive documentation.
.
Filespooler consists of a command-line tool (fspl) for interacting with queues.
It also consists of a Rust library that is used by fspl. main.rs for fspl is
just a few lines long.
|