--- devicekit-disks-009.orig/debian/rules +++ devicekit-disks-009/debian/rules @@ -0,0 +1,19 @@ +#!/usr/bin/make -f + +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/class/autotools.mk +include /usr/share/cdbs/1/rules/utils.mk +include /usr/share/cdbs/1/rules/patchsys-quilt.mk + +DEB_DH_MAKESHLIBS_ARGS_ALL := -Xusr/lib/polkit-1/ +DEB_CONFIGURE_EXTRA_FLAGS := --enable-gtk-doc + +binary-install/devicekit-disks:: + # install Apport hook and allow passwordless file system operations to admin users on Ubuntu + if [ "`lsb_release -is 2>/dev/null`" = "Ubuntu" ]; then \ + install -m 644 -D debian/local/apport-hook.py debian/devicekit-disks/usr/share/apport/package-hooks/devicekit-disks.py; \ + install -m 644 -D debian/local/ubuntu.pkla debian/devicekit-disks/var/lib/polkit-1/localauthority/10-vendor.d/org.freedesktop.DeviceKit.Disks.pkla; \ + fi + + # don't install devkit-disks-dm-export, we no longer need it + rm -f debian/devicekit-disks/lib/udev/devkit-disks-dm-export --- devicekit-disks-009.orig/debian/devicekit-disks.install +++ devicekit-disks-009/debian/devicekit-disks.install @@ -0,0 +1,11 @@ +etc/dbus-1/ +lib/udev/ +sbin +usr/bin +usr/lib/devicekit-disks/ +usr/lib/polkit-1/extensions/*.so +usr/share/dbus-1/ +usr/share/polkit-1/ +usr/share/locale +usr/share/man +usr/share/pkgconfig --- devicekit-disks-009.orig/debian/changelog +++ devicekit-disks-009/debian/changelog @@ -0,0 +1,166 @@ +devicekit-disks (009-1ubuntu2) lucid; urgency=low + + Resynchronize to Debian git head, no remaining Ubuntu changes. + + [ Michael Biebl ] + * debian/patches/09-reiserfs-support.patch + - Add support for ReiserFS. + + [ Martin Pitt ] + * Add debian/local/ubuntu.pkla: Allow passwordless file system operations + for local foreground admin user sessions on Ubuntu. Install it in + debian/rules. (LP: #465054) + * Add 02-allow-simulated-smart.patch: Allow simulated SMART data on + non-SMART devices. This is both useful for testing DK-disks itself, as + well as recreating bugs with SMART handling. (fd.o #24772) + * Add 03-hide-configuration-partition-12.patch: Hide Compaq recovery + partition type 0x12. (fd.o #24999, LP: #451304) + * Add 04-hide-wd-smartware-partition.patch: Ignore Western Digital SmartWare + partitions. (fd.o #25009, LP: #474790) + * Add 06-guid-partition-flags.patch: Fix setting flags for GUID partitions. + (fd.o #25034) + + -- Martin Pitt Wed, 11 Nov 2009 17:42:19 +0100 + +devicekit-disks (009-1) unstable; urgency=low + + [ Martin Pitt ] + * New upstream release. + * 08-dont-probe-dm-devices.patch: Update for new release. + * Drop 07-media-player-icon.patch as well, it was included upstream in 008. + * debian/devicekit-disks.postinst: Update udev after installation to pick up + (changes of) our udev rules. (Closes: #548758) + * debian/control: Add missing udev dependency. + * debian/control: Add dependencies to various file system tools which DK-D + uses to implement its functionality: + - Recommends: dosfstools, mtools, ntfs-3g (the more popular ones) + - Suggests: xfsprogs, reiserfsprogs, mdadm, cryptsetup + * Add 00git-lv-nopolicy.patch: Fix LVM LVs to have NOPOLICY=1 again. + (Accepted into upstream trunk.) + + [ Michael Biebl ] + * debian/patches/08-dont-probe-dm-devices.patch + - Skip probing dm devices (using devkit-disks-part-id) for which DM_HIDE + is set. (Closes: #545032) + - Instead of checking for DKD_DM_STATE, test if DM_NAME is setup. + * Add debian/README.source which refers to the quilt documentation. + * debian/control: Add Recommends on ntfsprogs for proper NTFS support. + + -- Michael Biebl Thu, 05 Nov 2009 14:26:06 +0100 + +devicekit-disks (008-1) unstable; urgency=low + + * New upstream release. + * Drop patches that have been merged upstream + - debian/patches/00git-crash-on-removing-NULL-value-from-hash.patch + - debian/patches/00git-fix-inhibit.patch + - debian/patches/02-unlock-CD-trays-after-mounting.patch + - debian/patches/03-fix-subsystem-check-for-firewire.patch + - debian/patches/04-mount-vfat-with-shortname-mixed-by-default.patch + - debian/patches/06-show-MMC-MemStick-cards-by-default.patch + * debian/devicekit-disks.postinst + - Use start-stop-daemon instead of kill+pidof to stop the running + devkit-disks-daemon process on upgrades. + + -- Michael Biebl Fri, 16 Oct 2009 23:17:25 +0200 + +devicekit-disks (007-3) unstable; urgency=low + + [ Martin Pitt ] + * Add debian/local/apport-hook.py: Apport package hook for collecting + hardware information, devkit-disks --dump, mounts, and fstab. Install it + in debian/rules when building on Ubuntu. Add "lsb-release" build + dependency for this. + * Add 07-media-player-icon.patch: Use "media-player" icon for storage + devices tagged with ID_MEDIA_PLAYER. (LP: #440290) + + [ Michael Biebl ] + * debian/control + - Add Recommends on policykit-1. + - Add Recommends on hdparm which is required for disk spin down. + (Closes: #550773) + * debian/patches/08-dont-probe-dm-devices.patch + - Don't probe device-mapper devices and instead use the information that + is already available in DM_NAME and DM_UUID. (Closes: #545032) + + -- Michael Biebl Fri, 16 Oct 2009 22:35:32 +0200 + +devicekit-disks (007-2) experimental; urgency=low + + * debian/rules: Enable quilt patch system. Add quilt build dependency. + * Add 01-mkfs-tempdir.patch: Daemon does not create /var/run/DeviceKit-disks/, + so mkfs jobs fail. Just create the directory in /tmp, this is what /tmp is + for, after all. (See https://bugs.freedesktop.org/show_bug.cgi?id=24265) + * Add 00git-fix-inhibit.patch: Actually make Inhibit() work again. Taken + from upstream git head. (LP: #428133) + * Add 02-unlock-CD-trays-after-mounting.patch: Unlike in the hal world, we + do not have a daemon polling CD drives for eject button presses. In order + to make hardware tray eject buttons work, unlock the tray after + mounting a CD. This is pretty much equivalent to yanking out USB sticks, + which we already handle reasonably (detecting disappeared device, + force-unmounting). (https://bugs.freedesktop.org/show_bug.cgi?id=24052, + LP: #397734) + * Add 03-fix-subsystem-check-for-firewire.patch: Firewire subsystem is + called "ieee1394" in current Linux. Now check for both "ieee1394" and + "firewire". This fixes firewire drives to not be considered system + internal any more. (https://bugs.freedesktop.org/show_bug.cgi?id=24351, + LP: #442604) + * Add 04-mount-vfat-with-shortname-mixed-by-default.patch: The previous + default, shortname=lower, breaks all-uppercase file names ("touch + FOO" creates "foo"), thus breaks rsync, and Windows compatibility. The + default was changed in the Linux kernel for 2.6.32 as well. + (https://bugs.freedesktop.org/show_bug.cgi?id=24129, LP: #428174) + * Add 00git-crash-on-removing-NULL-value-from-hash.patch: Properly handle + the situtation where we're processing a 'change' event but the 'remove' + event has happened but is still queued up in our own process. Also handle + device file renames and 'move' uevents. + (http://bugs.freedesktop.org/show_bug.cgi?id=24264, LP: #414407) + * Add 06-show-MMC-MemStick-cards-by-default.patch: Show MMC/MemStick cards + by default; the previous whitelist in the udev rules ignored them. + (https://bugs.freedesktop.org/show_bug.cgi?id=24053, LP: #429752) + * Add 05-german-translations.patch: Add German translations. + (https://bugs.freedesktop.org/show_bug.cgi?id=2024420) + + -- Martin Pitt Fri, 09 Oct 2009 17:52:20 +0200 + +devicekit-disks (007-1) unstable; urgency=low + + * New upstream release: + - Drop usage of DeviceKit, talk directly to udev now. + - Port to PolicyKit 1 API. + - Lots of bug fixes. + * debian/control: + - libpolkit-dbus-dev → libpolkit-gobject-1-dev, libpolkit-backend-1-dev + build dependency. (PolicyKit 1 API) + - libdevkit-gobject-dev → libgudev-1.0-dev build dependency, drop + devicekit dependency (death to DeviceKit). + - Bump libatasmart-dev build dependency to >= 0.14 as required by + upstream. + - Bump libudev-dev build dependency to >= 0.142 as required by upstream. + - Drop libsqlite3-dev build-dependency, not necessary any more. + - Add libsgutils2-dev build dependency as required by upstream. + * debian/devicekit-disks.install: + - Update path for new policykit-1 files. + - Add new pkgconfig file. + - Install usr/share/locale and usr/share/man. + * debian/rules: Ignore usr/lib/polkit-1/ for dh_makeshlibs, they are backends + for PolicyKit. + * debian/rules: Explicitly enable gtk-doc, not done by default any more. + * debian/control: Bump Standards-Version to 3.8.3 (no changes necessary). + * Add debian/devicekit-disks.postinst: Kill the old devkit-disks-daemon on + upgrade, to ensure that the new version will be used at the next occasion. + (LP: #403192) + * debian/control: Add Breaks to GDU libraries << 2.28, since the D-Bus API + changed. + * debian/*.install: Drop debian/tmp/ prefix, since we use dh compat 7. + Also, simplify and sort the file lists. + * Drop reduntant debian/devicekit-disks.manpages, already done in *.install. + * debian/control: Add myself to Uploaders: with Michael's consent. + + -- Martin Pitt Mon, 28 Sep 2009 16:58:46 +0200 + +devicekit-disks (004-1) experimental; urgency=low + + * Initial release. (Closes: #521364) + + -- Michael Biebl Tue, 19 May 2009 04:08:00 +0200 --- devicekit-disks-009.orig/debian/devicekit-disks.dirs +++ devicekit-disks-009/debian/devicekit-disks.dirs @@ -0,0 +1 @@ +/var/lib/DeviceKit-disks --- devicekit-disks-009.orig/debian/watch +++ devicekit-disks-009/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://hal.freedesktop.org/releases/DeviceKit-disks-(\d+)\.tar\.gz --- devicekit-disks-009.orig/debian/copyright +++ devicekit-disks-009/debian/copyright @@ -0,0 +1,26 @@ +Name: DeviceKit-disks +Maintainer: David Zeuthen +Source: http://hal.freedesktop.org/releases/ + +Files: * +Copyright: 2008 David Zeuthen +License: GPL-2+ + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + . + The full text of the GPL is distributed as in + /usr/share/common-licenses/GPL-2 on Debian systems. + +Files: doc/* +Copyright: 2008 David Zeuthen +License: GFDL-1.1+ + Permission is granted to copy, distribute and/or modify this + document under the terms of the GNU Free Documentation + License (GFDL), Version 1.1 or any later version published + by the Free Software Foundation with no Invariant Sections, + no Front-Cover Texts, and no Back-Cover Texts. + . + The full text of the GFDL is distributed as in + /usr/share/common-licenses/GFDL on Debian systems. --- devicekit-disks-009.orig/debian/compat +++ devicekit-disks-009/debian/compat @@ -0,0 +1 @@ +7 --- devicekit-disks-009.orig/debian/README.source +++ devicekit-disks-009/debian/README.source @@ -0,0 +1,3 @@ +This package uses the quilt patch management system. + +Please refer to /usr/share/doc/quilt/README.source for further information. --- devicekit-disks-009.orig/debian/devicekit-disks-doc.install +++ devicekit-disks-009/debian/devicekit-disks-doc.install @@ -0,0 +1 @@ +usr/share/gtk-doc/ --- devicekit-disks-009.orig/debian/devicekit-disks.postinst +++ devicekit-disks-009/debian/devicekit-disks.postinst @@ -0,0 +1,11 @@ +#!/bin/sh +set -e + +if [ "$1" = "configure" ]; then + start-stop-daemon --stop --quiet --oknodo --exec /usr/lib/devicekit-disks/devkit-disks-daemon + + # we ship udev rules, so trigger an update + udevadm trigger --subsystem-match=block --action=change +fi + +#DEBHELPER# --- devicekit-disks-009.orig/debian/control +++ devicekit-disks-009/debian/control @@ -0,0 +1,56 @@ +Source: devicekit-disks +Section: admin +Priority: optional +Maintainer: Utopia Maintenance Team +Uploaders: Michael Biebl , Martin Pitt +Build-Depends: debhelper (>= 7), + cdbs, + autotools-dev, + pkg-config, + quilt, + lsb-release, + xsltproc, + gtk-doc-tools, + intltool (>= 0.40.0), + libdbus-glib-1-dev (>= 0.74-4), + libdbus-1-dev (>= 1.0), + libglib2.0-dev (>= 2.15), + libgudev-1.0-dev, + libpolkit-gobject-1-dev (>= 0.92), + libpolkit-backend-1-dev (>= 0.92), + libparted1.8-dev (>= 1.8.8), + libdevmapper-dev (>= 2:1.02), + libatasmart-dev (>= 0.14), + libsgutils2-dev, + zlib1g-dev, + libudev-dev (>= 0.142), + uuid-dev, + libselinux-dev +Standards-Version: 3.8.3 +Vcs-Git: git://git.debian.org/git/pkg-utopia/devicekit-disks.git +Vcs-Browser: http://git.debian.org/?p=pkg-utopia/devicekit-disks.git;a=summary +Homepage: http://hal.freedesktop.org/docs/DeviceKit-disks + +Package: devicekit-disks +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, udev +Recommends: policykit-1, hdparm, dosfstools, mtools, ntfs-3g, ntfsprogs +Suggests: xfsprogs, reiserfsprogs, mdadm, cryptsetup +Breaks: libgdu0 (<< 2.28), libgdu-gtk0 (<< 2.28) +Description: abstraction for enumerating block devices + DeviceKit-disks is an abstraction for enumerating block devices and performing + operations on them. Any application can access the + org.freedesktop.DeviceKit.Disks service on the system message bus. + Some operations (such as formatting disks etc.) are restricted using PolicyKit. + +Package: devicekit-disks-doc +Architecture: all +Section: doc +Depends: ${misc:Depends} +Suggests: devhelp +Description: abstraction for enumerating block devices - documentation + DeviceKit-disks is an abstraction for enumerating block devices and performing + operations on them. Any application can access the + org.freedesktop.DeviceKit.Disks service on the system message bus. + Some operations (such as formatting disks etc.) are restricted using PolicyKit. + --- devicekit-disks-009.orig/debian/local/apport-hook.py +++ devicekit-disks-009/debian/local/apport-hook.py @@ -0,0 +1,23 @@ +'''apport package hook for devicekit-disks + +(c) 2009 Canonical Ltd. +Author: Martin Pitt +''' + +import os +import apport.hookutils + +def add_info(report): + apport.hookutils.attach_hardware(report) + + user_rules = [] + for f in os.listdir('/etc/udev/rules.d'): + if not f.startswith('70-persistent-') and f != 'README': + user_rules.append(f) + + if user_rules: + report['CustomUdevRuleFiles'] = ' '.join(user_rules) + + report['DevkitDisksDump'] = apport.hookutils.command_output(['devkit-disks', '--dump']) + report['Mounts'] = apport.hookutils.command_output(['mount']) + apport.hookutils.attach_file(report, '/etc/fstab') --- devicekit-disks-009.orig/debian/local/ubuntu.pkla +++ devicekit-disks-009/debian/local/ubuntu.pkla @@ -0,0 +1,5 @@ +[No password required for admins] +Identity=unix-group:admin +Action=org.freedesktop.devicekit.disks.filesystem-*;org.freedesktop.devicekit.disks.change-system-internal +ResultActive=yes + --- devicekit-disks-009.orig/debian/patches/series +++ devicekit-disks-009/debian/patches/series @@ -0,0 +1,10 @@ +# Debian patches for devicekit-disks +00git-lv-nopolicy.patch +01-mkfs-tempdir.patch +02-allow-simulated-smart.patch +03-hide-configuration-partition-12.patch +04-hide-wd-smartware-partition.patch +05-german-translations.patch +06-guid-partition-flags.patch +08-dont-probe-dm-devices.patch +09-reiserfs-support.patch --- devicekit-disks-009.orig/debian/patches/00git-lv-nopolicy.patch +++ devicekit-disks-009/debian/patches/00git-lv-nopolicy.patch @@ -0,0 +1,50 @@ +commit 351618d08270a0832db3c282082207e6dfa24845 +Author: Martin Pitt +Date: Tue Nov 3 21:50:25 2009 +0100 + + Bug 24885 — LVM LVs now have NOPOLICY=0 + + Commit a95d3 caused the NOPOLICY rules get cut short for LVs. Move the NOPOLICY + check close to the top, since its (1) very cheap, and (2) very generic, i. e. + rules further down might want to tweak it for special cases. + + Signed-off-by: David Zeuthen + +Index: devicekit-disks/data/95-devkit-disks.rules +=================================================================== +--- devicekit-disks.orig/data/95-devkit-disks.rules 2009-11-06 02:40:05.930212956 +0100 ++++ devicekit-disks/data/95-devkit-disks.rules 2009-11-06 02:40:39.238202994 +0100 +@@ -6,6 +6,17 @@ + SUBSYSTEM!="block", GOTO="devkit_disks_end" + KERNEL=="loop*|ram*", GOTO="devkit_disks_end" + ++# Mark devices that shouldn't be automounted / autoassembled etc. ++# ++# Deny all, then punch holes for what looks like physical drives ++# (TODO: this heuristic might need some work) ++# ++ ++ENV{DKD_PRESENTATION_NOPOLICY}="1" ++KERNEL=="sd*|hd*|sr*|mmcblk*|mspblk*", ENV{DKD_PRESENTATION_NOPOLICY}="0" ++ ++############################################################################################################## ++ + # we only care about change events on device-mapper + # devices - never touch the device on add events + KERNEL=="dm-*", ACTION!="change", GOTO="devkit_disks_end" +@@ -146,15 +157,5 @@ + + ############################################################################################################## + +-# Mark devices that shouldn't be automounted / autoassembled etc. +-# +-# Deny all, then punch holes for what looks like physical drives +-# (TODO: this heuristic might need some work) +-# +- +-ENV{DKD_PRESENTATION_NOPOLICY}="1" +-KERNEL=="sd*|hd*|sr*|mmcblk*|mspblk*", ENV{DKD_PRESENTATION_NOPOLICY}="0" +- +-############################################################################################################## + + LABEL="devkit_disks_end" --- devicekit-disks-009.orig/debian/patches/06-guid-partition-flags.patch +++ devicekit-disks-009/debian/patches/06-guid-partition-flags.patch @@ -0,0 +1,73 @@ +From fa13b32d20a70606d8138002b41ccb080acfc2b0 Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Wed, 11 Nov 2009 17:28:26 +0100 +Subject: [PATCH 5/5] =?utf-8?q?Bug=2025034=20=E2=80=94=20PartitionModify()=20for=20GUID=20partitions=20does=20not=20work?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: 8bit + +Use the official ped_partition_set_flag() libparted API for setting partition +flags instead of poking it into libparted's internal data structure (which +worked for MBR, but not for GPT). + +Bug: https://bugs.freedesktop.org/show_bug.cgi?id=25034 +--- + src/partutil.c | 25 +++---------------------- + 1 files changed, 3 insertions(+), 22 deletions(-) + +diff --git a/src/partutil.c b/src/partutil.c +index 1362db3..44c91bb 100644 +--- a/src/partutil.c ++++ b/src/partutil.c +@@ -1512,13 +1512,6 @@ part_add_change_partition (char *device_file, + if (scheme == PART_TYPE_GPT) { + struct { + efi_guid type; +- efi_guid uuid; +- char name[37]; +- int lvm; +- int raid; +- int boot; +- int hp_service; +- int hidden; + /* more stuff */ + } *gpt_data = (void *) part->disk_specific; + +@@ -1529,31 +1522,19 @@ part_add_change_partition (char *device_file, + } + } + +- if (flags != NULL) { +- if (gpt_attributes & 1) { +- gpt_data->hidden = 1; +- } else { +- gpt_data->hidden = 0; +- } +- } ++ ped_partition_set_flag (part, PED_PARTITION_HIDDEN, (gpt_attributes & 1) != 0); + + } else if (scheme == PART_TYPE_MSDOS || scheme == PART_TYPE_MSDOS_EXTENDED) { + struct { + unsigned char system; +- int boot; + /* more stuff */ + } *dos_data = (void *) part->disk_specific; + + if (type != NULL) { + dos_data->system = mbr_part_type; + } +- if (flags != NULL) { +- if (mbr_flags & 0x80) { +- dos_data->boot = 1; +- } else { +- dos_data->boot = 0; +- } +- } ++ ++ ped_partition_set_flag (part, PED_PARTITION_BOOT, (mbr_flags & 0x80) != 0); + + } else if (scheme == PART_TYPE_APPLE) { + struct { +-- +1.6.3.3 + --- devicekit-disks-009.orig/debian/patches/05-german-translations.patch +++ devicekit-disks-009/debian/patches/05-german-translations.patch @@ -0,0 +1,291 @@ +From 0a2174821ddab77d2a2ddaf15e008a68074e0e75 Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Fri, 9 Oct 2009 17:11:21 +0200 +Subject: [PATCH 2/2] =?utf-8?q?Bug=2024420=20=E2=80=93=20German=20translations?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: 8bit + +--- + po/LINGUAS | 1 + + po/de.po | 259 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 260 insertions(+), 0 deletions(-) + create mode 100644 po/de.po + +diff --git a/po/LINGUAS b/po/LINGUAS +index b6d2833..3c3a1fd 100644 +--- a/po/LINGUAS ++++ b/po/LINGUAS +@@ -1,3 +1,4 @@ + # please keep this list sorted alphabetically + # + da ++de +diff --git a/po/de.po b/po/de.po +new file mode 100644 +index 0000000..9bcf0b7 +--- /dev/null ++++ b/po/de.po +@@ -0,0 +1,259 @@ ++# German translations for DeviceKit-disks ++# Copyright (C) 2009 Martin Pitt ++# This file is distributed under the same license as the DeviceKit-disks package. ++# Martin Pitt , 2009. ++# ++#, fuzzy ++msgid "" ++msgstr "" ++"Project-Id-Version: DeviceKit-disks\n" ++"Report-Msgid-Bugs-To: \n" ++"POT-Creation-Date: 2009-10-09 16:56+0200\n" ++"PO-Revision-Date: 2009-10-09 16:38+0200\n" ++"Last-Translator: Martin Pitt \n" ++"Language-Team: German \n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:1 ++msgid "Authentication is required to cancel a job initiated by another user" ++msgstr "" ++"Zugriffsrechte werden benötigt um einen Auftrag eines anderen Benutzers " ++"abzubrechen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:2 ++msgid "Authentication is required to check the file system on the device" ++msgstr "" ++"Zugriffsrechte werden benötigt um das Dateisystem auf dem Gerät zu prüfen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:3 ++msgid "Authentication is required to configure Linux Software RAID devices" ++msgstr "" ++"Zugriffsrechte werden benötigt um Linux Software-RAID-Geräte zu konfigurieren" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:4 ++msgid "Authentication is required to configure drive spindown timeout" ++msgstr "" ++"Zugriffsrechte werden benötigt um die Laufwerks-Zeitabschaltung zu " ++"konfigurieren" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:5 ++msgid "Authentication is required to detach the drive" ++msgstr "Zugriffsrechte werden benötigt um das Laufwerk zu trennen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:6 ++msgid "Authentication is required to eject media from the device" ++msgstr "Zugriffsrechte werden benötigt um das Medium aus dem Gerät auszuwerfen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:7 ++msgid "Authentication is required to inhibit media detection" ++msgstr "Zugriffsrechte werden benötigt um Mediumerkennung zu unterdrücken" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:8 ++msgid "Authentication is required to list open files on a mounted file system" ++msgstr "" ++"Zugriffsrechte werden benötigt um offene Dateien auf einem eingehängen " ++"Dateisystem anzuzeigen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:9 ++msgid "" ++"Authentication is required to lock an encrypted device unlocked by another " ++"user" ++msgstr "" ++"Zugriffsrechte werden benötigt um ein verschlüsseltes Gerät zu sperren, das " ++"ein anderer Benutzer entsperrt hat" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:10 ++msgid "Authentication is required to modify the device" ++msgstr "Zugriffsrechte werden benötigt um das Gerät zu ändern" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:11 ++msgid "Authentication is required to mount the device" ++msgstr "Zugriffsrechte werden benötigt um das Gerät einzuhängen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:12 ++msgid "Authentication is required to refresh ATA SMART data" ++msgstr "Zugriffsrechte werden benötigt um ATA-SMART-Daten zu aktualisieren" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:13 ++msgid "Authentication is required to retrieve historical ATA SMART data" ++msgstr "Zugriffsrechte werden benötigt um historische ATA-SMART-Daten zu holen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:14 ++msgid "Authentication is required to run ATA SMART self tests" ++msgstr "Zugriffsrechte werden benötigt um ATA-SMART-Selbsttests zu starten" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:15 ++msgid "Authentication is required to unlock an encrypted device" ++msgstr "" ++"Zugriffsrechte werden benötigt um ein verschlüsseltes Gerät zu entsperren" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:16 ++msgid "Authentication is required to unmount devices mounted by another user" ++msgstr "" ++"Zugriffsrechte werden benötigt um ein Gerät auszuhängen, das ein anderer " ++"Benutzer eingehängt hat" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:17 ++msgid "Cancel a job initiated by another user" ++msgstr "Auftrag eines anderen Benutzers abbrechen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:18 ++msgid "Check file system of a system-internal device" ++msgstr "Dateisystem auf einem eingebauten Gerät prüfen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:19 ++msgid "Check file system on a device" ++msgstr "Dateisystem auf einem Gerät prüfen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:20 ++msgid "Configure Linux Software RAID" ++msgstr "Linux Software-RAID konfigurieren" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:21 ++msgid "Detach a drive" ++msgstr "Laufwerk trennen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:22 ++msgid "Eject media from a device" ++msgstr "Medium aus Gerät auswerfen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:23 ++msgid "Inhibit media detection" ++msgstr "Medium-Erkennung unterdrücken" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:24 ++msgid "List open files" ++msgstr "Offene Dateien anzeigen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:25 ++msgid "List open files on a system-internal device" ++msgstr "Offene Dateien auf einem eingebauten Gerät anzeigen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:26 ++msgid "Lock an encrypted device unlocked by another user" ++msgstr "Verschlüsseltes Gerät eines anderen Benutzers sperren" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:27 ++msgid "Modify a device" ++msgstr "Gerät ändern" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:28 ++msgid "Modify a system-internal device" ++msgstr "Eingebautes Gerät ändern" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:29 ++msgid "Mount a device" ++msgstr "Gerät einhängen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:30 ++msgid "Mount a system-internal device" ++msgstr "Eingebautes Gerät einhängen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:31 ++msgid "Refresh ATA SMART data" ++msgstr "ATA-SMART-Daten aktualisieren" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:32 ++msgid "Retrieve historical ATA SMART data" ++msgstr "Historische ATA-SMART-Daten holen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:33 ++msgid "Run ATA SMART Self Tests" ++msgstr "ATA-SMART-Selbsttest starten" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:34 ++msgid "Set drive spindown timeout" ++msgstr "Laufwerks-Zeitabschaltung setzen" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:35 ++msgid "Unlock an encrypted device" ++msgstr "Verschlüsseltes Gerät entsperren" ++ ++#: ../policy/org.freedesktop.devicekit.disks.policy.in.h:36 ++msgid "Unmount a device mounted by another user" ++msgstr "Gerät eines anderen Benutzers aushängen" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:94 ++msgid "Authentication is required to delete a partition" ++msgstr "Zugriffsrechte werden benötigt um eine Partition zu löschen" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:98 ++msgid "Authentication is required to create a filesystem" ++msgstr "Zugriffsrechte werden benötigt um ein Dateisystem zu erstellen" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:102 ++msgid "Authentication is required to create a partition" ++msgstr "Zugriffsrechte werden benötigt um eine Partition zu erstellen" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:106 ++msgid "Authentication is required to modify a partition" ++msgstr "Zugriffsrechte werden benötigt um eine Partition zu ändern" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:110 ++msgid "Authentication is required to create a partition table" ++msgstr "Zugriffsrechte werden benötigt um eine Partitionstabelle zu erstellen" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:114 ++msgid "Authentication is required to set the file system label" ++msgstr "Zugriffsrechte werden benötigt um den Dateisystem-Namen zu setzen" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:118 ++msgid "Authentication is required to stop a Software RAID device" ++msgstr "Zugriffsrechte werden benötigt um das Software-RAID-Gerät anzuhalten" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:122 ++msgid "Authentication is required to check a Software RAID device" ++msgstr "Zugriffsrechte werden benötigt um das Software-RAID-Gerät zu prüfen" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:126 ++msgid "Authentication is required to repair a Software RAID device" ++msgstr "" ++"Zugriffsrechte werden benötigt um das Software-RAID-Gerät zu reparieren" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:130 ++msgid "" ++"Authentication is required to add a new component to a Software RAID device" ++msgstr "" ++"Zugriffsrechte werden benötigt um eine neue Komponente zum Software-RAID-" ++"Gerät hinzuzufügen" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:134 ++msgid "" ++"Authentication is required to remove a component from a Software RAID device" ++msgstr "" ++"Zugriffsrechte werden benötigt um eine Komponente aus dem Software-RAID-" ++"Gerät zu entfernen" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:138 ++msgid "Authentication is required to start a Software RAID device" ++msgstr "Zugriffsrechte werden benötigt um ein Software-RAID-Gerät zu starten" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:142 ++msgid "Authentication is required to create a Software RAID device" ++msgstr "Zugriffsrechte werden benötigt um ein Software-RAID-Gerät zu erstellen" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:146 ++msgid "Authentication is required to inhibit polling on a drive" ++msgstr "" ++"Zugriffsrechte werden benötigt um das Überwachen eines Gerätes zu " ++"unterdrücken" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:150 ++msgid "Authentication is required to poll for media" ++msgstr "Zugriffsrechte werden benötigt um ein Gerät zu überwachen" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:154 ++msgid "Authentication is required to inhibit all drive polling" ++msgstr "" ++"Zugriffsrechte werden benötigt um das Überwachen aller Geräte zu unterdrücken" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:236 ++msgid "Device" ++msgstr "Gerät" ++ ++#: ../src/devkit-disks-polkit-action-lookup.c:257 ++msgid "Drive" ++msgstr "Laufwerk" +-- +1.6.3.3 + --- devicekit-disks-009.orig/debian/patches/04-hide-wd-smartware-partition.patch +++ devicekit-disks-009/debian/patches/04-hide-wd-smartware-partition.patch @@ -0,0 +1,36 @@ +From d575dc2918bf94e2a0bd0107f0f6cb73c142c08f Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Tue, 10 Nov 2009 12:22:45 +0100 +Subject: Bug 25009 — ignore Western Digital SmartWare partitions +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: 8bit + +The SmartWare Virtual CD partition on these drives is useless in Linux. It +includes Windows/Mac utilities only, and is not usable space. + +Bug: https://bugs.freedesktop.org/show_bug.cgi?id=25009 +Bug-Ubuntu: https://launchpad.net/bugs/474790 +--- + data/95-devkit-disks.rules | 5 +++++ + 1 files changed, 5 insertions(+), 0 deletions(-) + +diff --git a/data/95-devkit-disks.rules b/data/95-devkit-disks.rules +index 8059128..e2f6607 100644 +--- a/data/95-devkit-disks.rules ++++ b/data/95-devkit-disks.rules +@@ -156,6 +156,11 @@ ENV{DKD_PARTITION_SCHEME}=="gpt", \ + ENV{DKD_PARTITION_TYPE}=="C12A7328-F81F-11D2-BA4B-00A0C93EC93B|21686148-6449-6E6F-744E-656564454649", \ + ENV{DKD_PRESENTATION_HIDE}="1" + ++# APM recovery/tool partitions which are useless on Linux ++ENV{DKD_PARTITION_SCHEME}=="apm", \ ++ ENV{ID_CDROM}=="?*", ENV{ID_FS_TYPE}=="udf", ENV{ID_FS_LABEL}=="WD_SmartWare", \ ++ ENV{DKD_PRESENTATION_HIDE}="1" ++ + # recovery partitions (taken from old hal rules) + ENV{ID_FS_TYPE}=="ntfs|vfat", \ + ENV{ID_FS_LABEL}=="RECOVERY|HP_RECOVERY|Recovery Partition|DellUtility|DellRestore|IBM_SERVICE|SERVICEV001|SERVICEV002", \ +-- +1.6.3.3 + --- devicekit-disks-009.orig/debian/patches/08-dont-probe-dm-devices.patch +++ devicekit-disks-009/debian/patches/08-dont-probe-dm-devices.patch @@ -0,0 +1,124 @@ +From 9aca432753e8e4fbaacf09b47bdf374765397232 Mon Sep 17 00:00:00 2001 +From: Michael Biebl +Date: Thu, 15 Oct 2009 14:26:17 +0200 +Subject: [PATCH 1/2] Stop probing device-mapper devices + +Use DM_NAME and DM_UUID which are already setup by the dmsetup udev +rules. +See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=545032 +--- + data/95-devkit-disks.rules | 21 --------------------- + src/devkit-disks-device.c | 17 +++++++++-------- + 2 files changed, 9 insertions(+), 29 deletions(-) + +Index: devicekit-disks/data/95-devkit-disks.rules +=================================================================== +--- devicekit-disks.orig/data/95-devkit-disks.rules 2009-11-06 02:40:39.238202994 +0100 ++++ devicekit-disks/data/95-devkit-disks.rules 2009-11-06 02:40:49.062203474 +0100 +@@ -22,6 +22,7 @@ + KERNEL=="dm-*", ACTION!="change", GOTO="devkit_disks_end" + + ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="1", GOTO="devkit_disks_end" ++ENV{DM_HIDE}=="1", GOTO="devkit_disks_end" + + ############################################################################################################## + +@@ -46,27 +47,6 @@ + + ############################################################################################################## + +-# pick up device-mapper data; this REALLY should be done by rules installed +-# by the device-mapper package +-# +-KERNEL!="dm-*", GOTO="device_mapper_end" +-ACTION!="change", GOTO="device_mapper_end" +- +-IMPORT{program}="devkit-disks-dm-export %M %m" +-ENV{DKD_DM_NAME}!="?*", GOTO="device_mapper_end" +- +-ENV{DKD_DM_STATE}=="SUSPENDED", GOTO="device_mapper_end" +-ENV{DKD_DM_TARGET_TYPES}=="|*error*", GOTO="device_mapper_end" +- +-# avoid probing if it has already been done earlier +-# +-ENV{ID_FS_USAGE}!="", GOTO="device_mapper_end" +-IMPORT{program}="/sbin/blkid -o udev -p $tempnode" +- +-LABEL="device_mapper_end" +- +-############################################################################################################## +- + # pick up data from MD components; this REALLY should be done by rules installed + # by mdadm or the kernel package + # +Index: devicekit-disks/src/devkit-disks-device.c +=================================================================== +--- devicekit-disks.orig/src/devkit-disks-device.c 2009-11-06 02:40:05.674200162 +0100 ++++ devicekit-disks/src/devkit-disks-device.c 2009-11-06 02:40:49.070202539 +0100 +@@ -2218,44 +2218,35 @@ + update_info_luks_cleartext (DevkitDisksDevice *device) + { + uid_t unlocked_by_uid; +- const gchar *dkd_dm_name; +- const gchar *dkd_dm_target_types; +- gboolean ret; +- +- ret = FALSE; ++ const gchar *dm_name; ++ const gchar *dm_uuid; + +- dkd_dm_name = g_udev_device_get_property (device->priv->d, "DKD_DM_NAME"); +- dkd_dm_target_types = g_udev_device_get_property (device->priv->d, "DKD_DM_TARGET_TYPES"); +- if (dkd_dm_name != NULL && g_strcmp0 (dkd_dm_target_types, "crypt") == 0 && ++ dm_name = g_udev_device_get_property (device->priv->d, "DM_NAME"); ++ dm_uuid = g_udev_device_get_property (device->priv->d, "DM_UUID"); ++ if (dm_name != NULL && dm_uuid != NULL && ++ (g_str_has_prefix (dm_uuid, "CRYPT-LUKS1-") || ++ g_regex_match_simple ("^CRYPT-[0-9a-f-]+$", dm_uuid, 0, 0)) && + device->priv->slaves_objpath->len == 1) { + + /* TODO: might be racing with setting is_drive earlier */ + devkit_disks_device_set_device_is_drive (device, FALSE); + +- if (g_str_has_prefix (dkd_dm_name, "temporary-cryptsetup-")) { +- /* ignore temporary devices created by /sbin/cryptsetup */ +- goto out; +- } +- + devkit_disks_device_set_device_is_luks_cleartext (device, TRUE); + + devkit_disks_device_set_luks_cleartext_slave (device, ((gchar **) device->priv->slaves_objpath->pdata)[0]); + +- if (luks_get_uid_from_dm_name (dkd_dm_name, &unlocked_by_uid)) { ++ if (luks_get_uid_from_dm_name (dm_name, &unlocked_by_uid)) { + devkit_disks_device_set_luks_cleartext_unlocked_by_uid (device, unlocked_by_uid); + } + + /* TODO: export this at some point */ +- devkit_disks_device_set_dm_name (device, dkd_dm_name); ++ devkit_disks_device_set_dm_name (device, dm_name); + } else { + devkit_disks_device_set_device_is_luks_cleartext (device, FALSE); + devkit_disks_device_set_luks_cleartext_slave (device, NULL); + } + +- ret = TRUE; +- +- out: +- return ret; ++ return TRUE; + } + + /* ---------------------------------------------------------------------------------------------------- */ +@@ -2984,9 +2975,9 @@ + goto out; + } + +- /* ignore dm devices that are not active */ ++ /* ignore dm devices that have not been setup */ + if (g_str_has_prefix (g_udev_device_get_name (device->priv->d), "dm-") && +- g_udev_device_get_property (device->priv->d, "DKD_DM_STATE") == NULL) ++ g_udev_device_get_property (device->priv->d, "DM_NAME") == NULL) + goto out; + + major = g_udev_device_get_property_as_int (device->priv->d, "MAJOR"); --- devicekit-disks-009.orig/debian/patches/01-mkfs-tempdir.patch +++ devicekit-disks-009/debian/patches/01-mkfs-tempdir.patch @@ -0,0 +1,16 @@ +# Description: Daemon does not create /var/run/DeviceKit-disks/, so mkfs jobs fail. Just create the directory in /tmp, this is what /tmp is for, after all. +# Upstream: https://bugs.freedesktop.org/show_bug.cgi?id=24265 + +Index: devicekit-disks/src/job-mkfs.c +=================================================================== +--- devicekit-disks.orig/src/job-mkfs.c 2009-11-03 03:12:56.775496442 +0100 ++++ devicekit-disks/src/job-mkfs.c 2009-11-03 16:09:03.217851709 +0100 +@@ -343,7 +343,7 @@ + + /* take ownership of the device if requested */ + if (take_ownership_uid != 0 || take_ownership_gid != 0) { +- char dir[256] = PACKAGE_LOCALSTATE_DIR "/run/DeviceKit-disks/job-mkfs-XXXXXX"; ++ char dir[256] = "/tmp/job-mkfs-XXXXXX"; + + if (mkdtemp (dir) == NULL) { + g_printerr ("cannot create directory %s: %m\n", dir); --- devicekit-disks-009.orig/debian/patches/03-hide-configuration-partition-12.patch +++ devicekit-disks-009/debian/patches/03-hide-configuration-partition-12.patch @@ -0,0 +1,33 @@ +From 0ef3c2f2553e3058547962d98ede39592f19ac12 Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Mon, 9 Nov 2009 15:00:50 +0100 +Subject: Bug 24999 — Hide Compaq recovery partition type 0x12 +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: 8bit + +http://www.win.tue.nl/~aeb/partitions/partition_types-1.html lists MBR type +0x12 as "configuration/rescue", used by Compaq, IBM, Intel, and NCR. + +Bug: https://bugs.freedesktop.org/show_bug.cgi?id=24999 +Bug-Ubuntu: https://bugs.launchpad.net/bugs/451304 +--- + data/95-devkit-disks.rules | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/data/95-devkit-disks.rules b/data/95-devkit-disks.rules +index 7f210ad..8059128 100644 +--- a/data/95-devkit-disks.rules ++++ b/data/95-devkit-disks.rules +@@ -147,7 +147,7 @@ ENV{DKD_PARTITION_SCHEME}=="apm", ENV{DKD_PARTITION_TYPE}=="Apple_Bootstrap", EN + # special MBR partition types (EFI, hidden, etc.) + # see http://www.win.tue.nl/~aeb/partitions/partition_types-1.html + ENV{DKD_PARTITION_SCHEME}=="mbr", \ +- ENV{DKD_PARTITION_TYPE}=="0x00|0x11|0x14|0x16|0x17|0x1b|0x1c|0x1e|0x27|0x3d|0x84|0x8d|0x90|0x91|0x92|0x93|0x97|0x98|0x9a|0x9b|0xbb|0xc2|0xc3|0xdd|0xef", \ ++ ENV{DKD_PARTITION_TYPE}=="0x00|0x11|0x12|0x14|0x16|0x17|0x1b|0x1c|0x1e|0x27|0x3d|0x84|0x8d|0x90|0x91|0x92|0x93|0x97|0x98|0x9a|0x9b|0xbb|0xc2|0xc3|0xdd|0xef", \ + ENV{DKD_PRESENTATION_HIDE}="1" + + # special GUID-identified partition types +-- +1.6.3.3 + --- devicekit-disks-009.orig/debian/patches/02-allow-simulated-smart.patch +++ devicekit-disks-009/debian/patches/02-allow-simulated-smart.patch @@ -0,0 +1,81 @@ +From 9acf060919249d4a4fc7387ae419ecb071215dff Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Wed, 28 Oct 2009 11:57:46 +0100 +Subject: [PATCH 2/4] Bug 24772 - Allow simulated SMART data on non-SMART devices +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: 8bit + +DriveAtaSmartRefreshData(): Defer the "device supports SMART" test until after +evaluating the "simulate" option, and set DriveAtaSmartIsAvailable property +when simulate is given. With this, SMART data blobs can be used with non-SMART +or virtual devices, too. + +Bug: https://bugs.freedesktop.org/show_bug.cgi?id=24772 +--- + src/devkit-disks-device.c | 23 ++++++++--------------- + 1 files changed, 8 insertions(+), 15 deletions(-) + +diff --git a/src/devkit-disks-device.c b/src/devkit-disks-device.c +index de9f357..e784db8 100644 +--- a/src/devkit-disks-device.c ++++ b/src/devkit-disks-device.c +@@ -8064,13 +8064,6 @@ devkit_disks_device_drive_ata_smart_refresh_data_authorized_cb (DevkitDisksDaemo + + devkit_disks_daemon_local_get_uid (device->priv->daemon, &caller_uid, context); + +- if (!device->priv->drive_ata_smart_is_available) { +- throw_error (context, +- DEVKIT_DISKS_ERROR_FAILED, +- "Device does not support ATA SMART"); +- goto out; +- } +- + simuldata = NULL; + nowakeup = FALSE; + for (n = 0; options[n] != NULL; n++) { +@@ -8084,11 +8077,19 @@ devkit_disks_device_drive_ata_smart_refresh_data_authorized_cb (DevkitDisksDaemo + } + } + simuldata = (const char *) options[n] + 9; ++ devkit_disks_device_set_drive_ata_smart_is_available (device, TRUE); + } else if (strcmp (options[n], "nowakeup") == 0) { + nowakeup = TRUE; + } + } + ++ if (!device->priv->drive_ata_smart_is_available) { ++ throw_error (context, ++ DEVKIT_DISKS_ERROR_FAILED, ++ "Device does not support ATA SMART"); ++ goto out; ++ } ++ + if (simuldata != NULL) { + n = 0; + argv[n++] = "base64"; /* provided by coreutils */ +@@ -8129,13 +8130,6 @@ devkit_disks_device_drive_ata_smart_refresh_data (DevkitDisksDevice *device, + { + const gchar *action_id; + +- if (!device->priv->drive_ata_smart_is_available) { +- throw_error (context, +- DEVKIT_DISKS_ERROR_FAILED, +- "Device does not support ATA SMART"); +- goto out; +- } +- + action_id = NULL; + if (context != NULL) { + action_id = "org.freedesktop.devicekit.disks.drive-ata-smart-refresh"; +@@ -8151,7 +8145,6 @@ devkit_disks_device_drive_ata_smart_refresh_data (DevkitDisksDevice *device, + 1, + g_strdupv (options), g_strfreev); + +- out: + return TRUE; + } + +-- +1.6.3.3 + --- devicekit-disks-009.orig/debian/patches/09-reiserfs-support.patch +++ devicekit-disks-009/debian/patches/09-reiserfs-support.patch @@ -0,0 +1,87 @@ +Index: devicekit-disks/src/devkit-disks-daemon.c +=================================================================== +--- devicekit-disks.orig/src/devkit-disks-daemon.c 2009-11-06 03:04:43.730201138 +0100 ++++ devicekit-disks/src/devkit-disks-daemon.c 2009-11-06 02:16:10.061852905 +0100 +@@ -299,6 +299,22 @@ + FALSE, /* supports_online_resize_shrink */ + }, + { ++ "reiserfs", /* id */ ++ "ReiserFS", /* name */ ++ TRUE, /* supports_unix_owners */ ++ TRUE, /* can_mount */ ++ TRUE, /* can_create */ ++ 16, /* max_label_len */ ++ TRUE, /* supports_label_rename */ ++ FALSE, /* supports_online_label_rename*/ ++ TRUE, /* supports_fsck */ ++ FALSE, /* supports_online_fsck */ ++ TRUE, /* supports_resize_enlarge */ ++ TRUE, /* supports_online_resize_enlarge */ ++ TRUE, /* supports_resize_shrink */ ++ FALSE, /* supports_online_resize_shrink */ ++ }, ++ { + "minix", /* id */ + "Minix", /* name */ + TRUE, /* supports_unix_owners */ +Index: devicekit-disks/src/job-change-filesystem-label.c +=================================================================== +--- devicekit-disks.orig/src/job-change-filesystem-label.c 2009-11-06 03:04:43.790202642 +0100 ++++ devicekit-disks/src/job-change-filesystem-label.c 2009-11-06 02:16:10.073855272 +0100 +@@ -76,6 +76,11 @@ + else + command_line = g_strdup_printf ("xfs_admin -L \"%s\" %s", new_label, device); + ++ } else if (strcmp (fstype, "reiserfs") == 0) { ++ if (!validate_and_escape_label (&new_label, 16)) ++ goto out; ++ command_line = g_strdup_printf ("reiserfstune -l \"%s\" %s", new_label, device); ++ + } else if (strcmp (fstype, "vfat") == 0) { + if (!validate_and_escape_label (&new_label, 254)) + goto out; +Index: devicekit-disks/src/job-mkfs.c +=================================================================== +--- devicekit-disks.orig/src/job-mkfs.c 2009-11-06 02:16:09.909855035 +0100 ++++ devicekit-disks/src/job-mkfs.c 2009-11-06 02:17:10.233859961 +0100 +@@ -191,6 +191,39 @@ + g_string_append_printf (s, " %s", device); + command_line = g_string_free (s, FALSE); + ++ } else if (strcmp (fstype, "reiserfs") == 0) { ++ ++ s = g_string_new ("mkfs.reiserfs -q"); ++ for (n = 0; options[n] != NULL; n++) { ++ if (g_str_has_prefix (options[n], "label=")) { ++ label = strdup (options[n] + sizeof ("label=") - 1); ++ if (!validate_and_escape_label (&label, 16)) { ++ g_string_free (s, TRUE); ++ goto out; ++ } ++ g_string_append_printf (s, " -l \"%s\"", label); ++ g_free (label); ++ label = NULL; ++ } else if (g_str_has_prefix (options[n], "take_ownership_uid=")) { ++ take_ownership_uid = strtol (options[n] + sizeof ("take_ownership_uid=") - 1, &endp, 10); ++ if (endp == NULL || *endp != '\0') { ++ g_printerr ("option %s is malformed\n", options[n]); ++ goto out; ++ } ++ } else if (g_str_has_prefix (options[n], "take_ownership_gid=")) { ++ take_ownership_gid = strtol (options[n] + sizeof ("take_ownership_gid=") - 1, &endp, 10); ++ if (endp == NULL || *endp != '\0') { ++ g_printerr ("option %s is malformed\n", options[n]); ++ goto out; ++ } ++ } else { ++ g_printerr ("option %s not supported\n", options[n]); ++ goto out; ++ } ++ } ++ g_string_append_printf (s, " %s", device); ++ command_line = g_string_free (s, FALSE); ++ + } else if (strcmp (fstype, "ntfs") == 0) { + + /* skip zeroing (we do that ourselves) and bad sector checking (will