#!/usr/bin/env bash # https://specifications.freedesktop.org/basedir-spec/latest/ xdgUpdateData() { local -r programname=AtOM local -r my_data_home="${XDG_DATA_HOME:-$HOME/.local/share}/$programname" local -r new_db_path="$my_data_home/atom.db" [[ -d "$my_data_home" ]] || mkdir -p "$my_data_home" mv "$1" "$new_db_path" echo "$new_db_path" } xdgUpdateRuntime() { local -r programname=AtOM \ my_runtime_dir="${XDG_RUNTIME_DIR:-/tmp}" \ echo "$my_runtime_dir/$programname" } xdgMigrate() { local -r programname=AtOM local -r my_config_home="${XDG_CONFIG_HOME:-$HOME/.config}/$programname" local new_database cffile="$HOME/.atom/atom.cfg" getConfig new_database=$(xdgUpdateData "$database") database="$new_database" tempdir=$(xdgUpdateRuntime) cffile="$my_config_home/atom.cfg" [[ -d "$my_config_home" ]] || mkdir -p "$my_config_home" writeConfig >"$cffile" }