1 /* 2 * files.h 3 * vim: expandtab:ts=4:sts=4:sw=4 4 * 5 * Copyright (C) 2012 - 2019 James Booth <boothj5@gmail.com> 6 * Copyright (C) 2018 - 2019 Michael Vetter <jubalh@idoru.org> 7 * 8 * This file is part of Profanity. 9 * 10 * Profanity is free software: you can redistribute it and/or modify 11 * it under the terms of the GNU General Public License as published by 12 * the Free Software Foundation, either version 3 of the License, or 13 * (at your option) any later version. 14 * 15 * Profanity is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU General Public License for more details. 19 * 20 * You should have received a copy of the GNU General Public License 21 * along with Profanity. If not, see <https://www.gnu.org/licenses/>. 22 * 23 * In addition, as a special exception, the copyright holders give permission to 24 * link the code of portions of this program with the OpenSSL library under 25 * certain conditions as described in each individual source file, and 26 * distribute linked combinations including the two. 27 * 28 * You must obey the GNU General Public License in all respects for all of the 29 * code used other than OpenSSL. If you modify file(s) with this exception, you 30 * may extend this exception to your version of the file(s), but you are not 31 * obligated to do so. If you do not wish to do so, delete this exception 32 * statement from your version. If you delete this exception statement from all 33 * source files in the program, then also delete it here. 34 * 35 */ 36 37 #ifndef CONFIG_FILES_H 38 #define CONFIG_FILES_H 39 40 #include <glib.h> 41 42 #define FILE_PROFRC "profrc" 43 #define FILE_ACCOUNTS "accounts" 44 #define FILE_TLSCERTS "tlscerts" 45 #define FILE_PLUGIN_SETTINGS "plugin_settings" 46 #define FILE_PLUGIN_THEMES "plugin_themes" 47 #define FILE_CAPSCACHE "capscache" 48 #define FILE_PROFANITY_IDENTIFIER "profident" 49 #define FILE_BOOKMARK_AUTOJOIN_IGNORE "bookmark_ignore" 50 51 #define DIR_THEMES "themes" 52 #define DIR_ICONS "icons" 53 #define DIR_SCRIPTS "scripts" 54 #define DIR_CHATLOGS "chatlogs" 55 #define DIR_OTR "otr" 56 #define DIR_PGP "pgp" 57 #define DIR_OMEMO "omemo" 58 #define DIR_PLUGINS "plugins" 59 #define DIR_DATABASE "database" 60 #define DIR_DOWNLOADS "downloads" 61 #define DIR_EDITOR "editor" 62 63 void files_create_directories(void); 64 65 gchar* files_get_config_path(const char* const config_base); 66 gchar* files_get_data_path(const char* const data_base); 67 gchar* files_get_account_data_path(const char* const specific_dir, const char* const jid); 68 69 gchar* files_get_log_file(const char* const log_file); 70 gchar* files_get_inputrc_file(void); 71 72 #endif 73