The 1Password Community forums are in read-only mode from Jan 28th - Feb 4th, 2025. Find out more.

Converting from SPBwallet gives an error

jeshavemose
jeshavemose
Community Member
edited October 2015 in Mac

I am using the convert_to_1p4 to convert .swl files from spbwallet in Yosemite

failed to load /usr/bin/perl5.16 convert_to_1p4.pl spbwallet --help Error: failed to load converter module 'spbwallet' Can't locate Crypt/Rijndael.pm in @INC (@INC contains: /Library/Perl/5.16/darwin-thread-multi-2level /Library/Perl/5.16 /Network/Library/Perl/5.16/darwin-thread-multi-2level /Network/Library/Perl/5.16 /Library/Perl/Updates/5.16.3 /System/Library/Perl/5.16/darwin-thread-multi-2level /System/Library/Perl/5.16 /System/Library/Perl/Extras/5.16/darwin-thread-multi-2level /System/Library/Perl/Extras/5.16 .) at Converters/Spbwallet.pm line 25. BEGIN failed--compilation aborted at Converters/Spbwallet.pm line 25. Compilation failed in require at convert_to_1p4.pl line 38.

I receive the same error message when pointing to a file that I want to convert, I have tried with perl5.16 and 5.18 both with same result.

Maybe not supported in Mac OS? As I in the pdf that follows the software states that it has support for spbwallet Windows but not Mac OS X.

Is there anything I can do? It seams that the SPBwallet guys went home and yesterday I couldn't start the software and I am therefor not able to export from inside the SPBwallet software.

Best regards, Jes

