Running Slackware Linux on Thinkpad T61

Fluxbox and Peripherals Configuration in Slackware Linux for ThinkPad T61

Author: Cowyn Li

I installed fluxbox window manager only, with the xorg.conf configuration below, everything works fine, including the dual monitors.

I don't like TouchPad very much, so disabled it in the BIOS.

xorg.conf

  $ cat /etc/X11/xorg.conf
  Section "Module"
      Load        "dbe"   # Double buffer extension
      SubSection  "extmod"
        Option    "omit xfree86-dga"   # don't initialise the DGA extension
      EndSubSection
      Load        "freetype"
      #Load        "speedo"
      Load        "GLcore"
      Load        "glx"
      Load        "record"
      Load        "bitmap"
      Load        "dri"
      Load        "int10"
      Load        "vbe"
      Load        "xtrap"
  EndSection

  Section "Files"
      RgbPath     "/usr/share/X11/rgb"
  #    FontPath   "/usr/share/fonts/local/"
      FontPath   "/usr/share/fonts/misc/"
      FontPath   "/usr/share/fonts/OTF/"
      FontPath   "/usr/share/fonts/TTF/"
      FontPath   "/usr/share/fonts/Type1/"
  #    FontPath   "/usr/share/fonts/CID/"
      FontPath   "/usr/share/fonts/Speedo/"
      FontPath   "/usr/share/fonts/75dpi/:unscaled"
      FontPath   "/usr/share/fonts/100dpi/:unscaled"
      FontPath   "/usr/share/fonts/75dpi/"
      FontPath   "/usr/share/fonts/100dpi/"
      FontPath   "/usr/share/fonts/cyrillic/"
      ModulePath "/usr/lib/xorg/modules"
  EndSection

  Section "ServerFlags"
      Option      "blank time"    "0"
      Option      "standby time"  "0"
      Option      "suspend time"  "0"
      Option      "off time"      "0"
      Option      "RandR"
  EndSection

  Section "InputDevice"
      Identifier  "Keyboard0"
      Driver      "kbd"
      Option      "CoreKeyboard"
      Option      "XkbRules" "xorg"
      Option      "XkbModel" "pc105"
      Option      "XkbLayout" "us"
  EndSection

  Section "InputDevice"
      Identifier  "UltraNav Trackpoint"
      Driver      "mouse"
      Option      "CorePointer"
      Option      "Device"              "/dev/input/mice"
      Option      "Protocol"            "ImPS/2"
      Option      "Emulate3Buttons"     "off"
      Option      "EmulateWheel"        "on"
      Option      "EmulateWheelTimeOut" "250"
      Option      "EmulateWheelButton"  "2"
      Option      "YAxisMapping"        "4 5"
      Option      "XAxisMapping"        "6 7"
      Option      "ZAxisMapping"        "4 5"
  EndSection

  #Section "InputDevice"
  #       Identifier  "Synaptics"
  #       Driver      "synaptics"
  #       Option      "Device" "/dev/input/mice"
  #       Option      "Protocol" "auto-dev"
  #       Option      "Emulate3Buttons" "yes"
  #       Option      "SHMConfig" "on"
  #EndSection

  Section "Monitor"
      Identifier  "Thinkpad Monitor"
      Option      "DPMS"
      HorizSync   31.5-50.0
      VertRefresh 59.9-60.1
  EndSection

  Section "Monitor"
      Identifier  "Philips 200WS8"
      Option      "DPMS"
      HorizSync   30-93
      VertRefresh 56-76
  EndSection

  Section "Device"
      Identifier  "Intel GMA X3100"
      Driver      "intel"
      BusID       "PCI:0:2:0"
      Option      "MonitorLayout" "LCD,VGA"
      Option      "DevicePresence" "true" 
      Screen      0
  EndSection

  Section "Device"
      Identifier  "Intel GMA X3100 External LCD"
      Driver      "intel"
      BusID       "PCI:0:2:0"
      Screen      1
  EndSection

  Section "Screen"
      Identifier          "Thinkpad Screen"
      Device              "Intel GMA X3100"
      Monitor             "Thinkpad Monitor"
      DefaultDepth        24
      SubSection          "Display"
          Depth           24
          Modes           "1680x1050"
          Viewport        0 0
      EndSubSection
  EndSection

  Section "Screen"
      Identifier          "External Screen"
      Device              "Intel GMA X3100 External LCD"
      Monitor             "Philips 200WS8"
      DefaultDepth        24
      SubSection          "Display"
          Depth           24
          Modes          "1680x1050"
          Viewport        0 0
      EndSubSection
  EndSection

  Section "DRI"
      Mode        0666
  EndSection

  Section "Extensions"
      Option      "Composite"     "Enable"
      Option      "RENDER"        "Enable"
  EndSection

  Section "ServerLayout"
      Identifier  "Default Layout"
      Screen 0 "Thinkpad Screen" Absolute 0 0
      InputDevice "UltraNav Trackpoint" "CorePointer"
  #    InputDevice "Synaptics" "CorePointer"
      InputDevice "Keyboard0" "CoreKeyboard"
  EndSection
        

