sakura process stays in initial working directory
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Sakura |
Fix Released
|
Low
|
Unassigned |
Bug Description
Sakura is a great and lightweight terminal emulator and it also fits nicely into my workflow and my tiling window manager setup.
There is one thing which I find very annoying: Sakuras handling of the working directory.
Sakura has a option to set the working directory for the shell. This also works from Thunar’s context menu and I can open terminal windows in the current directory. I also fire up sakura from another sakura instance to open a new window in the current directory.
The problem is that sakura does not only change the working directory for the new shell but also for the sakura process itself. I am able to change the cwd of my shell by typing “cd”, but the cwd of the sakura process will not change, of course.
Usually this is not a great deal, but there are awkward situations: It happened that I started sakura in /media/foo and afterwards reused the terminal and went to a different directory. Now sakura stays in /media/foo and I am not able to unmount the volume cleanly without closing sakura (for which I must quit the job which is currently running).
I patched sakura to sanitize its working directory to the user’s home directory. This will happen after everything is set up correctly. This should always work (--working-directoy option, --xterm-execute or --exececute with “cd” in it, starting sakura from shell and inheriting the cwd).
The patch is attached and maybe you want to merge it. If there are changes necessary (introduction of new command line flag, …), leave a comment and I will probably implement them, too.
I just have tested other terminal emulators and they did not suffer from sakura’s behaviour. I did not check their sources, though.
Changed in sakura: | |
status: | Fix Committed → Fix Released |
Thank you Stefan. I think this was a difficult bug to catch. I've merged your patch and it'll be in the next release.