Commit Graph

189 Commits

Author SHA1 Message Date
Thomas Haller
db80ec05ab build: rename directory "include" to "shared"
Up to now, the "include" directory contained (only) header files that were
used project-wide by libs, core, clients, et al.

Since the directory now also contains a non-header file, the "include"
name is misleading. Instead of adding yet another directory that is
project-wide, with non-header-only content, rename the "include"
directory to "shared".
2015-12-24 11:42:37 +01:00
Jiří Klimeš
acaf7cf641 nm-import-openvpn: import 'route' option
https://bugzilla.gnome.org/show_bug.cgi?id=753578
https://git.gnome.org/browse/network-manager-openvpn/commit/?id=4eb5f3ad43cdc62c6d4d254731e24c90b87ba91a
2015-12-07 12:22:45 +01:00
Thomas Haller
e01c17523a contrib/rpm: remove NetworkManager-devel package
NetworkManager-devel package contained development headers that
are useful without libnm-glib and without glib. But it is also
based on the legacy libnm-glib library as it has headers like
"/usr/include/NetworkManager/NetworkManager.h".

A glib-free devel package based on the new libnm library would
be needed to provide "/usr/include/libnm/nm-dbus-interface.h".

But that would amount to 4 devel packages. Instead, just move
the content of NetworkManager-devel into NetworkManager-glib-devel
package.

Note that NetworkManager-devel already contained several truely
libnm-glib dependent files, like the vala bindings (which require
libnm-glib). So that was another bug in the packaging and is fixed
by moving it all to NetworkManager-glib-devel.

https://bugzilla.gnome.org/show_bug.cgi?id=755938
2015-10-23 12:41:55 +02:00
Thomas Haller
804ec6fbcd contrib/rpm: remove dbus-glib dependancy
Only libnm-glib still requires dbus-glib.
2015-09-30 23:10:56 +02:00
Thomas Haller
7bf10a75db build: extract version macros from "nm-version.h" to new header file "nm-version-macros.h"
For libnm library, "nm-dbus-interface.h" contains defines like the D-Bus
paths of NetworkManager. It is desirable to have this header usable without
having a dependency on "glib.h", for example for a QT application. For that,
commit c0852964a8 removed that dependancy.

For libnm-glib library, the analog to "nm-dbus-interface.h" is
"NetworkManager.h", and the same applies there. Commit
159e827a72 removed that include.
However, that broke build on PackageKit [1] which expected to get the
version macros by including "NetworkManager.h". So at least for libnm-glib,
we need to preserve old behavior so that a user including
"NetworkManager.h" gets the version macros, but not "glib.h".

Extract the version macros to a new header file "nm-version-macros.h".
This header doesn't include "glib.h" and can be included from
"NetworkManager.h". This gives as previous behavior and a glib-free
include.

