Commit graph

233 commits

Author SHA1 Message Date
raf
3262715cf0
Merge pull request #5 from NotAShelf/notashelf/push-zlynssnnvsqo
stash: add watch subcommand
2025-08-13 08:01:01 +03:00
291616e253
chore: bump crate version
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964832b0d19cf8919ed8503db5463dcdf54
2025-08-12 23:01:13 +03:00
9d0ad95e07
db: treat valid UTF-8 entries as text/plain
Makes JSON output more... servicable.

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964f642a02e990979f93f53a8b69764b469
2025-08-12 23:01:12 +03:00
f9457911ae
chore: bump crate version
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a696454149d06a8bcd3df62e1d9549d921b5b
2025-08-12 22:57:21 +03:00
9d40dde63a
commands/watch: make it trait-based; move out of main
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964c16396f2013e7f8a5c1a6c0c3bb2aeaa
2025-08-12 22:57:20 +03:00
d9b0908ada
db: allow listing database contents as JSON
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964a756588168f476d984d18f9e8d65bc4e
2025-08-12 22:57:19 +03:00
1a9625ecc3
chore: bump crate version
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69645f6727a52e7caefe47fb1adde3de20af
2025-08-12 21:57:33 +03:00
fbebdf6ed6
meta: optimize release profile; enable LTO
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a696473887a4d9a526d93c6e1a93de5e3a85e
2025-08-12 21:54:01 +03:00
7d1aa21cdd
db: switch from image to imagesize
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964ab449f38999b5036d6e5554ccae7c049
2025-08-12 21:54:00 +03:00
5bcc23b6f9
stash: don't initialize watch daemon with None
Fixes the daemon always updating the latest entry.

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a696489a2e9a0928ff799a4210c160014c485
2025-08-12 21:53:59 +03:00
6c5408abd1
stash: make watch loop async
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69641a4f39f0368de1bcf5780afbe8e5c0b1
2025-08-12 21:53:47 +03:00
d6e4f47bdd
docs: update README with project comparison; document watch feature
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a696451e174b6ba4f90cfb4c1547ebd2f694b
2025-08-12 19:21:14 +03:00
fcaf5fb14f
stash: print --help text if no subcommand is provided
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69646361b7ade52ee73a6aa11be859132a94
2025-08-12 19:21:13 +03:00
d9029ef8b7
docs: update README with the watch feature
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69640e1c77cc479b40f276ba77b736040504
2025-08-12 19:07:39 +03:00
4f725425fc
db: switch to sqlite as the primary backend
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69648f81d0d094e11a3e0f0a19d3b8eccd5d
2025-08-12 19:07:38 +03:00
efcbe17d73
stash: add watch subcommand
Watches primary clipboard for changes and stores them in the database.

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964de9949bbe6d8b9301ca97ae785852b46
2025-08-12 19:07:26 +03:00
raf
9c26b6e8d0
Merge pull request #4 from NotAShelf/notashelf/push-pvkyrosxlwkp
treewide: general cleanup
2025-08-12 17:40:19 +03:00
aa602edbee
treewide: fix remaining clippy warnings
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964a4f18b72e3fa774cec6b81baa8267cb6
2025-08-12 17:34:43 +03:00
7ebe514e3a
stash: deduplicate error reporting
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964f0f3f13190dde392fc859718716b56a8
2025-08-12 17:34:42 +03:00
6e21021306
treewide: improve logging; custom error types with thiserror
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a696464e4123d15cfaedf4727776e55948369
2025-08-12 17:34:41 +03:00
7dd3db4c88
ci: publish tagged releases
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964901463c7111df0764272c26ff83eea9f
2025-08-12 17:34:40 +03:00
c23c5af8c1
stash: allow controlling verbosity from the command line
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69641d5d727b1d95f8c9e2b851b3a194315a
2025-08-12 17:34:39 +03:00
d8d27fab22
stash: remove redundant log messages
Ported from print-based logging, now redundant

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964c1ba52c792bd3c2a3e15a97a3b03260e
2025-08-12 17:34:38 +03:00
0e4f4018ab
stash: use more granular STASH_CLIPBOARD_STATE
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964d59d2ce974ba482aee9b1c8f20cdb44e
2025-08-12 17:34:37 +03:00
0c8003d636
stash: remove redundant import flag
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964348f1ad4915890f0b4ccd59619cc3e1a
2025-08-12 17:34:36 +03:00
bb2c66fd3e
meta: add other manifest keys
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69648070cedba859f4657d981dd4cbbd9310
2025-08-12 15:03:42 +03:00
254c288111
treewide: improve logging; get rid of unwrap()s
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a696442ff25c3f65bb2d5f68e0d78a569fd76
2025-08-12 15:03:41 +03:00
b0820a1940
modularize codebase
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69648ea836bfeb539450db14a666c623412e
2025-08-12 15:01:32 +03:00
478c020579
nix: clean up packaging
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69643e155d95fbed1d10900bbe4d7ff03b15
2025-08-12 15:01:31 +03:00
18fc1c768e
docs: document basic usage
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69648ccafab5241bf0abd911e6351aa9e884
2025-08-12 15:01:30 +03:00
5f9bee94f4
vendor systemd service
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964b2eba363a476a17bc9cee394e4a82b1d
2025-08-12 15:01:29 +03:00
e2c10f386f
first working prototype
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a6964dedc7f122b26b0e2e5040248b7866c93
2025-08-12 15:01:28 +03:00
5687d2d6cd
initial commit
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6a6a69646c6d8861791ac018543ebd16619a53d3
2025-08-12 15:01:13 +03:00