此腳本會安裝最新的 UMU 和 GE-Proton,並在您的 compatdata 資料夾路徑中名為「NonSteamLaunchers」的唯一 Proton 前綴資料夾下安裝 NonSteamLaunchers,並將它們新增至您的 Steam 庫中。它還會在每次 Steam 重新啟動時自動添加遊戲。因此您可以在桌面或遊戲模式下使用它們。支援本地保存和雲端保存,以及多人/線上支援(因為您正在使用啟動器)。顯然,某些反作弊遊戲無法在 Linux 環境下運作;這是基於遊戲的基礎上的。
自動安裝您的 Steam Deck 中最受歡迎的啟動器?
自動處理您選擇的啟動器和遊戲的下載和安裝,包括藝術品! ⌚️
支援 MicroSD 嗎?此腳本支援將整個前綴移至 microSD。該腳本會將啟動器和遊戲安裝到您的 SD 卡上,並且 Steam 中的啟動器將指向 SD 卡安裝。這可以讓您節省 Steam Deck 的內部儲存空間!
ProtonTricks 與 NonSteamLaunchers 預設安裝相容(一個前綴)。這將在您的庫中新增一個 NonSteamLaunchers 捷徑...此捷徑不執行任何操作。您所要做的只是在您的庫中“隱藏此遊戲”。右鍵單擊其屬性並選擇“管理”和“隱藏此遊戲”。您再也不用擔心它了!如果您要開啟 ProtonTricks 來修復任何遊戲或啟動器,現在就可以存取了!
如果您不知道,您還可以在安裝啟動器時選擇選取“單獨的應用程式 ID”,這將按照各自的前綴安裝所有啟動器。自動與 ProtonTricks 搭配使用!
命令列就緒,您可以在線調用它,這是安裝啟動器的範例/bin/bash -c 'curl -Ls https://raw.githubusercontent.com/moraroy/NonSteamLaunchers-On-Steam-Deck/main/NonSteamLaunchers.sh | nohup /bin/bash -s -- "Epic Games"'
NSL 實際上可以安裝在許多 Linux 發行版上,請隨意嘗試,這裡有一些範例... Ubuntu LTS、ChimeraOS、Nobara 和 Arch Linux 以及任何 KDE 環境,例如 opensuse - tumbleweed - wayland ,如果無論您發現NonSteamLaunchers 安裝是否完美,無論出於何種原因,請告訴我!
RemotePlayWhatever 也與 NSL 捆綁在一起,以允許非 Steam 遊戲之間進行本地和合作遊戲,這是由 m4Engi 創建的,這裡是 repo
Ludusavi 還針對 NSL 進行了預先安裝和設置,以便您的遊戲保存備份。並非所有遊戲都可以使用此功能,因此在刪除或卸載尚未備份的遊戲時請記住這一點,這裡是儲存庫
UMU Launcher會自動使用並針對每個遊戲和Launcher進行處理。必要時將使用 Proton GE。
分步文章?這裡 ?
當您使用此腳本時,「NSLGameScanner.service」也會處於活動狀態,並在腳本關閉後繼續運行,甚至在您的 Steam Deck 重新啟動後也能運行。它作為服務文件在背景運行,以便在每次 Steam 重新啟動時自動將您的遊戲添加到您的庫中。目前新增:
要停止 NSLGameScanner.service,請打開 NSL 並點擊“停止 NSLGameScanner”,然後它會詢問您是否要重新啟動它,單擊“否”即可。
/bin/bash -c 'curl -Ls https://raw.githubusercontent.com/moraroy/NonSteamLaunchers-On-Steam-Deck/main/NonSteamLaunchers.sh | nohup /bin/bash -s -- "Epic Games"'
所有啟動器都可以透過呼叫其名稱來安裝,例如"Epic Games"
"Ubisoft Connect"
等。
所有啟動器都可以透過呼叫其名稱來卸載,例如"Uninstall Epic Games"
"Uninstall Ubisoft Connect"
等。
這是也可以呼叫的命令列表
"Start Fresh"
"Update Proton-GE"
"Stop NSLGameScanner"
"Move to SD Card"
只能以這種格式呼叫「移至SD卡」函數
/bin/bash -c 'curl -Ls https://raw.githubusercontent.com/moraroy/NonSteamLaunchers-On-Steam-Deck/main/NonSteamLaunchers.sh | nohup /bin/bash -s -- "Move to SD Card" "EpicGamesLauncher"
/bin/bash -c 'curl -Ls https://raw.githubusercontent.com/moraroy/NonSteamLaunchers-On-Steam-Deck/main/NonSteamLaunchers.sh | nohup /bin/bash -s -- "Move to SD Card" "NonSteamLaunchers"
如果您對此腳本有任何建議或改進,請隨時提出問題或提交拉取請求。
您可以透過 ko-fi、liberapay 向我捐款,或在 github 或 patreon 上贊助我
安裝 Docker。安裝後,會自動啟動一個乾淨的開發環境,其中包含 VSCode 原生的 Docker 容器。
/opt/venv/bin/python
)VSCode 擴充(開發容器)
如果 VSCode 不存在或僅正在處理 python 部分(請參閱__init__.py
),則可以單獨執行 Docker 容器。容器會在requirements.txt
中安裝正確版本的python 和所有相依性(例如,ipython、rich)。
# navigate to directory with Dockerfile
cd .devcontainer/
# build image
docker build -t nonsteamlaunchers .
# run container
docker run -it --rm --name=mynonsteamlaunchers --workdir=/app -v $( pwd ) :/app nonsteamlaunchers bash
# exit container
exit
對於 python 模組很有用,但與覆蓋核心 shell 腳本的開發容器部分相比則更為有用。
# create virtual environment
python -m venv .venv
# activate virtual environment
source .venv/bin/activate
# install dependencies
python -m pip install -r requirements.txt
預提交掛鉤透過pre-commit
安裝,並在git commit
上自動執行。
最重要的是, ruff
用於檢查所有 python 程式碼。
pre-commit install
git commit
時自動觸發預提交掛鉤git add .
git commit -m " commit message "
--no-verify
標誌來完成。 git commit -m " commit message " --no-verify
雖然目前尚未強制執行,但透過使用傳統提交,可以透過release-please 自動產生更改日誌和版本號。
為了幫助解決這個問題,可以安裝 commitizen 工具。
# install cz
npm install -g commitizen cz-conventional-changelog
# make repo cz friendly
commitizen init cz-conventional-changelog --save-dev --save-exact
npm install
# add file to commit
git add .gitignore
# run cz
λ git cz
[email protected], [email protected]
? Select the type of change that you ' re committing: chore: Other changes that don ' t modify src or test files
? What is the scope of this change (e.g. component or file name): (press enter to skip) .gitignore
? Write a short, imperative tense description of the change (max 81 chars):
(17) update .gitignore
? Provide a longer description of the change: (press enter to skip)
? Are there any breaking changes ? No
? Does this change affect any open issues ? No
[main 0a9920d] chore(.gitignore): update .gitignore
1 file changed, 131 insertions(+)
λ git push
TL;DR :Ruff 格式化程式是一個非常快速的 Python 格式化程序,用 Rust 寫。它比 Black 快 30 倍以上,比 YAPF 快 100 倍,可在幾毫秒內格式化大型 Python 專案 - 同時實現 > 99.9% Black 相容性。
# check for errors
ruff check .
# fix (some) errors automatically
ruff check . --fix
asdf plugin-add python
asdf plugin-add poetry https://github.com/asdf-community/asdf-poetry.git
asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git
asdf install
# install stable python
asdf install python < latest | 3.11. 4>
# set stable to system python
asdf global python latest
.shellcheckrc
排除各種 bash 語言規則。使用 shellcheck 擴充時,可用於控制噪音與合法的警告/錯誤。
該項目已獲得 MIT 許可證的許可。有關詳細信息,請參閱LICENSE
文件。