dugout-> graphics_virtual_wayland.dugout
Define virtual graphics variables for your displays in wayland. Establish virtual-graphics interfaces, and virtual-graphics workstations. Generic values are present for standard display properties, however - if you wish to have non-standard display values, they will need to be defined by the operator. The smallest size available is 480px. The largest available size is 3840px. The Pixel limits are between 1-1,200,000px. Any defined display must be discoverable through a subsystem discovery tool, such as xrandr or by querying the display directly.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
#!/bin/sh
###############################################################################
## COPYRIGHT (C) 2020-2026 NEW ENTITY OPERATIONS INC. ALL RIGHTS RESERVED
## INSTANCE: graphics_virtual_wayland.dugout
## MODIFIED: 2026/04/20
## OVERVIEW: Define virtual graphics variables for your displays in xwindow
## envionrments.
##
## Establish virtual-graphics interfaces and virtual-graphics workstation
## scopes for wayland-based system.
###############################################################################
## Configure a MAIN_monitor
###############################################################################
## Configure additional monitors based off of your xrandr -q setup needs
## MOCKED_monitor: Null monitor used in anchoring X window displays to an
## abstract-custom grid
export MOCKED_monitor="${CONFIGURATION_MOCKED_MONITOR}"
## MAIN_
export MAIN_monitor="${CONFIGURATION_MAIN_MONITOR}"
## SECOND_
export SECOND_monitor="${CONFIGURATION_SECONDARY_MONITOR}"
## THIRD_
export THIRD_monitor="${CONFIGURATION_THIRD_MONITOR}"
## FORTH
export FORTH_monitor="${CONFIGURATION_FORTH_MONITOR}"
## FIFTH
export FIFTH_monitor="${CONFIGURATION_FIFTH_MONITOR}"
## SIXTH
export SIXTH_monitor="${CONFIGURATION_SIXTH_MONITOR}"
## SEVENTH
export SEVENTH_monitor="${CONFIGURATION_SEVENTH_MONITOR}"
## X_*
#export *X*_monitor=$CONFIGURATION_*X*_MONITOR
###############################################################################
## scale mode
###############################################################################
## scale optimal
export SCALE_OPTIMAL="1.50x1.50"
## scale
export SCALE_TENTH=.10
export SCALE_QUARTER=.25
export SCALE_HALF=.5
export SCALE_ONE=1
export SCALE_ONE_AND_A_HALF=1.5
export SCALE_TWO=2
export SCALE_THREE=3
export SCALE_FOUR=4
export SCALE_FIVE=5
export SCALE_TEN=10
## scale width
export SCALE_WIDTH_TENTH=0.10x
export SCALE_WIDTH_QUARTER=0.25x
export SCALE_WIDTH_HALF=0.50x
export SCALE_WIDTH_ONE=1.00x
export SCALE_WIDTH_ONE_FIFTY=1.50x
export SCALE_WIDTH_TWO_HUNDRED=2.00x
export SCALE_WIDTH_THREE_HUNRDED=3.00x
export SCALE_WIDTH_FOUR_HUNRDED=4.00x
export SCALE_WIDTH_FIVE_HUNDRED=5.00x
export SCALE_WIDTH_ONE_THOUSAND=10.00x
## scale height
export SCALE_HEIGHT_TENTH=0.10x
export SCALE_HEIGHT_QUARTER=0.25x
export SCALE_HEIGHT_HALF=0.50
export SCALE_HEIGHT_ONE=1.00
export SCALE_HEIGHT_ONE_FIFTY=1.50
export SCALE_HEIGHT_TWO_HUNDRED=2.00
export SCALE_HEIGHT_THREE_HUNRDED=3.00
export SCALE_HEIGHT_FOUR_HUNDRED=4.00
export SCALE_HEIGHT_FIVE_HUNDRED=5.00
export SCALE_HEIGHT_ONE_THOUSAND=10.00
## scale 4k
export SCALE_4K="${SCALE_WIDTH_HALF}${SCALE_WIDTH_HALF}"
## scale primary
export SCALE_PRIMARY="${SCALE_WIDTH_ONE_FIFTY}${SCALE_HEIGHT_ONE_FIFTY}"
## scale secondary
export SCALE_SECONDARY="${SCALE_WIDTH_TWO_HUNDRED}${SCALE_HEIGHT_TWO_HUNDRED}"
## scale third
export SCALE_THIRD="${SCALE_WIDTH_TWO_HUNDRED}${SCALE_HEIGHT_TWO_HUNDRED}"
###############################################################################
## mode table
###############################################################################
## Monitor Widths
export WIDTH_3840=3840x
export WIDTH_3440=3440x
export WIDTH_2560=2560x
export WIDTH_1920=1920x
export WIDTH_1680=1680x
export WIDTH_1600=1600x
export WIDTH_1440=1440x
export WIDTH_1280=1280x
export WIDTH_1200=1200x
export WIDTH_1050=1050x
export WIDTH_1024=1024x
export WIDTH_900=900x
export WIDTH_800=800x
export WIDTH_768=768x
export WIDTH_720=720x
export WIDTH_640=640x
export WIDTH_480=480x
## Monitor Heights
export HEIGHT_3480=3480
export HEIGHT_2160=2160
export HEIGHT_1920=1920
export HEIGHT_1680=1680
export HEIGHT_1440=1440
export HEIGHT_1280=1280
export HEIGHT_1200=1200
export HEIGHT_1080=1080
export HEIGHT_1050=1050
export HEIGHT_1024=1024
export HEIGHT_900=900
export HEIGHT_800=800
export HEIGHT_768=768
export HEIGHT_720=720
export HEIGHT_600=600
export HEIHT_480=480
###############################################################################
## Rotation tables
###############################################################################
export ROTATION_LEFT=left
export ROTATION_NORMAL=normal
export ROTATION_RIGHT=right
###############################################################################
## Rotation tables
###############################################################################
## Available
export RATE_244=244.00
export RATE_239_99=239.99
export RATE_144=144.00
export RATE_99=99.93
export RATE_84=84.90
export RATE_60=60.00
export RATE_50=50.00
export RATE_30=30.00
## Set
export RATE_MAIN="${RATE_60}"
export RATE_SECONDARY="${RATE_60}"
###############################################################################
## PIN_MARK
###############################################################################
export PIN_MARK_HORIZONTAL=0x
export PIN_MARK_VERTICLE=0
export PIN_MARK_HORIZONTAL_SECONDARY=<PINMARK_HORIZONTAL_HERE>x
export PIN_MARK_VERTICLE_SECONDARY=<PINMARK_VERTICLE_HERE>
export STRING_x=x
###############################################################################
## Configurations: Monitor Variables
###############################################################################
export MODE_MAIN_WIDTH="<WIDTH_OF_MAIN_MONITOR_HERE>"
export MODE_MAIN_HEIGHT="$<HEIGHT_OF_MAIN_MONITOR_HERE>"
## for 2x scaling, you may have to 2x the WxH depending on your graphics card
export MODE_SECONDARY_WIDTH="<WIDTH_OF_SECONDARY_MONITOR_HERE>"
export MODE_SECONDARY_HEIGHT="HEIGHT_OF_SECONDARY_MONITOR_HERE>"
export STRING_MODE_OUTPUT_MAIN="${MODE_MAIN_WIDTH}${MODE_MAIN_HEIGHT}"
## If you have your monitors regular config, use this
export STRING_MODE_OUTPUT_SECONDARY="${MODE_SECONDARY_WIDTH}${MODE_SECONDARY_HEIGHT}"
###############################################################################
# Configurations: Offset for special displays
###############################################################################
## main, left of with left rotate
#export MODE_SECONDARY_OFFSET_HORIZONTAL=$((<DIMENSION_PREFERRED_WIDTH>+<OFFSET_HORIZONTAL>))
#export MODE_SECONDARY_OFFSET_VERTICLE=$((0+0))
## main, right of main with left rotate
export MODE_SECONDARY_OFFSET_HORIZONTAL=$((0+0))
export MODE_SECONDARY_OFFSET_VERTICLE=$((<DIMENSION_PREFERRED_WDITH>+<OFFSET_VERTICLE>))
export STRING_MODE_SECONDARY_OFFSET_HORIZONTAL="${MODE_SECONDARY_OFFSET_HORIZONTAL}"
export STRING_MODE_SECONDARY_OFFSET_VERTICLE="${MODE_SECONDARY_OFFSET_VERTICLE}"