Month: November 2016

Before I Say CAD, Let Me Just Say This

Continuing on from CAD Applications on Linux:

Before I chime in on what I think would make a CAD application successful on Linux… perhaps I should back it up. I’d like to clear the air on what it is I’m talking about when I say “CAD”. I believe this is the most important definition for the Linux community to grasp hold of and understand clearly.

CAD stands for Computer-Aided Design or Computer-Aided Design and Drafting (CADD), and CAD software uses computer technology to create, assist and manage a design and its documentation.

An easy question to ask yourself, if you’re wondering whether or not CAD software is required, is, “Am I creating something?” Typically, if something’s being created, it will be subject to a level of designing. And if something is to be designed, it’s likely to change. And it’s precisely the changing, which calls for the use of computer technology. Computers can manage the change of a design much more efficiently than we humans can, but for computer technology to efficiently aid us, we must consider the kind of designing we’re performing. After all, someone has to tell the computer what to do. How you design a road isn’t the same as designing a bridge. Designing a house isn’t the same as designing an automobile. It’s these differences in the type of designing we do which brings us an overwhelming amount of software applications divided by industry and tasks, targeted for specific design methods.

If categorizing CAD software by tasks, we’d recognize 2D vector (or drafting) applications, 3D modelling applications, animation applications, analysis, GIS server software, etc. If categorizing CAD software by industry, we’d recognize the architectural, engineering, construction and manufacturing industries, among others. And if you take the manufacturing industry alone, think of all the different things that could be manufactured and the specialized software that may exist because of the differences between these things. Further, not all software is tuned for just one industry or one task. Often, many tasks are utilized within an industry, or many industries rely on one or two specific tasks.

This plethora of “CAD” can be a good thing as well as a bad thing. The Good? CAD technology can be harnessed and tuned to do so many different things; affording us a quick way to build something, a way to communicate a complicated design, a way to determine whether or not something is safe or a way of proving that an idea will work in the real world, and of course managing how these ideas change along the way. The Bad?


People have been known to bastardize the acronym in ways such as, “I need someone to CAD this up.” or “Yeah, I do CAD.” We’re placing too much meaning on the acronym and it’s leading to too much confusion. And rightfully so! It’s easier to say “CAD” than it is to describe what finite element analysis is in the context of parametric solid modelling in the manufacturing industry. It’s easier to say “CAD” than it is to describe what grading is in the context of pattern making for the fashion industry. It’s easier to say “CAD” than it is to describe a graphics pipeline in the context of rendering for the animation industry. And really, by saying “CAD”, it is actually describing these things correctly; just very generally.

So… not so much a problem with the technology itself; more to do with humans, right?

Right. We all have this little switch in our head that flicks off the moment we become disinterested in the information we’re receiving, and it causes our ears to work less with our mind. (Here’s where I thank you if you’re still following me.) So I’ve learned that I have to tune the way I communicate what I do to the ears that are listening. The way I describe what I do to my mother isn’t going to sound the same as how I describe my craft in a job interview. And on the flip side, from an interviewer’s point of view; just because I may be an expert in 2D drafting, doesn’t necessarily mean I’d be hired as a Render Wrangler, but both applicants may be CAD Technologists.

In other words, a certain type of attention needs to be paid to the way CAD is communicated because it’s capable of being received in so many different ways; its capable of meaning so many different things. I believe the same level of attention needs to be paid within the Linux community.

What’s the context?
What is being performed?
For who?

The more effort placed in communicating precisely what form of CAD technology is being done, the greater chance there is for the Linux community to do what they do best, hopefully leading to a true suite of CAD software available on Linux.

Installing Bitwig on the openSUSE Linux Distribution

I’ve been successfully running Bitwig on openSUSE for about a year now. I have been able to successfully install upgrades for Bitwig, and have even switched from openSUSE 13.2 to openSUSE Tumbleweed successfully. Frankly, I am downright amazed by the fact that this is all working.

Bitwig is arguably a game-changer as far as digital audio workstation (DAW) software goes, and impressively, it’s available for Linux. Ubuntu Linux, that is.

