Using Cygwin and making it behave more like a Package Manager

Using the possibilities of the next to nothing alternative

Sometimes you’re stuck at a Windows box, and you long for all those trusty, handy Unix/Linux tools.
Then it is good to know that you can install Cygwin, as I’m sure most developers have heard of.

Simply put, it is a “near POSIX” standard “Unix like” environment for MS Windows® that let’s you install your Korn shell or ZSH for that matter, and pretend you’re using a decent computer operating system.

And, quoting the site:

  • a DLL (cygwin1.dll) which provides substantial POSIX API functionality.

Anyway. I haven’t been using it much, so this “tip” might turn up to be old news for many, but there will always be new beginners, right?

The point of this tip is to inform you that the file you download from Cygwin’s web site actually takes command-line arguments worth knowing about.

According to their site they claim that each time you want to add or remove program packages to the Cygwin installation, you need to download the install file anew and make the desired changes to your installation.

This is something that has annoyed me, after being used to installing pre-built software with a decent Package Manager like dpkg and it’s front-ends or RPM tools.

A Google Search away (“Duck Duck Go search”, Actually), I found a list of handy cmd-line options to use with the downloaded .exe setup file.

One thing should be mentioned though: The installer, as any other piece of software tends to change over time.
I suspect this is why Cygwin thinks it is best to always use the latest version of their installer, and being a software developer myself I do agree.

So, the first time you install Cygwin using the installer (this is the 64-bit version) make sure to install the “curl” and the “wget” tools. Then you can easily make a .bat file to download the latest version to the directory of choice before running it with the command line parameters described.

Here is a descriptive list over command line arguments to the .exe installer.
If you’re on a machine with no administration rights, you could use the –no-admin switch as an example.

Command Line Options:
 -D --download                     Download from internet
 -L --local-install                Install from local directory
 -s --site                         Download site
 -O --only-site                    Ignore all sites except for -s
 -R --root                         Root installation directory
 -x --remove-packages              Specify packages to uninstall
 -c --remove-categories            Specify categories to uninstall
 -P --packages                     Specify packages to install
 -C --categories                   Specify entire categories to install
 -p --proxy                        HTTP/FTP proxy (host:port)
 -a --arch                         architecture to install (x86_64 or x86)
 -q --quiet-mode                   Unattended setup mode
 -M --package-manager              Semi-attended chooser-only mode
 -B --no-admin                     Do not check for and enforce running as
                                   Administrator
 -h --help                         print help
 -l --local-package-dir            Local package directory
 -r --no-replaceonreboot           Disable replacing in-use files on next
                                   reboot.
 -X --no-verify                    Don't verify setup.ini signatures
 -n --no-shortcuts                 Disable creation of desktop and start menu
                                   shortcuts
 -N --no-startmenu                 Disable creation of start menu shortcut
 -d --no-desktop                   Disable creation of desktop shortcut
 -K --pubkey                       URL of extra public key file (gpg format)
 -S --sexpr-pubkey                 Extra public key in s-expr format
 -u --untrusted-keys               Use untrusted keys from last-extrakeys
 -U --keep-untrusted-keys          Use untrusted keys and retain all
 -g --upgrade-also                 also upgrade installed packages
 -o --delete-orphans               remove orphaned packages
 -A --disable-buggy-antivirus      Disable known or suspected buggy anti virus
                                   software packages during execution.

Use Cygwins abilities as a Package Manager with Cygcheck

In fact, the cygcheck.exe program accompanying every installation makes Cygwin behave more like systems such as dpkg (apt-get) or RPM (Yum / Zypper)

Some common tasks using cygcheck:

The -c option checks the version and status of installed Cygwin packages. If you specify one or more package names, cygcheck will limit its output to those packages, or with no 
arguments it lists all packages.

$ cygcheck -c
Cygwin Package Information
Package             Version         Status

alternatives        1.3.30c-10      OK
autoconf            13-1            OK
autoconf2.1         2.13-12         OK
autoconf2.5         2.69-2          OK
...

If you list one or more programs on the command line with -s, cygcheck will diagnose the 
runtime environment of that program or programs, providing the names of DLL files of which 
the program depends.