Comments

  • jeshavemose
    jeshavemose
    Community Member

    I am using 1password 5.4 (installed today), MAC OS X 10.10.5 and iCloud Sync

  • Stephen_C
    Stephen_C
    Community Member

    I'm sure the forum's resident expert, who wrote the converter, @MrC, will be along soon to help you.

    Stephen

  • MrC
    MrC
    Volunteer Moderator
    edited October 2015

    @jeshavemose,

    Sorry for the trouble.

    What version of OS X is this?

    Let me see what is the best way to get this module installed. I'll be back shortly.

  • jeshavemose
    jeshavemose
    Community Member

    Yosemite 10.10.5

  • MrC
    MrC
    Volunteer Moderator
    edited October 2015

    Hi @jeshavemose,

    SPB Wallet runs on Windows, and so the conversion should happen there using the described Windows instructions for the converter. Generally I don't advise, nor support, cross platform conversion, but in this case, it is OK.

    If you want to convert on a Mac, you have essentially 4 different choices for getting the required modules onto your system. I've tried with the converters to always use stock Perl modules, but this was one case where it was impossible. Here are the methods, ranked in order of ease (I fully realize none of these may make any sense to you, but I'm hoping one will be naturally easier for you):

    1. Install ActivePerl + some Perl modules (I have not tested this method)
    2. Install Perlbrew + command line tools + some Perl modules
    3. Install Apple's XCode developers and command line tools + MacPorts + some Perl modules
    4. Install additional modules into OS X's Perl installation via CPAN + command line tools (generally not advised for the unskilled)

    I can describe how to do this if you are still interested.

  • jeshavemose
    jeshavemose
    Community Member

    I think I will go for the third method as I have Apple's Xcode installed and assume that I can find the other two somewhere. Or do you think it is easier to do this in a windows environment, I have Fusion so that is not a big problem.
    Best regards, Jes

  • MrC
    MrC
    Volunteer Moderator
    edited November 2015

    @jeshavemose ,

    If you don't have a Windows system already setup, the use OS X. Otherwise, the download of portable Strawberry Perl and installing the required Perl modules is quite easy. You can follow the README.pdf instructions, but when it comes to installing the modules via cpan in steps 3, add a step 3f which is:

    cpan Crypt::Rijndael
    

    If you don't mind installing MacPorts, go ahead and follow their instructions and prerequisites, and install the Perl package (you can select perl5.16). Now here's where it is going to get rather trial-and-error-ish for you. I don't have documented the modules you need to actually run the converter (since almost no users require this). But its easy. Once you get the Perl package installed, try running the converter. You'll get errors like you did above. You can see the specific missing module name:

    Can't locate Crypt/Rijndael.pm in @INC 
    

    Just take the module name, and change the full module name by replacing the / (slash) with a - (dash), remove the .pm portion, and lowercase the module name. So the module installation command will be:

    sudo port install p5.16-crypt-rijndael
    

    Run the converter, and each time you get this error, install the required module. Do this until the converter runs. When you run the converter, be sure you run it using /opt/local/bin/perl5.16 instead of just perl.

  • jeshavemose
    jeshavemose
    Community Member

    I tried in Windows (Win 7, 64 bit), got a little bit further as I was asked for the password, but received the following when trying to convert the same file as above.

    C:\convert_to_1p4>perl convert_to_1p4.pl spbwallet -v Jes.swl
    Enter your SPB Wallet password:
    DBD::SQLite::db prepare failed: no such table: spbwlt_Template at Converters/Spbwallet.pm line 232, line 1.
    Can't call method "execute" on an undefined value at Converters/Spbwallet.pm line 233, line 1 (#1)
    (F) You used the syntax of a method call, but the slot filled by the
    object reference or package name contains an undefined value. Something
    like this will reproduce the error:

        $BADREF = undef;
        process $BADREF 1,2,3;
        $BADREF->process(1,2,3);
    

    Uncaught exception from user code:
    Can't call method "execute" on an undefined value at Converters/Spbwallet.pm line 233, line 1.
    Converters::Spbwallet::do_import('Jes.swl', undef) called at convert_to_1p4.pl line 116

    It is maybe easier to solve the problem in the Windows variant?

    Best regards, Jes

  • MrC
    MrC
    Volunteer Moderator
    edited November 2015

    I'm curious why you would not have that table. I'll take a look today when I get back to my system.

  • jeshavemose
    jeshavemose
    Community Member

    And when I tried what you recommended med I got the following:

    :convert_to_1p4 jes$ cpan Crypt::Rijnadel
    Reading '/Users/jes/.cpan/Metadata'
    Database was generated on Mon, 02 Nov 2015 09:17:02 GMT
    Warning: Cannot install Crypt::Rijnadel, don't know what it is.
    Try the command

    i /Crypt::Rijnadel/
    

    to find objects with matching identifiers.

    I did this thing with the i with the same result.

  • MrC
    MrC
    Volunteer Moderator
    edited November 2015

    You have a misspelling in the module name:

    Incorrect:

    Crypt::Rijnadel
    

    Correct:

    Crypt::Rijndael
    
  • jeshavemose
    jeshavemose
    Community Member

    I have also followed the instruction to install macports, but when issuing the command i receive bash-- port command not found..

  • MrC
    MrC
    Volunteer Moderator
    edited November 2015

    You need to update your PATH variable to look in /opt/local. Typically the MacPorts install does this for-profit so you just need to open a new shell.

  • jeshavemose
    jeshavemose
    Community Member

    Story continues,

    ---> Attempting to fetch p5.16-crypt-rijndael-1.130.0_0.darwin_14.x86_64.tbz2.rmd160 from http://lil.fr.packages.macports.org/p5.16-crypt-rijndael
    ---> Installing p5.16-crypt-rijndael @1.130.0_0
    ---> Activating p5.16-crypt-rijndael @1.130.0_0
    ---> Cleaning p5.16-crypt-rijndael
    ---> Updating database of binaries
    ---> Scanning binaries for linking errors
    ---> No broken files found.

    looks like rijnadael installation is OK, but I still receive this.

    convert_to_1p4 jes$ perl5.16 convert_to_1p4.pl spbwallet -v malmo.swl
    Error: failed to load converter module 'spbwallet'
    Can't locate Crypt/Rijndael.pm in @INC (@INC contains: /Library/Perl/5.16/darwin-thread-multi-2level /Library/Perl/5.16 /Network/Library/Perl/5.16/darwin-thread-multi-2level /Network/Library/Perl/5.16 /Library/Perl/Updates/5.16.3 /System/Library/Perl/5.16/darwin-thread-multi-2level /System/Library/Perl/5.16 /System/Library/Perl/Extras/5.16/darwin-thread-multi-2level /System/Library/Perl/Extras/5.16 .) at Converters/Spbwallet.pm line 25.
    BEGIN failed--compilation aborted at Converters/Spbwallet.pm line 25.
    Compilation failed in require at convert_to_1p4.pl line 38.

    Usage: convert_to_1p4.pl

    converters:
    clipperz csv dataguardian datavault essentialpim ewallet handysafe ironkeyim keepass2
    keepassx keychain lastpass licensekeeper msecure nortonis onepif2html passpack
    passwordagent passworddepot passwordwallet safeincloud safewallet spbwallet splashid
    txt2notes vcard

    specify one of the converters above on the command line to see complete options

    Probably I do something wrong, and getting out of battery power ;),

  • MrC
    MrC
    Volunteer Moderator
    edited November 2015

    You're mixing two environments. On one hand you're using the local perl and installing via cpan. But with MacPorts, you use the port install command as I mention a few posts back. Use one or the other. I suggested MacPorts so that you would not alter the OS X Perl environment.

    If you want some remote help, let me know.

  • jeshavemose
    jeshavemose
    Community Member

    It works, after the sudo port install I did the cpan Crypt::Rijndael and it does work :) I now have all my secret things in 1password.

    Thanks a lot for the assistance, Jes

  • MrC
    MrC
    Volunteer Moderator

    Wahoo!

This discussion has been closed.