conform to freedesktop standard

Bug #780081 reported by What, me urgent? on 2011-05-09
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
byobu
Wishlist
Dustin Kirkland 
byobu (Ubuntu)
Wishlist
Dustin Kirkland 

Bug Description

Y'all keep your files in $HOME/.byobu while freedesktop suggests $XDG_CONFIG_DIR etc.

This is bemusing (not amusing, just bemusing) because byobu is a wrapper for gnu-screen, which DOES conform to that freedesktop standard.

Dustin Kirkland  (kirkland) wrote :

Hi! Thanks for the report.

So, a few releases back we move all of ~/.byobu into ~/.local/share/byobu, for XDG reasons. ~/.byobu is a symlink for legacy reasons (and because it annoys the hell out of me to cd to ~/.local/share/byobu instead of ~/.byobu, all day, every day).

Can you please be very, very specific what it is that you want? And could you please provide a patch?

Changed in byobu:
status: New → Incomplete
importance: Undecided → Low
importance: Low → Wishlist
Dustin Kirkland  (kirkland) wrote :

Oh, and most importantly, what version are you testing? Could you have a look at the latest code?

Hi Dustin.

I think the version is 2.80;. I say I think because typing "byobu --version" from the console wasn't helpful; maybe that's another thing to do...

typing "byobu, <f9> help" said in the upper left corner that it was version 2.80.

I think I installed the package from debian unstable about one month ago.

Hope this was helpful.

I enjoy byobu and appreciate the work that went into it. Congratulations on some great coding.

--- On Tue, 5/10/11, Dustin Kirkland <email address hidden> wrote:

> From: Dustin Kirkland <email address hidden>
> Subject: [Bug 780081] Re: conform to freedesktop standard
> To: <email address hidden>
> Date: Tuesday, May 10, 2011, 6:02 PM
> Oh, and most importantly, what
> version are you testing?  Could you have
> a look at the latest code?
>
> --
> You received this bug notification because you are a direct
> subscriber
> of the bug.
> https://bugs.launchpad.net/bugs/780081
>
> Title:
>   conform to freedesktop standard
>
> Status in byobu:
>   Incomplete
>
> Bug description:
>   Y'all keep your files in $HOME/.byobu while
> freedesktop suggests
>   $XDG_CONFIG_DIR etc.
>
>   This is bemusing (not amusing, just bemusing)
> because byobu is a
>   wrapper for gnu-screen, which DOES conform to that
> freedesktop
>   standard.
>
> To unsubscribe from this bug, go to:
> https://bugs.launchpad.net/byobu/+bug/780081/+subscribe
>

What, me urgent? (whatmeurgent) wrote :

Hi again. I noticed your two posts to me in reverse order. In my other response I posted my best guess that I was using v2.80 from debian unstable. That version does not create a directory under .local.

I've looked in launchpad, and see canonical has realeased version 4, so debian is a bit behind...

As for what I wanted... Well, I dislike having to scroll through a cluttered home directory. I want(ed) no .byobu there. If in version 4, the entry is only a symlink for your convenience, does that mean that users (OK, me) can safely delete the symlink (ie. byobu does not internally use the symlink)?

I'm downloading and upgrading to version 4.

All the best.

--- On Tue, 5/10/11, Dustin Kirkland <email address hidden> wrote:

> From: Dustin Kirkland <email address hidden>
> Subject: [Bug 780081] Re: conform to freedesktop standard
> To: <email address hidden>
> Date: Tuesday, May 10, 2011, 5:23 PM
> Hi!  Thanks for the report.
>
> So, a few releases back we move all of ~/.byobu into
> ~/.local/share/byobu, for XDG reasons.  ~/.byobu is a
> symlink for legacy
> reasons (and because it annoys the hell out of me to cd to
> ~/.local/share/byobu instead of ~/.byobu, all day, every
> day).
>
> Can you please be very, very specific what it is that you
> want?  And
> could you please provide a patch?
>
> ** Changed in: byobu
>        Status: New =>
> Incomplete
>
> ** Changed in: byobu
>    Importance: Undecided => Low
>
> ** Changed in: byobu
>    Importance: Low => Wishlist
>
> --
> You received this bug notification because you are a direct
> subscriber
> of the bug.
> https://bugs.launchpad.net/bugs/780081
>
> Title:
>   conform to freedesktop standard
>
> Status in byobu:
>   Incomplete
>
> Bug description:
>   Y'all keep your files in $HOME/.byobu while
> freedesktop suggests
>   $XDG_CONFIG_DIR etc.
>
>   This is bemusing (not amusing, just bemusing)
> because byobu is a
>   wrapper for gnu-screen, which DOES conform to that
> freedesktop
>   standard.
>
> To unsubscribe from this bug, go to:
> https://bugs.launchpad.net/byobu/+bug/780081/+subscribe
>

