can we set svn:external for a single file in debian - svn-externals

can we set svn:external for a single file in debian

Yes you can if can you use svn version >= 1.6.
http://subversion.tigris.org/svn_1.6_releasenotes.html#externals
...as drobert pointed out in a comment, svn 1.6 is still experimental in debian.

an externals definition can only point to directories, not files.

Related

Install OpenLiteSpeed on DirectAdmin

Currently i have DirectAdmin installed on Apache.
I want to install OpenLiteSpeed with CustomBuild 2.0 by DirectAdmin.
./build update
./build set webserver openlitespeed
./build set mod_ruid2 no
./build set php1_mode lsphp
./build openlitespeed
./build php n
./build rewrite_confs
If i install it, my apache will stopped automatically?
and all files httpd in DirectAdmin in File Editor was deleted or useless?
If I unistall Apache, DirectAdmin will was crash?
You're on the right track.
If you install Openlitespeed, Apache will be stopped and removed automatically. All configurations are also directly converted and no other step is needed other than what you mentioned in your post. Do not try to uninstall Apache directly.
You can safely run these commands, but there are a few important points:
After converting apache to openlitespeed it will no longer be possible to return to Apache safely.
You cannot change any settings using WebAdmin in DirectAdmin. The settings need to be made manually via the configuration file in the shell.
When you access WebAdmin from Openlitespeed with DirectAdmin you will notice that it is not possible to change any settings there. (read-only). To modify the OLS settings you need to modify the files that are informed in the link
https://openlitespeed.org/kb/directadmin-configuration-files/

Is %config(noreplace) enough to instruct an RPM not to touch a config file in an upgrade?

On my RedHat 7.4, I'm creating an RPM with CMake, and one of the instructions I want to give the RPM is - to leave a certain config file alone, in case the action is an upgrade.
I thought I could accomplish this in my CMakeLists.txt with (mcve):
cmake_minimum_required(VERSION 3.4.0 FATAL_ERROR)
project(MyKibana)
set(kibana_version 6.2.2)
set(kibana_dir /usr/share/mykibana)
list(APPEND CPACK_RPM_USER_FILELIST
"%config(noreplace) ${kibana_dir}/config/kibana.yml"
)
However, when I do sudo yum upgrade /tmp/my-kibana-6.2.2-577-g7cca696.el7.my.x86_64.rpm -y, I see that the file at /usr/share/mykibana/config/kibana.yml is overwritten with the file in the RPM.
Is there something else I need to do besides the %config(noreplace) directive?
The behavior of rpm with config files is rather complicated to understand.
%config(noreplace) will not replace your config file if you changed it. If you did not touch the config file, it will always be overwritten with the new config file.
For a more thorough understanding; see this excellent page: http://people.ds.cam.ac.uk/jw35/docs/rpm_config.html

Can not load modules/mod_auth_openidc.so : The specified module could not be found

I want OIDC implementation with my application for SSO integration, and getting an error when trying to execute httpd.exe.
I am using windows server 2008 64 bit.
Apache server 2.4.2 64 bit.
I have downloaded mod_auth_openidc.so for 64 bit downloaded from here -
click here.
I have performed these steps:
Step 1.Downloaded apache 64 bit from here -apache_2.4.2-x64-no-ssl.msi.
Step 2.Downloaded mod_auth_openidc-2.2.0-apache-2.4.x-win64.zip from Git hub - click here
Step 3. Unzipped the file and copied the files to bin and modules location of my apache server respectively.
Step 4. Added the LoadModule auth_openidc_module modules/mod_auth_openidc.so in httpd.conf file present in conf folder in apache.
Step 5. Now when I try to run the apache server(httpd.exe) it gives me an error.
error screenshot here -.
error line from httd.conf file from conf folder -.
Please help!
Thanks in advance.
Please let me know if I can answer your any query.
LoadModule uses a path to load a module, if the path is relative, as in your case, it will be relative to the value in ServerRoot directive.
Since you have manually installed this third party module, you probably should define with full filesystem path to it.
Since you say you copied there already, make sure you are pointing to the correct installation.
It may be a compiler issue; I used binaries from: https://www.apachehaus.com/cgi-bin/download.plx
It may also be due to the version of msvcr120.dll:
mod_auth_openidc library requires msvcr120.dll which is the newer
version of Microsoft VC ++. It looks for this file. We used dependency
walker software to see the tree and what are the required files for
the mod_auth_openidc.iso. It showed missing msvcr120.dll file. We had
to update the current vc++ which added this missing dll in the
windows\System32 folder. and we could restart the server.
See:
https://github.com/pingidentity/mod_auth_openidc/issues/275#issuecomment-305302587

Locating Apache source code for mod_perl on Mac

I get the following error in Terminal when I try to install mod_perl:
Please tell me where I can find your apache src
[../apache_x.x/src]
I've tried using cpan > install mod_perl(even forcing v. 2) AND I've tried just downloading it, and doing $ perl Makefile but they both lead to the same error.
I'm trying to follow steps from http://bulknews.net/lib/mod_perl_guide/install.html or Oreilly's CGI Programming with Perl but the site says:
The first thing first is to download the Apache source code and unpack it into a directory -- the name of which you will need very soon
Mac comes with Apache, which is why I don't want to download it. But how can I find the apache src???
Update: Haven't checked, but did find apache2 folder in ~/private/var/log
Additional Info --- separate locations of mod_perl files:
I have an unzipped folder: mod_perl-1.31 in my ~/Downloads folder. (for manual install)
I found tar.gz files of mod_perl -1 and -2 in ~/G/GO/GOZER/mod_perl-1.31.tar.gz (or 2.04) (for cpan)
Should I delete these?
Let me know if there is any other info required to solve this, or if I somehow missed a post with this same question. Thanks a lot.
It's quite possible that Mac OS X doesn't ship with the apache source code (I'll be damned if I can find it.) I can find no references to it online or on my machine.
I am going to ignore the built-in Apache installation and install my own. This article discusses PHP and Apache on Mac OS X but I'll also be using mod_perl on my system and will adjust as necessary: http://www.phpied.com/installing-php-and-apache-on-mac-osx-that-was-pretty-easy/
Install it dynamically as a dso.
https://perl.apache.org/docs/2.0/user/install/install.html#Dynamic_mod_perl

Can you compile Apache HTTP Server and redeploy its binaries to a different location?

As part of our product release we ship Apache HTTP Server binaries that we have compiled on our (UNIX) development machine.
We tell our clients to install the binaries (on their UNIX servers) under the same directory structure that we compiled it under. For some clients this is not appropriate, e.g. where there are restrictions on where they can install software on their servers and they don't want to compile Apache themselves.
Is there a way of compiling Apache HTTP Server so its installation location(s) can be specified dynamically using environment variables ?
I spent a few days trying to sort this out and couldn't find a way to do it. It led me to believe that the Apache binaries were hard coding some directory paths at compilation preventing the portability we require.
Has anyone managed to do this ?
I think the way to do(get around) this problem is to develop a "./configure && make" script that your client uses to install, specify and compile the binaries. That would offcourse require that the client has all the source-code installed on his server or you can make it available on an NFS share.
If you are compiling Apache2 for a particular location but want your clients to be able to install it somewhere else (and I'm assuming they have the same architecture and OS as your build machine) then you can do it but the apachectl script will need some after-market hacking.
I just tested these steps:
Unpacked the Apache2 source (this should work with Apache 1.3 as well though) and ran ./configure --prefix=/opt/apache2
Ran make then sudo make install to install on the build machine.
Switch to the install directory (/opt/apache2) and tar and gzip up the binaries and config files. I used cd /opt/apache2; sudo tar cf - apache2 | gzip -c > ~/apache2.tar.gz
Move the tar file to the target machine. I decided to install in /opt/mynewdir/dan/apache2 to test. So basically, your clients can't use rpm or anything like that -- unless you know how to make that relocatable (I don't :-) ).
Anyway, your client's conf/httpd.conf file will be full of hard-coded absolute paths -- they can just change these to whatever they need. The apachectl script also has hard coded paths. It's just a shell script so you can hack it or give them a sed script to convert the old paths from your build machine to the new path on your clients.
I skipped all that hackery and just ran ./bin/httpd -f /opt/mynewdir/dan/conf/httpd.conf :-)
Hope that helps. Let us know any error messages you get if it's not working for you.
I think the way to do(get around) this problem is to develop a "./configure && make" script that your client uses to install, specify and compile the binaries. That would offcourse require that the client has all the source-code installed on his server or you can make it available on an NFS share.
Not to mention a complete build toolchain. These days, GCC doesn't come default with most major distributions. Wouldn't it be sane to force the client to install it to /opt/my_apache2/ or something like that?
#Hissohathair
I suggest 1 change to #Hissohathair's answer.
6). ./bin/httpd -d <server path> (although it can be overridden in the config file)
In apacheclt there is a variable for HTTPD where you could override to use it.