PHOC.INI(5)
π NAME
phoc.ini β the configuration file for phoc, bestie. it's giving "where you tell phoc how to behave" β¨
πΈ DESCRIPTION
okay so, most of phoc's configuration? it's read from GSettings. but the output and core settings? those come straight from phoc.ini π
.
where does it live? it gets searched for in phoc's current working directory. and you can also just hand over a path on the command line with the -C option, no biggie π«Ά
the phoc.ini file is made up of multiple sections, and they can be in any order β no cap, do whatever. if you don't give values, the built-in defaults show up and handle it. the whole main purpose of phoc.ini is specifying output configuration and layouts β
every section looks like this:
[SectionHeader]
key1 = value1
key2 = value2
lines starting with #? those are comments, ignored, gone, bye π
and here's the cute part: section headers might contain a colon, and whatever comes after the colon is the configuration item. so like
[output:DSI-1]
is literally the configuration section for the output DSI-1 π
the available section headers are:
core: core optionsoutput: output configuration
β οΈ mods to this file require a compositor restart to take effect. it's not live-refresh energy, bestie, you gotta restart. π
π CORE SECTION
the core section can appear only once and it has a single option:
xwayland=[true|immediate|false]β whether to enable XWayland. withtrue, XWayland gets activated when it's needed.immediatelaunches it immediately (main character entrance π₯) andfalseturns it all the way off.
π¦ OUTPUT SECTION
the output section can appear multiple times with different configuration items, slay:
[output:ITEM]
ITEM is either:
- the DRM connector name like
DSI-1orDP-2, or - the make, model and serial as obtained from EDID, separated by
%:[output:A Vendor%The Model%Serial]
make, model and serial can each be specified as * to match any value, iykyk β¨
the configuration options are:
enable=[true|false]β whether the output should be enabledx,yβ the x and y position in the output layout. this is how you arrange outputs π the default is to use automatic layout (new outputs get added to the right of the current layout)scaleβ the output's scale. defaultautocalculates the scale based on the screen sizerotateβ the rotation. valid values arenormal,90,180,270,flipped,flipped-90,flipped-180andflipped-270. the default is to usenormalorientationmodeβ the mode to use. it must be a valid mode for this output. see e.g. the output ofwlr-randr. the default is to use the output's preferred mode πmodelineβ a custom video mode. this is only valid for the DRM backendscale-filterβ filter to use to scale down textures. valid values arebilinear,nearestandauto. the latter selectsbilinearfor fractional andnearestfor integer scales automatically. if unset,autois assumeddrm-panel-orientationβ iftrue, applies the panel orientation read from the DRM connector (if available). defaults totruephys_width,phys_heightβ the physical dimensions of the display in mm πadaptive-syncβ if set toenabled, enables variable refresh rate;disabledor absent disables it
example, periodt:
[output:DSI-1]
scale = 2
[output:Some Vendor%Some Model%*]
scale = 1
rotate = 90
x = 300
π See also
and that's the whole vibe bestie π this was the phoc.ini(5) manual page β footer's just phoc.ini() with the source and date stamped on it, so go forth and configure your outputs, you ate ππ§
π¦ where this page comes from
- arch rolling: phoc 0.57.0-2 Β· GPL-3.0-or-later
- ubuntu stonking: phoc 0.58.0-1 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms