Have you tried starting emacs with: emacsclient -c -a "" That should start a daemon if one isn't already running. I can't easily check the value of (display-graphic-p) during loadup right now, but it would be easy to try. On Tue, Dec 13, 2016 at 6:02 PM, Filipe Silva wrote: > Dear developers of the mighty emacs editor, > > I'd like to load emacs with emacs --daemon=gui and then connect to it with > emacsclient -c --sever-file=gui. > > This works almost right. The problem is that various popular packages make > extensive use of the (display-graphic-p) function/predicate to query frame > capabilities. For example, a theme package may query (display-graphic-p) > and assign gui or tty colors accordingly. > > the thing is that(display-graphic-p) always returns nil in a emacs > --deamon type of loading, because emacs does not know if you are using > emacsclient with a gui or a tty. > > Is there a way to say to emacs something like, "look, I'm starting you as > a daemon, but I promise I'll only connect to you with gui frames, so for > all intents and purposes, pretend that you are being started up as a gui". > > If there is not a way to do that, maybe we could add that kind of option? > > The impact of not having this options is that cosmetic packages that make > use of (display-graphic-p) always look off in a emacs --daemon loading > scenario. > > thanks in advance, > > Ninrod > -- Alex Hutcheson alexhutcheson@google.com