Use Basedir configuration directories

Bug #553105 reported by Corey Burger
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
byobu
Fix Released
Wishlist
Dustin Kirkland 
byobu (Ubuntu)
Fix Released
Wishlist
Dustin Kirkland 

Bug Description

Byobu should follow the xdg basedir spec and not store its data in .byobu in the users home. More information can be found here:
http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html

Tags: xdg
Revision history for this message
Dustin Kirkland  (kirkland) wrote :

Thanks for the report.

Personally, I like my settings in ~/.byobu, so I won't be working on this. But I'm all for it if someone else does the work ;-) I'll mark this Incomplete, until someone drives by and drops off a decent patch.

Thanks,
:-Dustin

Changed in byobu:
importance: Undecided → Wishlist
status: New → Incomplete
Revision history for this message
Corey Burger (corey.burger) wrote :

They still end up in a subdir, but having all user settings in a single . folder makes syncing easier, etc.

Revision history for this message
Dustin Kirkland  (kirkland) wrote :

There's 100+ references to $HOME/.byobu (or similar) in the source code.

Forgive me, but I don't see the value in adhering to this XDG specification justifying the cost.

Where exactly do you want ~/.byobu to go?

Revision history for this message
Corey Burger (corey.burger) wrote :

.byobu disappears and the data in .byobu is found within the XDG specified directories. As for migration, I know Tomboy has done it, the information for which can found here: https://bugzilla.gnome.org/show_bug.cgi?id=518585

As for why, the answer is fairly simple: reducing the number of dot folders allows easier replication of data across machines, as admins can easily separate user data from user configuration.

Revision history for this message
Dustin Kirkland  (kirkland) wrote :

Thanks for the information, Corey. I'm marking this bug triaged.

I won't be working on this bug personally, as I can't justify the cost/benefit. But I will gladly accept a well-formed patch.

Changed in byobu:
status: Incomplete → Triaged
Revision history for this message
Dustin Kirkland  (kirkland) wrote :

FWIW, I have spent a colossal amount of time on this tonight, and I'm no where near done. This is going to be a huge PITA.

Changed in byobu:
status: Triaged → Fix Committed
Changed in byobu:
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.2 KiB)

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

---------------
byobu (3.7-0ubuntu1) natty; urgency=low

  [ Dustin Kirkland ]
  * usr/lib/byobu/ec2_cost, usr/share/byobu/ec2/rates.eu_ie,
    usr/share/byobu/ec2/rates.us_ca, usr/share/byobu/ec2/rates.us_va:
    - add ec2_cost support for t1.micro instances, LP: #669190
  * etc/byobu/statusrc, usr/bin/byobu-config, usr/lib/byobu/Makefile.am,
    usr/lib/byobu/notify_osd, usr/share/byobu/profiles/common,
    usr/share/man/man1/byobu.1:
    - add notify_osd support to byobu, LP: #669189
    - separate the perl into a script of its own
    - add per-pid notifier monitors, terminate when screen terminates
    - allow for disabling the notify_osd status; must handle in the perl
      script
    - use BYOBU_PREFIX for local installs
  * usr/bin/byobu-config, usr/bin/byobu-janitor, usr/bin/byobu-launcher-
    uninstall, usr/share/byobu/keybindings/f-keys:
    - use gsed, where available; should help with BSD issues running byobu,
      LP: #651993
  * README: add a note about gsed
  * usr/share/man/man1/byobu.1: add a synopsis section that mentions options
    simply passed through to screen, LP: #669566
  * usr/bin/byobu, usr/bin/byobu-janitor,
    usr/share/byobu/profiles/common: change location of $SSH_AUTH_SOCK symlink
    from /var/run to $HOME, as we can't be sure that the user's var/run
    dir will exist before screen starts, LP: #664059
  * etc/update-motd.d, etc/update-motd.d/55-window-manager,
    etc/update-motd.d/Makefile.am, Makefile.am, usr/bin/byobu-disable,
    usr/bin/byobu-enable:
    - add a helpful update-motd message and a convenient command to enable-and-
      launch byobu
  * usr/bin/byobu-select-session: enable byobu-select-session to list
    custom session names, LP: #630673
  * debian/templates, etc/byobu/statusrc, usr/bin/byobu, usr/bin/byobu-
    janitor, usr/bin/byobu-launcher, usr/bin/byobu-launcher-install,
    usr/bin/byobu-launcher-uninstall, usr/bin/byobu-select-profile,
    usr/bin/byobu-status, usr/lib/byobu/custom, usr/lib/byobu/disk_io,
    usr/lib/byobu/ec2_cost, usr/lib/byobu/hostname,
    usr/lib/byobu/ip_address, usr/lib/byobu/logo,
    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/updates_available, 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/man/man1/byobu.1:
    - xdg user dirs overhaul, LP: #553105
  * etc/byobu/statusrc, usr/bin/byobu-config, usr/lib/byobu/mail,
    usr/lib/byobu/Makefile.am, usr/lib/byobu/raid,
    usr/share/byobu/profiles/common, usr/share/man/man1/byobu.1:
    - add a raid notification, LP: #669191
  * usr/bin/byobu-status, usr/lib/byobu/notify_osd:
    - fix all detail printing
  * usr/bin/byobu:
    - fix listing of sessions, LP: #672023
  * usr/lib/byobu/services:
    - drop max instance count from NC service reporting; was inaccurate

  [ Marcus Asshauer ]
  * usr/bin/byobu-config: add directory option when creating new window,
    LP: #623033
 -- Dustin Kirkla...

Read more...

Changed in byobu (Ubuntu):
status: New → Fix Released
Changed in byobu:
status: Fix Released → In Progress
Changed in byobu (Ubuntu):
status: Fix Released → In Progress
importance: Undecided → Wishlist
Changed in byobu:
assignee: nobody → Dustin Kirkland (kirkland)
Changed in byobu (Ubuntu):
assignee: nobody → Dustin Kirkland (kirkland)
Changed in byobu:
status: In Progress → Fix Committed
Changed in byobu (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
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: Fix Committed → Fix Released
Changed in byobu:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.