--- kdebase-3.4.2/kdesktop/init.cc-- 2005-09-15 17:05:01.000000000 +0200 +++ kdebase-3.4.2/kdesktop/init.cc 2005-09-15 17:03:20.000000000 +0200 @@ -201,13 +201,29 @@ void testLocalInstallation() testDir( KGlobalSettings::autostartPath() ); // we force the copying in case of a new release, to install new translations.... copyDirectoryFile("directory.autostart", KGlobalSettings::autostartPath(), newRelease); - + KConfig *config = kapp->config(); + config->setGroup("Mandriva"); if (emptyDesktop) { copyDesktopLinks(); if( QFileInfo("/dev/dsp").exists()) KApplication::startServiceByDesktopName("kmix", QStringList(), 0, 0, 0, "", true); + config->writeEntry("desktopDeviceCopied",true); + config->sync(); + } + else + { + QString desktopPath = realDesktopPath(); + const QString deviceElement = desktopPath + "/device.desktop"; + const bool deviceDesktopExists = QFile::exists( deviceElement ); + if( !deviceDesktopExists + && !config->readBoolEntry("desktopDeviceCopied",false)) + { + copyFile( locate( "data", "kdesktop/DesktopLinks/device.desktop" ), desktopPath ); + config->writeEntry("desktopDeviceCopied",true); + config->sync(); + } } // Take care of creating or updating trash.desktop