ke4nt1
Group: Members
Posts: 2329
Joined: Oct. 2003 |
|
Posted: Mar. 10 2005,07:51 |
|
With the additions and modifications to the latest build of DSL, there have been some changes to the way icons and menus are handled that the userbase needs to be made aware of.
During the pre-release testing of RC1, I had placed an extension freeze on the repository, so that changes could be made to all the existing extensions, and continued testing using a known set of files could be done without delay or error. I have rebuilt every extension to meet with the criteria I am about to share with you.. it's actually very simple..
Many of you have submitted new extensions.. I will be adding them to the repository shortly, now that RC1 is released, and seems at this point in time to be a solid and reliable release.
I was awaiting positive feedback before sharing this with everyone..
The good news.. DSL now has both "orphaned" and "duplicated" checks on loaded extensions . If you recall in earlier versions, there was the possibility of having multiple copies of the same title in the menu, and multiple similar icons on the desktop . DSL now removes "orphans" and "duplicates" , keeping a cleaner interface. This is accomplished , in short, using the mydsl.menu entries to compare with the extension filenames.. This also works hand-in-hand with the added feature of the .uci type files being completely uninstallable ! No more leftover icons, menu entries, or /opt/dirs..
What needed to be done was to make the filename in tmp/mydsl.menu match the extension filename - e.g. xchat.tar.gz needs to have its menu file named " xchat" , dropping the .tar.gz ..
The not-so-good news.. Now, if your like me, you've got a bunch of extensions you've collected thru the last few months.. Those of you with broadband may wish to redownload them all, and be current ... Others, with modems or who remotely add extensions to their distro may not want to redownload them all.. Here is a how-to to modifying them for use in 1.0RC1 and later.
1. Open a root emelfm ( apt>tools>emelfm>emelfm as super user ) 2. Make a new directory in /home/dsl to work in ( I call mine "work" ) 3. Open the new empty directory 4. Copy your extension into this directory 5. At the bottom of emelfm , there is a command prompt, ..type this..
tar -ztf whateverextension.dsl > whatever.txt ( supply your own file names )
6. Again, at the command prompt, ..type this..
tar -zxvf whateverextension.dsl
Now, you have a text file containing a list of contents of the extension, and an expanded version of the extension placed in various directories.
7. Open the .txt file, and find the line that starts with tmp/mydsl.menu/ - followed by a filename - e.g. ace.dsl or Ace.dsl or Ace
This is your menu entry into the myDSL portion of your menu. THIS IS CRITICAL - and THIS IS THE RULE .. * * *The filename needs to MATCH the extension name * * *
In this example, ace.dsl needs to have an entry called tmp/mydsl.menu/ace
8. Edit this to be correct ....
Another example --> opera6.1.2.tar.gz needs to have this as your line tmp/mydsl.menu/opera6.1.2
9. One you've edited your txt file, save it..
Now, onto the actual file..
10. Open the tmp/ directory that is in your work directory. There should be another directory in it called mydsl.menu/
11. Open that directory as well, and you will see the actual menu file.
12. Rename the menu file to MATCH the text you edited in your txt file. Using our earlier examples.... ace or opera6.1.2
This is a good time to check the owners/perms on the menu file. MAKE SURE the file is owned by dsl.staff, and is -rw-r--r-- or -rw-rw-r-- If not , change it.. chances are, if it worked before, they are OK..
Now, you've made the corrections to the txt file, and the menu file. Time to gzip it back into an extension..
13. cd out of mydsl.menu , into the tmp dir.
14. cd out of tmp, into the work dir.
15. If it was a .dsl extension , type this..... tar -T whatever.txt --no-recursion -cvf- | gzip > whatever.dsl
16. If it was a .tar.gz extension, type this..... tar -T whatever.txt --no-recursion -cvf- | gzip > whatever.tar.gz
Substitute your txt filename , and your extension name here. Remember , your extension name needs to match your menu file name.
17. Your done ! Go try it out!
Here is another quick walkthrough without the explanations using the ace.dsl
open emelfm mkdir work ( in /home/dsl ) open the work dir copy ace.dsl to your work dir make a list of contents using ' tar -ztf ace.dsl > ace.txt ' open the extension using ' tar -zxvf ace.dsl ' open the ace.txt , and edit the tmp/mydsl.menu/ace.dsl line to read as tmp/mydsl.menu/ace save the txt file enter the tmp dir enter the mydsl.menu dir rename the ace.dsl file to ace check perms/owners on the menu file cd out to tmp cd out to work rebuild the extension using tar -T ace.txt --no-recursion -cvf- | gzip > ace.dsl
Now go test it..
I hope this helps both extension builders, and folks who do not wish to redownload every extension again..
Another quick note.. cbagger01's latest deb2dsl script offering is compliant with this need .. What a guy!!
ke4nt
|