$ cygcheck -s vim
Found: D:\cygwin64\bin\vim.exe
Found: D:\cygwin64\bin\vim.exe
D:\cygwin64\bin\vim.exe
D:\cygwin64\bin\cygwin1.dll
C:\Windows\system32\KERNEL32.dll
C:\Windows\system32\api-ms-win-core-rtlsupport-l1-2-0.dll
C:\Windows\system32\ntdll.dll
C:\Windows\system32\KERNELBASE.dll
C:\Windows\system32\api-ms-win-core-apiquery-l1-1-0.dll
C:\Windows\system32\api-ms-win-core-processthreads-l1-1-2.dll
...

Searching all packages for a specific file:

$ cygcheck -p 'cygintl-2\.dll'

Found 1 matches for 'cygintl-2\.dll'.
libintl2-0.12.1-3 GNU Internationalization runtime library

$ cygcheck -p 'libexpat.*\.a'
Found 2 matches for 'libexpat.*\.a'.
expat-1.95.7-1 XML parser library written in C
expat-1.95.8-1 XML parser library written in C.

Here is a more complete list of alternatives:

At least one command option or a PROGRAM is required, as shown above.
-c, --check-setup show installed version of PACKAGE and verify integrity 
(or for all installed packages if none specified)
-d, --dump-only just list packages, do not verify (with -c)
-s, --sysinfo produce diagnostic system information (implies -c -d)
-r, --registry also scan registry for Cygwin settings (with -s)
-k, --keycheck perform a keyboard check session (must be run from a
 plain console only, not from a pty/rxvt/xterm)
-f, --find-package find the package to which FILE belongs
-l, --list-package list contents of PACKAGE (or all packages if none given)
-p, --package-query search for REGEXP in the entire cygwin.com package

Repository (requires internet connectivity)

Search for software:
Note: -c, -f, and -l only report on packages that are currently installed. To search all 
official Cygwin packages use -p instead. The -p REGEXP matches package names, descriptions, and names of files/paths within all packages.
--delete-orphaned-installation-keys

Delete installation keys of old, now unused
installations from the registry. Requires the right to change the registry.
--enable-unique-object-names Cygwin-DLL
--disable-unique-object-names Cygwin-DLL
--show-unique-object-names Cygwin-DLL

Enable, disable, or show the setting of the
\"unique object names\" setting in the Cygwin DLL
given as argument to this option. The DLL path must
be given as valid Windows(!) path.
See the users guide for more information.
If you don't know what this means, don't change it.

-v, --verbose produce more verbose output
-h, --help annotate output with explanatory comments when given
with another command, otherwise print this help
-V, --version print the version of cygcheck and exit
-c, --check-setup show installed version of PACKAGE and verify integrity 
(or for all installed packages if none specified)
-d, --dump-only just list packages, do not verify (with -c)
-s, --sysinfo produce diagnostic system information (implies -c -d)
-r, --registry also scan registry for Cygwin settings (with -s)
-k, --keycheck perform a keyboard check session (must be run from a
 plain console only, not from a pty/rxvt/xterm)
-f, --find-package find the package to which FILE belongs
-l, --list-package list contents of PACKAGE (or all packages if none given)
-p, --package-query search for REGEXP in the entire cygwin.com package

Repository (requires internet connectivity)

Search for software:
Note: -c, -f, and -l only report on packages that are currently installed. To search all 
official Cygwin packages use -p instead. The -p REGEXP matches package names, descriptions, and names of files/paths within all packages.

--delete-orphaned-installation-keys

Delete installation keys of old, now unused
installations from the registry. Requires the right to change the registry.
--enable-unique-object-names Cygwin-DLL
--disable-unique-object-names Cygwin-DLL
--show-unique-object-names Cygwin-DLL

Enable, disable, or show the setting of the
\"unique object names\" setting in the Cygwin DLL
given as argument to this option. The DLL path must
be given as valid Windows(!) path.
See the users guide for more information.
If you don't know what this means, don't change it.

