GithubHelp home page GithubHelp logo

414n / protonsh Goto Github PK

View Code? Open in Web Editor NEW
1.0 3.0 1.0 124 KB

tool for easy Proton prefixes management

License: GNU General Public License v2.0

Shell 97.49% Makefile 2.07% Awk 0.35% PHP 0.10%
steam proton

protonsh's Introduction

Protonsh

Simple shell tool to ease operations inside Proton prefixes.

Usage

The script currently takes no arguments. When run, it will:

  1. ask the user on which Proton prefix he wants to operate;
  2. ask the user the desired Proton version to use.

After this, a number of environment variable overrides will be performed to ensure that any wine-specific tooling will work on the selected Proton prefix, using the selected Proton version executables (wine/wine64 will indeed point to the selected Proton version binaries).

Steam library directories location

All the prompts previously described are based on locating the Steam library directories (SteamApps/steamapps) and looking at their contents. This is done by looking at the default ~/.steam/steam/steamapps location and at the directories pointed at by the BaseInstallFolder settings inside the config.vdf file.

Local overrides

Local environment variable overrides can be specified in the ~/.config/protonsh file, that will be sourced if found.

These are the available variable overrides:

Variable name Description Default value
STEAMAPPS_DIRS Steam library directories location. Must be an array Autodetected
SHELL the shell to launch inside a Proton prefix /bin/bash
LOGLEVEL the log level of log messages. Can be ERROR, WARN, INFO, DEBUG WARN

Installation

There is a basic Makefile in place to ease installing the script on the system.

Run make or make help to see what commands/variables are currently supported.

By issuing a make install command as root, the script will be put in /usr/bin/protonsh. If you'd like to change the installation prefix to something other than /usr, you can override this by overriding the PREFIX make variable, like:

make PREFIX=/usr/local install

To ease package creation, the DESTDIR make variable is used throughout the Makefile as a prefix to PREFIX ;-)

protonsh's People

Contributors

414n avatar triffid avatar

Stargazers

Lion avatar

Watchers

James Cloos avatar  avatar  avatar

Forkers

triffid

protonsh's Issues

Manage other library dirs too

Currently, we only support the default library location ~/.steam/steam/steamapps or the one pointed at by the STEAM_APPS_DIR environment variable.
Supporting other library locations specified in the configuration files would be optimal.

Enhance SteamApps directory search

Currently, if there is no STEAM_APPS_DIR environment variable override, that variable is hardcoded to $HOME/.steam/steam/SteamApps. However, on Linux, the directory name could be all-lowercase: in fact, on my system, after a recent update to the Steam client, the directory was renamed from SteamApps to steamapps.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.