Data::Printer Perl module on Debian Buster

To see what’s inside a variable or a Perl object, Data::Dumper is often used.
For inspecting objects, its features are limited.
Data::Printer helps you dump your Perl data structures in a complete, colored and human-friendly way.
This module is not part of the Perl core modules.
To install it on Debian Buster :

apt install libdata-printer-perl

Start using it. Its syntax is simple and pretty straightforward.
For objects, it provides public/private methods details that Data::Dumper does not.

More details on Metacpan for Data::Printer

Auto-closing HTML tags in Vim on Debian Buster

Debian provides deb packages for Vim and Vim scripts. Vim scripts are a set of addons to vim to automate repetitive tasks or adding new functionalities to the Vim editor.

This addon, closetag.vim, will be installed and enabled and ready for use when editing an HTML file.

Debian provide a central way to manage Vim addons, vim-addons-manager, system-wide or a per-user configuration.
To install it :

apt install vim-addon-manager vim-scripts

To enable it just for you :

vim-addons install closetag

A local copy of closetag.vim is created in ~/.vim/macros

To enable it in your Vim editor :

:let g:closetag_html_style=1
:source ~/.vim/macros/closetag.vim

The auto-closing function is available in insert mode by typing Ctrl-_

More infos :

https://github.com/vim-scripts/closetag.vim
http://www.vim.org/scripts/script.php?script_id=13

Debian Packaging Policy for Vim

Remote: error: insufficient permission for adding an object to repository database objects

If you push code to a git repo, you might get this error :

remote: error: insufficient permission for adding an object to repository database objects
remote: fatal: failed to write object

Make sure that the system permissions are set properly. Stackoverflow provides some good troubleshooting steps.

The commands below solve the issue :

cd /path/to/repo.git
chgrp -R groupname .
chmod -R g+rwX .

git config core.sharedRepository true
 

For groupname, make sure it matches the user account details that you use for logging in and pushing code to the git server.

 

/usr/bin/ssh-copy-id: ERROR: No identities found

/usr/bin/ssh-copy-id: ERROR: No identities found

The error occurs when you want to copy your public key to a remote server using the utility ssh-copy-id

By default, the program looks for ~/.ssh/id_rsa.pub

If you have generated dsa keys, the location of your public file must be specified explicitely :

ssh-copy-id -i ~/.ssh/id_rsa.pub

Create an alias in your bashrc file such as :

alias cpid=’ssh-copy-id -i ~/.ssh/id_rsa.pub’

Reload your bashrc file to have this new alias available in your shell.