pup-volume-monitor-0.1.15 and desktop-drive-icons-0.0.6
I think it's because /etc/mtab (-> /proc/self/mounts) contains:peebee wrote:p-v-m-0.1.15 seems to have a bit of a problem with this new facility/method of working in that accessing the partition that contains the frugal install displays the save directory contents rather than the partition contents.
Apparently only the second entry gets picked by pup-volume-monitor, probably in libpupvm/pupvm-monitor.c, lines 388+./dev/sda1 /initrd/mnt/dev_save ext4 rw,noatime,data=ordered 0 0
/dev/sda1 /initrd/pupro1 ext4 rw,noatime,data=ordered 0 0
However I don't know C, so can't fix it...
HTH
Greetings!
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]
[b][color=green]Omnia mea mecum porto.[/color][/b]
/initrd/pupro1
is that where the folder is loaded to as i use pup_rw ?
When I stop bobbing around in the water I could take a look.... like the other fixed scripts it would only need a bit of filtering.
These icons are great (I have as default on Lucid) so perhaps someone could take over support for them.
mike
is that where the folder is loaded to as i use pup_rw ?
When I stop bobbing around in the water I could take a look.... like the other fixed scripts it would only need a bit of filtering.
These icons are great (I have as default on Lucid) so perhaps someone could take over support for them.
mike
Yep, if it's PUPMODE=13. In PUPMODE=12 mtab says:
Greetings!
(btw, it was supposed to be pup_ro1, not pupro1, I made a typo)/dev/sda1 /initrd/mnt/dev_save ext4 rw,noatime,data=ordered 0 0
/dev/sda1 /initrd/pup_rw ext4 rw,noatime,data=ordered 0 0
Greetings!
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]
[b][color=green]Omnia mea mecum porto.[/color][/b]
I have asked for clarification of the difference in /etc/mtab between a savefile and a savefolder in Slacko6Beta:
http://murga-linux.com/puppy/viewtopic. ... 562#787562
http://murga-linux.com/puppy/viewtopic. ... 562#787562
LxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64
The problem is in the subroutine, "void pup_vm_monitor_get_mounts_unlocked(PupVMMonitor *self)".
It expects to get only a single entry for each "f_ent.mnt_fsname", but when a "mount -o bind" is active, as it is with a savefolder, it gets an extra entry for each "mount -o bind". This extra entry has the same "f_ent.mnt_fsname" but a different "f_ent.mnt_dir".
The entry corresponding to the one expected, is the first one, but the current code stores the last one.
So, near the top of the loop it needs to "continue" if it gets an entry whose "f_ent.mnt_fsname" is the same as the previous entry.
Or it could "continue" if the hash table already contains an entry for this "f_ent.mnt_fsname". Maybe something like:Or you could try using "g_hash_table_insert ()", instead of "g_hash_table_replace ()".
gyro
It expects to get only a single entry for each "f_ent.mnt_fsname", but when a "mount -o bind" is active, as it is with a savefolder, it gets an extra entry for each "mount -o bind". This extra entry has the same "f_ent.mnt_fsname" but a different "f_ent.mnt_dir".
The entry corresponding to the one expected, is the first one, but the current code stores the last one.
So, near the top of the loop it needs to "continue" if it gets an entry whose "f_ent.mnt_fsname" is the same as the previous entry.
Or it could "continue" if the hash table already contains an entry for this "f_ent.mnt_fsname". Maybe something like:
Code: Select all
entry.devnode = g_strdup(f_ent.mnt_fsname);
if (g_hash_table_contains(self->mounts, entry.devnode))
continue;
gyro
Yep, it's working correctly now, thanks Gyro!gyro wrote:Code: Select all
entry.devnode = g_strdup(f_ent.mnt_fsname); if (g_hash_table_contains(self->mounts, entry.devnode)) continue;
Btw, any idea what can cause this one?
[later]
While poking in the source code I came across daemon/drive-probes.c and its PupVolume *pup_volume_new_from_blkid_cache(blkid_cache cache, const gchar *devnode) function (or whatever it's called in C).
After short investigation:
- old Slacko has only busybox blkid + util-linux-2.21.2-patched_f2fs-i486
- new Slacko has full blkid (util-linux-2.21.2 from slackware repo, but, apparently, it's not patched).
To confirm, I did replace /lib/libblkid.so.* with the one from Slacko-5.7 and indeed, p-v-m was able to recognize f2fs partitions after that.
Greetings!
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]
[b][color=green]Omnia mea mecum porto.[/color][/b]
Excellent #gyro - very many thanks for tracking that down.gyro wrote:The problem is in the subroutine, "void pup_vm_monitor_get_mounts_unlocked(PupVMMonitor *self)".
It expects to get only a single entry for each "f_ent.mnt_fsname", but when a "mount -o bind" is active, as it is with a savefolder, it gets an extra entry for each "mount -o bind". This extra entry has the same "f_ent.mnt_fsname" but a different "f_ent.mnt_dir".
The entry corresponding to the one expected, is the first one, but the current code stores the last one.
So, near the top of the loop it needs to "continue" if it gets an entry whose "f_ent.mnt_fsname" is the same as the previous entry.
Or it could "continue" if the hash table already contains an entry for this "f_ent.mnt_fsname". Maybe something like:Or you could try using "g_hash_table_insert ()", instead of "g_hash_table_replace ()".Code: Select all
entry.devnode = g_strdup(f_ent.mnt_fsname); if (g_hash_table_contains(self->mounts, entry.devnode)) continue;
gyro
I've recompiled p-v-m on Slacko6beta with the patch and both desktop-drive-icons and pcmanfm are now behaving as they should be when accessing the boot partition when a new savefolder is being used.
My only question is - why does my compile which uses the instructions given by akash-rawal in post #1 result in binaries that are at least 4 times bigger than his compiles???
#SFR - many thanks also for the f2fs fix - I haven't tried that one yet but will soon - wonder whether 01micko will include the needed patch in Slacko6?
Great example of puppy teamwork.
Cheers
peebee
LxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64
Did you strip them?peebee wrote:My only question is - why does my compile which uses the instructions given by akash-rawal in post #1 result in binaries that are at least 4 times bigger than his compiles???
Haven't tried it yet, but Mick has recompiled it already:wonder whether 01micko will include the needed patch in Slacko6?
http://distro.ibiblio.org/puppylinux/pe ... s-i686.pet
Greetings!
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]
[b][color=green]Omnia mea mecum porto.[/color][/b]
Stripped - thanks.SFR wrote:Did you strip them?peebee wrote:My only question is - why does my compile which uses the instructions given by akash-rawal in post #1 result in binaries that are at least 4 times bigger than his compiles???
Haven't tried it yet, but Mick has recompiled it already:wonder whether 01micko will include the needed patch in Slacko6?
http://distro.ibiblio.org/puppylinux/pe ... s-i686.pet
Greetings!
util-linux-2.12.2_f2fs-i686.pet fixes the f2fs problem.
Many thanks
peebee
LxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64
No notification from forum
ok I dropped PUPMODE=13 years ago (forgot about that pup_ro1 stuff) so not a problem for me as such and a test with save folder gave one working icon.
The only hiccup is it was possible to unmount the drive from the icon (since there are 2 mounts) and after that I was taken to /initrd/pup_rw which makes some sense but was unable to make the original /mnt/sda1 since I assume the icon saw an existing mount still present . In my case in sysinit I make mnt points that match the device rather than /mnt/home though the result is similar.
Not sure if that affects your arrangements....ie can you unmount the pup drive from the icon and what happens after that?
Also a sr0 appeared from nowhere..not sure about that..was testing in qemu and no /dev/sr0 was enabled!
mike
ok I dropped PUPMODE=13 years ago (forgot about that pup_ro1 stuff) so not a problem for me as such and a test with save folder gave one working icon.
The only hiccup is it was possible to unmount the drive from the icon (since there are 2 mounts) and after that I was taken to /initrd/pup_rw which makes some sense but was unable to make the original /mnt/sda1 since I assume the icon saw an existing mount still present . In my case in sysinit I make mnt points that match the device rather than /mnt/home though the result is similar.
Not sure if that affects your arrangements....ie can you unmount the pup drive from the icon and what happens after that?
Also a sr0 appeared from nowhere..not sure about that..was testing in qemu and no /dev/sr0 was enabled!
mike
p-v-m for Slacko6
Here is a version of p-v-m for Slacko6 with gyro's fix for the new savefolder....
- Attachments
-
- pup-volume-monitor-0.1.15-1-i686-slacko6.pet
- (100.18 KiB) Downloaded 697 times
LxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64
just checked and nope, I'm not able to unmount home clicking the icon directly and all the right-click options (mount/unmount/eject) are greyed out.mikeb wrote:The only hiccup is it was possible to unmount the drive from the icon (since there are 2 mounts) and after that I was taken to /initrd/pup_rw
[snip]
can you unmount the pup drive from the icon and what happens after that?
No matter if it was PM 12 or 13 (Slacko-5.9.3).
So in your case it's e.g. /mnt/sda1, but "normally" it's /initrd/mnt/dev_save and P-V-M apparently checks for '/initrd/' string:mikeb wrote:In my case in sysinit I make mnt points that match the device rather than /mnt/home though the result is similar.
Code: Select all
else if (strstr(entry.mntpnt, "/initrd/"))
{
entry.flags |= PUP_VOLUME_MNTD_SYSTEM;
}
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]
[b][color=green]Omnia mea mecum porto.[/color][/b]
hmm well the /initrd/mnt/pupwhatever is still there... its bind mounted up to /mnt/sda1 rather than symlinked /mnt/home...which would cause a similar reaction to the initial problem in this post.
Thats ok I was checking it was fixed for standard puppies.
Happy drive iconing
Mike
Ps I wonder since you have taken up pup_volume_monitor ..or at least provide fixews....it should get a fresh thread?
Thats ok I was checking it was fixed for standard puppies.
Happy drive iconing
Mike
Ps I wonder since you have taken up pup_volume_monitor ..or at least provide fixews....it should get a fresh thread?
p-v-m and tahrpup
I have compiled a patched version of libgio-2.0.so.0.4000.0 to enable p-v-m to be used on Tahr Puppy 5.8.3 k3.14.11pae
Download from:
https://e-nautia.com/peebee/disk/share/ ... atched.pet
Patch for complete glib2 package is attached (false .gz). Used source from Linux-from-Scratch.
Cheers
peebee
Download from:
https://e-nautia.com/peebee/disk/share/ ... atched.pet
Patch for complete glib2 package is attached (false .gz). Used source from Linux-from-Scratch.
Cheers
peebee
- Attachments
-
- glib_2.40.0-tahr-090814.patch.gz
- (1.9 KiB) Downloaded 661 times
LxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64
Re: p-v-m and tahrpup
Need help
Porteus:
Label = sda1 mount in /mnt/live/memory/changes
http://forum.puppyrus.org/index.php?act ... 1998;image
Porteus:
Code: Select all
# mount |grep sda1
/dev/sda1 on /mnt/sda1 type ext4 (rw,noatime,nodiratime,data=ordered)
/dev/sda1 on /mnt/live/memory/changes type ext4 (rw,noatime,nodiratime,data=ordered)
http://forum.puppyrus.org/index.php?act ... 1998;image
[url=https://sourceforge.net/projects/puppyrusa/]PuppyRus-Arch[/url]
Interesting... on slax 6 the changes mount does not appear in mount
It only appears if you cat the initrd mtab.
The problem will be similar to the puppy bind mount problem since the same thing is happening.
mike
Code: Select all
bash-3.1# mount
aufs on / type aufs (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
usbfs on /proc/bus/usb type usbfs (rw)
/dev/hda2 on /mnt/hda2 type ext3 (rw,noatime)
/dev/hda1 on /mnt/hda1 type fuseblk (rw,noatime,allow_other,blksize=512)
/dev/hda3 on /mnt/hda3 type ext3 (rw,noatime)
/dev/sda1 on /mnt/sda1 type vfat (rw,noatime,quiet,umask=0,check=s,shortname=mixed)
bash-3.1# cat /proc/cmdline
ramdisk_size=7120 pty.legacy_count=10 root=/dev/ram0 rw vga=788 splash=silent quiet changes=/nimblex autoexec=startxfce4
bash-3.1#
Code: Select all
bash-3.1# cat /mnt/live/etc/mtab
rootfs / rootfs rw 0 0
/dev/root /mnt/live ext2 rw 0 0
proc /mnt/live/proc proc rw 0 0
/dev/hda2 /mnt/live/mnt/hda2 ext3 rw,noatime,data=ordered 0 0
/dev/hda2 /mnt/live/memory ext3 rw,noatime,data=ordered 0 0
mike
I don't know if it helps and what is the problem exactly, but it is the same here booting with porteus initrd - sda3 is mounted twice in mount command output:
http://mail.murga-projects.com/puppy/vi ... b0e#759046
http://mail.murga-projects.com/puppy/vi ... b0e#759046
Not really a problem... any distro using aufs in mysterious ways will give some odd mount information...its simply the nature of the mechanism. What is needed is for any software working with that info to be aware of it though in this case its up to us to modify the sources. I did test these icons on slax and they worked nicely apart from this..if it was a live boot than there is no problem. I use xfce4 so its drive icons do the job anyway without any quirks.
Mike
Mike
64bit p-v-m
Version of p-v-m compiled in Slacko64 Alpha as used in LxPup64:
https://e-nautia.com/peebee/disk/share/ ... lacko6.pet
https://e-nautia.com/peebee/disk/share/ ... lacko6.pet
LxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64