profile.git
12 years agoAllow specifying path to tmux socket.
Iain Patterson [Fri, 20 Jan 2012 11:23:28 +0000 (11:23 +0000)]
Allow specifying path to tmux socket.

Use -S to pass the socket path flag to tmux.

12 years agoChange layout keys.
Iain Patterson [Wed, 19 Oct 2011 10:01:53 +0000 (11:01 +0100)]
Change layout keys.

Various changes to which keys select which layout.

12 years agoDefeat various key repeating niggles.
Iain Patterson [Mon, 5 Sep 2011 15:11:00 +0000 (16:11 +0100)]
Defeat various key repeating niggles.

Don't allow key repeating for unshifted keys and arrows.

Switch to pane left with ^p l.
Start typing ls.
Find yourself two panes left.

But allow control-alt-h/j/k/l to resize windows with repeats.

Using alt on its own doesn't work because terminal funkiness will lead
tmux to think, for example, alt-k was pressed if ^p^k is quickly followed
by escape then ^k.  This can (and does) happen when switching to a pane
and immediately recalling the previous history entry.

12 years agoAllow X multiplier for usize.
Iain Patterson [Mon, 19 Dec 2011 11:49:57 +0000 (11:49 +0000)]
Allow X multiplier for usize.

Use X3 to use the same multiplier for both width and height.

12 years agoLatest rxvt-unicode terminfo.
Iain Patterson [Thu, 8 Dec 2011 13:24:39 +0000 (13:24 +0000)]
Latest rxvt-unicode terminfo.

12 years agoMake sure escape sequences don't leak into the prompt.
Iain Patterson [Wed, 7 Dec 2011 13:38:49 +0000 (13:38 +0000)]
Make sure escape sequences don't leak into the prompt.

If some terminal formatting escape sequence was used by an application
prior to returning to the prompt, the first parts of the prompt might
not be drawn correctly.  Force a reset before drawing anything.

12 years agoDon't override terminal name for urxvt.
Iain Patterson [Wed, 2 Nov 2011 11:25:50 +0000 (11:25 +0000)]
Don't override terminal name for urxvt.

Use the default rxvt-unicode with its associated terminfo entry.

13 years agoMild OCD.
Iain Patterson [Tue, 1 Nov 2011 17:49:01 +0000 (17:49 +0000)]
Mild OCD.

13 years agoSupport font changing in tmux 1.5.
Iain Patterson [Tue, 1 Nov 2011 17:46:57 +0000 (17:46 +0000)]
Support font changing in tmux 1.5.

As of version 1.5 tmux supports sending raw escape sequences to the
underlying terminal.  The sequences must be prefixed by the magic
sequence ESC P tmux ; ESC.

13 years agoRemoved obsolete aspect hack.
Iain Patterson [Tue, 1 Nov 2011 17:28:10 +0000 (17:28 +0000)]
Removed obsolete aspect hack.

13 years agoReally fix KRB5CCNAME.
Iain Patterson [Tue, 1 Nov 2011 10:56:53 +0000 (10:56 +0000)]
Really fix KRB5CCNAME.

Pass KRB5CCNAME through to the failsafe kinit only if -c wasn't used.

13 years agoDon't eat KRB5CCNAME.
Iain Patterson [Thu, 27 Oct 2011 09:51:30 +0000 (10:51 +0100)]
Don't eat KRB5CCNAME.

13 years agoFix argument handling with kinit.
Iain Patterson [Fri, 7 Oct 2011 06:28:12 +0000 (07:28 +0100)]
Fix argument handling with kinit.

Use a function instead of an alias for kinit so arguments are not
eaten.

13 years agoAllow multiplier for usize.
Iain Patterson [Wed, 5 Oct 2011 13:38:29 +0000 (14:38 +0100)]
Allow multiplier for usize.

Instead of entering an explicit number of rows or columns to usize,
allow, eg x2 or x3.

13 years agoFixed virtualedit in status line.
Iain Patterson [Wed, 5 Oct 2011 13:36:45 +0000 (14:36 +0100)]
Fixed virtualedit in status line.

Fixed check for virtualedit being active.
Show virtual column iff it is different from cursor column.

