ANSEL-CLI(1)

πŸ“¦ version 0-unstable-2026-06, in nixos 26.05, nixpkgs unstable

✨ ansel-cli β€” the command line ansel variant ✨

Okay bestie, so this is the manual page for ansel-cli from the ansel-cli(1) manual, and I'm gonna walk you through it like we're texting at 2am. πŸ’–


πŸŽ€ NAME πŸŽ€

ansel-cli β€” literally just a command line ansel variant. That's the vibe. Periodt.


✨ SYNOPSIS ✨

Here's the whole thing, exactly as it goes:

ansel-cli IMG_1234.{RAW,...} [<xmp file>] <output file> [options] [--core <ansel options>]

And the options you can throw in, no cap:

--width <max width>
--height <max height>
--bpp <bpp>
--export_masks <0|1|false|true>
--style <style name>
--style-overwrite
--apply-custom-presets <0|1|false|true>
--verbose
--help
--version

🌸 DESCRIPTION 🌸

So ansel is this digital photography workflow application for Linux, Mac OS X, and several other Unices. Like, a whole icon. It gets explained more in ansel(1) if you want the full lore. πŸ¦‹

And ansel-cli is the command line variant β€” you use it to export images when you already have the raw file and the xmp file that goes with it. Give it the files, it gives you the image. Slay. πŸ’…


πŸ’œ OPTIONS πŸ’œ

You need to supply an input filename and an output filename. Everything else? Optional, bestie. Chef's choice. πŸ“

  • <input file> β€” the name of the input file you want to export. The main character of the operation, honestly.
  • <xmp file> β€” the optional name of an XMP sidecar file holding the history stack data to be applied during export. If you don't give this one, ansel will go searching for an XMP file that belongs to the input file you gave it. It's giving "I'll find it myself, thanks." πŸ”₯
  • <output file> β€” the name of the output file. ansel figures out the export file format from the file extension, iykyk. Also!! You can use all the variables available in ansel's export module right there in the output filename. Cute, right? πŸŽ€
  • --width <max width> β€” optional, and it lets you limit the width of the exported image to that number of pixels. Bounding box teas.
  • --height <max height> β€” same energy, but vertical: optional, and it limits the height of the exported image to that number of pixels.
  • --bpp <bpp> β€” optional parameter that defines the bit depth of the exported image. The allowed values depend on the file format. BUT β€” and I cannot stress this enough β€” currently this option is not yet functional. Not me warning you before you spend an hour debugging 😭. If you actually need to set the bit depth, here's the workaround:
--core --conf plugins/imageio/format/<FORMAT>/bpp=<VALUE>

where FORMAT is the name of the selected output format β€” for example png.

  • --export_masks <0|1|true|false> β€” a flag that says whether the masks used in the image get stored as layers in the exported image (assuming the format supports it, which, not all of them do). Defaults to false.
  • --style <style name> β€” specify the name of a style to be applied during export. Heads up though: if you specify a style, you also have to specify the path to the ansel configuration directory, i.e. --core --configdir ~/.config/ansel. Defaults to no style specified.
  • --style-overwrite β€” the style you specified overwrites the history stack instead of being appended to it. No stacking, just replacement, and she's not sorry. πŸ’€
  • --apply-custom-presets β€” with this you decide whether ansel loads its set of default parameters from data.db and applies them, or just uses the defaults that ship with ansel. Set this flag to false in order to run multiple instances. Multitasking queen behavior. πŸ‘‘
  • --verbose β€” enables verbose output. She's chatty, she's telling you everything, we love her for it.
  • --core <ansel options> β€” every command line parameter that comes after --core gets passed to the ansel core and handled as standard parameters. See ansel(1) for a detailed description of those options. It's the "go ask the bigger sister" of options, fr fr.

πŸ¦‹ SEE ALSO πŸ¦‹


🌈 AUTHORS 🌈

The principal developer of ansel is Johannes Hanika. And the (hopefully) complete list of contributors to the project is:

  • developers:
  • translators:
  • contributors (at least 4 commits):
  • Sub-module rawspeed contributors (at least 1 commit):
  • Sub-module OpenCL contributors (at least 1 commit):
  • Sub-module whereami contributors (at least 1 commit):
  • Sub-module LibRaw contributors (at least 1 commit):
  • Sub-module doxygen-awesome-css contributors (at least 1 commit):

(Yeah, the lists are literally empty in the original β€” I'm not editing that, I'm just the messenger πŸ™ˆπŸ’–)

And all those of you that made previous releases possible β€” that's you, bestie, part of the legacy. 🫢

This man page was written by Richard Levitte <richard@levitte.org>. Additions were made by Tobias Ellinghaus <me@houz.org>.


Copyright (C) 2009-2019 by Authors.

ansel is free software; you can redistribute it and/or modify it under the terms of the GPL v3 or (at your option) any later version. Like, actually free, not "free" with a catch. Iconic. ⭐


Okay so quick recap before you go: exact filenames, exact flags, exact defaults β€” I kept every single one, so don't come for me if your --bpp doesn't work. It's documented as not functional. That's canon. 😭

That's the whole page, done and dusted, mwah πŸ’‹ β€” this was darktable 3.0, dated 2019-11-27, and yes, that footer is the same page, batch, and date as the ANSEL-CLI(1) original. Slay and goodnight. 🌸✨

πŸ“¦ where this page comes from