이 스크립트는 최신 UMU 및 GE-Proton을 설치하고 "NonSteamLaunchers"라는 compatdata 폴더 경로에 있는 하나의 고유한 Proton 접두사 폴더 아래에 NonSteamLaunchers를 설치하고 이를 Steam 라이브러리에 추가합니다. 또한 Steam을 다시 시작할 때마다 자동으로 게임을 추가합니다. 따라서 데스크톱이나 게임 모드에서 사용할 수 있습니다. 로컬 저장 및 클라우드 저장은 물론 멀티플레이어/온라인 지원도 지원됩니다(런처를 사용하고 있기 때문에). 분명히 특정 부정행위 방지 게임은 Linux 환경에서 작동하지 않습니다. 이것은 게임 대 게임 기반입니다.
Steam Deck에 가장 인기 있는 런처를 자동으로 설치하시겠습니까?
아트워크가 포함된 선택한 런처와 게임의 다운로드 및 설치를 자동으로 처리하세요! ⌚️
마이크로SD 지원? 이 스크립트는 전체 접두사를 microSD로 이동하는 것을 지원합니다. 스크립트는 SD 카드에 런처와 게임을 설치하고 Steam의 런처는 SD 카드 설치를 가리킵니다. 이를 통해 Steam Deck의 내부 저장 공간을 절약할 수 있습니다!
ProtonTricks는 NonSteamLaunchers 기본 설치(접두사 1개)와 호환됩니다. 이렇게 하면 라이브러리에 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는 물론 이 opensuse - tumbleweed - wayland와 같은 KDE 환경도 마찬가지입니다. 어떤 이유로든 NonSteamLaunchers가 완벽하게 설치되었는지 여부를 알려주세요!
RemotePlayWhatever는 비 Steam 게임 간의 로컬 및 협동 플레이를 허용하기 위해 NSL과 함께 번들로 제공됩니다. 이것은 m4Engi에서 생성되었습니다. 여기에 저장소가 있습니다.
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에서 저를 후원하실 수 있습니다
도커를 설치합니다. 일단 설치되면 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 모듈에 유용하지만 핵심 셸 스크립트를 다루는 개발 컨테이너 부분에 비해 추가입니다.
# 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
요약 : Ruff 포맷터는 Rust로 작성된 매우 빠른 Python 포맷터입니다. 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
파일을 참조하세요.