Fluxbox

  $ egrep '^\w' ~/.fluxbox/startup
  xset -b
  xset r rate 250 50
  xhost +local:root
  gkrellm -w &
  exec /usr/bin/fluxbox -log "/home/cowyn/.fluxbox/log"
        
  $ cat ~/.fluxbox/init
  session.screen0.slit.direction:	Vertical
  session.screen0.slit.placement:	RightTop
  session.screen0.slit.layer:	Desktop
  session.screen0.slit.onhead:	0
  session.screen0.slit.autoHide:	false
  session.screen0.slit.acceptKdeDockapps:	true
  session.screen0.slit.alpha:	0
  session.screen0.slit.maxOver:	true
  session.screen0.slit.onTop:	false
  session.screen0.window.focus.alpha:	200
  session.screen0.window.unfocus.alpha:	120
  session.screen0.overlay.lineWidth:	1
  session.screen0.overlay.lineStyle:	LineSolid
  session.screen0.overlay.joinStyle:	JoinMiter
  session.screen0.overlay.capStyle:	CapNotLast
  session.screen0.tabs.maxOver:	false
  session.screen0.tabs.intitlebar:	true
  session.screen0.tabs.usePixmap:	false
  session.screen0.menu.alpha:	160
  session.screen0.iconbar.mode:	{static groups} (workspace)
  session.screen0.iconbar.alignment:	Relative
  session.screen0.iconbar.iconTextPadding:	5l
  session.screen0.iconbar.usePixmap:	true
  session.screen0.iconbar.iconWidth:	250
  session.screen0.iconbar.deiconifyMode:	follow
  session.screen0.iconbar.wheelMode:	Screen
  session.screen0.toolbar.visible:	true
  session.screen0.toolbar.placement:	BottomCenter
  session.screen0.toolbar.layer:	Dock
  session.screen0.toolbar.onhead:	0
  session.screen0.toolbar.widthPercent:	100
  session.screen0.toolbar.tools:	workspacename, prevworkspace, nextworkspace, iconbar, systemtray, prevwindow, nextwindow, clock
  session.screen0.toolbar.height:	16
  session.screen0.toolbar.autoHide:	false
  session.screen0.toolbar.alpha:	255
  session.screen0.toolbar.onTop:	false
  session.screen0.toolbar.maxOver:	false
  session.screen0.tab.placement:	LeftTop
  session.screen0.tab.height:	16
  session.screen0.tab.alignment:	left
  session.screen0.tab.width:	120
  session.screen0.tab.rotatevertical:	true
  session.screen0.titlebar.left:	Stick 
  session.screen0.titlebar.right:	Minimize Maximize Close 
  session.screen0.clientMenu.usePixmap:	true
  session.screen0.reversewheeling:	true
  session.screen0.workspacewarping:	true
  session.screen0.resizeMode:	Bottom
  session.screen0.allowRemoteActions:	true
  session.screen0.opaqueMove:	false
  session.screen0.windowMenu:	
  session.screen0.menuMode:	Delay
  session.screen0.rowPlacementDirection:	LeftToRight
  session.screen0.workspaceNames:	one,two,three,four,
  session.screen0.defaultDeco:	normal
  session.screen0.workspaces:	4
  session.screen0.followModel:	Ignore
  session.screen0.decorateTransient:	true
  session.screen0.fullMaximization:	false
  session.screen0.menuDelay:	0
  session.screen0.clickRaises:	true
  session.screen0.edgeSnapThreshold:	0
  session.screen0.focusModel:	ClickFocus
  session.screen0.autoRaise:	true
  session.screen0.tooltipDelay:	500
  session.screen0.windowScrollReverse:	true
  session.screen0.colPlacementDirection:	TopToBottom
  session.screen0.desktopwheeling:	true
  session.screen0.windowScrollAction:	Shade
  session.screen0.menuDelayClose:	0
  session.screen0.demandsAttentionTimeout:	500
  session.screen0.maxDisableResize:	false
  session.screen0.userFollowModel:	Follow
  session.screen0.rootCommand:	fbsetbg -l
  session.screen0.focusLastWindow:	true
  session.screen0.maxDisableMove:	false
  session.screen0.windowPlacement:	RowSmartPlacement
  session.screen0.antialias:	false
  session.screen0.maxIgnoreIncrement:	true
  session.screen0.imageDither:	false
  session.screen0.showwindowposition:	true
  session.screen0.tabFocusModel:	ClickToTabFocus
  session.screen0.strftimeFormat:	%m-%d %T %a
  session.screen0.focusNewWindows:	true
  session.screen0.noFocusWhileTypingDelay:	0l
  session.tabsAttachArea:	Window
  session.configVersion:	10
  session.modKey:	Mod1
  session.doubleClickInterval:	250
  session.numLayers:	13
  session.groupFile:	~/.fluxbox/groups
  session.cacheMax:	200l
  session.opaqueMove:	false
  session.focusTabMinWidth:	0
  session.tabs:	true
  session.autoRaiseDelay:	0
  session.appsFile:	~/.fluxbox/apps
  session.styleOverlay:	~/.fluxbox/overlay
  session.slitlistFile:	~/.fluxbox/slitlist
  session.ignoreBorder:	true
  session.menuFile:	~/.fluxbox/menu
  session.colorsPerChannel:	4
  session.forcePseudoTransparency:	true
  session.cacheLife:	5l
  session.imageDither:	true
  session.styleFile:	/home/cowyn/.fluxbox/styles/System_Shock_2004
  session.tabPadding:	0
  session.keyFile:	~/.fluxbox/keys
        
  $ cat ~/.fluxbox/keys
  !!!!!!!!!
  ! Fluxbox
  !!!!!!!!!

  Control Mod4 Delete       :Reconfigure
  Control Mod4 Shift Delete :Restart
  Control Mod4 q            :Quit
  !                         :SetStyle argument
  Mod4    l                 :ExecCommand xlock -echokeys -echokey $ -fg darkgreen -info "++++++ Do NOT be evil... ++++++" -invalid "------           Fuck YOU           ------"
  Control Mod4 F4           :ExecCommand sudo halt

  !!!!!!!!!
  ! Workspace
  !!!!!!!!!
  Mod4 Tab                  :NextWorkspace
  Mod4 Shift Tab            :PrevWorkspace
  Mod4 Right                :RightWorkspace
  Mod4 Left                 :LeftWorkspace
  Mod4 F1                   :Workspace 1
  Mod4 F2                   :Workspace 2
  Mod4 F3                   :Workspace 3
  Mod4 F4                   :Workspace 4
  Mod1 Tab                  :NextWindow
  Mod1 Shift Tab            :PrevWindow
  Mod1 Control Tab          :NextGroup
  Mod1 Control Shift Tab    :PrevGroup
  Mod4 a                    :ArrangeWindows
  Mod4 d                    :ShowDesktop
  Control Menu              :RootMenu
  Mod4 Menu                 :WorkspaceMenu
  Mod1 Menu                 :WindowMenu
  !Mod4 e                    :WorkspaceNameDialog
  Mod4 Control e            :SetWorkspaceName name
  Mod1 F6                   :RootMenu


  !!!!!!!!!
  ! Current focused window
  !!!!!!!!!

  !Minimize, MinimizeWindow or Iconify
  Mod4 Control m            :Minimize
  !Maximize, MaximizeWindow
  Mod4 m                    :Maximize
  Mod4 f                    :Fullscreen
  Mod4 v m                  :MaximizeVertical
  Mod4 h m                  :MaximizeHorizontal
  !                         :ResizeTo width height
  Mod4 Control Left         :Resize -1 0
  Mod4 Control Right        :Resize 1 0
  Mod4 Control Up           :Resize 0 1
  Mod4 Control Down         :Resize 0 -1
  !                         :ResizeHorizontal delta-width
  !                         :ResizeVertical delta-height
  Mod4 0                    :MoveTo 0 0
  Mod4 9                    :MoveTo 1680 0
  Mod4 Shift Left           :Move -1 0
  Mod4 Shift Right          :Move 1 0
  Mod4 Shift Up             :Move 0 -1
  Mod4 Shift Down           :Move 0 1
  !                         :MoveRight delta-x
  !                         :MoveLeft delta-x
  !                         :MoveUp delta-y
  !                         :MoveDown delta-y
  Mod4 Mod1 Up              :Raise
  Mod4 Mod1 Down            :Lower
  Mod1 F4                   :Close
  !Shade, ShadeWindow
  Mod4 s                    :Shade
  !Stick, StickWindow
  Mod4 Control s            :Stick
  !Mod4 d                    :ToggleDecor
  Mod4 Mod1 1               :SendToWorkspace 1
  Mod4 Mod1 2               :SendToWorkspace 2
  Mod4 Mod1 3               :SendToWorkspace 3
  Mod4 Mod1 4               :SendToWorkspace 4
  Mod4 Shift 1              :TakeToWorkspace 1
  Mod4 Shift 2              :TakeToWorkspace 2
  Mod4 Shift 3              :TakeToWorkspace 3
  Mod4 Shift 4              :TakeToWorkspace 4
  Mod4 k                    :KillWindow
  Mod4 t                    :NextTab
  Mod4 Shift t              :PrevTab
  !Mod4 Shift Left t         :MoveTabLeft
  !Mod4 Shift Right t        :MoveTabRight
  Mod4 Shift d t            :DetachClient


  !!!!!!!!!!
  ! Mouse
  !!!!!!!!!!

  OnTitlebar Mouse2 :StartTabbing
  OnTitlebar Double Mouse1 :Shade
  OnTitlebar Mouse3 :WindowMenu
  OnTitlebar Mouse5 :ShadeOn
  OnTitlebar Mouse4 :ShadeOff
  OnWindow Mod1 Mouse1 :MacroCmd {Raise} {Focus} {StartMoving}
  OnWindow Mod1 Mouse3 :MacroCmd {Raise} {Focus} {StartResizing BottomRight}
  OnToolbar Mouse4 :PrevWorkspace
  OnToolbar Mouse5 :NextWorkspace


  !!!!!!!!!!
  ! Accessibility
  !!!!!!!!!!

  Control Mod1 a            :Exec audacious
  Control Mod1 c            :Exec sh -c 'LC_CTYPE=en_US.UTF-8 /opt/google/chrome/google-chrome --enable-plugins'
  Control Mod1 d            :Exec urxvt -title alsamixer -e alsamixer
  Control Mod1 e            :Exec urxvt -title mutt -e mutt
  Control Mod1 i            :Exec urxvt -title irssi -e irssi
  Control Mod1 m            :Exec urxvt -title cmus -e cmus
  Control Mod1 n            :Exec rxvt -e sudo ipswitch || exit
  Control Mod1 p            :Exec pidgin
  Control Mod1 t            :Exec thunderbird
  Control Mod1 u            :Exec urxvt
  Control Mod1 v            :Exec VirtualBox
  Control Mod1 w            :Exec firefox
  Control Print             :Exec import -pause 1 -window root -compress JPEG2000 ~/tmp/screenshot-`date +%F-%k-%m-%M`.jpg
  Control Shift Print       :Exec import -pause 1 -compress JPEG2000 ~/tmp/screenshot-`date +%F-%k-%m-%M`.jpg
  None XF86LaunchA   :RootMenu
  
  None XF86AudioPlay :Exec /usr/bin/cmus-remote -u
  None XF86AudioStop :Exec /usr/bin/cmus-remote -s
  None XF86AudioPrev :Exec /usr/bin/cmus-remote -r
  None XF86AudioNext :Exec /usr/bin/cmus-remote -n
  None XF86AudioMute :Exec amixer -q set Master toggle
  None XF86AudioLowerVolume :Exec amixer -q set PCM 1-
  None XF86AudioRaiseVolume :Exec amixer -q set PCM 1+
        

Check my ipswitch script as an example.

Back to Index of Running Slackware Linux on ThinkPad T61.


Valid XHTML | ©2010 dOtImes.cOm, All rights reserved. | Creative Commons | Powered by Slackware, Nginx. Posted and Maintained by Cowyn Li
Last Update: Wednesday, 2008-11-19, 19:15, UTC+8.