diff options
author | Eric Wong <e@80x24.org> | 2022-01-30 21:49:08 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2022-01-31 02:04:11 +0000 |
commit | 14fa0abdcc7b6513540e529375e53edd74ce13e8 (patch) | |
tree | 9f0de95629590def3c2dd72df28243faf129014e /lib/PublicInbox/Over.pm | |
parent | 6beeb75e5ccddf9f4e8eefc62cbe349972f59917 (diff) | |
download | public-inbox-14fa0abdcc7b6513540e529375e53edd74ce13e8.tar.gz |
btrfs is Linux-only at the moment (and likely to remain that way for practical purposes). So rely on Linux ABI stability and use the `syscall' and `ioctl' perlops rather than relying on Inline::C. Inline::C (and gcc||clang) are monstrous dependencies which we can't expect users to have. This makes supporting new architectures more difficult, but new architectures come along rarely and this reduces the burden for the majority of Linux users on popular architectures (while still avoiding the distribution of pre-built binaries). Link: https://public-inbox.org/meta/YbCPWGaJEkV6eWfo@codewreck.org/
Diffstat (limited to 'lib/PublicInbox/Over.pm')
-rw-r--r-- | lib/PublicInbox/Over.pm | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/PublicInbox/Over.pm b/lib/PublicInbox/Over.pm index 30ad949d..786f9d92 100644 --- a/lib/PublicInbox/Over.pm +++ b/lib/PublicInbox/Over.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2018-2021 all contributors <meta@public-inbox.org> +# Copyright (C) all contributors <meta@public-inbox.org> # License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt> # for XOVER, OVER in NNTP, and feeds/homepage/threads in PSGI @@ -18,11 +18,10 @@ sub dbh_new { my $f = delete $self->{filename}; if (!-s $f) { # SQLite defaults mode to 0644, we want 0666 if ($rw) { - require PublicInbox::Spawn; + require PublicInbox::Syscall; my ($dir) = ($f =~ m!(.+)/[^/]+\z!); - PublicInbox::Spawn::nodatacow_dir($dir); + PublicInbox::Syscall::nodatacow_dir($dir); open my $fh, '+>>', $f or die "failed to open $f: $!"; - PublicInbox::Spawn::nodatacow_fd(fileno($fh)); } else { $self->{filename} = $f; # die on stat() below: } |