From: François-René Rideau <[email-masked]>
Date: Mon, 9 Aug 2021 13:54:15 -0400

I believe my issue is the same and that I could narrow it down more.

The `mount --bind /nixos/nix /nix` command works, but if I put a line
`"/nixos/nix /nix bind defaults"` in `/etc/fstab`, then mount will instead
fail with: `mount: /nix: unknown filesystem type 'bind'.`

If instead in fstab I use type `none` and put `bind` in the options,
then `mount /nix` works at the command-line but interestlingly
`guix system reconfigure guix-config.scm` still fails with:
```
guix system: warning: exception caught while executing 'start' on
service 'file-system-/nix':
In procedure mount: mount "/nixos/nix" on "///nix": No such device
guix system: warning: some services could not be upgraded
```

Below is the `file-systems` definition of my `guix-config.scm`, in an attempt
to share the `/nix` directory of my NixOS installation with GuixSD, just like
I share the /guix directory of my GuixSD installation with NixOS:

```
  (file-systems
    (append
     (let* ((boot (file-system
                   ;;(uuid "C1D9-0574")
                   (device "/dev/nvme0n1p1")
                   (mount-point "/boot")
                   (type "vfat")))
            (root (file-system
                   ;;(device "/dev/mapper/yew-guix")
                   (device (uuid "43f7ca3e-c107-4f15-9756-5d3cbacad0a0"))
                   (mount-point "/")
                   (type "btrfs")
                   #;(flags '(no-atime))
                   (options "compress=zstd")
                   (dependencies mapped-devices)))
            (home (file-system
                   ;;(device "/dev/yew/home")
                   (device (uuid "a3602532-3527-4afc-9b40-5d01c58b5aa8"))
                   (mount-point "/home")
                   (type "ext4")
                   (dependencies mapped-devices)))
            (nixos (file-system
                    (device (uuid "ab3d691b-227a-4a05-a084-6928abbf0959"))
                    (mount-point "/nixos")
                    (type "ext4")
                    (dependencies mapped-devices)))
            (nix (file-system
                  (device "/nixos/nix")
                  (mount-point "/nix")
                  ;;(type "bind") ;; fails both at CLI and during reconfigure
                  (type "none") (option "bind") ;; CLI OK, reconfigure FAIL
                  (dependencies (list nixos)))))
       (append (list boot root home nixos nix) %base-file-systems))))
```

Note that neither bind nor none appear in `/proc/filesystem` nor in
`/run/booted-system/kernel/lib/modules/5.13.8/kernel/fs` — but then
neither do they on NixOS and yet it all works there.