Jump to content

Flameshot: Difference between revisions

From Official NixOS Wiki
Phobos (talk | contribs)
m minor change, added extra config line
Phobos (talk | contribs)
m Updated Flameshot Page with a section on Shortcuts
Line 30: Line 30:


== Home Manager ==
== Home Manager ==
You can configure Flameshot settings through Home Manager with the following syntax. Additional settings may be found on the [https://github.com/flameshot-org/flameshot/blob/master/flameshot.example.ini Flameshot] github and adapted into Nix. See documented settings in the [https://nix-community.github.io/home-manager/options.xhtml#opt-services.flameshot.enable Home Manager Appendix - services.flameshot].
You can configure Flameshot settings through Home Manager with the following syntax. Additional settings may be found on the [https://github.com/flameshot-org/flameshot/blob/master/flameshot.example.ini Flameshot] Github and adapted into Nix. See documented settings in the [https://nix-community.github.io/home-manager/options.xhtml#opt-services.flameshot.enable Home Manager Appendix - services.flameshot].
{{File|3=services.flameshot = {
{{File|3=services.flameshot = {
   enable = true;
   enable = true;
Line 48: Line 48:
       # Desktop notifications
       # Desktop notifications
       showDesktopNotification = true;
       showDesktopNotification = true;
      # Notification for cancelled screenshot
      showAbortNotification = false;


       # Color Customization
       # Color Customization
Line 58: Line 60:
       # Stops warnings for using Grim
       # Stops warnings for using Grim
       disabledGrimWarning = true;
       disabledGrimWarning = true;
    };
  };
};|name=/etc/nixos/home.nix|lang=nix}}
== Setting Shortcuts ==
Setting shortcuts is different depending on your Desktop Environment. You can can check Flameshot CLI commands that you can use for shortcuts by running <code>man flameshot</code>.
=== Sway ===
{{File|3=wayland.windowManager.sway = {
  enable = true;
  # Sets modifier to Super Key
  modifier = "Mod4";
  config = {
    keybindings = lib.mkOptionDefault {
    # Manual screenshot GUI that saves to clipboard and closes on selection.
    "${modifier}+Shift+s" = "exec flameshot gui --clipboard --accept-on-select";
    # Takes a screenshot of the screen containing the cursor.
    "${modifier}+Shift+a" = "exec flameshot screen --clipboard";
    # Takes a manual screenshot that shows options after selection.
    "Print" = "exec flameshot gui";
     };
     };
   };
   };
};|name=/etc/nixos/home.nix|lang=nix}}
};|name=/etc/nixos/home.nix|lang=nix}}
[[Category:Applications]]
[[Category:Applications]]

Revision as of 22:43, 31 December 2025

Flameshot is a powerful screenshot and screenshot annotation tool. Flameshot allows the user to take a screenshot and then draw, write text, blur, crop, and otherwise edit screenshots with ease.

Install

For X11 you can install Flameshot by simply adding it to your configuration file.

❄︎ /etc/nixos/configuration.nix
environment.systemPackages = with pkgs; [
  flameshot
];

Install on Wayland

In order to use Flameshot on Wayland you will need to install Grim and configure Flameshot to use it.

Install Grim

❄︎ /etc/nixos/configuration.nix
environment.systemPackages = with pkgs; [
  grim
];

Configure Flameshot

You may do this through Home Manager, or you may configure it manually in ~/.config/flameshot.

❄︎ /etc/nixos/home.nix
services.flameshot = {
  # Also installs/enables flameshot
  enable = true;
  settings = {
    General = {
      useGrimAdapter = true;
      # Stops warnings for using Grim
      disabledGrimWarning = true;
    };
  };
};

Home Manager

You can configure Flameshot settings through Home Manager with the following syntax. Additional settings may be found on the Flameshot Github and adapted into Nix. See documented settings in the Home Manager Appendix - services.flameshot.

❄︎ /etc/nixos/home.nix
services.flameshot = {
  enable = true;
  settings = {
    General = {
        
      # More settings may be found on the Flameshot Github

      # Save Path
      savePath = "/mnt/internal/wintermute/Sync/Screenshots";
      # Tray
      disabledTrayIcon = true;
      # Greeting message   
      showStartupLaunchMessage = false;
      # Default file extension for screenshots (.png by default)
      saveAsFileExtension = ".png";
      # Desktop notifications
      showDesktopNotification = true;
      # Notification for cancelled screenshot
      showAbortNotification = false;

      # Color Customization
      uiColor = "#740096";
      contrastUiColor = "#270032";
      drawColor = "#ff0000";

      # For Wayland (Install Grim seperately)
      useGrimAdapter = true;
      # Stops warnings for using Grim
      disabledGrimWarning = true;
    };
  };
};

Setting Shortcuts

Setting shortcuts is different depending on your Desktop Environment. You can can check Flameshot CLI commands that you can use for shortcuts by running man flameshot.

Sway

❄︎ /etc/nixos/home.nix
wayland.windowManager.sway = {
  enable = true;
  # Sets modifier to Super Key
  modifier = "Mod4";
  config = {
    keybindings = lib.mkOptionDefault {
    # Manual screenshot GUI that saves to clipboard and closes on selection.
    "${modifier}+Shift+s" = "exec flameshot gui --clipboard --accept-on-select";
    # Takes a screenshot of the screen containing the cursor.
    "${modifier}+Shift+a" = "exec flameshot screen --clipboard";
    # Takes a manual screenshot that shows options after selection.
    "Print" = "exec flameshot gui";
    };
  };
};