.xinitrc
author Oleksandr Gavenko <gavenkoa@gmail.com>
Mon, 11 Dec 2023 00:27:20 +0200
changeset 1037 b386e087b97f
parent 757 70dae9e483aa
permissions -rw-r--r--
Added workaround for Cygwin, npm authors explicitly forbids it: npm/lib/commands/completion.js if (isWindowsShell) { const msg = 'npm completion supported only in MINGW / Git bash on Windows' throw Object.assign(new Error(msg), {

#!/bin/bash

if [[ -f ~/.env ]]; then
  . ~/.env
fi
# Load custom settings (user editable).
if [[ -f ~/.env.local ]]; then
  . ~/.env.local
fi

if [[ -f ~/.Xdefaults ]]; then
  xrdb -merge ~/.Xdefaults
  # xrdb -load ~/.Xdefaults
fi

# Under Cygwin I prefer '-multiwindow' option, so it needn't to setup WM.
if [[ -z $COMSPEC ]]; then
  {
    setxkbmap us,ru,ua
    kbdd
    if [[ -f ~/.xmodmaprc ]]; then
        xmodmap ~/.xmodmaprc &
    fi
  } &
  xsetroot -mod 2 2 -fg gray70 -bg gray60 &
  # To debug FvwmM4 add "-debug" after "FvwmM4".
  fvwm -cmd "Module FvwmM4 -m4-prefix -m4-prefix-defines $HOME/.fvwm/config" &
  emacs --name emacs-main &
  goldendict &
  firefox &
  notfy_daemon_cmd=/usr/lib/notification-daemon/notification-daemon
  if [[ -x $notfy_daemon_cmd ]]; then
    $notfy_daemon_cmd &
  fi
fi

if command -v xscreensaver; then
  xscreensaver -nosplash &
fi

# Disable beeping.
if command -v xset; then
  xset -b &
fi

# Last command.
exec xterm -geometry 80x42 -name "xinitrc" -title "*** xinitrc ***" -bg bisque -e bash -i