An effect for interacting with the filesystem.
Instances2DispatchOf, StaticRep
type DispatchOf FileSystem = 'Static 'WithSideEffectsDefined in effectful-2.3.0.0 · Effectful.FileSystem.Effectdata StaticRep FileSystemFileSystem
:: a typeCtrl KGHC 9.10.3 · lts/ghc-9.10.x · c74966e · 2026-09-27
Moduleeffectful-2.3.0.0Haskell2010
An effect for interacting with the filesystem.
type DispatchOf FileSystem = 'Static 'WithSideEffectsDefined in effectful-2.3.0.0 · Effectful.FileSystem.Effectdata StaticRep FileSystemFileSystemRun the FileSystem effect.
Lifted createDirectory.
Lifted createDirectoryIfMissing.
Lifted removeDirectory.
Lifted removeDirectoryRecursive.
Lifted removePathForcibly.
Lifted renameDirectory.
Lifted listDirectory.
Lifted getDirectoryContents.
Lifted getCurrentDirectory.
Lifted setCurrentDirectory.
Lifted withCurrentDirectory.
Lifted getHomeDirectory.
Lifted getXdgDirectory.
Lifted getXdgDirectoryList.
Lifted getAppUserDataDirectory.
Lifted getUserDocumentsDirectory.
Lifted getTemporaryDirectory.
Lifted removeFile.
Lifted renameFile.
Lifted renamePath.
Lifted copyFile.
Lifted copyFileWithMetadata.
Lifted getFileSize.
Lifted canonicalizePath.
Lifted makeAbsolute.
Lifted makeRelativeToCurrentDirectory.
Lifted doesPathExist.
Lifted doesFileExist.
Lifted doesDirectoryExist.
Lifted findExecutable.
Lifted findExecutables.
Lifted findExecutablesInDirectories.
Lifted findFile.
Lifted findFiles.
Lifted findFileWith.
Lifted findFilesWith.
Lifted createFileLink.
Lifted createDirectoryLink.
Lifted removeDirectoryLink.
Lifted pathIsSymbolicLink.
Lifted getSymbolicLinkTarget.
Lifted getPermissions.
Lifted setPermissions.
Lifted copyPermissions.
Lifted getAccessTime.
Lifted getModificationTime.
Lifted setAccessTime.
Lifted setModificationTime.
Special directories for storing user-specific application data, configuration, and cache files, as specified by the XDG Base Directory Specification.
Note: On Windows, XdgData and XdgConfig usually map to the same directory.
XdgDataFor data files (e.g. images).
It uses the XDG_DATA_HOME environment variable.
On non-Windows systems, the default is ~/.local/share.
On Windows, the default is %APPDATA%
(e.g. C:/Users/<user>/AppData/Roaming).
Can be considered as the user-specific equivalent of /usr/share.
XdgConfigFor configuration files.
It uses the XDG_CONFIG_HOME environment variable.
On non-Windows systems, the default is ~/.config.
On Windows, the default is %APPDATA%
(e.g. C:/Users/<user>/AppData/Roaming).
Can be considered as the user-specific equivalent of /etc.
XdgCacheFor non-essential files (e.g. cache).
It uses the XDG_CACHE_HOME environment variable.
On non-Windows systems, the default is ~/.cache.
On Windows, the default is %LOCALAPPDATA%
(e.g. C:/Users/<user>/AppData/Local).
Can be considered as the user-specific equivalent of /var/cache.
XdgStateFor data that should persist between (application) restarts,
but that is not important or portable enough to the user that it
should be stored in XdgData.
It uses the XDG_STATE_HOME environment variable.
On non-Windows sytems, the default is ~/.local/state. On
Windows, the default is %LOCALAPPDATA%
(e.g. C:/Users/<user>/AppData/Local).
Bounded XdgDirectoryDefined in directory-1.3.8.5 · System.Directory.Internal.CommonEnum XdgDirectoryDefined in directory-1.3.8.5 · System.Directory.Internal.CommonEq XdgDirectoryDefined in directory-1.3.8.5 · System.Directory.Internal.CommonOrd XdgDirectoryDefined in directory-1.3.8.5 · System.Directory.Internal.CommonRead XdgDirectoryDefined in directory-1.3.8.5 · System.Directory.Internal.CommonShow XdgDirectoryDefined in directory-1.3.8.5 · System.Directory.Internal.CommonSearch paths for various application data, as specified by the XDG Base Directory Specification.
The list of paths is split using System.FilePath.searchPathSeparator,
which on Windows is a semicolon.
Note: On Windows, XdgDataDirs and XdgConfigDirs usually yield the same result.
XdgDataDirsFor data files (e.g. images).
It uses the XDG_DATA_DIRS environment variable.
On non-Windows systems, the default is /usr/local/share/ and
/usr/share/.
On Windows, the default is %PROGRAMDATA% or %ALLUSERSPROFILE%
(e.g. C:/ProgramData).
XdgConfigDirsFor configuration files.
It uses the XDG_CONFIG_DIRS environment variable.
On non-Windows systems, the default is /etc/xdg.
On Windows, the default is %PROGRAMDATA% or %ALLUSERSPROFILE%
(e.g. C:/ProgramData).
Bounded XdgDirectoryListDefined in directory-1.3.8.5 · System.Directory.Internal.CommonEnum XdgDirectoryListDefined in directory-1.3.8.5 · System.Directory.Internal.CommonEq XdgDirectoryListDefined in directory-1.3.8.5 · System.Directory.Internal.CommonOrd XdgDirectoryListDefined in directory-1.3.8.5 · System.Directory.Internal.CommonRead XdgDirectoryListDefined in directory-1.3.8.5 · System.Directory.Internal.CommonShow XdgDirectoryListDefined in directory-1.3.8.5 · System.Directory.Internal.CommonFilename extension for executable files (including the dot if any)
(usually "" on POSIX systems and ".exe" on Windows or OS/2).
Eq PermissionsDefined in directory-1.3.8.5 · System.Directory.Internal.CommonOrd PermissionsDefined in directory-1.3.8.5 · System.Directory.Internal.CommonRead PermissionsDefined in directory-1.3.8.5 · System.Directory.Internal.CommonShow PermissionsDefined in directory-1.3.8.5 · System.Directory.Internal.Common