dreamer/luxtorpeda

Environment variable and output redirection handling.

cheako opened this issue · 2 comments

Sorry if this is already implemented, I just heard of luxtorpeda and am happy to hear I'm not the only one.

Is your feature request related to a problem? Please describe.
I'm playing with writing vulkan layers and am looking for a clear way to manage this task.

Describe the solution you'd like
One screen where variables are selected and/or redirect, with autorotation, options are enabled. Another screen where a single variable can be configured, the default being "just text" but multiple choice, array(text/MC/bool) with default : delineation, as well as boolean would be useful.

Describe alternatives you've considered
Currently, for No Man's Sky I'm doing...

~/.config/nms-vulkan.sh %command%

#!/bin/sh

export \
	RUST_BACKTRACE=1 \
	RENDERDOC_TEMP="$HOME" \
	VK_APIDUMP_LOG_FILENAME="$HOME/nms.vk.log" \
	VK_LAYER_MESA_OVERLAY_CONFIG="scale=4" \
	_RADV_PERFTEST="rt,sam" \
	_VK_INSTANCE_LAYERS="VK_LAYER_RENDERDOC_Capture" \
	_VK_INSTANCE_LAYERS="VK_LAYER_MESA_overlay" \
	_VK_INSTANCE_LAYERS="VK_LAYER_LUNARG_api_dump" \
	_VK_INSTANCE_LAYERS="VK_LAYER_LUNARG_api_dump:VK_LAYER_MESA_overlay" \
	_VK_INSTANCE_LAYERS="VK_LAYER_LUNARG_api_dump:VK_LAYER_MESA_overlay" \
	_WINEDEBUG="fps" \
	_DXVK_HUD=1 \
	_LD_DEBUG=libs \
	_ENABLE_VK_LAYER_VALVE_cheako_record_1=1 \
	_ENABLE_VK_LAYER_VALVE_cheako_lookup_tables_1=1 \
	CHEAKO_TARGET_FPS=y \
	ENABLE_VK_LAYER_VALVE_cheako_cache_1=1 \
	# CHEAKO_V=1 CHEAKO_I=1 CHEAKO_M=1 CHEAKO_S=1 \
	# CHEAKO_F=1 CHEAKO_P=1 CHEAKO_B=1 CHEAKO_A=1 \

false && {
    ## I don't know if this ever worked.
    MESA="/home/cheako/mesa"
    export MESA \
	LD_LIBRARY_PATH="${MESA}/lib64:${MESA}/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}" \
	_LD_DEBUG=libs \
	LIBGL_DRIVERS_PATH="${MESA}/lib64/dri:${MESA}/lib/dri" \
	VK_ICD_FILENAMES="${MESA}/share/vulkan/icd.d/radeon_icd.x86_64.json:${MESA}/share/vulkan/icd.d/radeon_icd.x86.json" \
	D3D_MODULE_PATH="${MESA}/lib64/d3d/d3dadapter9.so.1:${MESA}/lib/d3d/d3dadapter9.so.1" \

}

## A selection of redirections.
#exec 1>/dev/null 2>&1
exec 1>/dev/null 2>~/nms_stderr.log
#exec 1>~/nms_stdout.log 2>~/nms_stderr.log
exec "$@"

As you could gleen I'm needing to manage variables, enabling and disabling them and having multiple choice settings for some.

There is no reaction for confused/thinking, so I'll type this.