File::UserDirs (3)
Leading comments
Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28) Standard preamble: ========================================================================
NAME
File::UserDirs - find extra media and documents directoriesVERSION
This document describes File::UserDirs version 0.04.SYNOPSIS
use File::UserDirs qw(:all); print xdg_desktop_dir; # e.g. /home/user/Desktop
DESCRIPTION
This module can be used to find directories as informally specified by the Freedesktop.org xdg-user-dirs software. This gives a mechanism to locate extra directories for media and documents files.INTERFACE
- xdg_desktop_dir
- Returns the desktop directory. Unless changed by the user, this is the directory Desktop in the home directory.
- xdg_documents_dir
- Returns the documents directory. Unless changed by the user, this is the home directory.
- xdg_download_dir
- Returns the download directory. Unless changed by the user, this is the home directory.
- xdg_music_dir
- Returns the music directory. Unless changed by the user, this is the home directory.
- xdg_pictures_dir
- Returns the pictures directory. Unless changed by the user, this is the home directory.
- xdg_publicshare_dir
- Returns the public share directory. Unless changed by the user, this is the home directory.
- xdg_templates_dir
- Returns the templates directory. Unless changed by the user, this is the home directory.
- xdg_videos_dir
- Returns the videos directory. Unless changed by the user, this is the home directory.
EXPORTS
None by default, but any method can be exported on demand. Also the group ":all" is defined which exports all methods.DIAGNOSTICS
- xdg-user-dir failed to start: %s
-
The executable "xdg-user-dir" could not be run, most likely because it was not
installed. See ``DEPENDENCIES''.
CONFIGURATION AND ENVIRONMENT
The location of the directories can be specified by the user in the file $XDG_CONFIG_HOME/user-dirs.dirs. It is a shell file setting a number of environment variables. To find the exact pathname from Perl, run:
use File::BaseDir qw(config_home); print config_home('user-dirs.dirs');
Example customised user-dirs.dirs
XDG_DESKTOP_DIR="$HOME/Workspace" XDG_DOCUMENTS_DIR="$HOME/Files" XDG_DOWNLOAD_DIR="$HOME/Files/Downloads" XDG_MUSIC_DIR="$HOME/Files/Audio" XDG_PICTURES_DIR="$HOME/Files/Images" XDG_PUBLICSHARE_DIR="$HOME/public_html" XDG_TEMPLATES_DIR="$HOME/Files/Document templates" XDG_VIDEOS_DIR="$HOME/Files/Video"