For libnm we still don't include "nm-version-macros.h" to "nm-dbus-interface.h".
Very few users will actually need the version macros, but not using
libnm.
Users that use libnm, should just include (libnm's) "NetworkManager.h" to
get all headers.
As a special case, a user who doesn't want to use glib/libnm, but still
needs both "nm-dbus-interface.h" and "nm-version-macros.h", can include
them both separately.

[1] https://github.com/hughsie/PackageKit/issues/85

Fixes: 4545a7fe96
2015-09-30 23:10:29 +02:00
Lubomir Rintel
8e6a839d93 contrib/rpm: regenerate automake with locally present version
The modification of po/Makefile.in.in may trigger re-run of autotools and it
would fail if the versions differ.

Fixes: 2318c0de92
2015-09-28 19:50:09 +02:00
Jiří Klimeš
2318c0de92 contrib/rpm: fix creating proper po/Makefile.in.in (rh #1265117)
Without that DATADIRNAME was not present in po/Makefile.in.in
and it resulted in /usr/\@DATADIRNAME\@/locale/cs/LC_MESSAGES/ path instead of
/usr/share/locale/cs/LC_MESSAGES/.

https://bugzilla.redhat.com/show_bug.cgi?id=1265117
2015-09-22 12:50:55 +02:00
Lubomir Rintel
de5d98197f contrib/rpm: sync from Fedora git 2015-09-03 17:48:04 +02:00
Beniamino Galvani
1999723241 nm-dispatcher: allow scripts to be marked as no-wait
When a script is a symbolic link to the 'no-wait.d' subdirectory, the
dispatcher now schedules it immediately and in parallel with other
no-wait scripts.

https://bugzilla.gnome.org/show_bug.cgi?id=746703
2015-08-25 15:27:18 +02:00
Jiří Klimeš
02cfeac668 nm-import-openvpn: import 'keepalive' option
https://bugzilla.gnome.org/show_bug.cgi?id=651657
https://git.gnome.org/browse/network-manager-openvpn/commit/?id=6afd16bcacd87a019e12f4df0d63a9e0e8c94e9e
2015-08-19 12:39:06 +02:00
Jiří Klimeš
e655358d44 nm-import-openvpn: import 'ping', 'ping-exit' and 'ping-restart' options
https://bugzilla.gnome.org/show_bug.cgi?id=651657
https://git.gnome.org/browse/network-manager-openvpn/commit/?id=054cc997ca38e5d786859fa6d032c4404af3d28a
2015-08-19 12:23:04 +02:00
Jiří Klimeš
bde1cd342e nm-import-openvpn: improve error checking 2015-08-19 12:23:04 +02:00
Jiří Klimeš
a646870684 nm-import-openvpn: fix importing OpenVPN configuration with 'tls-client' 2015-08-19 10:58:29 +02:00
Dan Winship
c699f8c32e contrib: add emacs config for hacking on NM
https://bugzilla.gnome.org/show_bug.cgi?id=753411
2015-08-11 13:42:26 -04:00
Thomas Haller
c0138fa7e7 contrib/rpm: compile audit support but disable by default
The default SELinux policy on current RHEL and Fedora distributions
does not allow for NetworkManager to use audit. Hence, unless the user
changes the SELinux policy it will not work.

Disable auditing by default, but have it compiled so that the user can
enable it via "NetworkManager.conf".
2015-08-05 17:05:01 +02:00
Beniamino Galvani
be49a59fb6 core: add audit support
Introduce some primitives to deliver messages about relevant
configuration changes to the Linux audit subsystem through libaudit
(if enabled at build time) and to the logging system.
2015-08-04 09:32:12 +02:00
Thomas Haller
d6226bd987 libnm: add NMVpnPluginInfo class
NMVpnPluginInfo is little more then a wrapper around
the GKeyFile that describes the VPN plugin settings,
i.e. the name files under "/etc/NetworkManager/VPN/".

Add this class to make the VPN API more explicit. Clients
now can use NMVpnPluginInfo instead of concerning themselves
with loading the keyfile and the meaning of its properties.

Also add support for a new VPN plugins directory
"/usr/lib/NetworkManager/VPN", which should replace
"/etc/NetworkManager/VPN" in the future. But we have to
consider both locations for backward compatibility.

The content of the VPN directory is not user configuration,
hence it should not be under "/etc". See related bug 738853.
2015-07-29 22:34:35 +02:00
Thomas Haller
2a3a4eb16f config/rpm: use plain HTTP URI for connectivity checking
https://bugzilla.gnome.org/show_bug.cgi?id=747866
2015-07-16 16:44:49 +02:00
Dan Horák
97cf6e47dd contrib/rpm: WEXT depends on enabled wifi 2015-07-14 19:02:35 +02:00
Lubomir Rintel
db44539912 contrib/rpm: always drag in bluez-libs-devel
We don't really know which version it's going to be -- and thus if we're going
to actually need it (version 5), or not (version 4). It's going to be decided
at configure time.

Also, drop the bogus Fedora 19 conditionals; Fedora < 20 has ModemManager that's
too old for the WWAN code anyway.
2015-07-09 17:56:20 +02:00
Jiří Klimeš
640eb8f284 supplicant: allow with_system_ca_path to be a file name (rh #1236548)
NetworkManager uses wpa_supplicant, which in turn calls OpenSSL for verifying
certificates. wpa_supplicant calls
SSL_CTX_load_verify_locations(ctx, CAfile, CApath)
using its ca_cert and ca_path options as CAfile and CApath parameters.

We have a configure time option with_system_ca_path to override ca_path.
However, it doesn't work when a system (like Fedora) only uses bundled PEM
certificates instead of a directory with hashed certificates ([1], [2]).

So this commit allows setting --with_system_ca_path to a file name (the
trusted certificate bundle). Then the name is used to populate wpa_supplicant's
ca_cert instead of ca_path.

[1] https://bugzilla.redhat.com/show_bug.cgi?id=1053882
[2] https://www.happyassassin.net/2015/01/12/a-note-about-ssltls-trusted-certificate-stores-and-platforms/

https://bugzilla.redhat.com/show_bug.cgi?id=1236548
2015-07-08 17:07:02 +02:00
Thomas Haller
6f0036151f settings: enable "ibft" plugin by default together with "ifcfg-rh"
Originally, ibft settings were handled by "ifcfg-rh" plugin. Later, we added
a separate "ibft" plugin and moved the functionality there.

The problem was that users quite possibly had a configuration like
  [main]
  plugins=ifcfg-rh
in their "NetworkManager.conf". That meant, after upgrade users would
no longer have ibft support.

We fixed that by installing "/etc/NetworkManager/conf.d/10-ibft-plugin.conf"
which was read after the main file and contained:
  [main]
  plugins+=ibft

We no longer want to install configuration snippets with our core packages to
/etc. Avoid the regression by changing the meaning of "ifcfg-rh". By enabling
"ifcfg-rh" you now implicitly enable "ibft" plugin as well. This can be
turned off via "no-ibft". And you can continue to enable "ibft" plugin
alone.
2015-07-02 16:01:20 +02:00
Thomas Haller
98dd29e4ae config: fix setting default configuration for 'main.plugins'
'main.plugins' is the only configuration options for which we
have a default value and which we always want to set.

This property has a compile time default and can be set via command line,
fix the logic to set the value.

The proper way is:

  - first set it (always) to the compile time default
  - then read the configuration files, which potentially modify
    the value.
  - finally, if set via command line, overwrite it because
    command line always wins.

Also comment-out the setting from our default file in
"contrib/fedora/rpm/NetworkManager.conf". We don't really need it to be
configured there, as we have a compile time default. Commenting it out
makes this clearer to the user.

Note that we cannot drop "10-ibft-plugin.conf" snippet from
NetworkManager package, because many users might have an old
"NetworkManager.conf" file with "plugin=ifcfg-rh".

This is a change in behavior if the user has no explicit
"plugins=ifcfg-rh" setting but followed by "plugins+=ibft".
2015-07-02 16:01:20 +02:00
Thomas Haller
ffa70203fd contrib/rpm: update spec file to install configuration snippets in "/usr/lib/NetworkManager/conf.d"
Don't move "10-ibft-plugin.conf", because we need it to be
read *after* "NetworkManager.conf". Many users might have
an old "NetworkManager.conf" file that contains "plugin=ifcfg-rh".
2015-07-02 16:01:20 +02:00
Thomas Haller
d783742b22 config: read configuration directory "/usr/lib/NetworkManager/conf.d"
This allows packages to install their configuration snippets to
"/usr/", which is a better place for system-provided configuration
files then "/etc".

"/usr/lib/NetworkManager/conf.d/" is read first, so that the values
in /etc have higher priority.

In general, we want to move system-provided configuration away from
/etc, so that a user can do a "factory-reset" by purging /etc.

https://bugzilla.gnome.org/show_bug.cgi?id=738853
2015-07-02 16:01:20 +02:00
Thomas Haller
acef8c6a1b contrib/rpm: let NetworkManager package own '/etc/NetworkManager/' directory 2015-06-08 17:48:33 +02:00
Jiří Klimeš
a5e43ab510 nm-import-openvpn: import 'float' OpenVPN option
https://bugzilla.gnome.org/show_bug.cgi?id=737108

Signed-off-by: Jiří Klimeš <jklimes@redhat.com>
2015-05-28 12:04:58 +02:00
Jiří Klimeš
466515e953 contrib/scripts: fix importing 'remote' and 'remote-random' options for openvpn
see https://bugzilla.redhat.com/show_bug.cgi?id=1194643
2015-05-19 09:21:50 +02:00
Jiří Klimeš
29473f1bc4 contrib/scripts: nm-import-openconnect - script for importing OpenConnect VPN configs to NM 2015-05-19 09:21:50 +02:00
Jiří Klimeš
db0cf1e7f6 contrib/scripts: nm-import-vpnc - script for importing Cisco VPN configs to NM 2015-05-19 09:21:50 +02:00
Jiří Klimeš
1a2798d1a4 contrib/scripts: nm-import-openvpn - script for importing OpenVPN configs to NM
Synopsis:
 $ nm-import-openvpn -i <infile1> <infile2> ...

 $ nm-import-openvpn <infile> <outfile>

Put the file to NetworkManager:
 # cp <outfile> /etc/NetworkManager/system-connections/
 # chmod 600 /etc/NetworkManager/system-connections/<outfile>
 # nmcli con load /etc/NetworkManager/system-connections/<outfile>
2015-05-19 09:21:50 +02:00
Beniamino Galvani
db923366b2 contrib/rpm: remove avahi-autoipd dependency and files 2015-05-11 10:48:48 +02:00
Dan Winship
721e917cb6 wimax: drop WiMAX support (bgo #747846)
Even Fedora is no longer shipping the WiMAX SDK, so it's likely we'll
eventually accidentally break some of the code in src/devices/wimax/
(if we haven't already). Discussion on the list showed a consensus for
dropping support for WiMAX.

So, remove the SDK checks from configure.ac, remove the WiMAX device
plugin and associated manager support, and deprecate all the APIs.

For compatibility reasons, it is still possible to create and save
WiMAX connections, to toggle the software WiMAX rfkill state, and to
change the "WIMAX" log level, although none of these have any effect,
since no NMDeviceWimax will ever be created.

nmcli was only compiling in support for most WiMAX operations when NM
as a whole was built with WiMAX support, so that code has been removed
now as well. (It is still possible to use nmcli to create and edit
WiMAX connections, but those connections will never be activatable.)
2015-04-17 12:42:23 -04:00
Thomas Haller
36fc5cac83 contrib/rpm: add comment to NetworkManager.conf file
https://mail.gnome.org/archives/networkmanager-list/2015-April/msg00036.html
2015-04-16 18:43:03 +02:00
Thomas Haller
af060e7c22 contrib/fedora: update REQUIRED_PACKAGES file with perl-YAML package 2015-03-29 13:21:16 +02:00
Lubomir Rintel
b3667afa22 contrib: ensure udev rules from RPM package are applied
We install udev rules and need to ensure that correct ones are in effect when
the package is installed, updated or removed.
2015-03-20 19:09:01 +01:00
Thomas Haller
5439fbd77c build: add compile option to disable building of Wi-Fi plugin
Before, the Wi-Fi plugin was always build. Users who didn't want
to use it would simply drop "libnm-device-plugin-wifi.so".

Add a compile time option to disable needlessly building the plugin.

https://bugzilla.gnome.org/show_bug.cgi?id=743388
2015-01-30 22:20:13 +01:00
Thomas Haller
8eba28b9bd contrib/rpm: add 10-ibft-plugin.conf config file
Taken from rhel-7.1 package
2015-01-28 13:20:19 +01:00
Dan Winship
9d3e0cff9f contrib: fix NetworkManager.spec after the dispatcher script change 2015-01-27 16:45:27 -05:00
Dan Winship
8de1bec803 dispatcher: fix ifcfg-rh example dispatcher script (rh #1160013)
Routing table entries for a device get flushed when the device is
deactivated, but rules table entries don't, so we have to flush them
by hand.
2015-01-27 13:51:45 -05:00
Dan Winship
f79d62692e ifcfg-rh: allow handling complex routing rules via dispatcher (rh #1160013)
If a connection has an associated "rule-NAME" or "rule6-NAME" file,
don't try to read in the routes, since NetworkManager won't be able to
parse them correctly. Instead, log a warning that they will need to be
applied via a dispatcher script, and provide a script that would do
that in examples/dispatcher/.
2015-01-12 09:53:24 -05:00
Dan Williams
5e892819fc contrib: remove dbus/dbus-glib requires from libnm sub-package
libnm doesn't use dbus-glib or dbus at all.
2015-01-09 17:12:01 -06:00
Dan Winship
20a56fa9a2 contrib: sync fedora/rpm/NetworkManager.spec
We're building the plugins on s390 these days
2015-01-09 11:30:50 -05:00
Dan Williams
3aede80152 contrib: fix team sub-package obsoletes
Team was split out between NM 0.9.10 and NM 1.0 after the other
sub-packages, so the existing obsoletes won't work for it (they
would cause all upgrades to install all sub-packages, instead
of replacing existing sub-packages without adding uninstalled
ones).  We only want to unconditionally add the team sub-package.
2014-12-22 10:29:09 -06:00
Thomas Haller
4882b09975 contrib/fedora: add file REQUIRED_PACKAGES listing fedora packages for development 2014-12-19 17:26:55 +01:00
Thomas Haller
2fc37ce895 contrib/rpm: exclude device plugins for ADSL and Wi-Fi on s390
s390 does not enable several device plugins, but ADSL and Wi-Fi
plugins are still build. They must be excluded in the spec file,
otherwise rpmbuild fails.

This partly reverts commit 1f631cd08d.

  Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/NetworkManager-1.1.0-11242.9709d009d5.el7.s390x
  RPM build errors:
  error: Installed (but unpackaged) file(s) found:
     /usr/lib64/NetworkManager/libnm-device-plugin-adsl.so
     /usr/lib64/NetworkManager/libnm-device-plugin-wifi.so
      Installed (but unpackaged) file(s) found:
     /usr/lib64/NetworkManager/libnm-device-plugin-adsl.so
     /usr/lib64/NetworkManager/libnm-device-plugin-wifi.so
  Child returncode was: 1
2014-12-19 13:52:07 +01:00
Thomas Haller
6f343b866e contrib/rpm: fix spec file for s390/s390x
On s390/s390x we would disable hardware plugins, especially %{with_bluetooth} and
%{with_wwan}. Depending on that we would set 'BuildRequires: ModemManager-glib-devel'.

This was not corresponding to the '--with-modem-manager-1' configure
option, hence we did not have ModemManager-glib-devel, but
'--with-modem-manager-1=yes'
2014-12-19 12:35:36 +01:00
Thomas Haller
c5e998441c contrib/rpm: fix --srpm option of build_clean.sh
Forgot to export the $BUILDTYPE variable. Hence --srpm did not
work.
2014-12-19 12:35:36 +01:00
Dan Williams
471375a3e1 release: remove "nano" version
Now that NM is >= 1.0 there is no need for a "nano" version.
2014-12-12 15:06:39 -06:00
Thomas Haller
09130c5693 contrib/rpm: ignore libgsystem/ repository in build_clean.sh 2014-12-03 15:01:12 +01:00
Lubomir Rintel
ae829a88ce contrib: Enable PolicyKit agent in RPM 2014-11-13 18:57:04 +01:00
Lubomir Rintel
84c8558622 contrib: Require libselinux for RPM build
It ensures ifcfg-rh doesn't mess up the labels.
2014-11-13 18:57:04 +01:00
Thomas Haller
1e8b681d4f man: add manual page for nmtui(1)
https://bugzilla.gnome.org/show_bug.cgi?id=739710

Branch: th/bgo739710_man_nmtui
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-11-11 16:01:38 +01:00
Thomas Haller
b1e26735a0 contrib/rpm: add option to only building SRPM
Set environment variable BUILDTYPE=SRPM or call
`build_clean.sh --srpm`.

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-11-07 21:31:12 +01:00
Dan Williams
5149fd120d iface-helper: add nm-iface-helper for dynamic configure-then-quit support
When quitting, the Manager asks each device to spawn the interface helper,
which persists and manages dynamic address on the interface after NetworkManager
is gone.  If the dynamic address cannot be maintaned, the helper quits and
the interface's address may be removed when their lifetime runs out.

To keep the helper as simple as possible, NetworkManager passes most of the
configuration on the command-line, including some properties of the device's
current state, which are necessary for the helper to maintain DHCP leases
or IPv6 SLAAC addresses.
2014-11-07 12:18:33 -06:00
Lubomir Rintel
48b4f6f830 Merge branch 'lr/rpm-make-check'
https://bugzilla.gnome.org/show_bug.cgi?id=739127
2014-10-30 14:40:47 +01:00
Lubomir Rintel
9db55be9a1 contrib/rpm: Run make check 2014-10-30 14:39:08 +01:00
Thomas Haller
4545b6cb1e config: set a compile time default for the main.plugins configuration option
In case of a missing NetworkManager.conf (or a missing configuration option
main.plugins), allow to determine the fallback at compile time

https://bugzilla.gnome.org/show_bug.cgi?id=738611

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-10-29 15:17:55 +01:00
Lubomir Rintel
5f840abd7f contrib/rpm: Avoid unowned directories 2014-10-24 19:29:27 +02:00
Jiří Klimeš
5d66f91de8 contrib/rpm: do not override configuration files on updates (rh #1153901)
Rather leave modified configuration files untouched and save the new files
with .rpmnew suffix.

http://stackoverflow.com/questions/14511334/rpm-upgrade-handling-of-config-files

https://bugzilla.redhat.com/show_bug.cgi?id=1153901
2014-10-21 15:15:46 +02:00
Lubomir Rintel
479dd171ae contrib/rpm: Count all predecessors in revision number
The revision number of the RPM (as build by contrib/rpm) should
be increasing so that newer packages can be installed using
`yum install` and older packages can be downgraded using
`yum downgrade`.
By counting only --first-parent, the following example turns
out wrong. Note the duplicate revision numbers.

  -- A(100)----------------------------F(101)----G(102)
      \                               /
       B(101)----C(102)----D(103)----E(104)

Just count *all* parent commits
2014-10-20 12:38:00 +02:00
Lubomir Rintel
5d763a8375 contrib/rpm: Fix Fedora 19 build
Too old to have recent enough ModemManager.
2014-10-20 11:53:43 +02:00
Lubomir Rintel
1f631cd08d contrib/rpm: Don't exclude files that are not built
RPM still insist that they need to exist in order to be excluded.
2014-10-20 11:53:43 +02:00
Lubomir Rintel
f1c9595311 bluez: re-add DUN support for Bluez5
This adds service discovery via SDP and RFCOMM tty management to
NetworkManager, as it was dropped from Bluez.

Based on work by Dan Williams <dcbw@redhat.com>.
The SDP discovery is based on code from Bluez project.
2014-10-13 14:27:33 +02:00
Thomas Haller
71c5e5dea1 contrib/nm-live-vm: install perl dependancy (YAML) in mock build
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-10-10 20:52:38 +02:00
Thomas Haller
a64de150c3 contrib/rpm: detect ppp version based on installed package
Also fixes build failure if user had no /sbin/pppd in its $PATH.

https://bugzilla.gnome.org/show_bug.cgi?id=736954

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-10-03 12:49:19 +02:00
Thomas Haller
20a746f68a contrib/rpm: fix --quick option of build_clean.sh
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-10-03 11:02:46 +02:00
Lubomir Rintel
53b9504544 contrib/rpm: don't hardwire a single ppp version
Build against whatever is actually present.

https://bugzilla.gnome.org/show_bug.cgi?id=736954

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-10-02 16:31:05 +02:00
Thomas Haller
eabe7d856c auth: rework polkit autorization to use DBUS interface directly
This makes NetworkManager independent of <polkit/polkit.h>
development headers and libpolkit-gobject-1.so library.
Instead communicate directly with polkit using its DBUS
interface.

PolicyKit support is now always compiled in. You can control
polkit authorization with the configuration option
  [main]
  auth-polkit=yes|no

If the configure option is omitted, a build time default
value is used. This default value can be set with the
configure option --enable-polkit.

This commit adds a new class NMAuthManager that reimplements the
relevant DBUS client parts. It takes source code from the polkit
library.

https://bugzilla.gnome.org/show_bug.cgi?id=734146

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-09-29 13:51:11 +02:00
Lubomir Rintel
b769c059f3 contrib/rpm: libnm-vpn is no more
Removed in: [280b1e506] libnm: merge libnm-vpn into libnm

https://bugzilla.gnome.org/show_bug.cgi?id=736954
2014-09-19 08:35:21 -04:00
Jiří Klimeš
aee8eb837b contrib/rpm: use HTTPS for connectivity check URL (rh #1135777)
https://bugzilla.redhat.com/show_bug.cgi?id=1135777
2014-09-05 23:24:08 +02:00
Jiří Klimeš
bc18992dd8 contrib/rpm: add BuildRequires for perl YAML module in spec
The module is used for building man pages by generate-plugin-docs.pl script.
1c2174a libnm-util: generate-plugin-docs.pl script for extracting plugin docs
2014-08-29 14:38:12 +02:00
Thomas Haller
68653de291 contrib/rpm: fix --quick option of build_clean.sh
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-08-14 00:17:07 +02:00
Dan Winship
058915a9ae contrib: update NetworkManager.spec for libnm
Add libnm to NetworkManager.spec, and try to update the descriptions
of NetworkManager-devel, NetworkManager-glib, and
NetworkManager-glib-devel to make sense in the libnm world...
2014-08-01 14:34:05 -04:00
Dan Winship
3d25d70461 clients: reorganize source tree, put all the installed clients together
Create a new clients/ subdirectory at the top level, and move cli/ and
tui/ into it, as well as nm-online.c (which was previously in test/,
which made no sense).

cli/ was split into two subdirectories, src/ and completion/. While
this does simplify things (given that the completion file and the
binary both need to be named "nmcli"), it bloats the source tree, and
we can work around it by just renaming the completion file at install
time. Then we can combine the two directories into one and just have
it all under clients/cli/.
2014-07-30 15:56:19 -04:00
Dan Williams
25dac5760b contrib/rpm: fix up sub-package dependencies
There are three fixes:

1) the config packages shouldn't require the main NetworkManager
package.  We explicitly make NetworkManager-glib not
depend on NM itself to ensure that clients can link to it (and thus
have an RPM dependency on -glib) without pulling in NetworkManager
itself.  The same should hold true for the config packages, since
consumers of NetworkManager may want to pull them in, but not
necessarily pull NetworkManager in.

For example, GNOME Shell wants to make use of NetworkManager's
connectivity detection *if NM is available*, and this requires
pulling in NM-config-connectivity-fedora, but that shouldn't
pull in NetworkManager itself.

Similarly, we had a problem with RHEL7 making sure that
NM-config-server was installed by default on Server variants but
not on other variants; removing the dependency from the -config
subpackage was the cleanest way to fix that.

Furthermore, nothing in the config sub-packages actually
requires NetworkManager anyway since they are simply config files.

2) nmtui doesn't care what architecture the running NM is since
it communicates solely over D-Bus.  So skip the %{?_isa}, just
like we do for other clients (nm-applet, GNOME Shell, etc)

3) Requiring NetworkManager.%{?_isa} from the -devel package
has problems with multilib (see rh #1112367).  This is an issue
if you install a 32-bit development environment and try to build
something that uses NetworkManager.  Since the -devel package
requires the main package, you can end up either having *both*
NetworkManager.i686 and NetworkManager.x86_64 installed, or you
end up having NetworkManager.i686 replace NetworkManager.x86_64.
Neither one is good. So remove the %{?_isa} bit.
2014-07-30 09:35:02 -05:00
Elad Alfassa
9060e1ab1a contrib/rpm: set connectivity interval in 20-connectivity-fedora.conf (rh #1123772)
Without the interval, connectivity checking doesn't actually happen.

https://bugzilla.redhat.com/show_bug.cgi?id=1123772
2014-07-30 08:40:59 -05:00
Thomas Haller
40a3e20006 contrib/rpm: add --quick argument to build_clean.sh script
Before, build_clean.sh always required building all NetworkManager
and doing another `make distcheck` before calling rpmbuild.

That is still a good idea, to ensure that we get a proper build.
For some quick testing however, lets speed this up with a new
--dist argument that only calls `make dist`.

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-07-04 19:59:08 +02:00
Thomas Haller
d2be2ac78d contrib/rpm: update spec file to make ppp_version dependent on fedora version
Fedora 21 (rawhide) needs ppp version 2.4.6.

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-07-04 13:44:44 +02:00
Thomas Haller
3cfd8b8eec contrib/rpm: add new package NetworkManager-config-connectivity-fedora
Provides config file 20-connectivity-fedora.conf

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-07-04 12:25:51 +02:00
Thomas Haller
031142000a contrib/nm-live-vm: install required packages readline, gobject-introspection, and pygobject3
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
04591cfa2e contrib/nm-live-vm: fix run.sh script to into script directory
run.sh refers to the image file via relative path.

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
c274725dc3 contrib/nm-live-vm: start the VM with less memory (1024 mb)
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
6a5c05e61a contrib/nm-live-vm: install wget and setup bashrc and git
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
acfb0b1bbf contrib/nm-live-vm: enable option main.debug for NM in VM
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
cd7c97eb1d contrib/nm-live-vm: write /etc/fstab
Everytime you call mock again, the fstab file will be reset.
So, we have to write it shortly before creating the image.

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
0178d73699 contrib/nm-live-vm: disable rate limiting in the journal of the VM
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
0689efc768 contrib/nm-live-vm: don't remove the temporary directory with the extracted VM image
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
fe267b0fd2 contrib/nm-live-vm: enable ssh server and add port forward from localhost:10022
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
78f94726a7 contrib/nm-live-vm: share a directory with the live-vm
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
fbc9c41e96 contrib/nm-live-vm: include the NetworkManager source in the live-mv file for debugging
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
f2878b7633 contrib/nm-live-vm: compile live-vm build without compiler optimization
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Jiří Klimeš
ef052ead88 contrib/nm-live-vm: add dnsmasq to the VM 2014-06-30 17:42:09 +02:00
Jiří Klimeš
84b3e924df contrib/nm-live-vm: fix build - libndp-devel is now required 2014-06-30 17:42:09 +02:00
Jiří Klimeš
f20f706d34 contrib/nm-live-vm: also build nmtui 2014-06-30 17:42:09 +02:00
Jiří Klimeš
dc872b7e52 contrib/nm-live-vm: add rootfstype=ramfs kernel parameter to run.sh
Kernel changed default filesystem for roots from ramfs to tmpfs.
See http://lwn.net/Articles/559176/ for more information.
The change caused our initramfs to be mounted with size= parameter that equals
to the actual size of unpacked initramfs. That's why mounted / was full and no
space was available (without manual remounting: mount -o remount,size=100% /).

So we explicitly require usage of ramfs to have all RAM of the virtual machine
available for /.

Signed-off-by: Jiří Klimeš <jklimes@redhat.com>
2014-06-30 17:42:09 +02:00
Jiří Klimeš
26626c75c3 contrib/nm-live-vm: put qemu network-related options into a variable
Signed-off-by: Jiří Klimeš <jklimes@redhat.com>
2014-06-30 17:42:09 +02:00
Jiří Klimeš
9b3922390c contrib/nm-live-vm: update scripts to make VM based on Fedora 20
Signed-off-by: Jiří Klimeš <jklimes@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
e9ed87a920 contrib/nm-live-vm: adjust build script to enable DEBUG logging
Enable more logging when starting NM.

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00
Thomas Haller
7b43e0526e contrib/nm-live-vm: change scripts to be run by unprevileged user
The user must still be member of the 'mock' group though.

Also, hack something, that the current git repositoy will be reused, so
that we don't have to fetch the entire repositoy from upstream.

Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-06-30 17:42:09 +02:00