-v, --verbose produce more verbose output
-h, --help annotate output with explanatory comments when given
with another command, otherwise print this help
-V, --version print the version of cygcheck and exit
-c, --check-setup show installed version of PACKAGE and verify integrity 
(or for all installed packages if none specified)
-d, --dump-only just list packages, do not verify (with -c)
-s, --sysinfo produce diagnostic system information (implies -c -d)
-r, --registry also scan registry for Cygwin settings (with -s)
-k, --keycheck perform a keyboard check session (must be run from a
 plain console only, not from a pty/rxvt/xterm)
-f, --find-package find the package to which FILE belongs
-l, --list-package list contents of PACKAGE (or all packages if none given)
-p, --package-query search for REGEXP in the entire cygwin.com package

Repository (requires internet connectivity)

Search for software:
Note: -c, -f, and -l only report on packages that are currently installed. To search all 
official Cygwin packages use -p instead. The -p REGEXP matches package names, descriptions, 
and names of files/paths within all packages.

--delete-orphaned-installation-keys

Delete installation keys of old, now unused
installations from the registry. 
Requires the right to change the registry.

--enable-unique-object-names Cygwin-DLL
--disable-unique-object-names Cygwin-DLL
--show-unique-object-names Cygwin-DLL

Enable, disable, or show the setting of the
\"unique object names\" setting in the Cygwin DLL
given as argument to this option. The DLL path must
be given as valid Windows(!) path.
See the users guide for more information.
If you don't know what this means, don't change it.

-v, --verbose produce more verbose output
-h, --help annotate output with explanatory comments when given
with another command, otherwise print this help
-V, --version print the version of cygcheck and exit

For those of you that want more in-depth information on using Cygwin for programming or just as a way to use Windows more like a decent OS, here is a direct link to the Cygwin PDF User Guide.

Until next time, happy Cygwin hacking…

Chris

Advertisements

The MadMan is back.

 

More Madness

 

When I read my last post I must say I really must have had a boost of optimism and god-like energy over me back then, eh?

Books to be written, 3D art to be made, Allegorithmic products to review, Python programming, Blenders Game Engine, Modo stuff.. Phew!

Well. I have actually done something. I won’t present anything here today, but some things stayed and some things did not.

I’m still into writing the book series, that’s one. (But it will be a bit postponed)

What I’m still into is off course Blender! It has gotten a LOT of updates the last seven months.
I’m still willing to create a tutorial series on the BGE (Blender Game Engine) which we all know is programmed with Python. Actually A LOT of Blender is programmed with Python now. It’s just the low level bits and pieces left in hard core C / C++ (?asm?).

I was planning on starting on this in a couple of weeks and off course post it on this blog, if it is any interest for it.

As some of you know, I’m a software developer, mainly using C# and C++, but I’ve also been using some Python through the years.

Lately I’ve been keen on learning to program GAMES. What kind of games? No idea. Just games. Fun programs that can include gaming elements, like “gamification” or something.

So I’ve downloaded the latest Unreal 4 Engine, but that was totally overkill for me. I need to know the basics first.

Even Unity seems a bit cryptic to me sometimes. But that’s mostly because of the horrific implementation of C# / .Net they’ve chosen. Goes against all good usage patterns.

So now I’m going to test out Blenders Game Engine, to see if I can make any sense of that.

Along the way will be some tutorials and some Python code for those interested.

 

Also I’ll look into some rendering with Cycles, Thea Render and LuxRender…

 

Until next time…

Blender Logo

 

 

 

 

 

Luxology / The Foundry Modo 701 now available for Linux

Modo Logo

Ok, so I was a little bit intimidated when I first heard about the Luxology merger with The Foudry. I was thinking in terms of Autodesk buying every small to medium Graphics Company and whirling it all up into one big package (or three).
But then I read about the fact that they had already thought about joining forces for some time and that they actually knew each other long before the fusion took place. Than it’s a whole other story the way I see things.
One of the best things that came rather instantly after the fusion was a Linux Edition of Modo 701! I could barely believe my eyes when I first read about this and how fast they produced a well functioning beta.
Now I’ve installed Modo 701 on both my mediocre laptop computer and on my main workhorse, both running openSuse 12.3 and it works beautifully.
If you’d like to try Modo on Linux, they have a free 15 day trial that you can download from, mark my words, The Foundry’s homepage.
If you want to get a little bit more out of the demo, I’d go for the $25 package that includes the program itself (for 30 days I think), lots of contents and a lot of tutorial videos of extremely high quality.

