Skip to content

Conversation

@m4u9
Copy link
Contributor

@m4u9 m4u9 commented Mar 19, 2023

This is an attempt to split the default configs across multiple config files that can make things easier for users to override and tune.

The idea is to have the default configs as 90-foo.config files in /etc/sway/config.d/ and users can copy them to $HOME/.config/sway/config.d/ to be edited as needed.

Default config files are split in /etc/sway/config.d as follow:

  • 90-appearance.conf - Theme and other appearance settings
  • 90-audio.conf - sound server and keybindigs used
  • 90-defaultapps.conf - default applications such as terminal and app launcher
  • 90-input.conf - touchpad, keyboard, mouse configs
  • 90-keybindings.conf - keybindings set by default to navigate etc
  • 90-lockscreen.conf - settings for the lockscreen
  • 90-output.conf - settings for display etc. When having a multi-display setup, the configs should go here. Example provided and can be improved
  • 90-system.conf - system configurations such as polkit agent and system menu (logout, reboot, etc)

To override a setting, the new file should be named with a lower integer in the filename. For example 10-appearance.conf would override the provided 90-appearance.conf.

The setup should be properly documented in the *.conf files as comments as well as in the OS documentation when available.

I marked this PR as draft as an effort to gather some feedbacks first. There are other changes in other open PRs not yet implemented here and will need to be added if merged.

@mcepl
Copy link

mcepl commented Feb 2, 2024

Why 90? Isn’t it making it too much difficult for users for their own modifications?

# and edit it to your liking.

include /etc/sway/config.d/*.conf
include ~/.config/sway/config.d/*
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Firstly, I hugely prefer

include ~/.config/sway/config.d/*.conf

meaning that the user can deactivate some parts of configuration by adding another file extension.

Additionally, I find useful (as the last line) to have also:

include ~/.config/sway/config.$(hostname)/*.conf

to have unified configuration (good for git etc.) for multiple machines.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants