Untranslatable update notification

Bug #358283 reported by Gabor Kelemen
16
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu Translations
Fix Released
Medium
Unassigned
eCryptfs
Fix Released
Medium
Unassigned
ecryptfs-utils (Ubuntu)
Fix Released
Medium
Dustin Kirkland 

Bug Description

Binary package hint: ecryptfs-utils

After yesterday's updates, today I got this update notification:

Record your encryption passphrase

To encrypt your home directory or "Private" folder, a strong passphrase has been autogenerated. Usually your directory is unlocked with your user password, but if you ever need to manually recover this directory, you will need this passphrase. Please print or write it down and store it in a safe location.
You can run the "ecryptfs-unwrap-passphrase" command now to do this. Enter your user password at the "Passphrase" prompt.

This is from the /usr/share/ecryptfs-utils/ecryptfs-record-passphrase file, but neither this file, nor the package is translatable.

Tags: i18n

Related branches

Gabor Kelemen (kelemeng)
tags: added: i18n
Revision history for this message
Dustin Kirkland  (kirkland) wrote :

Thanks for the report Martin Pitt helped create this file, and translated it into German, at least.

We should definitely get this (and much more of ecryptfs-utils) translated.

:-Dustin

Changed in ecryptfs-utils (Ubuntu):
assignee: nobody → Dustin Kirkland (kirkland)
importance: Undecided → Medium
status: New → Confirmed
Changed in ecryptfs:
importance: Undecided → Medium
status: New → Confirmed
Revision history for this message
Martin Pitt (pitti) wrote :

https://wiki.ubuntu.com/InteractiveUpgradeHooks describes how to i18n the file. It should not have static translations, but just specify a gettext domain (presumably the same one that ecryptfs itself will use).

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

I will fix this for Karmic.

:-Dustin

Changed in ecryptfs:
status: Confirmed → Triaged
Changed in ecryptfs-utils (Ubuntu):
status: Confirmed → Triaged
Changed in ecryptfs:
assignee: nobody → Dustin Kirkland (kirkland)
Matt Zimmerman (mdz)
summary: - Untranslated update notification
+ Untranslatable update notification
Revision history for this message
Tomasz Dominikowski (dominikowski) wrote :

Any progress on this Dustin?

Revision history for this message
Dustin Kirkland  (kirkland) wrote : Re: [Bug 358283] Re: Untranslatable update notification

Nope. Not yet. Patches accepted.

:-Dustin

Adi Roiban (adiroiban)
Changed in ubuntu-translations:
status: New → Confirmed
assignee: nobody → Adi Roiban (adiroiban)
Revision history for this message
Dustin Kirkland  (kirkland) wrote :

Thanks, Adi.

I haven't had any time to work on this. Can you help me out here?

:-Dustin

Revision history for this message
David Planella (dpm) wrote :

I've made an attempt to fix this by creating a branch that adds preliminary i18n support for the update notification and the .desktop files, but might need some additional help where my packaging-fu does not reach.

Here's what's working:

* Extraction of strings from the update notification and .desktop files and merging them into the POT template using intltool

* Generating the POT template during the package build. This means that when uploading the package the template should get picked up automatically and imported into Launchpad. It will also mean that the translations (.mo files) will be correctly exported in language packs.

Here's where I might need some help:

* Postinstall script: looking at https://wiki.ubuntu.com/InteractiveUpgradeHooks, it mentions that the underscores needed to mark the update notification as translatable need to be removed in the postinstall script, and it shows an example of how to do this with sed. However, I could not find out how the notification is installed, so I wasn't sure at which point the underscores should be removed. I'm guessing figuring this out should not be difficult for someone with more packaging experience.

* Variable substitution in .desktop.in files: .desktop files are correctly generated on build. I also added the 'X-Ubuntu-Gettext-Domain' key to them, which should be assigned the package's translation domain. Rather than hardcoding the domain, I've tried to use the @GETTEXT_PACKAGE@ variable to be substituted on build. This, however, did not seem to work, as @GETTEXT_PACKAGE@ does not get substituted on build in the resulting .desktop files.

Changed in ecryptfs-utils (Ubuntu):
status: Triaged → In Progress
Changed in ecryptfs:
status: Triaged → In Progress
Revision history for this message
Martin Pitt (pitti) wrote :

> However, I could not find out how the notification is installed

That's explained in https://wiki.ubuntu.com/InteractiveUpgradeHooks : ship it in /usr/share/packagename and have the postinst copy it to /var/lib/update-notifier/user.d/.

I suppose update-notifier invokes gettext at runtime, and the "_" markers are just to enable .pot file building. Subscribing mvo to confirm, but it should work fine as it is. Doesn't it?

> * Variable substitution in .desktop.in files

This does not generally work as far as I know. You have to hardcode the domain name there (or use cdbs' langpack.mk which adds the field for you). However, the domain name shouldn't change, so if you just hardcode it it should be just fine.

Adi Roiban (adiroiban)
Changed in ubuntu-translations:
assignee: Adi Roiban (adiroiban) → nobody
status: Confirmed → In Progress
David Planella (dpm)
Changed in ubuntu-translations:
assignee: nobody → David Planella (dpm)
Changed in ecryptfs:
status: In Progress → Triaged
Changed in ecryptfs-utils (Ubuntu):
status: In Progress → Triaged
Changed in ecryptfs:
assignee: Dustin Kirkland (kirkland) → nobody
Changed in ecryptfs-utils (Ubuntu):
assignee: Dustin Kirkland (kirkland) → nobody
Revision history for this message
David Planella (dpm) wrote :

I've now hardcoded the gettext domain as per pitti's last comment and updated the branch to be based on the ecryptfs-utils Lucid one. I'm still not sure about the installation of the notifications, but again looking at that last comment, it should be ok the way it is now.

Dustin, do you think you could have a look at the branch provided for the fix? Thanks!

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

Hi David, sure I'll get this merged.

Changed in ecryptfs:
assignee: nobody → Dustin Kirkland (kirkland)
Changed in ecryptfs-utils (Ubuntu):
assignee: nobody → Dustin Kirkland (kirkland)
Changed in ecryptfs:
status: Triaged → In Progress
Changed in ecryptfs-utils (Ubuntu):
status: Triaged → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ecryptfs-utils - 83-0ubuntu1

---------------
ecryptfs-utils (83-0ubuntu1) lucid; urgency=low

  [ David Planella ]
  * Makefile.am, configure.ac, debian/control, debian/po/POTFILES.sh,
    debian/po/ecryptfs-utils.pot, debian/po/fr.po, debian/rules,
    po/POTFILES.in, src/desktop/Makefile.am,
    src/desktop/ecryptfs-mount-private.desktop,
    src/desktop/ecryptfs-mount-private.desktop.in,
    src/desktop/ecryptfs-record-passphrase,
    src/desktop/ecryptfs-setup-private.desktop,
    src/desktop/ecryptfs-setup-private.desktop.in:
    - internationalization work for LP: #358283
  * po/LINGUAS, po/ca.po: Catalan translation

  [ Yan Li <email address hidden> ]
  * src/pam_ecryptfs/pam_ecryptfs.c, src/utils/Makefile.am,
    src/utils/ecryptfs-migrate-home: add a script and pam hooks to
    support automatic migration to encrypted home directory

  [ Dustin Kirkland ]
  * src/utils/ecryptfs-migrate-home: clean up for merge
    - use $() rather than ``
    - drop set -u
    - use = and !=, and quote vars, rather than testing with -ne, -eq,
      for better shell portability
    - improve usage statement and error text
    - check if already encrypted
    - handle migration of multiple users on boot
    - fix all whitespace, use tabs for indents
    - use quotes around variables, rather than ${} (stylistic preference)
    - major simplification for immediate release
      + remove boot and user modes; only support administrator mode for
        security reasons and to avoid race conditions
      + other modes can be re-added, if necessary, and if security
        concerns can be addressed
    - ensure running as root
    - drop VERBOSE option, always print useful info messages
    - call the user $USER_NAME rather than $USER_ID since id implies
      number, and here we're deailing with names
    - no decimals on awk calculation
    - mktemp on the target user, not root
    - check that there is enough disk space available to do the migration
    - ensure the user's homedir group is correct
    - add critical instructions, user *must* login after the migration and
      before the reboot, as their wrapped passphrase will be cleared on
      reboot (possible we should use an init script to move these to
      /var/tmp on reboot)
    - ensure permissions are set correctly
    - improve text at the end of the migration, organize into notes
  * ecryptfs-utils.ecryptfs-utils-restore.upstart,
    ecryptfs-utils.ecryptfs-utils-save.upstart, rules:
    - try to protect migrating users who don't login before the next reboot
  * debian/ecryptfs-utils.install: install the locale messages
  * src/desktop/ecryptfs-record-passphrase: improve dialog text
  * src/desktop/ecryptfs-record-passphrase: revert the _ bit, as it's not quite
    working yet, will need to talk to David to fix
  * Mark LP: #471725 as fixed
 -- Dustin Kirkland <email address hidden> Wed, 17 Feb 2010 15:17:09 -0600

Changed in ecryptfs-utils (Ubuntu):
status: In Progress → Fix Released
David Planella (dpm)
Changed in ubuntu-translations:
assignee: David Planella (dpm) → nobody
importance: Undecided → Medium
status: In Progress → Fix Committed
Changed in ecryptfs:
assignee: Dustin Kirkland (kirkland) → nobody
status: In Progress → Fix Released
serfus (serfus)
Changed in ubuntu-translations:
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.