需要清理用户主文件夹并组织游戏文件夹(包括保存、配置等)

需要清理用户主文件夹并组织游戏文件夹(包括保存、配置等)

我安装了许多游戏,来自各种来源/商店/前端(Steam、GOG、Humble Store 和 Lutris,带有 DOSBox、Libretro、WINE 和 ScummVM 等模块)。

不幸的是,许多游戏开发者在用户主文件夹下选择自己的路径来保存游戏相关文件(保存、配置等)。Linux 游戏在这方面显然没有标准或共识。

大多数路径都位于几个标准子文件夹下,例如:

/home/user/Documents/HardWest
/home/user/.config/BossConstructor
/home/user/.local/Uber Entertainment/Planetary Annihilation
/home/user/.local/share/Aspyr/Sid Meier's Civilization 5

但有些会创建自己的隐藏文件夹,直接放入用户主文件夹,例如:

/home/user/.BADLAND
/home/user/.frictionalgames/Amnesia
/home/user/.prefs

有些会在那里创建可见的文件夹,例如(现在有 7 个可见的文件夹,并且还在增加,这些是最严重的违规者):

/home/user/LoversInADangerousSpacetime
/home/user/Larian Studios/Divinity Original Sin Enhanced Edition
/home/user/My Games/Orwell

甚至有些使用多条路径,例如:

/home/user/Nongunz
/home/user/.config/nongunz

这开始变得太混乱了,所以我想将它们移动到“游戏”子文件夹或类似的文件夹中,并保持我的主文件夹整洁。

我在网上搜索了一种方法,以透明的方式将游戏重定向到使用新路径来存储文件,但我得到的只是挂载或符号链接。由于这个想法是消除这些文件夹,而不仅仅是链接它们,这并不能解决问题。

更改工作文件夹似乎也不起作用,但我可能在这里遗漏了一些东西......

向每个游戏/前端传递参数或设置环境变量是一种可接受的解决方案,但我更喜欢可以全局设置的东西,比如从到路径表。我对相关机器有管理员权限。

Ubuntu、bash、linux 内核等上是否有可用的东西(gui、cli 或配置)?

PS:如果效果良好,打算以某种方式将答案作为功能请求/代码贡献链接到https://github.com/supremesonicbrazil/SLSK

答案1

如果你的问题仅与主目录中的可见文件夹有关,你可以简单地隐藏它们在文件管理器中隐藏文件夹,而无需更改其名称。为此,您需要.hidden在主目录中创建一个名为的文件,并在文件中写入要隐藏的文件夹的名称.hidden

就您而言,~/.hidden文件的内容可能如下。

LoversInADangerousSpacetime
Larian Studios
My Games

所以。

答案2

抱歉,这个帖子有点儿奇怪,但我是通过 Steam 命名空间支持公告找到这个主题的。我有一个想法,虽然很蠢,但实际上可能有效:

  • 创建一个单独的用户,仅用于启动游戏,禁用密码登录,
  • 设置sudo为使用该用户无需密码启动任何命令*,
  • [可选] 调整.desktop文件以使用sudo调用,
  • [可选] 别名命令,如上所述,如果使用 CLI。

还应该有一个不遵守 XDG 规范的开发人员黑名单。

* 需要一点时间来准备一个工作示例。

答案3

遗憾的是,我认为你想要的是不可能的。每个应用程序/游戏的开发人员都有责任指定其保存位置。

如果他们决定将特定文件夹硬编码到应用程序中,您就无法更改它。(好吧,如果游戏是开源的,您可以在那里更改它并重新编译它,或者向开发人员提交问题/功能请求并等待反应……)

如果他们内置了一些配置选项,例如环境变量、命令行参数或某些应用程序内设置,那么这些设置特定于这个单个应用程序,您必须手动弄清楚并调整每个应用程序。

相关内容