diff --git a/lisp/fg42/editor.el b/lisp/fg42/editor.el index e3eb95f..6a3ddcd 100644 --- a/lisp/fg42/editor.el +++ b/lisp/fg42/editor.el @@ -29,18 +29,12 @@ (require 'fg42/langs/verilog) (require 'fg42/langs/python) (require 'fg42/langs/elisp) + (require 'fg42/langs/nix) (require 'fg42/wm)) - (require 'server) (require 'fg42/modeline) -;; (require 'fg42/utils) -;; (require 'fg42/modeline) -;; (require 'fg42/cubes/modeline) -;; (require 'fg42/themes) -;; (require 'fg42/project) - (defvar fg42/font '("Fira Mono" 12) "Font name and size to be used with FG42. (Default (\"Fira Mono\" 12).") diff --git a/lisp/fg42/langs/nix.el b/lisp/fg42/langs/nix.el new file mode 100644 index 0000000..635feb0 --- /dev/null +++ b/lisp/fg42/langs/nix.el @@ -0,0 +1,36 @@ +;;; FG42 --- The mighty editor for the emacsians -*- lexical-binding: t; -*- +;; +;; Copyright (c) 2010-2024 Sameer Rahmani & Contributors +;; +;; Author: Sameer Rahmani +;; URL: https://devheroes.codes/FG42/FG42 +;; Version: 3.0.0 +;; +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. +;; +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. +;; +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see . +;; +;;; Commentary: +;;; Code: +(eval-when-compile + (require 'fpkg)) + +(use! nix-mode + "Nix language support for Emacs." + :mode "\\.nix\\'" + :hook + (nix-mode . eglot-ensure) + (nix-mode . company-mode) + (nix-mode . flyspell-prog-mode)) + +(provide 'fg42/langs/nix) +;;; nix.el ends here diff --git a/nix/fg42.nix b/nix/fg42.nix index dd38352..b7e9129 100644 --- a/nix/fg42.nix +++ b/nix/fg42.nix @@ -90,8 +90,11 @@ let python3Packages.flake8 ]) ++ (lib.optional supportVerilog [ svls + ]) ++ (lib.optional (supportVerilog && stdenv.isLinux) [ + # SystemC is required by verilator that at the + # moment is only available on Linux verilator - ]) ++ (lib.optional supportWM [ + ]) ++ (lib.optional (supportWM && stdenv.isLinux) [ # Window manager supports works on Linux only xorg.xhost ]);