So… if it is only released for the Debian-based Ubuntu Linux distribution… how was I able to install it on the RPM-based openSUSE Linux distribution?

Meet Joey Hess, and figure out how to buy him a beer. He authored the Perl script called alien which converts software packages (like a .deb package to an .rpm package!). Following me? Ensure it’s installed on your machine.

Head to Bitwig’s website and download the demo for the Ubuntu platform.

Open up your terminal and get cracking!

Switch to the root user and enter your password:


Run the following to convert the Debian-based software package to an RPM-based software package which openSUSE can work with:

alien -r bitwig-studio-1.x.x.deb

Depending on your machine, it may take a while. Perhaps look up Brian Bollman in the mean time. He offers a plethora of video tutorials which will get you up to speed with Bitwig quickly and confidently, regardless of your experience with digital audio workstations or audio in general.

When alien is done, you’ll see something like:

bitwig-studio-1.x.x-x.x86_64.rpm generated 

With the .rpm generated, we can check the dependencies of the package by running the following:

rpm -i --test bitwig-studio-1.x.x-x.x86_64.rpm

Now, the following is going to depend on what you already have installed on your machine. The machine I am testing on is set up in a fairly bare-bones manner, so I anticipate that the majority of people will experience the same:

error: Failed dependencies: is needed by bitwig-studio-1.x.x-x.x86_64 is needed by bitwig-studio-1.x.x-x.x86_64 is needed by bitwig-studio-1.x.x-x.x86_64 is needed by bitwig-studio-1.x.x-x.x86_64 is needed by bitwig-studio-1.x.x-x.x86_64 is needed by bitwig-studio-1.x.x-x.x86_64 is needed by bitwig-studio-1.x.x-x.x86_64 is needed by bitwig-studio-1.x.x-x.x86_64 is needed by bitwig-studio-1.x.x-x.x86_64 is needed by bitwig-studio-1.x.x-x.x86_64

This essentially means… for the Bitwig .rpm to install and work correctly, it’s going to depend on the above packages. So, open your YaST and look up these packages. Try searching for libavcodec, libavformat and libbsd. It’s been confirmed that they aren’t there, but maybe you’ll learn something in the process of searching.

Here’s what I found:




With a few basic searches, I learn that libavcodec and libavformat are part of the FFmpeg library, and it looks like openSUSE has a few libavcodec and libavformat packages installed, though not the same ones that Ubuntu uses which Bitwig expects. Another thing I notice is that the failed dependency error we received earlier didn’t explicitly name the package as we’d expect to see in YaST. It looks as though where we are told we require, when we actually need to look for a package that is named libavcodec53. Lastly, it looks like the libbsd0 package is available in our standard openSUSE repositories, so taking care of this dependency is as easy as checking the box and installing. So go ahead and do that while YaST is open… or close YaST and be explicit in your terminal:

zypper install libbsd0

Now, because I’m not interested in hosting Linux packages, and neither do I want to encourage people to blindly download and install packages from a source they’re not 100% familiar with (including my website), this is where I tell you to spread your wings and fly. Your homework is to find the libavcodec53, libavcodec54, libavformat53 and libavformat54 packages and ensure they are manually and properly installed on your machine.

After completing your homework, run:

rpm -i bitwig-studio-1.x.x-x.x86_64.rpm

And revel in the typing of your final command:


Voila!! Bitwig will load, step you through the EULA and prompt you to install any content packages, if you’re interested.


Did you experience problems finding and installing the libavcodec53, libavcodec54, libavformat53 and libavformat54 packages? No biggie. As a last resort, you could simply forget about ’em and force Bitwig to install anyways… Not recommended, but on a test machine I was able to successfully run Bitwig even without these dependencies. There are likely to be features of Bitwig which fail to work, but I wasn’t able to find them.

Run the following:

rpm -Uvh bitwig-studio-1.x.x-x.x86_64.rpm --nodeps



Merry beat-making!!

© 2017 Drew Merryman

Theme by Anders NorenUp ↑