13 years agokinit failsafe.
Iain Patterson [Wed, 5 Oct 2011 13:20:11 +0000 (14:20 +0100)]
kinit failsafe.

If PATH or LD_LIBRARY_PATH contained NFS-mounted directories and
Kerberos tickets had expired it would be impossible to run kinit.

13 years agoLatest bufexplorer plugin.
Iain Patterson [Wed, 5 Oct 2011 13:03:00 +0000 (14:03 +0100)]
Latest bufexplorer plugin.

Recent versions of vim were printing annoying warnings about
the ActivateBuffer() function.

13 years agoRemoved useless key binds.
Iain Patterson [Mon, 5 Sep 2011 15:09:30 +0000 (16:09 +0100)]
Removed useless key binds.

Both l and ^l are bound later in the configuration file so there's
little point keeping them at the top.

13 years agoDisable menubar dragging in GTKv2 apps.
Iain Patterson [Thu, 25 Aug 2011 09:58:22 +0000 (10:58 +0100)]
Disable menubar dragging in GTKv2 apps.

By default you can click in an application's menubar and drag to move
the window around.
Disable this behaviour by setting the "window-dragging" attribute of
GtkMenuBar widgets to 0.

13 years agoAllow GTK (v1 and v2) overrides.
Iain Patterson [Thu, 25 Aug 2011 09:54:53 +0000 (10:54 +0100)]
Allow GTK (v1 and v2) overrides.

Allow including a local GTKv1 theme by creating a symlink in ~/.themes
named "theme" which points to the theme directory (containing gtkrc).
Allow including a local GTKv2 theme by creating a symlink in ~/.themes
named "theme-2.0" pointing to the directory containing the v2 gtkrc.
Allow including local overrides in ~/.themes/override (resp.
override-2.0).

Also do the right thing for GNOME themes.

13 years agoTypo checking number of colours.
Iain Patterson [Mon, 22 Aug 2011 15:39:36 +0000 (16:39 +0100)]
Typo checking number of colours.

13 years agoRevamp pane and window swapping.
Iain Patterson [Sun, 7 Aug 2011 11:33:43 +0000 (12:33 +0100)]
Revamp pane and window swapping.

The rotate-window command isn't hugely useful so instead bind o to
"swap-pane -D" and O to "swap-pane -U" to swap the current pane with
the next (resp. previous) pane.

Bind w to prompt for a pane to swap with the current pane.

Bind W to prompt for a window to swap with the current window.

13 years agoFix prompt for join-pane.
Iain Patterson [Sun, 7 Aug 2011 11:30:14 +0000 (12:30 +0100)]
Fix prompt for join-pane.

The argument to join-pane is a pane specifier.  If no dot is used to
separate the window and pane parts, join-pane treats the argument as
a window and joins pane zero from that window.

Thus strictly speaking the pane part of the command prompt should be
shown as optional rather than the window part.

13 years agoHotkeys to select windows numbered higher than 9.
Iain Patterson [Sun, 7 Aug 2011 08:52:29 +0000 (09:52 +0100)]
Hotkeys to select windows numbered higher than 9.

Use Meta-n to select window n+10.

13 years agoUse choose-window to select windows.
Iain Patterson [Sun, 7 Aug 2011 08:29:09 +0000 (09:29 +0100)]
Use choose-window to select windows.

The choose-window command previously didn't work so list-windows was
bound instead.  Use choose-window now that it works properly.

13 years agoSupport tmux 1.5.
Iain Patterson [Fri, 29 Jul 2011 12:18:50 +0000 (13:18 +0100)]
Support tmux 1.5.

Disable the new mouse features but allow them to be toggled on with C-m.
Teach the terminal how to be resized using the new tmux escape
sequences.

13 years agoAdd an extra level of race avoidance.
Iain Patterson [Fri, 15 Apr 2011 15:10:16 +0000 (16:10 +0100)]
Add an extra level of race avoidance.

Checking for a kinit child can introduce a race.

13 years agoUse Infinality font settings.
Iain Patterson [Fri, 29 Jul 2011 12:22:27 +0000 (13:22 +0100)]
Use Infinality font settings.

Requires freetype-freeworld from rpmfusion.

