Tuesday, May 12, 2009

Useful RPM commands in Mandriva

Mandriva provides some very nice commands which wrap rpm and allow you to install/remove packages directly from the repositories and query package information. Heres a short list of some the more useful commands....

urpmi blahblah
Install package blahblah.

urpme blahblah
Remove package blahblah.

urpme --auto-orphans
Remove all orphaned packages (I believe this is a recent addition).

urpmi --auto-update
Update all packages which have update available from one of the update repositories.

urpmi --clean
Clean the package cache on the local harddrive. Useful if a package gets corrupted during download and you cannot install it. Each successive attempt to repeat the install will use the cached version - gotta clean that cache first.

urpmi --test blahblah
Tests the install of a package without actually installing anything.

urpmq --summary blahblah
Display summary information about package blahblah.

urpmf regex
List all packages which contain a file whose name matches the regular expression regex. regex can therefore be the full filename, a partial filename or a more complex regular expression.

urpmf -f regex
Lists all packages as before and also displays the full package version and architecture information.

urpmq regex
Find if a package exists which has a name exactly matching regex. The parameter regex can be a Perl like regular expression.

urpmq -i regex
Display detailed information about a package.

urpmq -a regex
List all packages whose name fully or partially matches the regular expression regex. Useful when you don't know the full name of a package.

urpmq -f regex
Display the package name, version and architecture of matching package.

urpmq -l regex
List all files in matching package.

rpm -q blahblah
Check if package blahblah is installed.

The raw rpm command does allow you to query package information however the package must already be installed.

rpm -qa
List all installed packages.

rpm -ql blahblah
List the files in installed package blahblah

rpm -qi blahblah
Display detailed information about the installed package blahblah.

rpm -qR blahblah
List the packages which package blahblah depends on.

Thursday, May 7, 2009

Payment Processing for the ISV

I've recently completed a review of the services available for Independent Software Vendors who distribute their products over the internet. Here is a brief list of the various companies I came across during the review. I haven't gone into the details of pricing and features as these change over time, however this list should help you encounter the key service providers.

Digital River is a large US company which provides e-commerce solutions to software vendors. They offer sales, licensing and payment processing services to large vendors such as Symmantec and Kaspersky. They also provide these services to smaller vendors, shareware providers etc., marketing their platform through a range of websites. Their sites include RegNow, RegSoft, esellerate and Share-IT.

E-Junkie provide order processing, license key distribution, downloads but do not provide payment processing. Their platform integrates with PayPal, Google Checkout and other payment processors. For this reason, they charge a flat monthly fee and the payment processors percentage fee is charged independently. E-Junkie are based in Arizona.

FastSpring provides payment processing and distribution to software vendors. They are based in California.

Kagi also provide payment processing and software distribution services.Yes, they are also based in California.

There are several issues you should have in mind when choosing a company which provides these services:
  • Exclusivity. Are you free to sell your software product through other channels concurrently or do their terms and conditions restrict you to selling through their website?
  • Fraud Prevention. How good is their fraud prevention? You don't want a high proportion of your sales to consist of providing the license key or software download and then a couple of days later being informed that the payment was canceled because the purchaser's credit card was fraudulently used.
  • Chargebacks. If a user complains to the credit card company about not receiving the product or the product not being fit for purpose - how does the payment processor communicate with you and the customer?
  • Fees. How do their percentage fees compare to other providers? What is the minimum charge? Are you charged per download or for storage space?
  • Taxes. How does the service provider handle sales tax rates or EU VAT rates?
  • Funds Transfer. How do you get your funds from the service provider? Must you pay a fee for funds transfers? How frequently does the vendor receive their funds - monthly, bi-weekly, daily?