There's also https://github.com/xmonad/xmonad-contrib/blob/master/XMonad/Prelude.hs#L135-L156 although it also does a few other things.

On Mon, Jul 21, 2025 at 7:57 AM Tristan Cacqueray via Haskell-Cafe <haskell-cafe@haskell.org> wrote:

Hello, unfortunately there is no "expandHomePath" or "realpath" helpers
in the standard libraries. Searching for "FilePath -> IO FilePath" in
hoogle shows an implementation in the hledger project:
  https://hackage-content.haskell.org/package/hledger-lib-1.43.2/docs/Hledger-Utils-IO.html#v:expandHomePath

… which check if the path begins with "~/", and replace that with the
output of "getHomeDirectory"

-Tristan

On Mon, Jul 21, 2025 at 07:19 PICCA Frederic-Emmanuel wrote:
> Hello, I am trying to open and read the content of this kind of filepath.
>
> ~/debian/changelog
>
> So is there a prefered way to expand the ~ into the real $HOME.
>
> thanks for your help
>
> Frédéric
>
>
> Classification de confidentialité SOLEIL
>
> Ce message et ses pièces jointes peuvent contenir des informations soumises à des règles de diffusion :
>
>   *   P (Public) : Diffusion libre y compris à l'extérieur de SOLEIL.
>   *   I (Interne) : Diffusion libre au sein de SOLEIL, ne doit pas être communiqué à l’extérieur sauf mention spécifique.
>   *   C (Confidentiel) : Diffusion restreinte aux personnes autorisées, internes ou externes. Le partage nécessite l'accord de la hiérarchie.
>   *   S (Sensible) : Accès restreint aux seuls destinataires. Partage non autorisé.
>
> Les informations contenues dans cet e-mail sont la propriété de SOLEIL. Si vous n'êtes pas le destinataire prévu, merci de nous en notifier et de ne pas utiliser, copier ou distribuer les informations qu'il contient.
> _______________________________________________
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
> Only members subscribed via the mailman list are allowed to post.
_______________________________________________
Haskell-Cafe mailing list
To (un)subscribe, modify options or view archives go to:
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
Only members subscribed via the mailman list are allowed to post.


--
brandon s allbery kf8nh
allbery.b@gmail.com