GithubHelp home page GithubHelp logo

Comments (5)

hlissner avatar hlissner commented on May 29, 2024 2

Hi! Sorry for the (tremendously) late response. I manage Doom by hand. The commented out block is more than fine for Doom users who won't touch ~/.emacs.d much, but in my hands the directory sees a lot of movement, making it more trouble than its worth to nixify Doom (or even trying to pull it every time I rebuild).

You'll find a popular effort to nixify Doom on https://github.com/vlaci/nix-doom-emacs, but I generally recommend against it. Emacs is a very stateful program with lots of moving parts, with or without Doom. /nix's read-only-ness will cause issues without a lot of hackery that may cause their own problems. Once Doom is a little more mature I'll start thinking about making it more nixos/guix friendly, but we're at least a year away from that.

Anyhow, hope that helped!

from dotfiles.

hlissner avatar hlissner commented on May 29, 2024 2

how does that part even work?

It doesn't anymore, I'm afraid. I found my home-baked init option redundant with system.userActivationScripts, so I removed it. Here's how you'd adapt that commented out block to it:

system.userActivationScripts = mkIf cfg.doom.enable {
  installDoomEmacs = ''
    if [ ! -d "$XDG_CONFIG_HOME/emacs" ]; then
       git clone --depth=1 --single-branch https://github.com/hlissner/doom-emacs "$XDG_CONFIG_HOME/emacs"
       git clone https://github.com/hlissner/doom-emacs-private "$XDG_CONFIG_HOME/doom"
    fi
  '';
};

EDIT: Fixed the condition in snippet

from dotfiles.

hlissner avatar hlissner commented on May 29, 2024 1

P.S. You probably must've meant if [ ! -d $HOME/.config/emacs ]; ?

Whoops! Yes, you're correct.

Glad I could help!

from dotfiles.

vandr0iy avatar vandr0iy commented on May 29, 2024

To follow on your answer up here: how does that part even work? If I attempt to uncomment it, this is what I get:

# nixos-rebuild switch --show-trace
error: The option `init' does not exist. Definition values:
       - In `/nix/store/ir0fjbffvd61nbg46j49w889dhav3nrx-source':
           {
             _type = "if";
             condition = true;
             content = {
               doomEmacs = {
           ...

from dotfiles.

vandr0iy avatar vandr0iy commented on May 29, 2024

Wow, that was fast 🤯 Anyways, it works, thank you!

P.S. You probably must've meant if [ ! -d $HOME/.config/emacs ]; ?

from dotfiles.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.