ocd-Dock - a dock written for Puppy

Window managers, icon programs, widgets, etc.
Message
Author
User avatar
torm
Posts: 186
Joined: Sat 07 Mar 2015, 19:56

#61 Post by torm »

Works nice in PekWM :wink:

ProgRob
Posts: 67
Joined: Wed 13 Feb 2013, 12:39

Release 4.0

#62 Post by ProgRob »

Release 4.0 contains:
  • Introduction of desklets - a means of putting launchers and widgets onto the desktop using the same theme as the dock
    New external widget, deskcalendar, which is best displayed on the desktop as a desklet, but is an attractive way of displaying the results of the Linux cal command
    Additional widget commands: textblock and endblock - force groups of text to all have the same font size; and arc - used to draw arcs (including pie slices, circles, donut rings, etc), either as a drawing or driven by a stream value
    Some more skins for the clock widget and the symonitor widget
    Some bug fixes
    Improved the look of the documentation, converted to odt format (though it doesn't open in Microsoft Word, for some reason) and reduced the file size.
Screen shot showing the desklets

Image

Thank you!

mow9902
Posts: 187
Joined: Wed 26 Nov 2008, 08:29

Understanding format of desklet command

#63 Post by mow9902 »

Firstly - thank you for this application which I am running on my tahr 6.0.2 system.
It has many many configuration options and I have been steadily working my way through the documentation experimenting with each of them. All good with pinning an item, creating launch items in the pin file, pinning a widget etc...but cannot seem to understand how to make the desklets work.

The documentation says that a desklets file needs to be created in .config and this file should have a separate line for each required desklet. The command format is size x y <command>

Let's assume I want to have the clock show in a desklet. Can someone please give me an example of the correct format for this line - assuming I want a size for the desklet of
500 pixels high x 200 pixels wide
positioned at 20 pixels from top and 40 pixels from left of screen
clock with no skin.

Thanks heaps in anticipation.

ProgRob
Posts: 67
Joined: Wed 13 Feb 2013, 12:39

#64 Post by ProgRob »

Hi Mow9902,

Firstly, thanks for the feedback.

The main problem is that desklets MUST be square so it is not possible create (at least at present) rectangular desklets.

If you wanted, though a clock (with no skin) 200 pixels by 200 pixels at the position you specify then the desklets file should contain the command:

200 40 20 clock


Hope that helps and sorry for the delay in replying but it has been a busy weekend!

Rob

User avatar
Ghost Dog
Posts: 163
Joined: Fri 27 Jan 2012, 04:29

#65 Post by Ghost Dog »

Hi again,

I must have messed something up installing or removing packages, because your dock isn't working as awesome as it was before. For some reason, I seem to "lose" icons for the file manager and geany after I open the programs. The icons get replaced by little photos with x's on them. I don't know why.

Any ideas on how to fix this minor irritation?

Thanks
Attachments
capture26788.png
(5.63 KiB) Downloaded 366 times
The Way of the Samurai

ProgRob
Posts: 67
Joined: Wed 13 Feb 2013, 12:39

#66 Post by ProgRob »

Hi Ghost Dog.

Very interesting problem. Firstly, I don't recognise the icons so they don't come with ocd-Dock. They may be, I suspect, the Gtk icons for missing images. So you get these when ocd-Dock is looking for an icon that it cannot find.

Secondly, you say that this only occurs when you open Geany or File Manager. I presume you mean it is ok before you open either of those two programs. Not only that I assume that all other programs seem to work fine. Therefore the only way I can see that this could happen is when you have specified a -icon1 option in the pinned file. So my questions would be:

1. Which version of Puppy are you running?
2. Have you loaded a specific Gtk theme?
3. Does your pinned file make use of the -icon1 option for Geany or File Manager?
4. Can you tell me the path to the icon that you expect to see?
5. Do other programs work fine?
6. Do Geany and File manager look ok before you open them?

Thanks,
Rob

User avatar
smokey01
Posts: 2813
Joined: Sat 30 Dec 2006, 23:15
Location: South Australia :-(
Contact:

#67 Post by smokey01 »

ProgRob,

ocd-Dock works quite well except for the pinned file. When I right click on a loaded app and add it to the dock, it creates a pinned file as expected. If I then kill ocd-Dock and start it again, it crashed with a segmentation fault. It also segfaults when I do: ocd-Dock -s

I'm using slacko-632. Any ideas?

Is there going to be a 64bit version?

Thanks

ProgRob
Posts: 67
Joined: Wed 13 Feb 2013, 12:39

#68 Post by ProgRob »

Thanks Smokey01 for the feedback. I have no idea why it is doing that as it works perfectly on my test - there again I am not using slacko-632.

To help me diagnose, is there any chance you could upload:

- your pinned file before pinning the extra app
- your pinned file after pinning the extra app (after it crashed loading)
- your error.log file after the crash

They're all small files so should be ok as attachments or even simply as a message.

Also, can you advise if it works without the -s switch? Unlikely to make a difference but will help eliminate it from the enquiries!


As for a 64bit version, I am currently compiling on a 32bit version of Precise Puppy. I will investigate how to create 64bit versions which I assume should be an easy alternative compile.

Thanks,
Rob

User avatar
smokey01
Posts: 2813
Joined: Sat 30 Dec 2006, 23:15
Location: South Australia :-(
Contact:

#69 Post by smokey01 »

There is no pinned file before or after the app is initially run (is there meant to be?). The only way I get a pinned file is after I right-click on a running app on the bar.

This is the error after I first run ocd-Dock:
"No pinned file found - starting with empty dock"

This is the pinned file after I add with right-click:
"launcher /usr/share/applications/seamonkey.desktop
insertionpoint"

After killing the app and restarting, it segfaults and it doesn't produce an error file.

If I delete the pinned file then it runs again.

ocd-Dock -s or -e segfaults no error log files produced.

ocd-Dock -v or -m works.

Grant


ProgRob wrote:Thanks Smokey01 for the feedback. I have no idea why it is doing that as it works perfectly on my test - there again I am not using slacko-632.

To help me diagnose, is there any chance you could upload:

- your pinned file before pinning the extra app
- your pinned file after pinning the extra app (after it crashed loading)
- your error.log file after the crash

They're all small files so should be ok as attachments or even simply as a message.

Also, can you advise if it works without the -s switch? Unlikely to make a difference but will help eliminate it from the enquiries!


As for a 64bit version, I am currently compiling on a 32bit version of Precise Puppy. I will investigate how to create 64bit versions which I assume should be an easy alternative compile.

Thanks,
Rob

ProgRob
Posts: 67
Joined: Wed 13 Feb 2013, 12:39

#70 Post by ProgRob »

Thanks Grant.

Firstly, it should be robust to not having a pinned file. A pinned file is created for you if you pin something to the dock. So no problem there.

Secondly the pinned file you've quoted is absolutely fine and would be what I would have suggested you write if you wanted it hand craft one. So again, no problem.

Thirdly, if I have understood you correctly, the program runs if you have the pinned file and you run a command such as:
ocd-Dock -v
or
ocd-Dock -m

If so, then that tells me there is a problem in the error handling code.

So to crack this, if you're up to help me, can you:

1. Confirm that with the pinned file in place, a command such as:
ocd-Dock
works (no switches, nothing, just the command on its own)
2. If it does work, can you let me know if you see what you expect on the dock (i.e. the application you pinned should be there)?
3. If it works but the dock is empty, despite having a pinned file like the one you stated, can you see if an error.log file has been created and let me know its contents if so?
4. Can you try pinning a different app and see if you get the same problem? Try something like mtPaint

My theory is there is something odd about the seamonkey desktop file (or probably more accurately, something about the file that my code is handling incorrectly) which is generating an error. That error is then being mishandled causing the segfault. My reason for thinking this is that the -s and -e switches cause the errors that should be being output to the error log to also be output to the window that pops up.

I have another minor release ready to go, but would like to track this bug down before releasing as it is not good to have known bugs. It would be good to know that it works if you don't use -e or -s as at least that gives an eminently sensible workaround.

Thanks,
Rob

smokey01 wrote:There is no pinned file before or after the app is initially run (is there meant to be?). The only way I get a pinned file is after I right-click on a running app on the bar.

This is the error after I first run ocd-Dock:
"No pinned file found - starting with empty dock"

This is the pinned file after I add with right-click:
"launcher /usr/share/applications/seamonkey.desktop
insertionpoint"

After killing the app and restarting, it segfaults and it doesn't produce an error file.

If I delete the pinned file then it runs again.

ocd-Dock -s or -e segfaults no error log files produced.

ocd-Dock -v or -m works.

Grant

User avatar
smokey01
Posts: 2813
Joined: Sat 30 Dec 2006, 23:15
Location: South Australia :-(
Contact:

#71 Post by smokey01 »

I'm sorry for not being clear. The switches have nothing to do with the pinned file. Running ocd-Dock without switches works. It also works with -v and -m but not -s or -e without a pinned file. Lets forget about the switches now. I have geany open, run ocd-Dock from a terminal, right click and pin geany to the dock. It continues to work until I do a ctrl-c and kill the app. When I try to start it up again it segfaults. If I delete the pinned file it the runs again.

I don't think it's an issue with the seamonkey.desktop file as I get the same results with various desktop files. I also noticed that rox does not show an icon on the bar and an option to pin it to the bar is not provided. Rox is a roxapp, should that make a difference?

Cheers

User avatar
Geoffrey
Posts: 2355
Joined: Sun 30 May 2010, 08:42
Location: Queensland

#72 Post by Geoffrey »

smokey01 wrote:I'm sorry for not being clear. The switches have nothing to do with the pinned file. Running ocd-Dock without switches works. It also works with -v and -m but not -s or -e without a pinned file. Lets forget about the switches now. I have geany open, run ocd-Dock from a terminal, right click and pin geany to the dock. It continues to work until I do a ctrl-c and kill the app. When I try to start it up again it segfaults. If I delete the pinned file it the runs again.

I don't think it's an issue with the seamonkey.desktop file as I get the same results with various desktop files. I also noticed that rox does not show an icon on the bar and an option to pin it to the bar is not provided. Rox is a roxapp, should that make a difference?

Cheers
I can confirm that smokey, when it reads a valid pinned file it segfaults and gives no errorlog, I'm running the dock in X-Slacko 4.2 which is based on slacko 6.3.2

Cheers Geoff
[b]Carolina:[/b] [url=http://smokey01.com/carolina/pages/recent-repo.html]Recent Repository Additions[/url]
[img]https://dl.dropboxusercontent.com/s/ahfade8q4def1lq/signbot.gif[/img]

ProgRob
Posts: 67
Joined: Wed 13 Feb 2013, 12:39

#73 Post by ProgRob »

Thanks guys - it seems to me that the common factor is Slacko - seems some more testing needed from me as it seems to work fine in TahrPup.

Very odd though why it is happening.

Rob

Geoffrey wrote:
smokey01 wrote:I'm sorry for not being clear. The switches have nothing to do with the pinned file. Running ocd-Dock without switches works. It also works with -v and -m but not -s or -e without a pinned file. Lets forget about the switches now. I have geany open, run ocd-Dock from a terminal, right click and pin geany to the dock. It continues to work until I do a ctrl-c and kill the app. When I try to start it up again it segfaults. If I delete the pinned file it the runs again.

I don't think it's an issue with the seamonkey.desktop file as I get the same results with various desktop files. I also noticed that rox does not show an icon on the bar and an option to pin it to the bar is not provided. Rox is a roxapp, should that make a difference?

Cheers
I can confirm that smokey, when it reads a valid pinned file it segfaults and gives no errorlog, I'm running the dock in X-Slacko 4.2 which is based on slacko 6.3.2

Cheers Geoff

ProgRob
Posts: 67
Joined: Wed 13 Feb 2013, 12:39

#74 Post by ProgRob »

Thanks Grant and Geoff,

It looks as if it works if I compile in Slacko. I have uploaded a Slacko version as a separate upload - please see the first post. I have uploaded an executable which needs to be downloaded and moved into /usr/local/bin

I will try to come up with a better way of distributing for future releases but if you can see if that fixes things I'd be grateful.

The problems might be caused by different versions of the underlying libraries (particularly libgee). I'll do some more digging but what has worked on my test is:

1. Restarting after a pin
2. Rox filer has got an icon



Rob

User avatar
UncleBaldie
Posts: 42
Joined: Sun 03 Feb 2008, 21:39
Location: Staffordshire, UK

#75 Post by UncleBaldie »

Good work, ProgRob.

Well, it probably is, but I can't get it going.
I am using TahrPup 6.0.5, with the standard JWM.
D/L Pet, installed, grabbed every libwnck-1 that I can find, and none of them work.

Is there a version anywhere that I can use ?

Regards,
Phil
Attachments
error.png
(20.78 KiB) Downloaded 170 times
Crackin' cheese, Gromit lad...
[img]http://www.lichfieldecclesia.org/462665.png[/img]

Woof-woof......oh yes !!

User avatar
Geoffrey
Posts: 2355
Joined: Sun 30 May 2010, 08:42
Location: Queensland

#76 Post by Geoffrey »

ProgRob wrote:Thanks Grant and Geoff,

It looks as if it works if I compile in Slacko. I have uploaded a Slacko version as a separate upload - please see the first post. I have uploaded an executable which needs to be downloaded and moved into /usr/local/bin

I will try to come up with a better way of distributing for future releases but if you can see if that fixes things I'd be grateful.

The problems might be caused by different versions of the underlying libraries (particularly libgee). I'll do some more digging but what has worked on my test is:

1. Restarting after a pin
2. Rox filer has got an icon



Rob
I have it now working in X-Slacko 4.2, thanks.

I too thought it may be a lib problem, the libgee in the PPM is version 0.12.0, so I compiled version 0.18.0 but that made no difference, using ldd to see the dependencies gave me no clue either.

Geoff
[b]Carolina:[/b] [url=http://smokey01.com/carolina/pages/recent-repo.html]Recent Repository Additions[/url]
[img]https://dl.dropboxusercontent.com/s/ahfade8q4def1lq/signbot.gif[/img]

User avatar
smokey01
Posts: 2813
Joined: Sat 30 Dec 2006, 23:15
Location: South Australia :-(
Contact:

#77 Post by smokey01 »

The slacko compiled binary is working fine here in slacko-632.

I have read your instructions in the 37 page document, which has a lot of good information but it's still difficult to configure ocd-Dock. I think more complete examples are required such as a working example of a desklet and widget. It would be worth having at least one of each included as the default setup. This would make it easier to duplicate. Much easier to delete than add.

This has the potential to be a great App but I think it's going to be too difficult for many to configure. What it really needs is a configuration manager similar to wbar. Generally if people can't get it working in the first five minutes they will discard it. A theme and widget maker/manager would be useful too.

It's looks far to good to be discarded.

I'm looking forward to the source code so I can compile a version for Fatdog.

Cheers

Thanks
Last edited by smokey01 on Fri 19 Aug 2016, 06:31, edited 1 time in total.

User avatar
smokey01
Posts: 2813
Joined: Sat 30 Dec 2006, 23:15
Location: South Australia :-(
Contact:

#78 Post by smokey01 »

Is it possible to run more than one instance of an application. For example: If I pin geany to the dock, I can only run one instance of it. Clicking a second time does nothing.

ProgRob
Posts: 67
Joined: Wed 13 Feb 2013, 12:39

#79 Post by ProgRob »

Thanks for the feedback! Great to hear that things are working. I think it is a library problem, but I am beginning to wonder whether it might be libwnck. I'd like to lose that as a dependency so might look into that. [Since making this post I have had another look to remind myself why I did not get rid of Wnck earlier - it turns out that Wnck provides a nice interface to all the windows on the system - something that Gtk cannot do. Looks like I need Wnck]

I am planning to release the code, but still want to finalise some things first - some of the code has been around a long time and is dreadful.

Thanks for the feedback on the number of options. I'll be honest that when I started I didn't want to push anyone down one particular route so ended up making anything that could be parameterised an option. I guess it is a bit overfacing. I'll include some more examples going forwards (excellent idea - many thanks for that) and include something in the initial run - a clock looks like a good candidate!

As for a tool to configure, I would like to do that - just need to work out how. Sounds like another good idea to follow up.

As for more than one instance of an application running, the answer is a definite yes. If you right click on a dockitem you should get a set of options in a menu including one to run the application - that immediately runs a new instance. The option to offer that option on the right click menu is controlled by yet another parameter in the config file!

Regards,
Rob
Last edited by ProgRob on Fri 19 Aug 2016, 10:28, edited 1 time in total.

ProgRob
Posts: 67
Joined: Wed 13 Feb 2013, 12:39

#80 Post by ProgRob »

Hi Phil - not sure why it didn't work for you. I have just tested by setting up a brand new clean 6.0.5 environment. I downloaded the library libwnck22_2.30.7 which told me to also told me I needed to download libwnck-common_2.30.7. I downloaded that as well.

Then, at a terminal I typed ocd-Dock and it worked.


Does that help?

Rob

UncleBaldie wrote:Good work, ProgRob.

Well, it probably is, but I can't get it going.
I am using TahrPup 6.0.5, with the standard JWM.
D/L Pet, installed, grabbed every libwnck-1 that I can find, and none of them work.

Is there a version anywhere that I can use ?

Regards,
Phil

Post Reply