winbench / bench Goto Github PK
View Code? Open in Web Editor NEWPortable Software Environment for Windows
Home Page: https://winbench.org
License: MIT License
Portable Software Environment for Windows
Home Page: https://winbench.org
License: MIT License
To clean-up the Bench root directory, the files apps.md
and config.ps1
should be moved into their own sub folder. Possible names for the sub folder are user
and config
.
Apps like pgAdmin III or Putty store their configuration in the registry.
It would be helpful to provide a generic mechanism to backup and restore registry keys before and after the execution of an app.
Support PHP Pear packages in the same way as NPM and PIP packages.
Add switches to the configuration, which (de)activate the overriding of USERPROFILE, APPDATA, ...
It would be nice to integrate a Git GUI app into Bench.
Eclipse has no dependency to the JDK 7 or 8 because both are optional for different Java development environments. But Eclipse PHP and CDT are not running without at least a JRE.
Currently it is stated, that all resources are deleted an redownloaded. But that is not correct.
The lein.bat
requires PowerShell 3 or the environment variable HTTP_CLIENT
pointing to Wget/cURL.
Do not always require the generation of an SSH key during setup.
Especially behind HTTP proxies, SSH connections are not possible anyways.
It would be nice to have RabbitMQ as a message bus in the development stack.
Add action to download all app resources, not only the resources of the active apps.
GUI programming with Python and QT.
Add the SysInternals Suite as an app.
Add GIMP as an app for bitmap oriented image editing to accompany Inkscape.
Config properties to control the apperance of shell launchers (and buttons in the Dashboard) for
Because the Python 2 and Python 3 ecosystems are quite separate, the app type should reflect the major version.
This distinction at the level of app types would resolve the ambiguity, which arises in some cases, when apps refer to Python and its paths.
Further, it would remove the additional complexity, caused by the special app property PythonVersions
.
Management script for creating Windows shortcuts for apps, which are usally not called from command line.
The shortcuts should all be created on one folder. They must call a wrapper batch script, which loads the Bench environment and passes all arguments to the application executable. The launcher should work as Drag&Drop targets (passing dropped files as arguments to the app).
Override environment variables TEMP and TMP with Bench TempDir path.
After installing NpmBootstrap, the update to a recent npm version fails without any visible error. But subsequent installed npm packages complain about the old npm.
Leiningen is using the Windows user home directory for the local repository <user-profile>\.m2\repository
instead of the Bench home directory.
It may possible to adjust the local repository path with a profiles.clj
in %HOME%\.lein
.
The folder <bench root>\auto
is not on the PATH
set in auto\env.cmd
. The generator for env.cmd
must be fixed.
For NPM packages, the app Npm should be added automatically.
For PIP packages, the app Python2/3 should be added automatically.
Regard the ambiguity with Python versions: #19
A mature way to support C/C++ projects without Microsoft Visual Studio installed.
Ideally with an IDE like Eclipse CDT.
Maven uses the Java windows registry to determine the user home directory.
Therefore, it is not redirected into the Bench home via the environment variables HOME
or USERPROFILE
.
Additionally Maven probably ignores the environment variables http_proxy
and https_propxy
.
Because Maven looks into the windows user home directory for user specific settings <user-profile>/.m2/settings.xml
and does not see the Bench home, the global settings in mvn/conf/settings.xml
must be overridden during the environment setup step to adapt the Maven settings.
The elements localRepository
and proxies
must be set with the content according to the Bench configuration.
Still, if the windows user has a <user-profile>/.m2/settings.xml
it takes precedence.
Executing bench.bat
downloads and unzipps the bench archive from GitHub, but it does not start the setup process.
project-
and they present a menu to select a projectarchive.cmd
and editor.cmd
which represent actions in a project contextCurrently only the second scripts are on the path. There should be a self-explanatory way to access actions for a specific project context and for the current project context.
Setting the Dir
property for a meta app an using it in another property does not work.
A mechanism to run a script before the start and after the exit of an executable.
The mechanism must be configurable for any app with a property, specifying the executables, which must be run with the proxy scripts.
The PIP from the Python Setup is installed. However, an automatic update to the most recent version would help.
Support Ruby Gems in the same way as NPM and PIP packages.
lein deps
, npm install
, bower install
, ...)lein new
, npm init
, yo xyz
, ...)Find a way to redirect the plugin directory of LightTable to the Bench userprofile.
To clean-up the Bench root directory, the actions should be moved into their own sub folder.
A possible name for the sub folder is actions
.
The app property Path
is a list of paths to register.
The app property Exe
points to the main executable, used to check the apps existence and the target of the app launcher.
The resolution of a relative path in the Exe
property, should be based on the Dir
property and not on a search through the Path
list, because this can cause ambiguity.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.