Я создаю .deb пакет для своей последней игры, http://sundaycoders.host-ed.net/download.html.
Все в порядке относительно местоположений файлов, записей меню и значка, после того как deb пакет был установлен.
Игровые файлы установлены в каталог:/usr/games/marball/
Однажды выполнение, программа должна генерировать 2 файла (в первый раз запуск) (.cfg и .sav файлы), но не кажется, что папка имеет права разрешения создать файлы в него.
Какая-либо справка с этой проблемой? Я должен добавить команду во время .deb процесса сборки пакета?
В Unix те вещи должны войти в домашнюю папку пользователя - что-то как $HOME/.marball/game.cfg и т.д.
Пользователь не будет (и не был должен) иметь полномочия изменить файлы в/usr/whatever
/usr/games/marball местоположение в масштабе всей системы, означая, что изменения в файлах здесь будут влиять на всех пользователей. Поэтому обычно прогон программы обычным пользователем не может создать файлы здесь. Это похоже на файлы, которые Вы хотите создать, конфигурация и сохранила игровые файлы. В многопользовательской системе Вы хотели бы смочь иметь отдельные сохраненные игры, и конфигурация для каждого пользователя, настолько хранящего эти файлы в месте в масштабе всей системы, не подошла бы даже при изменении полномочий допускать это.
Эти файлы должны храниться в пользовательском каталоге конфигурации. Для получения этого каталога необходимо сначала искать переменную среды "XDG_CONFIG_HOME". Если это не существует, используйте ~/.config (можно получить местоположение '~' от "ДОМАШНЕЙ" переменной среды). В этой папке Ваша игра должна создать 'marball' папку и использовать это в качестве местоположения 'marball.cfg' и 'Marball.sav'.
Ваша игра является кросс-платформенной, таким образом, Вы должны будете только использовать этот метод на Linux. Однако это - хорошая практика, чтобы хранить эти файлы где-нибудь в домашней папке (или эквивалентный) на всех платформах.