X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=i3-sway%2Fgen;h=fba0a674616d7ae4e0e21143f181bab0ae03982a;hb=HEAD;hp=5653547d132decfc46d9414785af64f24104e892;hpb=dca8796ccf923c3d4edea468bab38e86b83510df;p=distro-setup diff --git a/i3-sway/gen b/i3-sway/gen index 5653547..fba0a67 100755 --- a/i3-sway/gen +++ b/i3-sway/gen @@ -1,4 +1,25 @@ #!/bin/bash +# I, Ian Kelling, follow the GNU license recommendations at +# https://www.gnu.org/licenses/license-recommendations.en.html. They +# recommend that small programs, < 300 lines, be licensed under the +# Apache License 2.0. This file contains or is part of one or more small +# programs. If a small program grows beyond 300 lines, I plan to switch +# its license to GPL. + +# Copyright 2024 Ian Kelling + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + set -eE -o pipefail trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR @@ -11,3 +32,57 @@ cat common.conf sway.conf > $dir/config dir=/a/bin/distro-setup/subdir_files/.config/i3 mkdir -p $dir cat common.conf i3.conf > $dir/config + +monitor_count=$(xrandr|grep -c ' connected') +if [[ $1 == bar ]] || (( monitor_count >= 2 )); then + cat bar.conf >> $dir/config +fi + +move_arg=right +if xrandr --listmonitors | awk '$2 == "BIG-RIGHT"' |grep . >/dev/null; then + cat >>$dir/config <<'EOF' +# by default, new workspaces are created on whatever screen doesn't have +# one active or else the current one. That is annoying, I have one +# primary monitor, I don't want a new workspace created on secondary +# monitor just because I happen be focused on it. This fixes that. +workspace 1 output primary +workspace 2 output BIG-LEFT +workspace 3 output BIG-RIGHT +workspace 4 output BIG-RIGHT +workspace 5 output BIG-RIGHT +workspace 6 output BIG-RIGHT +workspace 7 output BIG-RIGHT +workspace 8 output BIG-RIGHT +workspace 9 output BIG-RIGHT +workspace 10 output BIG-RIGHT +EOF + move_arg="BIG-RIGHT primary" +else + mon2=$(xrandr | awk '$2 == "connected" && $3 != "primary" {print $1}') + if [[ $mon2 ]]; then + cat >>$dir/config <>$dir/config + +if [[ $I3SOCK ]]; then + echo $0: i3-msg reload + i3-msg reload +fi