I’ve been waiting to upgrade my Modo 401 commercial license for some time now, because I’ve not really felt that the updates in the previous editions have been worth it from my point of view.

Don’t get me wrong, the updates have been substantial, but not the updates in the parts of the program I mainly use for my modeling work, besides I’ve been using Blender for pretty much everything.
But this is my reason to upgrade to 701! No doubt about it.

I encourage everyone to try out the new edition of this incredible 3D application, that has in relatively short time went from being a “modeling only” tool to a complete 3D Production Pipeline product, including physics, animation, very nice rendering and other cool stuff. Now supported on both Windows, OS X and Linux!

Here is an image of Modo 701 running on my openSuse KDE Desktop:

Modo On Suse 12.3

 

Here’s a video showing some of Modo’s modeling capabilities:

I’ve joined LinkedIn! Please help me build a professional comp. sci / CGI network!

Hi there, dear readers of this blog!

I’ve recently joined LinkedIn, and I’m trying to build a network consisting of the best in the computer science, software engineering and CG industries.

I’ve gotten a couple of big fish allready, but my network is still super-tiny!

I’m hoping to use this network for both socializing and for sharing technical issues and to present new thoughts and ideas for future products.

I believe a network fusion of these three industries will be an important avenue for anyone interested in fronting their work on the public arena, absolutely free.

So please join and invite anyone you think should be in there. Anybody with a passion and some talent in any of these three fields are very welcome to join!

So please check my profile and join my network over at:

http://www.linkedin.com/pub/chris-sederqvist/57/713/103/en
Vis Chris Sederqvist sin LinkedIn-profilVis profilen til Chris Sederqvist

Some GNU Emacs hotkeys for ya!

I’ve collected some of the Emacs shortcuts / keyboard hotkeys I find myself using from time to time! 😉