13 years agoXterm scrollbar on the right.
Iain Patterson [Fri, 29 Jul 2011 12:21:14 +0000 (13:21 +0100)]
Xterm scrollbar on the right.

13 years agoSupport resizing in tmux 1.5.
Iain Patterson [Mon, 27 Jun 2011 12:53:31 +0000 (13:53 +0100)]
Support resizing in tmux 1.5.

As of version 1.5 tmux supports sending raw escape sequences to the
underlying terminal.  The sequences must be prefixed by the magic
sequence ESC P tmux ; ESC.

13 years agoAppend rather than replace terminal-overrides.
Iain Patterson [Mon, 27 Jun 2011 10:46:26 +0000 (11:46 +0100)]
Append rather than replace terminal-overrides.

13 years agoAllow specifying path to tmux.
Iain Patterson [Fri, 15 Apr 2011 15:09:18 +0000 (16:09 +0100)]
Allow specifying path to tmux.

ktmux_helper needs to call tmux to open a new window for kinit but
it won't be able to if it doesn't know where tmux is.

13 years agoAlternate binding for split-pane.
Iain Patterson [Sat, 12 Mar 2011 09:48:25 +0000 (09:48 +0000)]
Alternate binding for split-pane.

Use ^\ to split like S.  ie use P then \ while holding down control.

13 years agoMore scrollback in tmux.
Iain Patterson [Sat, 20 Nov 2010 12:23:14 +0000 (12:23 +0000)]
More scrollback in tmux.

13 years agoPentadactyl fixes.
Iain Patterson [Sat, 12 Mar 2011 09:28:48 +0000 (09:28 +0000)]
Pentadactyl fixes.

Show tab numbers more clearly.
Always show the status line.

13 years agoAdded .pentadactlyrc.
Iain Patterson [Fri, 25 Feb 2011 17:01:21 +0000 (17:01 +0000)]
Added .pentadactlyrc.

Switched from Vimperator.
Most things are the same but hlsearch is renamed to hlfind and
autocomplete is annoying.

13 years agoFix tmux session alias and remove site-specific stuff.
Iain Patterson [Mon, 14 Feb 2011 11:28:28 +0000 (11:28 +0000)]
Fix tmux session alias and remove site-specific stuff.

The session alias should be defined when tmux is found but the last
change introduced a logic flaw whereby it instead gets defined when
krenew is found.

Some site-specific stuff (/comm/tmux) shouldn't have found its way
into master.

13 years agoUse ^p p to send ^p to tmux pane.
Iain Patterson [Fri, 4 Feb 2011 13:49:28 +0000 (13:49 +0000)]
Use ^p p to send ^p to tmux pane.

13 years agoAllow specifying paths to Kerberos helpers.
Iain Patterson [Fri, 28 Jan 2011 12:07:16 +0000 (12:07 +0000)]
Allow specifying paths to Kerberos helpers.

Use -I to tell ktmux_helper where to find kinit.
Use -L to tell ktmux_helper where to find klist.
Use -R to tell ktmux_helper where to find krenew.

If any of the above options are omitted, ktmux_helper will search
for the corresponding tool in the PATH.

13 years agoSwap round some tmux bindings.
Iain Patterson [Wed, 12 Jan 2011 11:14:25 +0000 (11:14 +0000)]
Swap round some tmux bindings.

Use h and l to switch left and right in panes; H and L to switch left
and right in windows.
Use J and K to switch up and down not top and bottom which only worked
when there was one pane on top or bottom, ie they broke if there were
two vertically-split panes on top.

These changes diverge from screen compatibility somewhat but
it was getting annoying to have to swap between using shift or not
when changing panes horizontally or vertically.

Also use 6 as another way to switch to the last pane and ^ to switch
to the last window, kinda like Vim.

13 years agoUse tmux for sessions.
Iain Patterson [Fri, 1 Oct 2010 12:55:27 +0000 (13:55 +0100)]
Use tmux for sessions.

Use tmux with the Kerberos helper for the session alias.

13 years agoResize properly.
Iain Patterson [Thu, 6 Jan 2011 11:24:38 +0000 (11:24 +0000)]
Resize properly.

tput doesn't work inside a subshell.  Use stty size.

