Skip to content

A desktop-wide extension service used by elementary OS

License

Notifications You must be signed in to change notification settings

isabella232/contractor

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contractor

Building, Testing, and Installation

You'll need the following dependencies:

  • libdbus-1-dev
  • libgee-0.8-dev
  • libglib2.0-dev
  • meson
  • valac

Run meson to configure the build environment and then ninja to build

meson build --prefix=/usr
cd build
ninja

To install, use ninja install

sudo ninja install

Writing Contract Files

elementary Files, Photos and other apps support adding options to the context menu by the way of Contract files.

These Contract files can be made system wide available by adding them to: /usr/share/contractor or for specific users by adding them to: ~/.local/share/contractor

Simple .contract file example:

[Contractor Entry]
Name=Mount
MimeType=application/x-cd-image;application/x-raw-disk-image
Exec=gnome-disk-image-mounter %f
  • Name: Text displayed in the right click context menu.
  • MimeType: Mimetype(s) of files it should be shown for.
  • Exec: Command to execute. More info.

Tips:

  • Use pkexec to ask for root permissions. Example: Exec=pkexec chmod +x %U

Examples

About

A desktop-wide extension service used by elementary OS

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Vala 96.5%
  • Meson 3.5%