Uninitialized value on import
Thanks for the bug report, but this issue was fixed in kpcli-4.0: hightowe@eden ~/src/perl/kpcli-code/releases $ diff 3.x/kpcli-3.8.pl 4.x/kpcli-4.0.pl | grep -A 3 6832c8527 6832c8527 < if (! (-f -e $kpxc_exe)) { return 0; } --- > if (! (defined($kpxc_exe) && -f -e $kpxc_exe)) { return 0; } It would be nice if Debian would advance the kpcli version. I'm not sure why it has not upgraded in so long...
Added the -attachment feature to find
Couple of minor utf8-related bug fixes
Support searching by arbitrary fields
It'll be in the next release and is in kpcli-DEVELOPMENT.pl on the head of the trunk now: https://sourceforge.net/p/kpcli/code/HEAD/tree/trunk/ https://sourceforge.net/p/kpcli/code/72/tree//trunk/kpcli-DEVELOPMENT.pl?diff=6570cda74363ae34c51814f1:71
Adds the -password feature to find (SF-FR #32)
Support searching by arbitrary fields
The feature that you requested is almost fully implemented today: KeePass CLI (kpcli-4.1.3) v4.1.3 is ready for operation. Type 'help' for a description of available commands. Type 'help <command>' for details on individual commands. kpcli-4.1.3:/> help find find: Finds entries Searches for entries with the given search term in their title and places matches into "/_found/". Add -a to search data fields beyond just the title: * title, username, comment, url, tags Use -expired to find expired entries....
Added and deployed a new drain_stdin() subroutine
Added dbsec command with Google Antigravity and Gemini 3 Flash
Without ls, show does not shows keys
kpcli has always had this behavior. It is an intentional design decision based upon the fact that the entry numbers are only associated with an ls. The show command also supports titles, and so there is no need (and it's somewhat nonsensical) to try to show via a number when no ls was ever performed. Moreover, the show command will show entries from the prior ls that was performed with no regard for where the user's cwd currently is. Again, this was an intentional design decision.
Release 4.1.3
Very minor cleanups
Show protected tags (strings) and allow protecting tags
This feature was added in SVN commit r67 on the head of the trunk and will be in the next release. https://sourceforge.net/p/kpcli/code/67/
Adds string protection toggling, requested in SF FR #31
Release 1.4.5, which adds python3-libgpiod support
Finished adding support for python3-libgpiod
Removed errant comment
Finished support for python3-libgpiod
More work towards gpiod support
Refactoring in preparation to support python3-libgpiod
Release 1.4.4
Reduced unuseful alarm quandries and related logging
I fixed the KDBXv3 protected strings display bug reported here. It is part of this commit: https://sourceforge.net/p/kpcli/code/66/tree//trunk/kpcli-DEVELOPMENT.pl?diff=6570cda74363ae34c51814f1:65 Note that the bug.kdbx file that you sent did not have the otp string protected in the entry, but the attached file does, in one of the two entries, as shown in the screenshot.
Couple of bug fixes.
Because I am unable to replicate this problem, would you please create a small kdbx file that has one or more entries within it that exhibits the concerning behavior and upload it to a reply here? Thanks.
The screenshot from my prior reply was from a 3.x KDBX file and an entry that had its OTP added by KeePassXC. If that behaves the way that you expect, then I am not sure what issue you are running into. What version of kpcli are you using (run the vers command)? What software added the OTP strings to the kdbx file's entries? I understand the other request that you described (you've made two requests in one ticket). I am presently focused on understanding the OTP issue, which seems to not behave for...
Show protected tags (strings) and allow protecting tags
It seems that I am not understanding something in this. Unless -f is given to the show command, the otp string is hidden as red on red text, just like the password is, as seen in the attached image.
wrong sha256sum for kpcli-4.1.1-README
Hi - What you found is an Arch Linux AUR packaging bug. The AUR packager has been made aware. https://aur.archlinux.org/packages/kpcli -- Lester
How to preserve notes during edit
Fixed in version 4.1.2.
Thank you for reporting this, Vladimir. You discovered a legitimate bug in versions 4.1 and 4.1.1 that impacts the Notes field exactly as you described. I have found and fixed the problem and plan to release 4.1.2 soon with the fix. For now, you can use version 4.0 and hopefully brew will give you a smooth path to upgrade to release 4.1.2 when I release it. If you would like to fix your version of 4.1 yourself, this is the section of code to change, starting at line 4684 (remove the one - line and...
Release 4.1.2 to fix SF bug #56
How to preserve notes during edit
Thank you for reporting this, Vladimir. You discovered a legitimate bug in versions 4.1 and 4.1.1 that impacts the Notes field exactly as you described. I have found and fixed the problem and plan to release 4.1.2 soon with the fix. For now, you can use version 4.0 and hopefully brew will give you a smooth path to upgrade to release 4.1.2 when I release it. If you would like to fix your version of 4.1 yourself, this is the section of code to change, starting at line 4684 (remove the one - line and...
Warning: Attempt to call undefined import method with arguments (":all") via package "File::KDBX::Key"
Fixed in version 4.1.1.
Commits related to version 4.1.1
Warning: Attempt to call undefined import method with arguments (":all") via package "File::KDBX::Key"
Incremental commits towards next release
Add RSYSLOG_TraditionalFileFormat for Debian 12+
new action - non-interactive attach one file to entry
If you actually code this, please send a patch (unified diff) and/or a copy of your kpcli that you added it to and I will review and consider it.
Would you mind sharing and educating me on how you used "dependency walker" to determine that LIBXML2-2__.DLL was missing. Thanks.
Missing Windows DLL
Thank you for reporting this bug. You found a problem with my build process on windows that impacted both v4.0 and v4.1. I corrected that problem, recompiled both EXEs, and put the new files into the project's Files area. Those EXEs should work properly now.
Accented characters not being displayed
Proper utf8 support was added with version 4.1.
Version 4.1 release
Don't warn on commented out debugging lines
Minor fixes (most typos/spellings) in a few comments
Better handle invalid OTP Base32 secret strings
Fixed a utf8-related problem with the autosave command
Fixed a UTF-8 bug in cli_find that Tom reported
A few bug fixes and a little code cleanup
UTF-8 bug fixes from extensive interoperability testing
Small utf8 fix in get_recycle_group_uuid() for KDBX
Small fix for group listing in --no-utf8 and KDBX
Further UTF-8 improvements, mostly around KDBv1
UTF8 fixes after tests on Arch Linux and Ubuntu 20.04
Patrick - I just committed an update that I believe is getting very close to have fully working utf8 support. If you're using kpcli, please install this version locally and use it. Thanks. https://sourceforge.net/p/kpcli/code/HEAD/tree/trunk/kpcli-DEVELOPMENT.pl
More utf8 work. Well tested with KDB1, KBDX3, and KDBX4
More utf8 progress. KDBv1 and KDBXv4 seem pretty solid
Fixed utf8-related problems with KDBX3 files
Sound-trip a RAM-based DB save/load for mktestdb
Significantly more utf8 work completed
Apologies for not getting those directory paths just right, and thanks for that testing, Patrick. Your results seem to imply that I probably should stop treating the password field differently... I need to give that some thought, but it is obvious that what I am currently doing is probably not correct.
Apologies for not getting those directory paths just right, and thanks for that testing, Patrick. Your results seem to imply that I probably should stop treating the password field differently... I need to give that some thought, but it is obvious that what I am currently doing it probably not correct.
The quickest and easiest way to test my Clipboard wl-clipboard support would be to do a local install of Clipboard, into your ~/perl5 folder, and then replace one file and add one file within there. To first install Clipboard locally to your home dir, simply run cpanm Clipboard as yourself, not as root. When that is finished, you should have a new folder, ~/perl5/lib/perl5/Clipboard/. Within it, you'll need to add this file underneath the lib/Clipboard/lib/ folder: https://github.com/hightowe/Clipboard-with-WaylandClipboard-support/blob/master/lib/Clipboard/WaylandClipboard.pm...
More utf8-related work. Removed depedency on the open module.
Patrick - When Charles walked me through how File::KDBX does utf8 character encoding, based on his extensive research in the area, I learned that all string fields are utf8 encoded for storage in KDBX4 files with the one exception of the password field. That makes sense to me because encoding/decoding passwords values with utf8+locale settings can cause authentication troubles (wrong passwords) if one moves the DB across locales because the values within the string can literally change. Because the...
Sorry about that, Patrick... Fedora and Debian/Ubuntu/Mint package perl modules quite differently. The open module is standard fare on Debian-based systems but on Fedora you must: $ sudo yum install perl-open.noarch I really hate adding dependencies, but I think open may be one that I don't have much choice about for utf8 support. Also, and because I left the DEVELOPMENT code set with DO_TRACE_DUMPS enabled, you'll either need to edit the file and set that to zero or you'll need to also: $ sudo yum...
Patrick - I committed the latest development version of kpcli a few minutes ago: https://sourceforge.net/p/kpcli/code/HEAD/tree/trunk/kpcli-DEVELOPMENT.pl If you grab it, you should be able to place it into your ~/.local/bin/ folder (make it if its missing) and use it. I think you'll find the utf8 support to be vastly better on KDBX files now. There is still a lot of work to do, particularly on KBD and KDBX3 files (File::KeePass intead of File::KDBX), and there are probably also still bugs in the...
Significant progress on utf8 support for KDBX with File::KDBX
Patrick - Charles (the author of File::KDBX) was quick to respond and he provded some great information. Things are not 100% working yet, but they are much improved. If it's not too much trouble, would you please make and send a small testable kdbx file, made in your environment with KeePassXC? I want to be sure that your files, from your locale, also test well. All of my files are all built in the en_US.UTF-8 locale. Just make a small file that has a few groups and entries with names and values...
Accented characters not being displayed
Patrick - I discovered a couple of things that I want to share. Have a look at this: kpcli:/> newdb Choose your file format: 1. KDB - The original KeePass format (*.kdb). Supported using File::KeePass 2. KDBX3 - The first KeePass XML format (*.kdbx v3). Supported using File::KeePass 3. KDBX4 - The second KeePass XML format (*.kdbx v4). Supported using File::KDBX Choose: (1)/(2)/(3)/(c)ancel? 3 Done. Use the saveas command to write to disk. kpcli:/Root> mkdir Clés\ de\ licence kpcli:/Root> ls ===...
Because I am unable to replicate the problem. could you create and provide a file that I can use to test with?
Despite not being able to disable XWayland, I was able to add wl-clipboard suport to Clipboard. I re-opend the related issue and submitted a pull request: https://github.com/shlomif/Clipboard/issues/13 https://github.com/shlomif/Clipboard/pull/14
Googling did not help me much... I do believe that I figured out how to stop XWayland from loading, but when I instituted it the GNOME desktop would then not start at all. What I did is found here: https://www.reddit.com/r/gnome/comments/xa18en/how_to_disable_xwayland_completely/ I edited via "systemctl --user edit org.gnome.Shell@wayland.service" and added: [Service] ExecStart=/usr/bin/gnome-shell --no-x11 which I believe worked to stop XWayland from loading, but then the user cannot get to a working...
This leads me to believe that the Fedora-39 osboxes.org VM that I grabbed yesterday is indeed setup to use Xwayland, which would explain why xclip works: hightowe@fedora:~$ ps auxwww|grep -i -- xwayland hightowe 2338 0.0 0.9 192072 18296 ? S 09:20 0:00 /usr/bin/Xwayland :0 -rootless -noreset -accessx -core -auth /run/user/1000/.mutter-Xwaylandauth.6UC8L2 -listenfd 4 -listenfd 5 -displayfd 6 -initfd 7 -byteswappedclients hightowe 3163 0.0 0.1 222432 2304 pts/0 S+ 09:36 0:00 grep --color=auto -i --...
From this, I suspect that you may have found multiple problems... Let me start with just one possible one and that is that the LANG setting that KeePassXC is pickup up from your system-wide settings differs from that given in your terminal that kpcli is given. That could happen if you are changing your LANG in your ~/.bashrc, for example. Do these values all match for you? hightowe@fedora:~$ cat /etc/locale.conf LANG="en_US.UTF-8" hightowe@fedora:~$ set|grep LANG= GDM_LANG=en_US.UTF-8 LANG=en_US.UTF-8...
Hi Patrick - Yesterday was the first time that I ever touched Fedora 39 or Wayland. I am not 100% sure how to answer your question about XWayland, but on the login screen I am using the "GNOME" option, not either of the two that end with "... on Xorg" (see attached) which I believed means Wayland... How can I know for sure?
Accented characters not being displayed
I setup a Fedora-39 environment in which to code wl-clipboard support into Clipboard, and after getting that done it all appears to be unecessary. Instead, I just installed xclip and it worked... $ cat ./cbtest.pl #!/usr/bin/perl use strict; use Clipboard; # from perl-Clipboard system("cat /etc/os-release | grep -E '^PRETTY_N'"); system("set | grep -E 'DISPLAY='"); my $cpval = 'foo'; Clipboard->copy("$cpval\n"); print "Pasting '$cpval' here: ". Clipboard->paste; exit; And then running that in Fedora...
After a little more research, I am curious to know if the issue that you reported exists only on entries created in another program (like keepassxc) or if it also appears on entries that you create in kpcli? If it's the former only, then it may be that the character encoding that was used for adding the entries does not match what your terminal is using. https://github.com/keepassxreboot/keepassxc/issues/2413
I went ahead and opened an issue: https://github.com/shlomif/Clipboard/issues/13
Patrick - The Perl Clipboard module is under active development. The most recent Changelog entry is from just 3 days ago: https://metacpan.org/dist/Clipboard/changes As such, there is a good change that the author, Ryan King rking@panoptic.com, would consider adding support for Wayland. The code is hosted on GitHub and you could open an issue here: https://github.com/shlomif/Clipboard/issues Today, and by looking at the source code, it does appear that Wayland is not supported: https://metacpan.org/release/SHLOMIF/Clipboard-0.29/source/lib/Clipboard.pm...
Patrick - The Perl Clipboard module is under active development. The most recent Changelog entry is from just 3 days ago: https://metacpan.org/dist/Clipboard/changes As such, there is a good change that the author, Ryan King rking@panoptic.com, would consider adding support for Wayland. The code is hosted on GitHub and you could open an issue here: https://github.com/shlomif/Clipboard/issues Today, and by looking at the source code, it does appear that Wayland is not supported: https://metacpan.org/release/SHLOMIF/Clipboard-0.29/source/lib/Clipboard.pm...
It may also be helpful to look at your LANG environment variable setting: $ set|egrep '^LANG=' LANG=en_US.UTF-8 You could also try running kpcli underneath luit, to try to help understand and isolate the problem: $ luit -encoding ISO-8859-1 kpcli If luit solves the problem for you, the the issue is definately in your terminal and/or environment.
Accented characters not being displayed
I don't believe that this is a kpcli bug, at least not directly. To support that assertion, you can see kpcli doing the right thing on my Linux Mint desktop: $ kpcli KeePass CLI (kpcli-DEVELOPMENT) vDEVELOPMENT is ready for operation. Type 'help' for a description of available commands. Type 'help <command>' for details on individual commands. kpcli-DEVELOPMENT:/> ls === Groups === eMail/ Internet/ kpcli-DEVELOPMENT:/> cd Internet/ kpcli-DEVELOPMENT:/Internet> new "Clés de licence" Adding new entry...
Home
kpcli 4 bug when a kdbx has no passwd
Fixed and checked into the development code on the SVN repo's trunk. Will be part of release 4.1.