Please visit:
GNU Emacs for Unix/Linux and precompiled Windows binaries
Aquamacs for OS X (I prefer this over http://emacsformacosx.com/ as it is better integrated)

To get a hold of this incredible “editor”. The reasons I write “editor” is because calling Emacs an editor is something of an understatement! It’s more like a little operating system or at least an intelligent Lisp world!

For you guys never bothered to learn Emacs: You don’t know what you’re missing out on!

Ok, here are the hotkeys (feel free to add some as a comment, and I’ll add them to the list!):

General commands:

c-x c-f = new buffer (file)
c-x c-c = quit
c-g = cancel input command
c-v next page
m-v previous page
c-l toggle cursor point up/down/center (pgUp/pgDown)

Navigation in text:

c-p = previous line
c-n = next line
c-b = backward
c-f = forward
m-f = move forward Word-by-word
c-a = beginning of the line
c-e = end of the line
m-a = beginning of the sentence
m-e = end of the sentence

m-< = beginning of the text
m-> = end of the text

Editing Text

Killing text:
(text goes to a safety buffer like in Cut)

m-backspace = kill word before cursor
m-d = kill word after cursor
m-k = kill words until end of sentence (.)
c-k = kill words until end of line
c-space = mark start of delete (move to end of text to delete)
c-w = delete text from mark until here
c-y = yank (paste) text from last kill buffer
m-y = cycle through the kill buffer entries

c-x u = undo
c-_ = undo too!

Search for text:
c-s = search forward in buffer from cursor
c-r = search backwards in buffer from cursor

for a non-interactive search press enter before search word.

Search and replace:
m-x replace-string + enter
<word to replace>
<word to replace with>

Managing buffers and windows

c-x c-b = display buffer list
c-x o = switch to buffer list, select with arrows and enter
c-x b = start typing the name of the buffer to choose (tab-complete)

c-x 1 = one buffer in window
c-x 2 = two buffers in window horizontal
c-x 3 = two buffers in window vertical

c-x 0 = close active buffer (file)

m-x recover-file = recover file after crash (open original file, not auto-backup)

c-u 90 c-x f = set margin width to 90 chars

c-u 0 c-l = move current line to top of buffer window
c-x o = move cursor to “other” buffer window
c-m-v = scroll through other window (keeping cursor in main window)

m-x make-frame = create an independent Emacs frame

esc esc esc = get out of recursive editing level mode

c-h f <function> = help on <function>
c-h k <command> = help on <command>
c-h a <keyword> = search for <keyword> in help
c-h i m Emacs = read Emacs manual using info

That is something to get you started!

Until next time, happy editing!

Chris

Useful search commands in GNU/Linux

Finding commands and stuff in Linux:

which <command>
Lists the first occurrence of the <command>

whereis <command>
Lists all occurrences of <command>

locate <command>
Lists all that contains the word

apropos <command>
Search man page descriptions for <*command*>

whatis <command>
Search man pages description for <command>

(sudo) find / -name <command>
Searches entire filesystem for <command>

Debian / Ubuntu based distros specific:

apt-cache search <command>
Lists packages containing <command> from package repositories

dpkg-query -S <command>
Searches the list of installed packages for <command>

dpkg -L <command>
Lists all files installed by <package>

FYI only 😉

More Lightwave praise… I’m not kidding, this is going to be Good!

I’ve ben praising Newtek and their 3D Suite “Lightwave” on a couple of occasions. This time I want to point the ones in doubt onto a track of future optimism and, hopefully, a shitload of fun.

The upcoming Lightwave Core, scheduled for Q4 2010, will incorporate seamless connectivity against the most promising standards out there, and will eventually include support for components mentioned in this text.

I’ve received questions by artists, or say, budding artists, that is in “serious” doubt about the big changes between the current (open beta) 9.6.1 64-bits Mac/Win release that uses the separation between the Modeler application (modeling) and Layout (everything else). Core will by default merge the different tasks into one application by dividing the UI into “workspaces”, without the need of “The Hub” for synchronizing data layers and plenty of other stuff. No more F12 for switching apps.

BUT, you can if you insist use the same workflow as in LW 9.x, this is a matter of preference settings. So no worries, your training won’t be “outdated” in a year.

The following workspaces will be available:

• Model

• Surface

• Setup

• Animate

• Render

• Composite

In addition to the above, the following items are also presented as aspects of the Animate workspace:

• Creation Tools

• Deformation (Subset)

• Transforms

• Dynamics (Collision Detection, Etc.)

• Constraints

• Scripting

Rendering:

LightWave 3D with CORE technology offers two different flavors of rendering: Viewport Preview Rendering (VPR) and CORE rendering.

VPR

The CORE viewport rendering engine allows for direct interaction with elements in the rendering, from the rendered view. Any viewport can switch to VPR, and even portions of viewports can be specified for viewport rendering.

VPR is essentially the CORE rendering engine operating in an iterative, interactive fashion. Whatever CORE can render, VPR can also render. The results will be virtually identical, with some exceptions, as VPR does prioritize to deliver on speed and interactivity.

As VPR is a complete version of the CORE rendering engine, not a subset, it can render global illumination interactively, however, with less interactivity due to the amount of performance required to produce GI renderings. Fortunately, the CORE rendering engine is fully multithreaded, another benefit leveraged by VPR.

The more processors you have available to you, the faster VPR will render.

Now, to the juicy stuff:

The Composite workspace in CORE is capable of image manipulation and compositing via a selection of internal tools, as well as available third-party plug-ins that support the OpenFX standard (OFX). OFX is an open source plug-in standard for developing 2D digital visual effects.

The Foundry (http://www.thefoundry.co.uk/), Re:Vision Effects (http://revisionfx.com/) and GenArts (http://www.genarts.com/product/sapphire/ofx/fxlist) and several other prolific plug-in vendors offer a variety of image processing and manipulation plug-ins in OFX format.

Core uses the industry standard file format Collada for scenes, as it handles cross pipelines, and the Collada format offers all the structures a combined application needs.

The optional Modifier Stack (Lightwave finally has memory!)

The CORE modifier stack is an attribute of each mesh item. Every CORE mesh item has a modifier stack behind it. The modifier stack is a living record of all of the geometric operations applied to a specific object. Operators in the stack can be rearranged (doing so can produce notably different results), enabled, frozen (so as to be un-editable or “flattened”), muted and deleted on command.

Scripting:
Every expression in Core are Python based.

Industry-standard Python forms the basis of the scripting in CORE (currently version 2.6). The Python implementation is layered into CORE via SWIG. SWIG is a language-interfacing layer that allows the CORE SDK to be accessed through languages other than the factory Python language that ships with CORE.

Now to the really Juicy stuff:

CORE integrates the popular Bullet Physics Library (http://bulletphysics.org/wordpress/)

into the CORE unified dynamics solver. Bullet supports both rigid body and soft body collisions. Bullet plans to offer OpenCL support in the future, which fits with the development of CORE.

The Bullet Physics Library offers the following benefits:

Open source C++ code under Zlib license and free for any commercial use on all platforms including PLAYSTATION 3, XBox 360, Wii, PC, Linux, Mac OSX and iPhone.

• Discrete and continuous collision detection, including ray and convex sweep test. Collision shapes include concave and convex meshes and all basic primitives.

• Fast and stable rigid body dynamics constraint solver, vehicle dynamics, character controller and slider, hinge, generic six degrees of freedom and cone-twist constraint for rag dolls.

• Soft Body dynamics for cloth, rope and deformable volumes with two-way interaction with rigid bodies, including constraint support.

In CORE, you can use dynamics for simulation, modeling, or interaction with scene items. Animation created in CORE can be exported into LightWave Layout (and other applications) via the MDD file format.

Modeling with dynamics example: Consider an alley scene with crates. You can choose to place the crates (and other debris) by hand, or you can choose to use the dynamics tools to help streamline the process.

TRUE MULTI PLATFORM SUPPORT

CORE is written in C++, and designed as an object-oriented application. CORE uses several different technologies and libraries to deliver state-of-the-art performance. For the user interface, CORE uses the Qt libraries from Nokia. The Qt environment is fast becoming a standard throughout the software development industry. It is available on all platforms, allowing for a single codebase development process, which is very important when you have more than one host operating system to support. By using Qt, Newtek can offer LightWave CORE for Linux as well as Windows X and Mac OS.

Lightwave is capable of every stage of production, from modeling to physics and animation. It’s priced at a fragment of other products that can deliver the same feature set. This makes it a perfect mach for wallets, individuals and small to medium studios.

Did I mention the 999 free network render nodes?

Need I need to say more?

Go get it!


Why care about Open Source Software? Isn’t that for “geeks only”?

Why care about Open Source Software? Isn’t that for “geeks only”?

Well, no. And even if YOU don’t see the point, or have the knowledge needed to examine source code, rest assured, somebody does. Both the good and the bad guys… Do YOU want your personal information broadcast on the net without your knowledge?

What’s nice to know, is that there are thousands of extremely talented developers, working around the clock, around the globe to counterattack the fascist software regime of todays computer world.

This might sound strange, but many of those does this without even getting paid (as in money).

I’m not the person that generally sponsors anything or anyone. There are two exceptions when it comes to foundations or organizations, namely The Salvation Army (they do lots of great stuff for many good people) and The Free Software Foundation, FSF.

What does FSF do for me? Well, they are part of a critical scenario, that I believe will come upon us in a not so distant future. And in this scenario they, or “we”, are the enemy, but not the bad guys.

I want to be able to inspect each tiny little part of the machinery that houses all my documents, pictures, personal information, my on-line communication, I think you get the picture.

Without sounding paranoid, I’m pretty sure that the US government, as well as many others, supports a large operating system and software company, located somewhere around Redmond.
The fact that their products are installed on roughly 93% of all personal computers might be a reason for this.
It then comes as no surprise, that this all too common operating system, actually stores personal information in the most peculiar places, and that the code that runs it, is closed source, binary files.

It is able to do whatever the developers want it to do, and do so without respect of the users that runs it. Anything can happen behind the scenes.
Add to that poor implementations of both file and user account security mechanisms, and you’ve got yourself a real deal!

Your personal computer could be a broadcaster of personal information. Then comes viruses, spyware, nagware and bluescreens with memorydumps.

I don’t want these developers to do what they want with my data. I don’t believe in closed source software.
I don’t like the scenario, where all computer users, indirectly, lives under the laws of a strange sounding dictator software company. I mean, there are reasons why the guys that sits on REALLY classified information uses only open source software…

So, please, head over to The Free Software Foundation, and give a donation. It might be worth it.

New Maya 2010 Debian/Ubuntu based Install Guide?

I’ll try not to get to get off-beat or totally far-out, but I’m in the creative writer mode. You’re hereby WARNED.

I read a comment at my Madman blog today, that made me feel all warm and cozy on the inside.

That might be slight an exaggeration, but, anyway it was nice to get positive feedback. It went something like this:
(Hope you don’t sue me for quoting you, PaulN!)

“We really appreciate your helpful guides for getting Maya to work with Ubuntu around here – any chance you can document how you got 2010 working? We are quite stumped by this version. Specifically Autodesk seem to have invented the most ass-backwards license setup _ever_ for this release.”

Second, don’t expect this post to include a new guide for Maya 2010, this time + licensing tips for the Version 2010, that’s part of the Autodesk Entertainment Bundle 2010, I use This! that includes:

Maya 2010
Mudbox 2010 *MS/Mac OS 10
Softimage 2010 *MS
3DS Max 2010 *MS
MotionBuilder 2010 *MS

+ a bonus application. I got “Sketch book Pro 2010” without cost, that runs on my Mac Book Pro. No Linux guide on this one either, as it is a Intel Mac + OS 10 and MS  only app. I don’t care much about virtualization or emulation of operating systems, so for me it’s “native or I don’t”…

Moving on… The thing I was topic-flamer for, this post. I know there are many out there that would go far to get a real, no fuzz .pdf to print and follow with pictures and all, while GETTING MAYA TO RUN on their GNU/Linux machine calculating and crunching ones and zeros with a Q7 64-bits QuadCore CPU, mounted on a motherboard with 3K*Mhz FSB, dual CPU slots, so you’ve decided to buy two, giving you 8 Cores for lightening fast bit-crunching while rendering  the latest reel. Topped with the latest NVIDIA® Quadro® Plex 2200 S4 dedicated visual computing system (VCS) humming in the closet.

The thing is, Maya 2010 isn’t 1 application anymore, it’s three separate packages, semi-crossed and stress-developed (by underpaid programmers, working in polluted office environments) to work seamlessly.

So, naturally, the conversion from .rpm, involves some knowledge about how to read the package descriptors in the .rpm’s, and possibly creating a specialized script for creating the .deb installers using Alien as the back-end, so that they wil place and link the package correctly. Things might seem to work until you try rendering in MR with a new option, causing the application to SEGFAULT.

I think I know why Autodesk decided to merge Maya (Unlimited) Toxic, and Matchmover into one package:

It’s not the correct use of the words “Complete” or the word “Unlimited”, as a way to describe escalating possibilities between two products.

Here, it is used to “Identify feature levels” with words, cleverly hatched out from the sub-department in R&D, set out to form a naming convention for their flagship line of (hijacked) products…

If a thing is “complete”, it has (according to a trustworthy dictionary/thesaurus) the following qualities:

“A state of being, often used as descriptors of either a psychological achievement as in: “Fulfilled”, meaning there is nothing more to strive for. Products, where it’s meaning often is synonymous with “Accomplished” and indicating from the stem word “complete” that concludes something, there is nothing more to add.”

I suspect this naming convention to be the problem here.

Boss says: “Hey!, I’ve looked up the word “complete” and “unlimited” in a thesaurus this weekend. We need to re-brand, and we need to do it fast!!
The words actually summons the same in all but the slightest context digressions! The word “complete” means, like, “nothing more to add”, “finito”, nothing more to add.
But we’ve made an “Unlimited” version as well as “Complete”, and it adds stuff. A lot!
This is insane! I’ll fire the 200 people employed with marketing, and the rest of you: think fast! We need ONE version of Maya, and this time, we’ll prefer the safe way. Let’s just call it “Maya”, plus maybe, hey, 2010 is coming up right? Let’s call it Maya 2010, and release it in 2009! That’s more like it! Nobody is going to make us look like illiterate fools!

The thing is, there is actually, besides from some statically linked lib files that needs to be updated to newer versions, not much keeping you from installing the Binary, closed source software, using a package scheme converter like Alien.

These days, the developers of new software rides on the widespread wave that have done the switch to either a new version of the GNU C[your language here] Compiler suite, a different multi-threading framework, or they’ve jumped on the “Let’s do OpenCL and Cuda development” wagon. Possibly a “Nokia/QT path” for cross platform development as well…

This doesn’t directly touch the users of the software, because, as in the case with Autodesk, the software is delivered in installable packages, that places statically linked lib files along with the binary ones (so they know that the client will be using the right version when upgrading their operating systems, something that makes relying on native language and library support impossible.

But, these are just packed with different package format schemes, and those are not binary. The content is.

If you find a way to extract the files from a .rpm package and then into a .deb package that in turn does the same thing, placing files where they belong, and creating different links, etc (also known as “Installing”). I wouldn’t consider myself a deep level hacker to make use of tools that are readily available for these tasks. But, then there is a problem. You need to do all this “by hand”!
A roll-your-own-spliff software installation, and it needs to be punced in as “commands” in a shell environment!

Hmm… (scratches head). “Lets search Google!”

What I’m trying to say is that with a LPI level 1 GNU/Linux knowledge under your belt, you should be able to decipher this task at hand.
BUT.

If you try to follow exact step-by-step instructions, without having a clue what or why you’re issuing these cryptic looking commands, you’re most likely to fail. There is no such thing as an identical system. You might get a kernel panic, after you ruthlessly renamed or moved an actual system-file, (“Hey, the name was ALMOST the same!”) as in the guide! But the file wasn’t statically linked, but the actual code containing instructions for reading the instructions to operate your graphics card.

So, a Guide, could mean success or failure, or the difference between a stable system and a kernel panic…
I must say that most of the problems I’ve seen reported and tried to answer on this post, is a result from, and belongs to the mentioned kind of “misbehavior” against your darling computer.

So, if I’m going to write a complete hands-on guide for installing Maya 2010, it will take plenty of time and effort, not to mention installing the thing on different versions of GNU/Linux distributions.
So, I will not make a guide for free, covering the ins and outs of this process.

There are three applications involved, and a slight error in one install, might corrupt another.

BUT, If there are enough people out there willing to pay me $5 each for doing this, I’d consider doing it. Then it would be a labor, and the quality of the guide would be accordingly.

So. If that is something you would like to purchase, please send me a Gmail containing the words MAYA PDF as subject in the message. Then, I’ll get to it.

Madman

Network Licensing Maya 2010 on the Linux client

I recently received a question about licensing via a network server running Windows on the network.

I’m definitely no licensing expert, but this MIGHT give you a push in the right direction. (Or get you totally far out) 😉

So, the guy that contacted me had a problem regarding the license utility not showing up when starting Maya.

Autodesk support had turned him down, as the platform (or rather the distribution) used was not “supported” by the giant.
This should not be a barrier, and I seriously think that Autodesk should be able to offer SOME sort of support to paying network licensees that pay $$$ an mas for their overpriced products, no matter what Linux distribution they choose to use. (hopeless).

So here it goes:

Well, the license utility usually pops up on the first launch of Maya.

The error:

Tried Maya Unlimited 2010 (657B1 2010.0.0.F), error 41

The F (657B1 2010.0.0.F) in the error stands for floating license I think.
The FlexLM errorcode 41 stands for “Feature was never checked out”

You obviously should have access to the license file and that this is registered with AD and in order, as the
licensing works on the Windows clients. This is done using the LMTOOLS on the
Windows licensing server.
So, on the client side:

First find out where the lmutil executable is installed on your local machine.
I think what you need to do is to first locate the licensing server with:

./lmutil lmhostid -hostname

This should show the servername.

Then you need the License server ID, to get this:

./lmutil lmhostid

The twelve-character host ID should show up.

So with this information you should be able to get the same interface to licensing
on the Linux box with the license tool “lmutil” located somewhere in /opt/Autodesk/Adlm/ path.
(if this is where you installed).

Do a search for the file if you dont find it.
This is the executable license utility that looks the same on all platforms.

But, if you cant get by with this, I must wave the white flag, as I’m no licensing expert!
😉