so e has had a bit of a mess of setuid root tools to do things that
are essential to maintaing a functioning desktop/laptop/tablet/phone
like device like shutting it down or suspending or sqizzling the cpu
governor or messing with the backlight or... you get the idea.
this has been spread around enlightenment_sys and other special
purpose tools. this now unifies it into a single "always there"
enlightenment_system backend setuid root slave process whose job it is
to do all these things via a stdio protocol in an organized way. this
means latency to do something is lower, but at the expense of
consuming ram and a lurking process. unfortunately the lurking will be
needed soon when i add ddc support to make it even vaguely efficient,
so it's a cost i guess we have to pay now. we'll need this in future
as well for some stats collection and more.
still need to port existing code to use this instead of the existing stuff,
and then remove of the old stuff.
new feature - polkit auth agent support partly in core (need to have
the pam setuid root auth tool respond via dbus) and partly a module
(the agent dbus protocol handling and setup as well as auth gui). this
took me a while even with all the docs to work out how polkit works...
it was really fussy and its data structs are an extra pain in the butt
to craft with eldbus, but i managed it. not everything is supported
but the core basics are there and this can be built on.
right now the gui is really basic, but does the job.
this allows for a shorter timeout when on battery vs when on ac for
backlight dimming. this is actually important so when on ac dimming
can interrupt minimally bur when on battery it can be much more
aggressive.
Summary:
The conditional logic is flawed.
If `HAVE_WAYLAND` is true, only then should the path be updated to include wayland-sessions.
Test Plan: Verified desired output in build/meson-info/intro-installed.json after testing a clean build
Reviewers: devilhorns
Subscribers: cedric, zmike
Tags: #enlightenment-git
Differential Revision: https://phab.enlightenment.org/D9868
we dont need to delay module loading anymore so remove allof this -
priority too shouldn't be necessary as well and was just a workaround.
this remvoes all of that removing some e module api's and module
struct members as well as some global config fields. it also ensures
all config files are up to date as well.
we do binary discovery to generate a sysactions.conf for the host
system now for l2ping and rfkill commands. before they were hardcoded
paths. nice fixup for polishing the release
no "are u sure u want to power off" but power button will bring up
syscon whihc is far nicer (select what to do) for power button now
(double press power to power off of course) and lid close now uses the
smart suspend that accounts for lid state etc. as well.
teamwork is a nice idea but really it's more of a vector for issues
asking e to pop up files or uri's via dbus from apps that are gui apps
that... can do this themselves anyway :)
module lload delay was for the days of spinning hdd's AND before we
were compositing so we could have an init splash in x then load
modules in the bg while its up etc. ... no longer relevant so off.
so bluez itself wont go rfkill block or unblock the bt device. you
have to rfkill unblock separately if it's blocked. this is needed to
make bluez at a minimum work right. possibly should be added to
connman too. but this is the first step.
Summary:
this is part of the datadir distribution, it should not be in a different
directory than the rest of the datadir distribution
the gnu coding standards (https://www.gnu.org/prep/standards/html_node/Directory-Variables.html)
define 'datadir' as:
The directory for installing idiosyncratic read-only architecture-independent
data files for this program. This is usually the same place as ‘datarootdir’,
but we use the two separate variables so that you can move these program-specific
files without altering the location for Info files, man pages, etc.
This should normally be /usr/local/share, but write it as $(datarootdir).
(If you are using Autoconf, write it as ‘@datadir@’.)
The definition of ‘datadir’ is the same for all packages, so you should install your
data in a subdirectory thereof. Most packages install their data under $(datadir)/package-name/.
while this text has no clear requirement or suggestion for a corresponding
repository layout, projects typically employ a certain consistency in their
repository layout both for ease of maintenance and ease of learning for new
contributors.
this project has both a data/ directory, which contains the datadir distribution,
as well as the config/ directory, which also contains the datadir distribution.
this complicates matters both for active maintainers/developers who must
remember that the repository and build tree layouts have this exception,
and for new contributors who will initially be confused by this exception
other well-organized open source projects, such as wayland, have chosen to not
use a data/ directory. these projects have the datadir distribution in the base
directory of the repositor, which is a fine practice as it maintains consistency
for the project since all the files for the datadir distribution are in the same
directory.
by applying this patch, the project will move towards a more easily readable and
learnable layout. current and future developers will no longer need to wonder why
this directory is outside of the data/ directory, and anyone attempting to reference
these files from the source/build trees will be able to do so more easily
ref D6013
Reviewers: cedric, raster, bu5hm4n
Reviewed By: raster
Subscribers: devilhorns
Tags: #enlightenment-git
Differential Revision: https://phab.enlightenment.org/D6154
Summary:
Drop deprecated Encoding key from desktop files
The Encoding key is no longer required, all desktop files are assumed to
be UTF-8 encoded. See details at:
https://standards.freedesktop.org/desktop-entry-spec/1.1/apc.html
Fix various typos and misspellings
lintian, Debian's package checker, uses strings to check for common typos
in compiled binaries. This change fixes the ones it identified in 0.22.1.
Reviewers: zmike!
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D5585
this gives e by default sudo gui support with an askpass util that
sudo can use as well as setting the env var correctly so it will be
used by sudo.
@feature
Summary:
older versions of enlightenment_remote had a additional first param that did nothing
this change detects if that paramater is still passed in and ignores it. There are
a couple of applications including variety that rely on this behavior as well as some
user scripts
Reviewers: zmike, raster
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2813
1. Enlightenment, not X-Enlihgtenment for the desktop. we're a proper DE name
2. Have a fixed desktop env list and efreet gives very... odd results
(eg X-Geequie because some rogue desktop file decides it's good to
have this in it :)).
this is the correct way to write a build system. one toplevel Makefile.am with the rest of the directories having include Makefile.mk files.
additional authors:
Iván Briano <ivan.briano@intel.com>
this adds moldova (moldavian?) flag for layouts of keyboards and
refreshes some of the generic images for unknown, latin america, brail
and arabic "flag" images, and forces flag icons to be 2:1 aspect
ration with icon centered within that area to address T647
1. clear out environment as best is possible before executing
anything. especially PATH and IFS are set to minimal base defaults.
also use clearenv() if available and unsetenv()
2. remove gdb method as it's just too dangerous. run it as normal as
the user and if the kernel / distro dny that - then sorry. too bad.
now e only uses elementary's theme. this is to stop the bitrot and
forking of e's theme vs the unified elm theme that has everything for
e in it already. this obviously makes elm a requirement of e18 on, and
this also notes that emotion is always in efl these days, so its no
longer an option, and ecore-imf is no longer used as edje does the
entires now itself. in future it'll all be elm.
this is a major unification point for themes for elm and e. this will
need some testing, but everything seems to work day-to-day, but theme
selector is untested.
this also removes the theme selector for splash as that is now simply
unified with the same theme as everything else.
If one have systemd but installs to ~/ (no root) then installing
e18.service hurts.
Have e18.service to be generated using @prefix@ so it won't hardcode
to /usr/bin, removing "-locked" as that can be configured in the GUI
and in some cases you just want your e18 without lock/password.
NB: This is so that the indicator mouse events can be disabled, thus
not allowing Silly people to turn off their Only single monitor.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
I'm sure some of you have seen the warnings generated by libpng 1.6:
"known incorrect sRGB profile". Now, this is no big deal, it's just a
warning, but I still wanted to look into it further. By my count,
there are 800 png files in Enlightenment, of which only 6 have
embedded iCC profiles, all from HP. The rest are sRGB colorspace, but
do not include a profile. There are some good arguments for this
(http://imageoptim.com/color-profiles.htmlhttp://www.gballard.net/psd/save_for_web_embed_ICC_profile.html)
and since this seems to be the default, I've attached the 6 files with
the profiles stripped out. As you can see, it doesn't change the image
or the colorspace, it just leaves the calibration up to the end user's
system.
I haven't been able to find just what's wrong with the HP iCC profile
being used that the authors of libpng don't like, but it makes sense
to standardize the way profiles are handled anyway. And it has the
nice side effect of silencing warnings, even if the Debian/Ubuntu
users aren't likely to see them for a couple of years.
I can just change the iCC profile instead if you would prefer. I've
seen multiple people recommend the Argyll sRGB profile, which is still
"sRGB IEC61966-2.1" and is public domain.