13 years agoSet TERMINFO before calling tput.
Iain Patterson [Tue, 13 Jul 2010 09:32:49 +0000 (10:32 +0100)]
Set TERMINFO before calling tput.

grep.bashrc and ps1.bashrc call tput so add a dependency on TERM.bashrc.

13 years agoRelaunch kinit if necessary.
Iain Patterson [Fri, 26 Nov 2010 15:38:49 +0000 (15:38 +0000)]
Relaunch kinit if necessary.

Instead of processing the USR1 signal once to trigger the launch
of kinit, check for a running kinit whose parent is ktmux_helper
when we get USR1.  Do nothing if there is such a kinit but launch
one otherwise.

13 years agoFixed override of KRB5CCNAME when attaching.
Iain Patterson [Thu, 9 Dec 2010 13:47:03 +0000 (13:47 +0000)]
Fixed override of KRB5CCNAME when attaching.

Because KRB5CCNAME was set in update-environment, when attaching
to a running session the saved KRB5CCNAME would be replaced with
that from the attaching user.  This conflicts with the cache used
by ktmux_helper.

Instead, use set-environment to put KRB5CCNAME in the session
environment and kinit with it before running tmux.

13 years agoFix PAGER.
Iain Patterson [Fri, 26 Nov 2010 15:38:21 +0000 (15:38 +0000)]
Fix PAGER.

Use "less -R" where less is available.

13 years agoHandle credential expiration.
Iain Patterson [Thu, 18 Nov 2010 17:39:50 +0000 (17:39 +0000)]
Handle credential expiration.

Request tmux to launch kinit in a new window if credentials expire.

13 years agoKerberized tmux.
Iain Patterson [Wed, 3 Nov 2010 15:29:22 +0000 (15:29 +0000)]
Kerberized tmux.

Added ktmux - Kerberized tmux, launching ktmux_helper to keep tickets
updated in the background.

13 years agoAppend to update-environment list.
Iain Patterson [Wed, 3 Nov 2010 15:27:22 +0000 (15:27 +0000)]
Append to update-environment list.

Appending KRB5CCNAME to the list of environment variables to be
preserved in tmux sessions is more elegant than replacing the
original list.

14 years agoDon't change directory by default unless becoming root.
Iain Patterson [Thu, 28 Oct 2010 09:52:39 +0000 (10:52 +0100)]
Don't change directory by default unless becoming root.

If the target user is not root require the -c flag to change back
to the directory from which become was launched.

14 years agoCorrected join-pane bind.
Iain Patterson [Tue, 19 Oct 2010 09:11:35 +0000 (10:11 +0100)]
Corrected join-pane bind.

The intention was that C-b would move the designated window into the
current window but the command was incorrectly written such that the
active pane would be moved into the designated window instead.

14 years agoPrompt tweaks.
Iain Patterson [Mon, 18 Oct 2010 14:30:28 +0000 (15:30 +0100)]
Prompt tweaks.

Hide : in prompt if only the path should be shown.
Set ROOT_OK_COLOUR and ROOT_FAILED_COLOUR to change the colour of
the # prompt when running as root.

14 years agoFix restoring cursorline after focus change.
Iain Patterson [Fri, 8 Oct 2010 10:00:41 +0000 (11:00 +0100)]
Fix restoring cursorline after focus change.

If focus was lost for the first time after manually setting cursorline but we
were NOT held in insert mode, cursorline would incorrectly be unset when
focus was restored.
Losing focus for the first time after manually setting cursorline when held
in insert mode behaved correctly.

14 years agoShow host and session name in tmux status line.
Iain Patterson [Wed, 6 Oct 2010 13:17:03 +0000 (14:17 +0100)]
Show host and session name in tmux status line.

14 years agoInitial tmux configuration.
Iain Patterson [Thu, 30 Sep 2010 13:05:00 +0000 (14:05 +0100)]
Initial tmux configuration.

Try to emulate screen in areas where screen works well.
Set a consistent colour scheme.
Use Vim-like key bindings where possible.

14 years agotmux hacks.
Iain Patterson [Wed, 15 Sep 2010 13:07:00 +0000 (14:07 +0100)]
tmux hacks.

tmux won't allow window resizing.  It also requires a TERM setting of
screen or screen-256color.  Assume that screen or screen-256color means
tmux and screen-bce or screen-256color-bce means real screen.

