@@ -186,9 +186,7 @@ static FlakeInput parseFlakeInput(
186186 url = attr.value ->string_view ();
187187 else if (attr.value ->type () == nPath) {
188188 auto path = attr.value ->path ();
189- if (path.accessor != flakeDir.accessor
190- // FIXME: hack necessary since the parser currently stores all paths as inside rootFS.
191- && flakeDir.accessor == state.rootFS )
189+ if (path.accessor != flakeDir.accessor )
192190 throw Error (" input attribute path '%s' at %s must be in the same source tree as %s" ,
193191 path, state.positions [attr.pos ], flakeDir);
194192 url = " path:" + flakeDir.path .makeRelative (path.path );
@@ -337,9 +335,7 @@ static Flake readFlake(
337335 state.symbols [setting.name ],
338336 std::string (state.forceStringNoCtx (*setting.value , setting.pos , " " )));
339337 else if (setting.value ->type () == nPath) {
340- // FIXME: hack necessary since the parser currently stores all paths as inside rootFS.
341- SourcePath path (rootDir.accessor , setting.value ->path ().path );
342- auto storePath = fetchToStore (*state.store , path, FetchMode::Copy);
338+ auto storePath = fetchToStore (*state.store , setting.value ->path (), FetchMode::Copy);
343339 flake.config .settings .emplace (
344340 state.symbols [setting.name ],
345341 state.store ->toRealPath (storePath));
0 commit comments