>From what I see, OpenGrok indexing is very quick, even on my 10 year old PC with 16 GB RAM. And we could trigger it less often, eg. daily.
It isn't only C++ that OpenGrok indexes, but many other languages. I used it to search for the "portable" PKGFORMAT, and tried to understand how it is processed and what it means, which involved Perl code. On Thu, Sep 24, 2026 at 3:44 PM <[email protected]> wrote: > i am sorry. I did not care much about the server. One of the first > things i depriorized. > > And it seems that the server does not have the CPU power to deal with > the re-indexing that is triggered all the time because we really moving > now. > > I have added a language server Protocol tool to bazel-migration. it > produces an xml file which resolves the uno calls in our code. > > Sadly the C++ resolution does not work on my experimental IDE (i tried > lapce). But if i create maybe one that can do this too, there is no need > for opengrok at all? > > Am 24.09.2026 um 15:26 schrieb Damjan Jovanovic: > > Hi > > > > I've lost hope in http://opengrok.openoffice.org/ working when I need > it, > > and got OpenGrok running on my PC instead. > > > > Also recently FreeBSD finally got Podman working, which now supports > > FreeBSD upstream, is compatible with Docker images, and able to run Linux > > Docker containers at full performance using its Linux compatibility layer > > :-). > > > > After some exploration, I got it working quite easily: > > > > 1. Make these directories: > > /opt/opengrok/data - empty > > /opt/opengrok/etc - empty > > /opt/opengrok/openoffice-git - clean working tree with the branch you > want > > (eg. trunk) checked out > > > > 2. Copy the XML below and paste it as > > /opt/opengrok/etc/opengrok_custom_config.xml. It was derived from > > images/opengrok/opengrok_custom_config.xml in > > https://gitbox.apache.org/repos/asf/openoffice-devtools.git but changed > to > > use 4 spaces per tab (in a way that works): > > > > <?xml version="1.0" encoding="UTF-8"?> > > <java version="1.8.0_121" class="java.beans.XMLDecoder"> > > <object class="org.opengrok.indexer.configuration.Configuration" > > id="Configuration0"> > > <void property="projects"> > > <void method="put"> > > <string>openoffice-git</string> > > <object class="org.opengrok.indexer.configuration.Project"> > > <void property="name"> > > <string>openoffice-git</string> > > </void> > > <void property="path"> > > <string>/openoffice-git</string> > > </void> > > <void property="tabSize"> > > <int>4</int> > > </void> > > </object> > > </void> > > </void> > > <void id="IgnoredNames0" property="ignoredNames"> > > <void id="IgnoredFiles0" property="ignoredFiles"> > > <void property="items"> > > <void method="add"> > > <string>*.log</string> > > </void> > > <void method="add"> > > <string>*.tmp</string> > > </void> > > <void method="add"> > > <string>*.xls</string> > > </void> > > <void method="add"> > > <string>*.jpg</string> > > </void> > > <void method="add"> > > <string>*.ods</string> > > </void> > > <void method="add"> > > <string>*.otp</string> > > </void> > > <void method="add"> > > <string>*.ods</string> > > </void> > > <void method="add"> > > <string>*.odt</string> > > </void> > > <void method="add"> > > <string>*.zip</string> > > </void> > > <void method="add"> > > <string>*.txt</string> > > </void> > > </void> > > </void> > > </void> > > </object> > > </java> > > > > > > 3. podman run \ > > --name opengrok-aoo \ > > -d \ > > --restart=unless-stopped \ > > -v > > > /opt/opengrok/etc/opengrok_custom_config.xml:/opengrok/etc/opengrok_custom_config.xml > > \ > > -v /opt/opengrok/openoffice-git:/opengrok/src/openoffice-git \ > > -v /opt/opengrok/data:/opengrok/data \ > > -v /etc/localtime:/etc/localtime:ro \ > > -e READONLY_CONFIG_FILE=/opengrok/etc/opengrok_custom_config.xml \ > > -e SYNC_PERIOD_MINUTES=0 \ > > -e NOMIRROR=1 \ > > --network=host \ > > docker.io/opengrok/docker:latest > > > > On FreeBSD you also need: > > --os linux > > -v /compat/linux/proc:/proc > > to enable Linux compatibility, and mount linprocfs from the host's > > /compat/linux/proc to the container's /proc. > > > > Note how: > > - you can replace "podman" with "docker", they use the same command line > > options. > > - mounting into /opengrok/data persists data across restarts. > > - mounting /etc/localtime is for timezone. > > - I needed "--network=host" but "-p 8080:8080" should also work, still > > investigating. > > - the syncing and mirroring could also be left on. > > - podman wants the full URL docker.io/opengrok/docker:latest instead of > > opengrok/docker:latest, it's also more secure that way. > > - you can monitor logs with "podman logs -f opengrok-aoo". > > > > It works remarkably well and requires no further setup, just visit > > http://localhost:8080 and start using it :-). The project will only > become > > visible after indexing finishes, which took about 15 minutes after first > > start for me. > > > > If it takes a long time to start indexing, that's because it uselessly > > tries to contact a Perforce server ( > > https://github.com/oracle/opengrok/discussions/4572). It's possible to > > shell into the container and uninstall the Perforce apt packages to skip > > that, as described on that bug report. > > > > Don't use your main working tree because it will index binaries and > > generated files, and chown all your files to user:group 1111:1111. Use a > > separate, clean working tree, with no generated files. > > > > It's also MUCH faster locally :-), due to shorter round-trip times. > > > > Regards > > Damjan > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > >
