nixpkgs/modules/system/boot/readonly-mountpoint.c
Shea Levy f1d48aec43 Don't mount /nix/store ro if it's a mountpoint
In principle this could work, but the current remount logic in nix fails
to remount mountpoints that are root in their own filesystem (as would
be the case with bind-mounting a mountpoint over itself). nixos/nix#98
is aimed at fixing this.

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-03-08 10:42:34 -05:00

21 lines
333 B
C

#include <sys/statvfs.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char ** argv) {
struct statvfs stat;
if (argc != 2) {
fprintf(stderr, "Usage: %s PATH", argv[0]);
exit(2);
}
if (statvfs(argv[1], &stat) != 0) {
perror("statvfs");
exit(3);
}
if (stat.f_flag & ST_RDONLY)
exit(0);
else
exit(1);
}