URI: 
        ___________________________________________
       title: I broke Hotsync 
       date: 2024-10-09
        ___________________________________________
       
       UPDATE: I fixed this, see how at the end.
       
       This is Why We Can't Have Nice Things
        ===========================================
       
       Yesterday I spent a good amount of time syncing my Calendar to the
       Zire and made a lot of progress. I have a draft of the process with
       exciting things like building multiple dependencies and the why
       timezones are bad.
       
       Unfortunately this seems to have broken J-Pilot and it can no
       longer hotsync like it did previously, giving the error,
       
       ```
       pi_bind error: usb: No such file or directory
       Check your sync port and settings
       Exiting with status SYNC_ERROR_BIND
       Finished.
       ```
       
       Where before hotsync would work without any issues after I added my
       user to the dialout group.
       
       The calendar tool I used (palm-calendar-sync2) uses apptainer 
       
  HTML palm-calendar-sync2
  HTML Apptainer
       
       To make it easier to run (it's sort of like an application in a
       Docker container), but I believe it somehow changed permissions or
       ownership on something in /dev or /sys that broke other apps from
       accessing usb:.
       
       I tried various other things like using /dev/ttyUSB*, but those
       don't show up when the Zire is put into Hotsync mode. Searching
       around on some forums and in the Palm discord didn't bring much up
       either.
       
       My plan now is to install Linux Mint into a fresh VM on the laptop
       and compare permissions in /dev and /sys to see what might be
       different. Hopefully I can discover what changed and then fix it.
       This would also help with palm-calendar-sync2 since I was able to
       build it from source and not use apptainer, but I thought it was
       broken because it also couldn't access usb: like j-pilot.
       
       This is useful since if there is a bug with timzeones in
       palm-calendar-sync2 I might be able to fix it so my calendar sync
       works as expected and I won't be 7hrs late to every meeting.
       
   GIF Linux Mint in a VM
       
       Fixing J-Pilot
        ===========================================
       
       A few hours after I wrote the above, I had an idea on what maybe
       could have gone wrong. While building palm-calendar-sync2 from
       source, I also had to build the pilot-link libraries, which put
       them in /usr/local/lib. On a hunch I did a ldd /usr/jpilot to see
       what libpisock it was using, and sure enough it was the freshly
       compiled ones and not the ones in /lib/.
       
       Doing a make uninstall in the pilot-link source directory removed
       these, and jpilot was using the original libpisock library again.
       Firing up a hotsync then worked as expected and the
       palm-calendar-sync2 that I built from source also worked.
       
       Now that I have a fully functioning hotsync again it's time to get
       back to syncing my calendar, which has proven to have a few
       challenges I wasn't expecting.
       
       Links
        ===========================================
       
   DIR Back