From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxim Cournoyer Subject: bug#38613: Disabling bytecompilation on a list of files. Date: Tue, 17 Dec 2019 14:03:29 +0900 Message-ID: <875zifmtlq.fsf@gmail.com> References: <8736dl5ipq.fsf@posteo.net> <0b47c65b310b0a0c9e5821070d5e4a888a8c4a58.camel@student.tugraz.at> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:47117) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ih51e-0001th-W1 for bug-guix@gnu.org; Tue, 17 Dec 2019 00:04:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ih51d-0001ZA-R7 for bug-guix@gnu.org; Tue, 17 Dec 2019 00:04:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:34642) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ih51d-0001Z6-My for bug-guix@gnu.org; Tue, 17 Dec 2019 00:04:01 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ih51d-0002Ia-Ix for bug-guix@gnu.org; Tue, 17 Dec 2019 00:04:01 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <0b47c65b310b0a0c9e5821070d5e4a888a8c4a58.camel@student.tugraz.at> (Leo Prikler's message of "Mon, 16 Dec 2019 00:01:36 +0100") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Leo Prikler Cc: 38613@debbugs.gnu.org Hello, Leo Prikler [...] > Regarding the impact, I think it should be fine if we commit this > closely before or after #38619, since that probably forces all Elisp > libraries to be rebuilt anyways (also CC'd Maxim to have a look at > this). Hopefully at least the doom-theme autoloads compile correctly. > WDYT? > > Leo IIRC, emacs{-minimal} have about ~300 non-Elisp dependents, which IMO is OK for master (Elisp packages are very cheap to build, so I don't count them). I've just verified this with the following script: --8<---------------cut here---------------start------------->8--- (use-modules (gnu packages) (guix graph) (guix monads) (guix packages) (guix store) (guix scripts graph) (guix scripts refresh) (gnu packages emacs) (srfi srfi-1) (srfi srfi-26)) (define (all-packages) "Return the list of all the distro's packages." (fold-packages (lambda (package result) ;; Ignore deprecated packages. (if (package-superseded package) result (cons package result))) '() #:select? (const #t))) (define (packages->dependents packages) (define (full-name package) (string-append (package-name package) "@" (package-version package))) (with-store store (run-with-store store (mlet %store-monad ((edges (node-back-edges %bag-node-type (package-closure (all-packages))))) (let ((dependents (node-transitive-edges packages edges))) (return (map full-name dependents))))))) (define (compute-results) (let* ((dependents (packages->dependents (list emacs emacs-minimal))) (non-emacs (remove (cut string-prefix? "emacs-" <>) dependents))) (format #t "Emacs{-minimal} have ~d dependents, ~d of which are not pure \ Emacs libraries: ~a~%" (length dependents) (length non-emacs) non-emacs))) (compute-results) --8<---------------cut here---------------end--------------->8--- Which outputs: Emacs{-minimal} have 973 dependents, 274 of which are not pure Emacs libraries: (faust@2.5.23 cedille@1.1.1 cflow@1.6 translate-shell@0.9.6.11 kicad@5.1.4 lepton-eda@1.9.5-20180820 quadrapassel@3.31.3 eog-plugins@3.26.4 workrave@1.10.34 emacsy@0.4.1 guile-gi@0.2.0 nomad@0.1.1-alpha emacsy-minimal@v0.4.1-19.f3bf0db evisum@0.2.6 enlightenment-wayland@0.23.1 terminology@1.5.0 ephoto@1.5 enlightenment@0.23.1 econnman@1.1 python-efl@1.23.0 lekha@0.2.1 python2-efl@1.23.0 edi@0.6.0 rage@0.3.1 dbus-c++@0.9.0 [...] HTH, Maxim