PDA

View Full Version : How to force HAL to use shortname=mixed



cgrim
7th June 2007, 04:12 PM
In Fedora Core 6 everything was OK. Devices with FAT32 file system mounted automaticly with shortname=mixed parameter under the HAL.

But I upgraded on Fedora 7 and the nightmare began. On of a lot of problems is, that all devices with FAT32 now mounts with shortname=lower parameter under the HAL.
I tried to make my own FDI policy but it has no efect. Mount stiil gives me this report:

/dev/sdb1 on /media/CGRIMS_DATA type vfat (rw,nosuid,nodev,uhelper=hal,shortname=lower,uid=5 00)

But in lshal is this:

udi = '/org/freedesktop/Hal/devices/volume_uuid_56DC_FAD9'
block.device = '/dev/sdb1' (string)
block.is_volume = true (bool)
block.major = 8 (0x8) (int)
block.minor = 17 (0x11) (int)
block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_WD_1200BEVExternal_5758455930363437 30333236' (string)
info.capabilities = {'volume', 'block'} (string list)
info.category = 'volume' (string)
info.interfaces = {'org.freedesktop.Hal.Device.Volume'} (string list)
info.parent = '/org/freedesktop/Hal/devices/storage_serial_WD_1200BEVExternal_5758455930363437 30333236' (string)
info.product = 'CGRIMS_DATA' (string)
info.udi = '/org/freedesktop/Hal/devices/volume_uuid_56DC_FAD9' (string)
linux.hotplug_type = 3 (0x3) (int)
linux.sysfs_path = '/sys/block/sdb/sdb1' (string)
org.freedesktop.Hal.Device.Volume.method_argnames = {'mount_point fstype extra_options', 'extra_options', 'extra_options'} (string list)
org.freedesktop.Hal.Device.Volume.method_execpaths = {'hal-storage-mount', 'hal-storage-unmount', 'hal-storage-eject'} (string list)
org.freedesktop.Hal.Device.Volume.method_names = {'Mount', 'Unmount', 'Eject'} (string list)
org.freedesktop.Hal.Device.Volume.method_signature s = {'ssas', 'as', 'as'} (string list)
storage.model = '' (string)
volume.block_size = 512 (0x200) (int)
volume.fstype = 'vfat' (string)
volume.fsusage = 'filesystem' (string)
volume.fsversion = 'FAT32' (string)
volume.ignore = false (bool)
volume.is_disc = false (bool)
volume.is_mounted = true (bool)
volume.is_mounted_read_only = false (bool)
volume.is_partition = true (bool)
volume.label = 'CGRIMS_DATA' (string)
volume.linux.is_device_mapper = false (bool)
volume.mount.valid_options = {'ro', 'sync', 'dirsync', 'noatime', 'nodiratime', 'noexec', 'quiet', 'remount', 'exec', 'utf8', 'shortname=', 'codepage=', 'i
ocharset=', 'umask=', 'dmask=', 'fmask=', 'uid='} (string list)
volume.mount_point = '/media/CGRIMS_DATA' (string)
volume.num_blocks = 234436482 (0xdf93782) (int)
volume.partition.flags = {'boot'} (string list)
volume.partition.label = '' (string)
volume.partition.media_size = 120034123776 (0x1bf2976000) (uint64)
volume.partition.number = 1 (0x1) (int)
volume.partition.scheme = 'mbr' (string)
volume.partition.start = 32256 (0x7e00) (uint64)
volume.partition.type = '0x0c' (string)
volume.partition.uuid = '' (string)
volume.policy.mount_option.iocharset=utf8 = false (bool)
volume.policy.mount_option.shortname=mixed = true (bool)
volume.size = 120031478784 (0x1bf26f0400) (uint64)
volume.unmount.valid_options = {'lazy'} (string list)
volume.uuid = '56DC-FAD9' (string)


In lshal output it seems that FDI rule is right but is inored - WHY?

Is there other way to tell HALL to use shortname=mixed???

I'd like to use only lowercase on that drive and have no problem with it never more but my colleague using WInXP sucks my requests :(

cgrim
7th June 2007, 04:15 PM
<?xml version="1.0" encoding="utf-8"?>
<deviceinfo version="0.2">
<device>
<match key="block.is_volume" bool="true">
<match key="volume.fsusage" string="filesystem">
<match key="volume.fsversion" string="FAT12">
<merge key="volume.policy.mount_option.iocharset=utf8" type="bool">false</merge>
<merge key="volume.policy.mount_option.shortname=mixed" type="bool">true</merge>
</match>
<match key="volume.fsversion" string="FAT16">
<merge key="volume.policy.mount_option.iocharset=utf8" type="bool">false</merge>
<merge key="volume.policy.mount_option.shortname=mixed" type="bool">true</merge>
</match>
<match key="volume.fsversion" string="FAT32">
<merge key="volume.policy.mount_option.iocharset=utf8" type="bool">false</merge>
<merge key="volume.policy.mount_option.shortname=mixed" type="bool">true</merge>
</match>
</match>
</match>
</device>
</deviceinfo>


stored is in /usr/share/hal/fdi/policy/20thirdparty/95-fat-uppercase.fdi

Thanks for your help.

IBBoard
7th July 2008, 11:53 AM
Has anyone had any luck with this? I've tried it in F9 to get a USB Walkman device to show as mixed instead of lower and even after adding the HAL rule file, lshal shows it should be "shortname=mixed" for the device, but mount is showing "shortname=lower".

Even easier, why isn't mixed just always the default? The only penalty I can see is that you may have to remember all caps when typing the path at a console, where as it has the benefit of not breaking things that rely on capitalisation (e.g. some USB media devices, Eclipse Java projects, etc)

Seve
7th July 2008, 01:34 PM
Has anyone had any luck with this? I've tried it in F9 to get a USB Walkman device to show as mixed instead of lower and even after adding the HAL rule file, lshal shows it should be "shortname=mixed" for the device, but mount is showing "shortname=lower".

Even easier, why isn't mixed just always the default? The only penalty I can see is that you may have to remember all caps when typing the path at a console, where as it has the benefit of not breaking things that rely on capitalisation (e.g. some USB media devices, Eclipse Java projects, etc)
Hello:
Using gconf-editor
/system
/storage
/default_options
/vfat

Right click on the Key and select Edit Key and add/change to shortname=mixed

And you should be good to go.

Seve

IBBoard
7th July 2008, 06:51 PM
I'd already tried editing some GConf schemas in the /etc folder and not got anywhere. I'm guessing they're the defaults then, and that they override the HAL settings.

I'm sure it should be easier/more obvious with less conflicting files :) Thanks.

Seve
7th July 2008, 08:16 PM
Hello:

I think you are making this much harder than it needs to be, unless I am misunderstanding something? If I am then accept my apology in advance.

You do not need to edit any Gconf schema files to have your vfat devices mount with Mixed Case.

Did you not try what I previously posted ?

Seve

IBBoard
7th July 2008, 08:24 PM
I've not tried it yet, but I made the change in GConf as you suggested. My comment about /etc files was because I'd tracked down an almost identical setting in the schema before I made my first post on the topic and changing it hadn't made any difference (and neither did the original solution).