14 years agoImproved some find_working calls.
Iain Patterson [Tue, 31 Aug 2010 09:39:59 +0000 (10:39 +0100)]
Improved some find_working calls.

Require vim --version to print something useful.
Skip argument checks for certain find_working commands.

14 years agoFixed argument handling in find_working.
Iain Patterson [Tue, 31 Aug 2010 09:39:03 +0000 (10:39 +0100)]
Fixed argument handling in find_working.

find_working wasn't using the arguments passed with -a when checking if
an executable it found was really working.
Added the -A flag to skip argument checking altogether.

14 years agoAdded git reabse alias.
Iain Patterson [Fri, 6 Aug 2010 10:50:32 +0000 (11:50 +0100)]
Added git reabse alias.

Alias git reabse to ``git rebase'' because I keep failing to type
the real command properly.

14 years agoCursor binding.
Iain Patterson [Tue, 3 Aug 2010 14:50:05 +0000 (15:50 +0100)]
Cursor binding.

Show scrollbind or cursorbind in the statusline.

If cursorbind (introduced in Vim 7.3) is on show a horizontal arrow
indicator.
If scrollbind is on (and cursorbind isn't) show a vertical indicator.

This necessitates moving Has_Unicode() to the Vim 5 section and hence
removing the script prefix.

Set cursorbind automatically where supported if diff mode is on.

14 years agoSettings for less.
Iain Patterson [Tue, 27 Jul 2010 14:40:02 +0000 (15:40 +0100)]
Settings for less.

Set colours and character set if GNU less is found.

14 years agoMore scrollback in screen.
Iain Patterson [Thu, 22 Jul 2010 15:05:39 +0000 (16:05 +0100)]
More scrollback in screen.

Memory is cheap.  Save 512 lines instead of 100.

14 years agoShow virtualedit status in statusline.
Iain Patterson [Thu, 22 Jul 2010 09:17:55 +0000 (10:17 +0100)]
Show virtualedit status in statusline.

14 years agoAdded NERD_commenter plugin.
Iain Patterson [Thu, 22 Jul 2010 09:17:41 +0000 (10:17 +0100)]
Added NERD_commenter plugin.

14 years agoSupport new features in Vim 7.3.
Iain Patterson [Wed, 7 Jul 2010 16:55:19 +0000 (17:55 +0100)]
Support new features in Vim 7.3.

Enable persistent undo by default if an undofile already exists but not
for temporary files etc.
Show U in the statusline if persistent undo is on.
Show u in the statusline if persistent undo is off but an undofile exists.
Use \u to toggle persistent undo on and off.
Use \U to disable persistent undo and delete the undofile.

Use \CC to toggle ColorColumn at current cursor position.
Use \Cc to remove last set ColorColumn.
Use \Cx to remove all ColorColumns.

14 years agoBufExplorer tweaks.
Iain Patterson [Wed, 14 Jul 2010 10:15:31 +0000 (11:15 +0100)]
BufExplorer tweaks.

Tweak highlighting to make the current and alternate buffers more
noticeable and hidden buffers more subtle.
Map 0 to search for the active buffer.
Map 1-9 to search for matching buffer numbers, selecting unique matches.

14 years agoShow alternate buffer in statusline.
Iain Patterson [Wed, 14 Jul 2010 10:40:02 +0000 (11:40 +0100)]
Show alternate buffer in statusline.

Toggle showing alternate buffer number and name for the current buffer,
if it exists, with <Leader>#.  Off by default.

14 years agoBack compatibility.
Iain Patterson [Thu, 8 Jul 2010 12:47:22 +0000 (13:47 +0100)]
Back compatibility.

Make sure more things which rely on particular features are wrapped in
has("feature") conditionals and wrap more stuff in version checks.
User functions were introduced in Vim 5.2.
VIMRUNTIME was introduced in Vim 5.4
The system() command was introduced in Vim 5.4.
The statusline option could not be modified before Vim 5.4.

14 years agoBash 4 stuff.
Iain Patterson [Mon, 12 Jul 2010 12:25:51 +0000 (13:25 +0100)]
Bash 4 stuff.

Unset command_not_found_handle so typos and missing commands don't trigger
whatever annoying handler the vendor has set up.

14 years agoAdded xterm-88color terminfo.
Iain Patterson [Thu, 15 Jul 2010 15:03:38 +0000 (16:03 +0100)]
Added xterm-88color terminfo.

Macs don't have it.  Ancient Linux might not.  Solaris probably doesn't.

14 years agoRestore more old Git completion behaviour.
Iain Patterson [Mon, 28 Jun 2010 09:54:05 +0000 (10:54 +0100)]
Restore more old Git completion behaviour.

If we can't figure out a head print nothing rather than (unknown) as
this can get annoying when becoming other users and/or changing into
trees without permissions on the .git directory.

14 years agoGit completion from Git 1.7 with tweaks.
Iain Patterson [Fri, 25 Jun 2010 10:34:08 +0000 (11:34 +0100)]
Git completion from Git 1.7 with tweaks.

Preserve check for bash3+ before trying completion.
Remove the space between branch name and symbols.

14 years agoPut the cursor over the description placeholder.
Iain Patterson [Fri, 4 Jun 2010 12:44:42 +0000 (13:44 +0100)]
Put the cursor over the description placeholder.

Previously we did a reverse search for <enter description here> but
changed to finding the Description header so it was always visible.
Still look for Description but immediately put the cursor down a line
ready to type.

14 years agoBrought .vimperratorrc.local into version control.
Iain Patterson [Mon, 31 May 2010 21:24:22 +0000 (22:24 +0100)]
Brought .vimperratorrc.local into version control.

14 years agoHandle tsort failure.
Iain Patterson [Fri, 28 May 2010 14:45:46 +0000 (15:45 +0100)]
Handle tsort failure.

If tsort fails just source the scripts in the order they're found.

14 years agoUse vim alias for P4EDITOR etc.
Iain Patterson [Fri, 26 Feb 2010 07:44:25 +0000 (07:44 +0000)]
Use vim alias for P4EDITOR etc.

14 years agoAllow ordering of profile scripts.
Iain Patterson [Fri, 14 May 2010 13:09:19 +0000 (14:09 +0100)]
Allow ordering of profile scripts.

If "# profile-required: X" appears in a file under .profile.d then
ensure that X (which may be a list) is processed before the script in
question.
Always source OS.bashrc, PATH.bashrc and BECOME.bashrc before everything
else, if they exist.
Use this functionality to ensure that p4.bashrc isn't sourced before
vim.bashrc so that P4EDITOR can be set.

14 years agoSet formatting in changelist window.
Iain Patterson [Wed, 19 May 2010 13:26:30 +0000 (14:26 +0100)]
Set formatting in changelist window.

14 years agoMove __ps1 call from .bash_profile to ps1.bashrc.
Iain Patterson [Thu, 29 Apr 2010 09:33:37 +0000 (10:33 +0100)]
Move __ps1 call from .bash_profile to ps1.bashrc.

Don't force __ps1 to be called from .bash_profile.  Anyone cloning the
repository should be free to discard the prompt changes.

14 years agoEnsure VISUAL is set when becoming.
Iain Patterson [Mon, 26 Apr 2010 10:01:54 +0000 (11:01 +0100)]
Ensure VISUAL is set when becoming.

14 years agoRemoved pointless line left over from earlier versions.
Iain Patterson [Wed, 21 Apr 2010 13:27:22 +0000 (14:27 +0100)]
Removed pointless line left over from earlier versions.

14 years agoTry to change to directory from which become was run.
Iain Patterson [Wed, 21 Apr 2010 13:27:04 +0000 (14:27 +0100)]
Try to change to directory from which become was run.

14 years agoPreserve umask.
Iain Patterson [Thu, 25 Mar 2010 17:04:46 +0000 (17:04 +0000)]
Preserve umask.

We set umask 077 to ensure that the become script is not readable by
other users.  Set the mask back to what it was beforehand.

14 years agoDon't set LD_RUN_PATH.
Iain Patterson [Wed, 24 Mar 2010 15:12:39 +0000 (15:12 +0000)]
Don't set LD_RUN_PATH.

For starters it was cloning PATH when LD_LIBRARY_PATH would be more
appropriate.
More importantly it isn't needed most of the time.  Indeed I'm usually
unsetting it whenever I build stuff so that the run path doesn't leak
into compiled code.
Set it manually as and when appropriate.

14 years agoDon't break SCREENDIR.
Iain Patterson [Tue, 23 Mar 2010 16:58:55 +0000 (16:58 +0000)]
Don't break SCREENDIR.

Use $HOME not ~ as the directory name is quoted.

14 years agoTypo.
Iain Patterson [Sun, 21 Mar 2010 11:47:16 +0000 (11:47 +0000)]
Typo.

14 years agoDon't leak file descriptor.
Iain Patterson [Thu, 18 Mar 2010 22:23:05 +0000 (22:23 +0000)]
Don't leak file descriptor.

14 years agoExploit bash POSIXLY_CORRECT mode.
Iain Patterson [Wed, 17 Mar 2010 13:28:57 +0000 (13:28 +0000)]
Exploit bash POSIXLY_CORRECT mode.

Avoid ugly --rcfile lines in ps output by exploiting the fact that a
POSIX mode bash will read startup commands from the file specified in
ENV.
Set ENV and POSIXLY_CORRECT for startup, unsetting them and disabling
POSIX mode as the first actions in the new shell.

14 years agoMantis 402.
Iain Patterson [Mon, 15 Mar 2010 13:34:50 +0000 (13:34 +0000)]
Mantis 402.

Don't use mktemp in become and became.  Some systems don't have it and
others want different arguments.

14 years agoMore checks in become.
Iain Patterson [Thu, 11 Mar 2010 11:53:25 +0000 (11:53 +0000)]
More checks in become.

Check target user is valid before proceeding.
Don't delegate X11 cookie to non-root users by default.

14 years agoSCREENDIR checks.
Iain Patterson [Wed, 10 Mar 2010 14:20:00 +0000 (14:20 +0000)]
SCREENDIR checks.

Use bash builtin -g to check for setgid screen.
Make SCREENDIR if it doesn't already exist.

14 years agoAllow passing Kerberos credentials when becoming.
Iain Patterson [Fri, 5 Mar 2010 12:14:01 +0000 (12:14 +0000)]
Allow passing Kerberos credentials when becoming.

Use the -k flag to become to pass Kerberos credentials to the
target user even if this is not root.

14 years agoRemoved unnecessary subshell for tty -s check.
Iain Patterson [Fri, 26 Feb 2010 07:50:03 +0000 (07:50 +0000)]
Removed unnecessary subshell for tty -s check.

14 years agoSanity check path rules with embedded variables.
Iain Patterson [Thu, 18 Feb 2010 10:44:46 +0000 (10:44 +0000)]
Sanity check path rules with embedded variables.

14 years agoAdd target UID to KRB5CCNAME when becoming.
Iain Patterson [Fri, 12 Feb 2010 10:51:17 +0000 (10:51 +0000)]
Add target UID to KRB5CCNAME when becoming.

14 years agobecome overhaul.
Iain Patterson [Fri, 5 Feb 2010 13:53:00 +0000 (13:53 +0000)]
become overhaul.

Pass commands to sudo through stdin.
Use these commands to set the environment for the destination user.
Replace all $HOME paths with $PROFILE_HOME, set when becoming.
Make .become/all optional as its functionality has been moved.

14 years agoFormatting.
Iain Patterson [Fri, 21 Aug 2009 14:09:30 +0000 (15:09 +0100)]
Formatting.

14 years agoFix MarkLine highlighting.
Iain Patterson [Mon, 1 Feb 2010 13:43:55 +0000 (13:43 +0000)]
Fix MarkLine highlighting.

Marks which are highlighted with MarkLine weren't being highlighted
correctly since the big sign code refactoring.

14 years agoHandle git p4 submit.
Iain Patterson [Tue, 26 Jan 2010 13:11:25 +0000 (13:11 +0000)]
Handle git p4 submit.

git p4 submit includes the diff in its change spec so just copy that
rather than doing a diff manually.

14 years agoHandle Kerberos credentials when becoming users other than root.
Iain Patterson [Fri, 15 Jan 2010 14:06:57 +0000 (14:06 +0000)]
Handle Kerberos credentials when becoming users other than root.