Популярным запросом я спрашиваю, как делают AppImages, которые только для чтения и остаются сжатыми, хранят их настройки.
Специальные каталоги
Обычно приложение, содержавшее в AppImage, сохранит свои конфигурационные файлы везде, где оно обычно хранит их (наиболее часто где-нибудь внутри
$HOME
). Если Вы будете вызывать AppImage, созданный с последней версией AppImageKit, и будете иметь в распоряжении один из этих специальных каталогов, то конфигурационные файлы будут сохранены вместе с AppImage. Это может быть полезно для портативных вариантов использования, например, неся AppImage на карте с интерфейсом USB, наряду с ее данными.
- Если существует каталог с тем же именем как AppImage плюс
.home
, затем$HOME
будет автоматически установлен на него прежде, чем выполнить приложение полезной нагрузки- Если существует каталог с тем же именем как AppImage плюс
.config
, затем$XDG_CONFIG_HOME
будет автоматически установлен на него прежде, чем выполнить приложение полезной нагрузки
Ответ @muru, конечно, корректен и должен быть upvoted и принятый.
Позвольте мне добавить несколько точек для ясности:
Можно заставить AppImage создать эти два каталога совершенно отдельно путем вызова его с --appimage-portable-home
и --appimage-portable-config
параметры. Это должно быть сделано только однажды:
../some/path/to/my.AppImage --appimage-portable-home
../some/path/to/my.AppImage --appimage-portable-config
Это создаст соответствующее (первоначально пустой) каталоги:
../some/path/to/my.AppImage.home/
$HOME
.AppImage будет также думать это ../some/path/to/my.AppImage.config/
$XDG_CONFIG_HOME
.
(BTW, $XDG_CONFIG_HOME
очень часто значения по умолчанию к $HOME/.config
.)
Если Вы находите выше двух параметров слишком трудный помнить, то запомните другой: --appimage-help
. Используя это перечислит и объяснит все другие, которые доступны.
Не каждое приложение использует $HOME
или $XDG_CONFIG_HOME
. В этом случае Ваши недавно созданные каталоги останутся пустыми. Иначе они будут заполнены полезной нагрузкой AppImage во времени выполнения и при выходе ко всем настройкам, которые это хочет помнить.
Много приложений используют только одну из этих двух переменных среды, $HOME
или $XDG_CONFIG_HOME
(и поэтому my.AppImage.home/
resp. my.AppImage.config/
), не оба.
Некоторые приложения могут даже запутаться, если оба из портативных каталогов настроек существуют...
Если Вы переименовываете old.AppImage
кому: new.AppImage
, old.AppImage.home/
и old.AppImage.config/
каталоги сразу прекращают работать. Необходимо переименовать эти два каталога соответственно: new.AppImage.home/
и new.AppImage.config/
.
Если Вы переименовываете потрясающий. AppImage только к потрясающему, необходимо переименовать awesome.AppImage.home/
каталог также: а именно, к awesome.home/
.
Если Вы перемещаете AppImage в новое местоположение и хотите сохранить ранее используемую конфигурацию и корневые каталоги, необходимо переместить их также.
Если Вы хотите избавиться от старой конфигурации и хотеть заставить AppImage снова использовать "стандартные" пути для $HOME
для $XDG_CONFIG_HOME
затем просто удалите эти каталоги снова.
Если Вы хотите, чтобы полезная нагрузка нового AppImage использовала те же настройки в качестве Вашей системной установленной версии приложения полезной нагрузки, то Вы должны:
в Ubuntu, AppImage сохранит настройки по умолчанию в:
/home/user_name/.config/my_App_name
/home/lwbaqueros/.my_App_name
Если вы удалите эти папки, у вас будет свежая версия вашего приложения AppImage