Commit Graph

348 Commits

Author SHA1 Message Date
ed
a9174e5dee ui-option to force-download files (closes #1058);
* button "dl" in settings UI (always takes precedence)
* global-option and/or volflag "dlni"
* url-parameter ?dlni or ?dlni=0

the preference is applied per-volume when navigating between folders,
unless the settings-button has been toggled, which overrides that
2025-12-01 19:02:03 +00:00
ed
cedfc44420 panic if --shr overlaps with volumes 2025-11-30 20:06:56 +00:00
ed
79e1078671 panic if unknown users in ipu; closes #959 2025-11-19 23:28:39 +09:00
ed
db60951d9f apply per-vol (md|lg)_sb during nav 2025-11-02 00:58:13 +00:00
ed
36ab77e0bf fix og-specific issue with single-file volumes;
if a textfile was shared with permission r below/inside a more
restrictive volume, then:

* if the parent volume had either permission g or h, then the files in
  the parent folder could be accessed

* if the parent volume had anything stricter than g or h, then filenames
  in the parent volume could be seen, but not accessed
2025-10-25 14:23:55 +00:00
ed
b1efc0065c disable e2d for single-file volumes;
avoids some warnings in the log
2025-10-25 13:06:04 +00:00
ed
a325353b1b option to default-disable tooltips; closes #937 2025-10-25 00:39:37 +00:00
ed
fff7291dcf show h vols in ls and tree,
and compensate with some optimizations
2025-10-23 21:44:28 +00:00
ed
5d96862c45 lifetime maxval; closes #926 2025-10-17 18:59:13 +00:00
ed
98da5cc509 ui-elements can be hidden (#928) 2025-10-17 16:29:55 +00:00
ed
b4fda5f1d6 subtract users/groups from access; closes #845 2025-10-17 00:01:54 +00:00
ed
f2caab6119 dedup: explicit reflink/ficlone on python<3.14 2025-10-11 23:43:09 +00:00
AppleTheGolden
8ef6dda74b view .cbz in browser (#916)
adds functionality to allow browsing .cbz directly in the browser, without downloading them and using a separate program. meant for quickly inspecting the contents, less so for reading.

adds two new api calls, ?zls and ?zget, which return a file listing of a zip file and a specific file in the archive, respectively.

uses the zipfile module, so no support for .cbr etc
2025-10-11 23:17:24 +00:00
ed
50276c0cfa show mediatags in shares 2025-10-05 20:06:17 +00:00
ed
2248705e1a --ui-filesz can have trailing dash 2025-10-04 11:59:53 +00:00
ed
2ce32e4fb6 apply vol-favicon on nav; closes #882 2025-10-04 11:16:16 +00:00
ed
1bca86c6e1 thx pyright 2025-09-29 23:07:03 +00:00
ed
470b504843 raster favicons; closes #383, #473 2025-09-29 21:50:13 +00:00
ed
435db14798 pregen html_head when static 2025-09-29 21:47:53 +00:00
ed
234eddec90 filesize formats; closes #184 2025-09-28 01:14:00 +00:00
ed
e3baf932f3 reflinks are non-e2d safe 2025-09-27 19:29:36 +00:00
ed
80ca78516e create idp-db when necessary (#849) 2025-09-24 21:32:15 +00:00
ed
1460fe97ac rotf timezone option; closes #802 2025-09-21 21:21:41 +00:00
ed
6a24432019 windows: fix sharing entire drives (closes #837);
broke in 8b66874b
2025-09-21 19:44:35 +00:00
ed
8b66874b85 be case-sensitive on windows/macos (closes #781);
on Windows and Macos, most filesystems are case-insensitive,
which can lead to dangerous situations

one example is when another program (not copyparty or its UI) wants to
rename a file from `Foo` to `foo`; the program will probably start by
checking if `foo` exists and then delete it, however this would match
`Foo` and confuse the program into deleting the wrong file

fix this by adding a VERY EXPENSIVE detector to prevent this,
by listing the parent folder and checking if the case matches

this check will auto-enable when a case-insensitive FS is detected on
startup, but option `casechk` (global or volflag) can override this
2025-09-14 23:39:46 +00:00
ed
3a2381ff2d webdav: fix depth:0 in rootless vfs;
also safeguards against potential issues with invalid
paths if the api is used incorrectly from a plugin
2025-09-14 23:27:33 +00:00
ed
83bd197438 warn on invalid idp-volume mapping 2025-09-14 23:20:45 +00:00
ed
3e97a77784 cosmetic fixes after edafa1586 2025-09-13 21:04:16 +00:00
ed
e0a92ba72d fence fileshares to just those files
when a share is created for just a single file, it was possible to
guess other filenames in the source folder and access those files
2025-09-07 22:48:31 +00:00
ed
edafa1586a volflag to block sharing of a volume 2025-09-07 17:20:51 +00:00
ed
19a4c45389 rbac disk-info and --ver (closes #726);
options --du-who and --ver-who specifies who can see the disk-info
(disk-usage, disk-free) and server-version based on user permissions
2025-09-05 19:48:38 +00:00
ed
09f22993be idp login/logout routes (#761) 2025-09-05 18:44:30 +00:00
ed
230a146209 ignore dotfiles in config-folders; closes #727
macos adds garbage files named ._something.conf
into config folders, crashing the config parser
2025-09-03 19:57:28 +00:00
ed
543b7ea959 add --auth-ord; closes #689 2025-08-26 23:33:53 +00:00
ed
d30240b431 spaces in comma-sep. opts 2025-08-26 23:12:10 +00:00
ed
0491123bb2 add markdown newlines option (#552) 2025-08-23 22:29:41 +00:00
ed
cc65b1b551 more helpful configparser 2025-08-21 21:26:13 +00:00
ed
98d117b8ad music-thumbs: use embedded art as default (closes #252);
previous behavior can be restored with --th-spec-p 2

thumbnails cache (.hist/th/) must be deleted to take effect
2025-08-16 23:00:15 +00:00
ed
d9046f7e01 fix xvol false-positive;
given the following config:

* volume /a mapped to /srv/nas/
* volume /b mapped to /srv/nas/foo/
* anyone can read volume /a but not /b

accessing /a/foo/ would incorrectly fail because the xvol-check
would select /b based on its abspath being physically closer,
not considering that the same abspath is reachable from /a
2025-08-16 21:55:51 +00:00
ed
62e072a2ed restrict account to ip/subnet; closes #397 2025-08-15 20:12:17 +00:00
ed
a4649d1e71 generic header auth (closes #504);
extends idp-auth to also accept a collection of headers (and
expected values of those headers) and map those to certain users

useful for Tailscale-User-Login and similar
2025-08-15 19:19:21 +00:00
ed
d56230573d separate audio-transcode timeout (#598) 2025-08-14 20:02:32 +00:00
ed
7f44875061 autogen pw for blank-pw users (closes #596);
if a user is defined with a blank password,
generate a strong password for that user
2025-08-14 19:22:04 +00:00
ed
68907eaf48 add "@acct", a group with all authed users; closes #604 2025-08-14 19:11:57 +00:00
ed
346515ccf1 add optional username login; closes #511 2025-08-07 20:29:44 +00:00
ed
2943c7f2d5 move the docker config smoketest over here 2025-08-07 18:30:40 +00:00
ed
f9502c3df3 add idp-cookie; for high-traffic / glitchy auth servers 2025-08-03 23:27:53 +00:00
ed
848315c009 do not force d2d with default vfs; #295
fixes v1.18.3 regression
2025-08-03 22:43:57 +00:00
ed
0d09fb6818 audio transcoding tweaks 2025-08-03 21:23:41 +00:00
ed
c160428810 support tabs in configfiles; closes #400 2025-08-01 18:00:48 +00:00