# Fg42 - Emacs Editor for advance users # # Copyright (c) 2010-2024 Sameer Rahmani # # 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, version 2. # # 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 . { pkgs, lib, elispDepsFile }: with builtins; let reader = import ./elisp_reader.nix { inherit lib; }; elispAst = reader.fromElisp (builtins.readFile elispDepsFile); dependsOnForm = filter (x: head x == "depends-on") elispAst; elispPkgs = if length dependsOnForm == 0 then throw "Can't find the form 'depends-on' on 'deps.el'" else tail (head dependsOnForm); in elispPkgs