What, me urgent? (whatmeurgent) wrote :

I updated my version of byobu (which by the way says it's only v3.35 in the help screen), and tried deleting the symlink. No dice. byobu uses it internally.

Dustin Kirkland  (kirkland) wrote :

Okay, confirmed. ~/.byobu is a symlink. The real data is stored in ~/.local/share/byobu.

But byobu uses ~/.byobu in hundreds of places, so it's a nontrivial amount of effort to simply remove it.

I'm going to mark the bug confirmed and leave it open for now. If I get really bored, I'll take a crack at solving this bug. Otherwise, I'll hope some person who cares about this issue to drive by and drop off an excellent patch :-)

In any case, thanks for the report. Cheers!

Changed in byobu:
status: Incomplete → Confirmed
Changed in byobu:
status: Confirmed → In Progress
Changed in byobu:
assignee: nobody → Dustin Kirkland (kirkland)
Changed in byobu (Ubuntu):
status: New → In Progress
importance: Undecided → Wishlist
assignee: nobody → Dustin Kirkland (kirkland)
Changed in byobu:
status: In Progress → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package byobu - 4.17-0ubuntu1

---------------
byobu (4.17-0ubuntu1) oneiric; urgency=low

  * usr/bin/byobu-launch: LP: #802646
    - ensure that .profile gets sourced if launching byobu by default,
      but also make sure that we won't recurse, using a variable flag
  * usr/lib/byobu/cpu_temp: LP: #799237, #802819
    - fix temperature on Atom D510
  * usr/bin/byobu-status:
    - deprecated RUNDIR
  * debian/postinst, etc/byobu/socketdir, experimental/byobu-aggregate-
    status, experimental/byobu-status-all, === modified symlink
    usr/share/byobu/keybindings/common, === target was uf-keys,
    usr/bin/byobu, usr/bin/byobu-config, usr/bin/byobu-ctrl-a,
    usr/bin/byobu-disable, usr/bin/byobu-enable, usr/bin/byobu-export,
    usr/bin/byobu-janitor, usr/bin/byobu-launch, usr/bin/byobu-launcher,
    usr/bin/byobu-launcher-install, usr/bin/byobu-launcher-uninstall,
    usr/bin/byobu-quiet, usr/bin/byobu-reconnect-sockets, usr/bin/byobu-
    select-profile, usr/bin/byobu-shell, usr/bin/byobu-silent,
    usr/bin/byobu-status, usr/bin/byobu-status-detail, usr/bin/byobu-
    ugraph, usr/bin/byobu-ulevel, usr/lib/byobu/.common,
    usr/lib/byobu/.constants, usr/lib/byobu/custom,
    usr/lib/byobu/disk_io, usr/lib/byobu/ec2_cost,
    usr/lib/byobu/ip_address, usr/lib/byobu/logo,
    usr/lib/byobu/Makefile.am, usr/lib/byobu/mem_available,
    usr/lib/byobu/menu, usr/lib/byobu/network,
    usr/lib/byobu/.notify_osd, usr/lib/byobu/reboot_required,
    usr/lib/byobu/services, usr/lib/byobu/.shutil,
    usr/lib/byobu/updates_available, usr/share/byobu/keybindings/f-keys,
    usr/share/byobu/profiles/common, usr/share/man/man1/byobu.1,
    usr/share/man/man1/byobu-select-session.1: LP: #802122
    - massive reworking to globalize and standardize the use of
      + BYOBU_RUN_DIR, which is typically /var/run/screen/S-$USER/byobu
      + BYOBU_CONFIG_DIR, which is typically $HOME/.byobu
    - this rework should more easily allow us to support users who's
      SOCKETDIR is not /var/run/screen, and XDG_USER_DIRS users
  * usr/lib/byobu/.constants:
    - should probably export those
  * usr/bin/byobu-ctrl-a:
    - whitespace
  * etc/byobu/statusrc, usr/share/byobu/keybindings/f-keys,
    usr/share/byobu/keybindings/screen-escape-keys,
    usr/share/byobu/profiles/byoburc, usr/share/byobu/profiles/common,
    usr/share/byobu/profiles/screenrc, usr/share/man/man1/byobu.1:
    - fix up a few more references to BYOBU_CONFIG_DIR
  * usr/bin/byobu-ctrl-a, usr/bin/byobu-quiet, usr/bin/byobu-select-
    profile, usr/bin/byobu-select-session, usr/bin/byobu-silent,
    usr/bin/byobu-status:
    - fix up a few more $HOME/.$PKG refs to $BYOBU_CONFIG_DIR
  * usr/bin/byobu-janitor, usr/lib/byobu/.constants:
    - LP: #553105, #780081: support XDG user dirs
  * usr/lib/byobu/.shutil:
    - quiet printing of metadata service test
  * usr/bin/byobu-select-session:
    - need to use the screen binary, LP: #800496
  * debian/control:
    - modernized description
 -- Dustin Kirkland <email address hidden> Mon, 27 Jun 2011 14:14:17 +0000

Changed in byobu (Ubuntu):
status: In Progress → Fix Released
Changed in byobu:
status: Fix Committed → Fix Released
Daniel Hahler (blueyed) wrote :

Re-opening this bug: when there is no ~/.byobu directory, but only ~/.local/share/byobu, byobu will create a new directory ~/.byobu with default files in it.

I would have assumed that it would create a symlink ~/.byobu => ~/.local/share/byobu at most - if not only using ~/.local/share/byobu.

byobu version 4.50
Screen version 4.00.03jw4 (FAU) 2-May-06

Changed in byobu (Ubuntu):
status: Fix Released → Triaged
Dustin Kirkland  (kirkland) wrote :

Daniel,

When you experience this, what is your environment variable $XDG_CONFIG_HOME set to?

Changed in byobu (Ubuntu):
status: Triaged → Fix Committed
Dustin Kirkland  (kirkland) wrote :

Committed revision 1803.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package byobu - 4.53-0ubuntu1

---------------
byobu (4.53-0ubuntu1) precise; urgency=low

  [ Dustin Kirkland ]
  * usr/share/byobu/profiles/common: LP: #900812
    - start screen with at least a 1 second message wait
  * usr/bin/byobu, usr/bin/byobu-ctrl-a, usr/bin/byobu-disable,
    usr/bin/byobu-enable, usr/bin/byobu-export, usr/bin/byobu-janitor,
    usr/bin/byobu-launch, usr/bin/byobu-launcher, usr/bin/byobu-
    launcher-install, usr/bin/byobu-launcher-uninstall, usr/bin/byobu-
    quiet, usr/bin/byobu-reconnect-sockets, usr/bin/byobu-select-
    backend, usr/bin/byobu-select-profile, usr/bin/byobu-shell,
    usr/bin/byobu-silent, usr/bin/byobu-status, usr/bin/byobu-status-
    detail, usr/bin/byobu-ugraph, usr/bin/byobu-ulevel,
    usr/lib/byobu/include/dirs, usr/share/byobu/profiles/byoburc:
    - big changeset to solve a few bugs, LP: #897473, #861291, #897048
    - take over ~/.byoburc, and use it for storing global byobu shell
      configuration, namely BYOBU_PREFIX when necessary
      + note that some users might have previously used ~/.byoburc to
        store byobu-only screen configuration
      + these users should now use ~/.byobu/.screenrc instead (also
        because byobu now supports both screen and tmux)
    - on first run, if byobu is running outside of its normal location
      in /usr/bin/byobu, it will automatically detect and append the
      correct BYOBU_PREFIX value and store it in ~/.byoburc
    - ~/.byoburc is now read by all usr/bin/* in order to find the
      correct prefix
  * usr/lib/byobu/include/dirs: LP: #780081
    - use ~/.local/share/byobu as BYOBU_CONFIG_DIR, if it happens to exist
  * usr/lib/byobu/include/dirs: LP: #899271
    - allow explicit BYOBU_CONFIG_DIR selection in ~/.byoburc
  * usr/lib/byobu/users, usr/share/byobu/status/statusrc,
    usr/share/man/man1/byobu.1: LP: #900663
    - add support for a USERS_DISTINCT=1 status configuration setting
      to count the number of distinct users, rather than open ssh sessions

  [ Andrew McCarthy ]
  * usr/bin/byobu-status: LP: #898801
    - fix status detailing, skip include, as it's a directory
 -- Dustin Kirkland <email address hidden> Mon, 05 Dec 2011 08:59:08 -0600

Changed in byobu (Ubuntu):
status: Fix Committed → Fix Released
Daniel Hahler (blueyed) wrote :

$XDG_CONFIG_HOME was not set in this case.
The fix (your commit) looks good.
Thanks.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers