Systemd Unit - Executable is not an absolute path

I have installed powertop following this:
How to improve battery life using powertop
I have created file "/usr/local/bin/powertop_tuning.sh" and I have set some line within it.
Then I have done this file as executable:
sudo chmod +x /usr/local/bin/powertop_tuning.sh
Finally I create a service using systemd:
sudo $EDITOR /lib/systemd/system/powertop_tuning.service
and I set its content to:
[Unit]
Description="PowerTop Tuning config"
ConditionPathExists=/usr/local/bin/powertop_tuning.sh
[Service]
Type=oneshot
RemainAfterExit=yes
KillMode=none
ExecStart=/usr/local/bin/powertop_tuning.sh
ExecStop=exit
[Install]
WantedBy=multi-user.target
and set it to start automatically:
udo systemctl enable powertop_tuning.service
When I reboot my system, on boot time below message is shown:
systemd[1]: [/usr/lib/systemd/system/powertop_tuning.service:10] Executable path is not absolute, ignoring: exit
Service status is:
[toni@toni ~]$ systemctl status powertop_tuning.service
● powertop_tuning.service - "PowerTop Tuning config"
Loaded: loaded (/usr/lib/systemd/system/powertop_tuning.service; enabled)
Active: active (exited) since sáb 2014-11-22 15:35:43 CET; 1h 4min ago
Process: 492 ExecStart=/usr/local/bin/powertop_tuning.sh (code=exited, status=0/SUCCESS)
Main PID: 492 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/powertop_tuning.service
nov 22 15:35:43 toni systemd[1]: Started "PowerTop Tuning config".
Last edited by toni (2014-11-22 15:42:02)

jjacky wrote:
First of all, you shouldn't put files in /lib; put your own service files under /etc/systemd/system that's where they belongs.
Then, I'm not sure what the line "ExecStop=exit" is supposed to do, but it's what's causing the error and since your service simply consist of running a script once, there's no need for an ExecStop here, so you can just remove it.
Lastly, for such things you don't have to write your own service, you could also simply add a .conf file in /etc/tmpfiles.d with content such as:
# NMI watchdog should be turned off
f /proc/sys/kernel/nmi_watchdog - - - - 0
See `man tmpfiles.d` for more about this.
so what is the difference between using a service or using /etc/tmpfiles.d?
"/usr/local/bin/powertop_tuning.sh" file is:
#!/bin/bash
# Tiempo límite de reescritura VM
echo '1500' > '/proc/sys/vm/dirty_writeback_centisecs';
# Vigilancia NMI se debe apagar
echo '0' > '/proc/sys/kernel/nmi_watchdog';
# Habilitar administración de energía del codec de Audio
echo '1' > '/sys/module/snd_hda_intel/parameters/power_save';
# Enable SATA link power management for host3
echo 'min_power' > '/sys/class/scsi_host/host3/link_power_management_policy';
# Enable SATA link power management for host4
echo 'min_power' > '/sys/class/scsi_host/host4/link_power_management_policy';
# Enable SATA link power management for host1
echo 'min_power' > '/sys/class/scsi_host/host1/link_power_management_policy';
# Enable SATA link power management for host2
echo 'min_power' > '/sys/class/scsi_host/host2/link_power_management_policy';
# Enable SATA link power management for host0
echo 'min_power' > '/sys/class/scsi_host/host0/link_power_management_policy';
# Autosuspender para dispositivo USB AS2105 [ASMedia]
# echo 'auto' > '/sys/bus/usb/devices/4-3/power/control';
# Autosuspender para dispositivo USB desconocido 3-6 (8087:07dc)
# echo 'auto' > '/sys/bus/usb/devices/3-6/power/control';
# Autosuspender para dispositivo USB Microsoft® Nano Transceiver v2.0 [Microsoft]
# echo 'auto' > '/sys/bus/usb/devices/3-4/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2
echo 'auto' > '/sys/bus/pci/devices/0000:00:1a.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller
echo 'auto' > '/sys/bus/pci/devices/0000:00:00.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller
echo 'auto' > '/sys/bus/pci/devices/0000:00:01.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller
echo 'auto' > '/sys/bus/pci/devices/0000:00:03.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI
echo 'auto' > '/sys/bus/pci/devices/0000:00:14.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1
echo 'auto' > '/sys/bus/pci/devices/0000:00:16.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller
echo 'auto' > '/sys/bus/pci/devices/0000:00:1b.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1
echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3
echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.2/power/control';
# Tiempo de ejecución PM para dispositivo PCI Realtek Semiconductor Co., Ltd. RTS5249 PCI Express Card Reader
echo 'auto' > '/sys/bus/pci/devices/0000:05:00.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #6
echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.5/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1
echo 'auto' > '/sys/bus/pci/devices/0000:00:1d.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation HM86 Express LPC Controller
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode]
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.2/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.3/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation Wireless 3160
echo 'auto' > '/sys/bus/pci/devices/0000:03:00.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 4th Gen Core Processor Integrated Graphics Controller
echo 'auto' > '/sys/bus/pci/devices/0000:00:02.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
echo 'auto' > '/sys/bus/pci/devices/0000:04:00.0/power/control';
# Tiempo de ejecución PM para dispositivo PCI Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4
echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.3/power/control';
# Estado Wake-on-lan para dispositivo enp4s0
ethtool -s enp4s0 wol d;

Similar Messages

  • Oracle BI Publisher desktop - insert field does not make absolute path

    Hello everyone,
    I am using the Oracle BI Publisher desktop 11.1.1.5
    Lets have the given demodata
    <demodata>
         <person>
         <name>Peter</name>
         </person>
         <relative>
         <name>Mike</name>
         </relative>
    </demodata>
    As you can see the tag <name> is used as subchild in person, relative.
    next i start winword 2007 using the bip-extension. There is a button 'insered field' that opens a window with the demodata tree.
    When i pick person->relation->name there will be the expression <?name?> insered.
    Thats my problem, i need the absolute path to be insered, in this case <?/demodata/relation/name?>
    If the adressing is not absolute starting from the root the rendered Report will show 'Peter' as it is the first occurence of the <name> tag.
    I have not find out where to configure the word-plugin to make absolute paths in fields.
    Any ideas ?

    Thank you for your answer
    sure, it is possible to edit the fields by hand but my xml-structure is autogenerated (MDA-approach), nested and quiet complex. Manual tasks can lead to typing errors and sometimes i forget to edit one field afterwards.
    It would be just very handy when the tool does the work for me, it has all the information anyway.
    I wonder why am the first person that is having this request. In my opinion adressing starting from the root is clear and without ambiguity. In every field i can exactly read using the expression which element in the tree is used.
    In conclusion, it would be nice if the plugin let the user decide whether to use the short or the long syntax
    greetings,
    martin.

  • Deployment utility is not removing absolute path

    I'm using the deployment utility in TestStand 3.5 to create an image.  When I run the imaged sequence file I get an error  because TestStand tries to load a vi that is already loaded.  This only seems to happen with VIs that have absolute paths defined in the original test sequence.  My understanding was that TestStand removed dependencies on absolute paths during the build.  Do I need to remove the absolute paths in the original sequence file before using the build function?

    Ray,
    the UUT_Control.vi is loaded from in another sequence step as you suggested (the first call to UUT_Control does not use an absolute path) .  I also found the following info in the users manual :
    The TestStand Deployment Utility also performs processing on sequence
    files in order to remove absolute paths. ....The deployment utility corrects this potential problem by changing
    absolute path references in sequence files to relative paths that initiate from
    one of the following search directories:
    • Current sequence file directory
    • TestStand installation directory
    • Windows\System32 directory
    • Windows directory
    If the target file is located outside of these directories, TestStand uses a path
    that is relative to the installation directory and then adds the installation
    directory to the list of default search paths during the installation.
    My target file is outside the directories and I'm not creating an installation directory, just an image, so that is probably why TestStand is leaving the absolute path reference.
    Thanks for the help
    Bill

  • Ora:processXSLT xpath function and absolute paths

    It looks like ora:processXSLT xpath function does not honor absolute paths when specifying the location of the xslt to use in the first parameter. For example, if I call it like this:
    <copy>
    <from expression="ora:processXSLT('/u01/transforms/mytransform.xsl',bpws:getVariableData('xslInput','payload'))"/>
    <to variable="xslOutput"/>
    </copy>
    I get the following error in the bpel logs:
    Error while processing xpath expression, the expression is "ora:processXSLT('/u01/transforms/mytransform.xsl', bpws:getVariableData("xslInput", "payload"))", the reason is javax.xml.transform.TransformerException: java.io.FileNotFoundException: /u01/oracle/bpel/integration/orabpel/domains/test/tmp/.bpel_transformTest_1.0.jar/u01/transforms/mytransform.xsl (No such file or directory).
    Please verify the xpath query.
    It is assuming that the xsl will be relative to the bpel suitcase and just appending the supplied path to the relative path for the bpel process. Why would I want to do this? Well, I have hundreds of these maps and I want to be able to select one at runtime. I'm also adding new ones every day and I don't want to have to redeploy the process that uses them each time I add a new map. Is there any way to force this process to recognize the absolute path? I can work around it for now by using a bunch of ../../../../ stuff but that's a kludge and I'd like to find a better way to do it.
    I get the same error with xdk:processXSLT.
    Any suggestions?
    Thanks!
    Sean

    Hi Sean,
    Did you try to the file path with the file:// prefix and not just the path?
    ~ronen

  • Query JVM for executing JAR absolute path

    Good morning
    In order to use resources in an executed JAR file, I use the following :
    URL url = JARFILENAME.class.getResource(myResourceRelativePath);But, JARFILENAME is the name of the JAR file which is being executed and I would not like it to be hard coded. Is there anyway to query the JVM the absolute path of the executed JAR file ?
    Thanks a lot
    Christophe

    Good Afternoon everybody,
    Thank you very much Owen ! Your words were very helpful to me.
    In order to help other people who would like to process text files embedded in an executable JAR file, here all my sources for this example.
    HOW TO PROCESS TEXT FILES EMBEDDED IN AN EXECUTABLE JAR FILE WITH PACKAGED CLASS FILES
    File list for the project (after executing the makefile) :
    .\build
    .\docs
    .\src
    .\makefile.bat
    .\JarTextResourcesReaderDemo.jar
    .\sources.txt
    .\JarTextResourcesReaderDemo(Sources).zip
    .\build\cbismuth
    .\build\txt
    .\build\manifest.mf
    .\build\cbismuth\demos
    .\build\cbismuth\utils
    .\build\cbismuth\demos\JarTextResourcesReaderDemo.class
    .\build\cbismuth\utils\jar
    .\build\cbismuth\utils\jar\textreader
    .\build\cbismuth\utils\jar\textreader\JarTextResourcesReader.class
    .\build\txt\myTextFile.csv
    .\docs\cbismuth
    .\docs\package-list
    .\docs\resources
    .\docs\stylesheet.css
    .\docs\allclasses-frame.html
    .\docs\allclasses-noframe.html
    .\docs\constant-values.html
    .\docs\deprecated-list.html
    .\docs\help-doc.html
    .\docs\index.html
    .\docs\index-all.html
    .\docs\JarTextResourcesReader.html
    .\docs\JarTextResourcesReaderDemo.html
    .\docs\overview-frame.html
    .\docs\overview-summary.html
    .\docs\overview-tree.html
    .\docs\package-frame.html
    .\docs\package-summary.html
    .\docs\package-tree.html
    .\docs\cbismuth\demos
    .\docs\cbismuth\utils
    .\docs\cbismuth\demos\JarTextResourcesReaderDemo.html
    .\docs\cbismuth\demos\package-frame.html
    .\docs\cbismuth\demos\package-summary.html
    .\docs\cbismuth\demos\package-tree.html
    .\docs\cbismuth\utils\jar
    .\docs\cbismuth\utils\jar\textreader
    .\docs\cbismuth\utils\jar\textreader\JarTextResourcesReader.html
    .\docs\cbismuth\utils\jar\textreader\package-frame.html
    .\docs\cbismuth\utils\jar\textreader\package-summary.html
    .\docs\cbismuth\utils\jar\textreader\package-tree.html
    .\docs\resources\inherit.gif
    .\src\cbismuth
    .\src\cbismuth\demos
    .\src\cbismuth\utils
    .\src\cbismuth\demos\JarTextResourcesReaderDemo.java
    .\src\cbismuth\utils\jar
    .\src\cbismuth\utils\jar\textreader
    .\src\cbismuth\utils\jar\textreader\JarTextResourcesReader.java[b]File .\sources.txt :
    .\src\cbismuth\utils\jar\textreader\JarTextResourcesReader.java
    .\src\cbismuth\demos\JarTextResourcesReaderDemo.java[b]File .\makefile.bat :
    @title Java Project Compilation
    @echo off
    echo ------------------
    echo Old Files Deletion
    echo ------------------
    del /f /q *.zip
    del /f /q *.jar
    del /f /q build\cbismuth
    echo -----------
    echo Compilation
    echo -----------
    javac -O -deprecation -d build @sources.txt
    echo -------------------
    echo Java Doc Generation
    echo -------------------
    javadoc -author -version -private -windowtitle JarTextResourcesReaderDemo -d docs @sources.txt
    echo -------------------------
    echo Executable JAR Generation
    echo -------------------------
    cd build
    jar -cvfm JarTextResourcesReaderDemo.jar .\manifest.mf *
    move JarTextResourcesReaderDemo.jar ..
    cd ..
    echo ----------------------
    echo ZIP Project Generation
    echo ----------------------
    jar -cvf JarTextResourcesReaderDemo(Sources).zip *[b]File .\src\cbismuth\utils\jar\textreader\JarTextResourcesReader.java :
    package cbismuth.utils.jar.textreader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.lang.NullPointerException;
    import java.lang.IndexOutOfBoundsException;
    public class JarTextResourcesReader {
      protected BufferedReader[] readers = null;
      public JarTextResourcesReader(String[] paths) throws NullPointerException {
        int nbFiles = paths.length;
        readers = new BufferedReader[nbFiles];
        for (int i = 0; i < nbFiles; i++) {
          InputStream inputStream = this.getClass().getResourceAsStream(paths);
    this.readers[i] = new BufferedReader(new InputStreamReader(inputStream));
    if (readers[i] == null) {
    throw(new NullPointerException());
    public void print() {
    for (int i = 0; i < readers.length; i++) {
    String line = null;
    try {
    while((line = readers[i].readLine()) != null) {
    System.out.println(line);
    catch(IOException e) {
    // exception managment
    public BufferedReader getReaderAt(int i) throws IndexOutOfBoundsException {
    if (i > this.readers.length) {
    throw(new IndexOutOfBoundsException());
    else {
    return(this.readers[i]);
    public BufferedReader[] getReaders() {
    return(this.readers);
    public void close() {
    for (int i = 0; i < this.readers.length; i++) {
    try {
    readers[i].close();
    catch(IOException e) {
    // exception managment
    File .\src\cbismuth\demos\JarTextResourcesReaderDemo.java :
    package cbismuth.demos;
    import cbismuth.utils.jar.textreader.JarTextResourcesReader;
    public class JarTextResourcesReaderDemo {
      public static void main(String[] args) {
        String[] paths = new String[1];
        paths[0] = "/txt/myTextFile.csv";
        JarTextResourcesReader jtrr = new JarTextResourcesReader(paths);
        jtrr.print();
        jtrr.close();
    }[b]File .\build\txt\myTextFile.csv :
    Line 1 Column 1;Line 1 Column 2;Line 1 Column 3
    Line 2 Column 1;Line 2 Column 2;Line 2 Column 3[b]File .\build\manifest.mf :
    Main-Class: cbismuth.demos.JarTextResourcesReaderDemo
    [BLANK LINE !]NOTE : a blank line MUST be left at the end of the MANIFEST file !
    [b]Command line to execute the JAR file in the root directory :
    java -jar JarTextResourcesReaderDemo.jar[b]Output :
    Line 1 Column 1;Line 1 Column 2;Line 1 Column 3
    Line 2 Column 1;Line 2 Column 2;Line 2 Column 3[b]Special thanks to Owen !
    See you soon,
    Christophe

  • Getting the absolute path of the current executing file

    I have a file which will be placed in window and linux environment. It is not good to change the source code in that way:
    String path = "D:\\java\file1.txt"; (Window)
    String path = "/java/file1.txt"; (Linux)
    So I would like to ask how to get the absolute path based on that executing file?
    I referred to the reference in jsp, but I don't know what class and the coding syntax in console environment.
    Thx for any help.

    If you are looking to "get" a file that is located in a directory with (or somewhere under) the class file than use
    myClass.getClass().getResource(<relativePathWithFileFromClass>);  //URL
    myClass.getClass().getResourceAsStream(<relativePathWithFileFromClass>);  //InputStreamAs far as determining which Operating System you are on, there are a number of environment variables that will tell you that, and you can then format your file path accordingly.
    You can use "/" in your path regardless of which OS you are using. You do not have to use "\\" on Windows (excpet maybe inside of a Runtime.exec command string).
    Here is a very small program you can compile and run if you wish to see the list of System Properties available:
    public class ShowProperties {
      public static void main(String[] args) {
        System.getProperties().list(System.out);
    }Just save that to a file (named ShowProperties.java of course) and compile and run it, and you will get a list of your available System Properties and their current values

  • How to read images in jsp from an absolute path not from the web app?

    hello there
    i want to read images from an absolute path on the hard disk not from the images folder in the web application
    how to do that?
    thank you

    Ok. You don't give the servlet the full path of an image. You just give an image id in query string. E.g.
    http://my.server.com/imageServlet?id=12Id can be whatever: number as well as name.
    Then, in your servlet You get this id, then read an image file that is mapped for this id and sends it to browser via servlet output stream.
    On the jsp page you write sth similar to:
    <img src="http://my.server.com/imageServlet?id=12"/>and your image will be displayed using your servlet. The image file path is needed only in the servlet code to open the stream to file (image file can be stored wherever you want in file system), read it and write to output stream. Read the tutorial accessible via link I provided in the previous post.

  • Could not find agent library in absolute path

    Hi,
    I have a JVMTI agent which works on windows that I am trying to port to linux.
    I have compiled to code on Ubuntu 10.04 using Eclipse and have created shared library .so file.
    When I try to run an application with the agentpath argument, I get the error: "Could not find agent library in absolute path"
    When trying to run the mtrace sample from the java JDK, it works fine.
    My Java version is:
    java version "1.6.0_20"
    Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
    Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode, sharing)
    I also tried running nm | grep Agent_OnLoad and got the following:
    00029220 T Agent_OnLoad
    00036230 b ZGVZ12AgentOnLoadE4data
    00030720 r ZZ12AgentOnLoadE19__PRETTY_FUNCTION__
    00036240 b ZZ12AgentOnLoadE4data
    My agent references several libraries such as boost asio and log4cxx could it be related somehow to these?
    I think it might be some sort of compilation issue because on windows it works fine.
    Thanks

    I managed to solve my problem.
    It turned out that the error was caused by missing referenced libraries that were not linked in to my so file.
    Once I added all of the required libraries, the agent started working.

  • Without absolute path, SAXParser1.4   does not find schemLocation!!!!!

    Hello
    I am validating soap messages according to xsd files with the SAXParser, Java 1.4.
    My xsds include references to other xsd files as following sample shows:
    <xs:include schemaLocation="C:/temp/shiphome.xsd"/>      
    The problem is, how to say the parser where the including files are without working with absolute path to the including xsds!!!?
    The code finds the file as follow:
    factory.setAttribute("http://java.sun.com/xml/jaxp/properties/schemaSource", new File(schemaSource));
    Help!!
    Thanks

    Hi,
    well solution seems to be the following (from tomcat-users@...):
    j2ee.jar conflicts with some libraries from the tomcat-engine itsself.
    So my j2ee.jar 1.4 beta is ignored by the tomcat engine.
    I cannot place it in the general lib path, because i do not administrate the box myself.
    Solution for me is now to use the separate mail API (http://java.sun.com/products/javamail/) and javabeans (http://java.sun.com/products/javabeans/glasgow/).
    Hope that others find this helpfull, too.
    Do i get a refund for my J2EE book in my bookshelf, that i cannot use ?
    grml

  • Call Executable​, absolute path doesnt work as expected

    Hi all,
    i have a problem with the step call executable.
    I configure the step (call a .exe or bat file) with absolute path.
    As long as Teststand runs with the seq-file loaded all works fine.
    The problem shows up when i close the seq-file and reload it later.
    Then the configuration seems to be ok (still the absolute path).
    But when i execute the seq-file it runs the .exe or .bat file as it only has
    the relative path in the configuration.
    I know that, because it wanna load some files from the same folder
    and it doesn't find them after reloading the seq-file.
    Sincerely Stefan Bölsterli

    I use Teststand 3.0

  • Images using absolute path on portlet server not appearing when gatewayed

    I am gatewaying several applications via a Plumtree 5 Portal. Images in these applications when referenced using relative paths (../images/image.jpg) work. Images using absolute path (\applicationFolder\images\image.jpg). When gatewayed they are presented like this:
    http:\\plumtreeServer\portal\server.pt\gateway\PTARGS_0_212_252_0_0_43/https:%3B/remoteServer/applicationFolder/Web/\applicationFolder\images\image.jpg
    Any help would be greatly appreciated.

    I am gatewaying several applications via a Plumtree 5 Portal. Images in these applications when referenced using relative paths (../images/image.jpg) work. Images using absolute path (\applicationFolder\images\image.jpg). When gatewayed they are presented like this:
    http:\\plumtreeServer\portal\server.pt\gateway\PTARGS_0_212_252_0_0_43/https:%3B/remoteServer/applicationFolder/Web/\applicationFolder\images\image.jpg
    Any help would be greatly appreciated.

  • FileExists() using web-root, not absolute path...

    Is there a way to use FileExists() with some sort of %webRoot% system variable, rather than me having to know the absolute path in advance?  For example if my app is running on one machine where the webroot is C:\ColdFusion9\webroot\ and on another machine where it's E:\Inetpub\webroot, is there a way for me to write a single piece of code that will check for the existence of "%webroot%\webSite\myFile.cfm"?
    I guess what I'm really looking for here, is a system variable called something like %webRoot% in ColdFusion 9...  Does such an animal exist?
    Thanks,
    Laurence MacNeill
    Mableton, Georgia, USA

    Let assume my function is contained in a .CFC file in C:\Inetpub\webroot\myapp\mycfcs
    So if I used the following statement:
    <cfif FileExists(ExpandPath(..\newcfcs\AttendeeInfo.CFC))>
    it would return true if the file C:\Inetpub\webroot\myapp\newcfcs\AttendeeInfo.CFC existed, yes?
    If that's the case, then great -- thanks!
    L.

  • Absolute path to E:\Hudson in org.flexunit.assert() etc

    Hi there,
    I'm attempting to use flexrunner in a linux project. So far everything has been smoothly, thanks. Just pached my SDK vith linux air 2.6 runtimes and ran (a slightly modified) demo project. It seems like there is a build in path to E:\hudson .... in the flexunit-4.1.0.8-flex_4.1.0.16076.swc file is there a way to get the source for this project and build the libraries ensuring that I get the correct path set?
    Platfrom: Ubuntu 10.04
    ant: 1.8.x
    flex sdk: 4.5.1 pached with linux air 2.6 runtimes
    flexunit: 4.1.0-8
    absolute path bolded below
    Cheers,
    John
    jodi@ubuntu:~/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/ui/unittest$ ant -f build.air.xml
    Buildfile: /home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/ui/unittest/build.air.xml
    init:
    compile:
        [mxmlc] Loading configuration file /home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/make3/flex/frameworks/air-config.xml
        [mxmlc] /home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/ui/unittest/target/bin/Main.swf (498693 bytes)
        [mxmlc] Loading configuration file /home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/make3/flex/frameworks/air-config.xml
        [mxmlc] /home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/ui/unittest/target/bin/TestRunner.sw f (1011075 bytes)
    test:
    [flexunit] Validating task attributes ...
    [flexunit] Generating default values ...
    [flexunit] Using the following settings for the test run:
    [flexunit]     FLEX_HOME: [/home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/make3/flex]
    [flexunit]     haltonfailure: [true]
    [flexunit]     headless: [false]
    [flexunit]     display: [99]
    [flexunit]     localTrusted: [true]
    [flexunit]     player: [air]
    [flexunit]     port: [1024]
    [flexunit]     swf: [/home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/ui/unittest/target/bin/TestRunner.s wf]
    [flexunit]     timeout: [60000ms]
    [flexunit]     toDir: [/home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/ui/unittest/target/report]
    [flexunit] Setting up server process ...
    [flexunit] Starting server ...
    [flexunit] Opening server socket on port [1024].
    [flexunit] Waiting for client connection ...
    [flexunit] Found AIR version: 2.6
    [flexunit] Created application descriptor at [/home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/ui/unittest/target/bin/flexUnitDesc riptor.xml]
    [flexunit] Executing '/home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/make3/flex/bin/adl' with arguments:
    [flexunit] '/home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/ui/unittest/target/bin/flexUnitDesc riptor.xml'
    [flexunit]
    [flexunit] The ' characters around the executable and arguments are
    [flexunit] not part of the command.
    [flexunit]
    [flexunit] Client connected.
    [flexunit] Setting inbound buffer size to [262144] bytes.
    [flexunit] Receiving data ...
    [flexunit] Sending acknowledgement to player to start sending test data ...
    [flexunit]
    [flexunit] 9/29/2011 23:42:11.580 [INFO] FlexUnit4 Running 3 Tests
    [flexunit] <testcase classname="org.flexunit.demo::SampleTest" name="testSampleIgnore" time="0" status="ignore"><skipped /></testcase>
    [flexunit] 9/29/2011 23:42:11.618 [INFO] FlexUnit4 org.flexunit.demo::SampleTest.testSampleIgnore I
    [flexunit] 9/29/2011 23:42:11.621 [INFO] FlexUnit4 org.flexunit.demo::SampleTest.testSampleFailure .
    [flexunit] <testcase classname="org.flexunit.demo::SampleTest" name="testSampleFailure" time="70" status="failure"><failure message="FAIL! - This is a sample test that will fail." type="org.flexunit.demo::SampleTest.testSampleFailure" ><![CDATA[FAIL! - This is a sample test that will fail.
    [flexunit]     at org.flexunit::Assert$/fail()[E:\hudson\jobs\FlexUnit4-Flex4.1\workspace\FlexUnit4\src\org \flexunit\Assert.as:294]
    [flexunit]     at org.flexunit.demo::SampleTest/testSampleFailure()[/home/jodi/ccm_wa/ME_ECS/BES3_devel~jod i1/BES3_devel/ui/unittest/src/test/flex/org/flexunit/demo/SampleTest.as:8]
    [flexunit]     at Function/http://adobe.com/AS3/2006/builtin::apply()
    [flexunit]     at flex.lang.reflect::Method/apply()[E:\hudson\jobs\FlexUnit4-Flex4.1\workspace\FlexUnit4\sr c\flex\lang\reflect\Method.as:244]
    [flexunit]     at org.flexunit.runners.model::FrameworkMethod/invokeExplosively()[E:\hudson\jobs\FlexUnit4- Flex4.1\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:201]
    [flexunit]     at org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[E:\hudson\jobs\FlexUni t4-Flex4.1\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\InvokeMethod. as:72]
    [flexunit]     at org.flexunit.internals.runners.statements::StackAndFrameManagement/handleTimerComplete()[ E:\hudson\jobs\FlexUnit4-Flex4.1\workspace\FlexUnit4\src\org\flexunit\internals\runners\st atements\StackAndFrameManagement.as:138]
    [flexunit]     at flash.events::EventDispatcher/dispatchEventFunction()
    [flexunit]     at flash.events::EventDispatcher/dispatchEvent()
    [flexunit]     at flash.utils::Timer/tick()]]></failure></testcase>
    [flexunit] 9/29/2011 23:42:11.763 [WARN] FlexUnit4 org.flexunit.demo::SampleTest.testSampleFailure F
    [flexunit] 9/29/2011 23:42:11.775 [INFO] FlexUnit4 org.flexunit.demo::SampleTest.testSampleError .
    [flexunit] FlexUnit test testSampleIgnore in suite org.flexunit.demo.SampleTest was ignored.
    [flexunit] <testcase classname="org.flexunit.demo::SampleTest" name="testSampleError" time="108" status="error"><error message="ERROR! - This is an error" type="org.flexunit.demo::SampleTest.testSampleError" ><![CDATA[Error: ERROR! - This is an error
    [flexunit]     at org.flexunit.demo::SampleTest/testSampleError()[/home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1 /BES3_devel/ui/unittest/src/test/flex/org/flexunit/demo/SampleTest.as:13]
    [flexunit]     at Function/http://adobe.com/AS3/2006/builtin::apply()
    [flexunit]     at flex.lang.reflect::Method/apply()[E:\hudson\jobs\FlexUnit4-Flex4.1\workspace\FlexUnit4\sr c\flex\lang\reflect\Method.as:244]
    [flexunit]     at org.flexunit.runners.model::FrameworkMethod/invokeExplosively()[E:\hudson\jobs\FlexUnit4- Flex4.1\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:201]
    [flexunit]     at org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[E:\hudson\jobs\FlexUni t4-Flex4.1\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\InvokeMethod. as:72]
    [flexunit]     at org.flexunit.internals.runners.statements::StackAndFrameManagement/handleTimerComplete()[ E:\hudson\jobs\FlexUnit4-Flex4.1\workspace\FlexUnit4\src\org\flexunit\internals\runners\st atements\StackAndFrameManagement.as:138]
    [flexunit]     at flash.events::EventDispatcher/dispatchEventFunction()
    [flexunit]     at flash.events::EventDispatcher/dispatchEvent()
    [flexunit]     at flash.utils::Timer/tick()]]></error></testcase>
    [flexunit] 9/29/2011 23:42:11.885 [ERROR] FlexUnit4 org.flexunit.demo::SampleTest.testSampleError E
    [flexunit] <endOfTestRun/>
    [flexunit] 9/29/2011 23:42:12.044 [INFO] FlexUnit4 Time: .314
    [flexunit] 9/29/2011 23:42:12.045 [WARN] FlexUnit4 There were 2 failures:
    [flexunit] 9/29/2011 23:42:12.046 [WARN] FlexUnit4 FAILURES!!! Tests run: 2, 2 Failures:
    [flexunit] FlexUnit test testSampleFailure in suite org.flexunit.demo.SampleTest failed.
    [flexunit] FlexUnit test testSampleError in suite org.flexunit.demo.SampleTest had errors.
    [flexunit]
    [flexunit] Stopping server ...
    [flexunit] End of test data reached, sending acknowledgement to player ...
    [flexunit] Closing client connection ...
    [flexunit] Closing server on port [1024] ...
    q [flexunit] Analyzing reports ...
    [flexunit]
    [flexunit] Suite: org.flexunit.demo.SampleTest
    [flexunit] Tests run: 3, Failures: 1, Errors: 1, Skipped: 1, Time elapsed: 0.178 sec
    [flexunit]
    [flexunit] Results :
    [flexunit]
    [flexunit] Tests run: 3, Failures: 1, Errors: 1, Skipped: 1, Time elapsed: 0.178 sec
    [flexunit]
    BUILD FAILED
    /home/jodi/ccm_wa/ME_ECS/BES3_devel~jodi1/BES3_devel/ui/unittest/build.air.xml:81: FlexUnit tests failed during the test run.
    Total time: 3 minutes 11 seconds

    Rupert:
    I think all of the AIR/SDK changes, etc. are red herrings. I think you have a relatively simple problem. The key is in the first error you posted.
    "method not implemented org.flexunit.internals.runners.statements::IAsyncHandlingStatement/org.flexunit.internals .runners.statements:IAsyncHandlingStatement::handleBindableNextSequence()
       over-binding 0 in org.flexunit.internals.runners.statements::ExpectAsyn"
    This is telling you that something you claim implements IAsyncHandlingStatement doesn't have a required method, named handleBindableNextSequence. This is a big clue. handleBindableNextSequence is a required method of this interface if you are building the library with the Flex extensions. This method is not required if you build the library without these extensions (ActionScript only)
    So, I would wager you have one of two things happening.
    Scenario A, you have two copies of FlexUnit4 in different projects or libraries. One of them is a Flex4 ActionScript Only version, and one is a Flex version and the linker is confused as well causing these errors to occur at runtime.
    Scenario B, one your libraries is referencing and/or building FlexUnit 4 classes into it. Then in your test project you are using a different copy of FlexUnit 4 during test and again, you have a mistmatch of AS-only versions and Flex versions.
    Unless you are using a beta version of FlexUnit, which you didn't mention, the core libraries have not changed since last december and this particular class hasn't changes since nearly a year before that.
    I can replicate that error if I setup two projects on my machine and mix the versions of the FlexUnit4.swc as I mention above.
    Mike

  • Timing issues with systemd units auto-updating rEFInd on ESP

    Aim: I wanted to use systemd to auto-update the following files and directories in EFI/arch_refind/:
    drivers_x64/ext4_x64.efi fonts/ icons/ refind_x64.efi
    Initially, I tried to do this with a single .path and .service pair but although it worked initially, I had problems with things respawning too quickly. As a result I ended up with nothingness on the ESP. I figured that the problem might be that because I had different changed-path conditions in the .path file, the .service file was getting run multiple times as pacman updated the refind package. In an attempt to address this, I split the files into four pairs with each one handling a specific change.
    For updating the .efi itself:
    # /etc/systemd/system/refind-update-efi.path
    [Unit]
    Description=Copy rEFInd EFI to UEFISYS Partition
    [Path]
    PathChanged=/usr/lib/refind/refind_x64.efi
    [Install]
    WantedBy=multi-user.target
    and:
    # /etc/systemd/system/refind-update-efi.service
    [Unit]
    Description=Copy rEFInd EFI to UEFISYS Partition
    [Service]
    Type=oneshot
    ExecStart=/usr/bin/cp -f /usr/lib/refind/refind_x64.efi /boot/efi/EFI/arch_refind/refind_x64.efi
    For updating the file system driver:
    # /etc/systemd/system/refind-update-ext4.path
    [Unit]
    Description=Copy rEFInd ext4 driver to UEFISYS Partition
    [Path]
    PathChanged=/usr/lib/refind/drivers_x64/ext4_x64.efi
    [Install]
    WantedBy=multi-user.target
    and:
    # /etc/systemd/system/refind-update-ext4.service
    [Unit]
    Description=Copy rEFInd ext4 driver to UEFISYS Partition
    [Service]
    Type=oneshot
    ExecStart=/usr/bin/mkdir -p /boot/efi/EFI/arch_refind/drivers_x64
    ExecStart=/usr/bin/cp -f /usr/lib/refind/drivers_x64/ext4_x64.efi /boot/efi/EFI/arch_refind/drivers_x64/ext4_x64.efi
    For the fonts directory:
    # /etc/systemd/system/refind-update-fonts.path
    [Unit]
    Description=Copy rEFInd fonts to UEFISYS Partition
    [Path]
    PathChanged=/usr/share/refind/fonts
    [Install]
    WantedBy=multi-user.target
    and:
    # /etc/systemd/system/refind-update-fonts.service
    [Unit]
    Description=Copy rEFInd fonts to UEFISYS Partition
    [Service]
    Type=oneshot
    ExecStart=/usr/bin/rm -rf /boot/efi/EFI/arch_refind/fonts
    ExecStart=/usr/bin/cp -pr /usr/share/refind/fonts /boot/efi/EFI/arch_refind/fonts
    For the icons directory:
    # /etc/systemd/system/refind-update-icons.path
    [Unit]
    Description=Copy rEFInd icons to UEFISYS Partition
    [Path]
    PathChanged=/usr/share/refind/icons
    [Install]
    WantedBy=multi-user.target
    and:
    # /etc/systemd/system/refind-update-icons.service
    [Unit]
    Description=Copy rEFInd icons to UEFISYS Partition
    [Service]
    Type=oneshot
    ExecStart=/usr/bin/rm -rf /boot/efi/EFI/arch_refind/icons
    ExecStart=/usr/bin/cp -pr /usr/share/refind/icons /boot/efi/EFI/arch_refind/icons
    However, I am still getting errors:
    Gor 09 01:40:58 MyComputer systemd[1]: Stopping Copy rEFInd fonts to UEFISYS Partition.
    Gor 09 01:42:25 MyComputer systemd[1]: Starting Copy rEFInd fonts to UEFISYS Partition.
    Gor 09 02:25:21 MyComputer systemd[1]: Stopping Copy rEFInd fonts to UEFISYS Partition.
    Gor 09 02:25:21 MyComputer systemd[1]: Stopped Copy rEFInd fonts to UEFISYS Partition.
    Gor 09 02:25:21 MyComputer systemd[1]: Stopping Copy rEFInd ext4 driver to UEFISYS Partition.
    Gor 09 02:25:21 MyComputer systemd[1]: Stopped Copy rEFInd ext4 driver to UEFISYS Partition.
    Gor 09 02:25:21 MyComputer systemd[1]: Stopping Copy rEFInd EFI to UEFISYS Partition.
    Gor 09 02:25:21 MyComputer systemd[1]: Stopped Copy rEFInd EFI to UEFISYS Partition.
    Gor 09 02:25:21 MyComputer systemd[1]: Stopping Copy rEFInd icons to UEFISYS Partition.
    Gor 09 02:25:21 MyComputer systemd[1]: Stopped Copy rEFInd icons to UEFISYS Partition.
    Gor 09 02:26:13 MyComputer systemd[1]: Starting Copy rEFInd fonts to UEFISYS Partition.
    Gor 09 02:29:47 MyComputer systemd[1]: Stopping Copy rEFInd fonts to UEFISYS Partition.
    Gor 09 02:29:47 MyComputer systemd[1]: Stopped Copy rEFInd fonts to UEFISYS Partition.
    Gor 09 02:29:47 MyComputer systemd[1]: Stopping Copy rEFInd ext4 driver to UEFISYS Partition.
    Gor 09 02:29:47 MyComputer systemd[1]: Stopped Copy rEFInd ext4 driver to UEFISYS Partition.
    Gor 09 02:29:47 MyComputer systemd[1]: Stopping Copy rEFInd EFI to UEFISYS Partition.
    Gor 09 02:29:47 MyComputer systemd[1]: Stopped Copy rEFInd EFI to UEFISYS Partition.
    Gor 09 02:29:47 MyComputer systemd[1]: Stopping Copy rEFInd icons to UEFISYS Partition.
    Gor 09 02:29:47 MyComputer systemd[1]: Stopped Copy rEFInd icons to UEFISYS Partition.
    <refind is upgraded at 22:24 according to pacman's log>
    Gor 09 22:24:47 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd fonts to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: Started Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd EFI to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd ext4 driver to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: Started Copy rEFInd fonts to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer cp[13179]: /usr/bin/cp: cannot stat ‘/usr/lib/refind/drivers_x64/ext4_x64.efi’: No such file or directory
    Gor 09 22:24:48 MyComputer cp[13174]: /usr/bin/cp: cannot stat ‘/usr/lib/refind/refind_x64.efi’: No such file or directory
    Gor 09 22:24:48 MyComputer systemd[1]: refind-update-efi.service: main process exited, code=exited, status=1/FAILURE
    Gor 09 22:24:48 MyComputer systemd[1]: Failed to start Copy rEFInd EFI to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Unit refind-update-efi.service entered failed state.
    Gor 09 22:24:48 MyComputer systemd[1]: refind-update-ext4.service: main process exited, code=exited, status=1/FAILURE
    Gor 09 22:24:48 MyComputer systemd[1]: Failed to start Copy rEFInd ext4 driver to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Unit refind-update-ext4.service entered failed state.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd EFI to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: Started Copy rEFInd EFI to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd ext4 driver to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: Started Copy rEFInd ext4 driver to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: Started Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: Started Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: Started Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: Started Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: refind-update-icons.service start request repeated too quickly, refusing to start.
    Gor 09 22:24:48 MyComputer systemd[1]: Failed to start Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Unit refind-update-icons.service entered failed state.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: refind-update-icons.service start request repeated too quickly, refusing to start.
    Gor 09 22:24:48 MyComputer systemd[1]: Failed to start Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: refind-update-icons.service start request repeated too quickly, refusing to start.
    Gor 09 22:24:48 MyComputer systemd[1]: Failed to start Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: refind-update-icons.service start request repeated too quickly, refusing to start.
    Gor 09 22:24:48 MyComputer systemd[1]: Failed to start Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: refind-update-icons.service start request repeated too quickly, refusing to start.
    Gor 09 22:24:48 MyComputer systemd[1]: Failed to start Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: refind-update-icons.service start request repeated too quickly, refusing to start.
    Gor 09 22:24:48 MyComputer systemd[1]: Failed to start Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: refind-update-icons.service start request repeated too quickly, refusing to start.
    Gor 09 22:24:48 MyComputer systemd[1]: Failed to start Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd icons to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: refind-update-icons.service start request repeated too quickly, refusing to start.
    Gor 09 22:24:48 MyComputer systemd[1]: Failed to start Copy rEFInd icons to UEFISYS Partition.
    Gor 09 22:24:48 MyComputer systemd[1]: Starting Copy rEFInd fonts to UEFISYS Partition...
    Gor 09 22:24:48 MyComputer systemd[1]: Started Copy rEFInd fonts to UEFISYS Partition.
    <reboot to test kernel>
    Gor 10 00:05:41 MyComputer systemd[1]: Stopping Copy rEFInd fonts to UEFISYS Partition.
    Gor 10 00:05:41 MyComputer systemd[1]: Stopped Copy rEFInd fonts to UEFISYS Partition.
    Gor 10 00:05:41 MyComputer systemd[1]: Stopping Copy rEFInd ext4 driver to UEFISYS Partition.
    Gor 10 00:05:41 MyComputer systemd[1]: Stopped Copy rEFInd ext4 driver to UEFISYS Partition.
    Gor 10 00:05:41 MyComputer systemd[1]: Stopping Copy rEFInd EFI to UEFISYS Partition.
    Gor 10 00:05:41 MyComputer systemd[1]: Stopped Copy rEFInd EFI to UEFISYS Partition.
    Gor 10 00:05:41 MyComputer systemd[1]: Stopping Copy rEFInd icons to UEFISYS Partition.
    Gor 10 00:05:41 MyComputer systemd[1]: Stopped Copy rEFInd icons to UEFISYS Partition.
    Gor 10 00:07:22 MyComputer systemd[1]: Starting Copy rEFInd fonts to UEFISYS Partition.
    It seems that systemd is too quick. It notices that something has changed e.g. that /usr/lib/refind/refind_x64.efi has been removed, triggers the service and then finds there is no /usr/lib/refind/refind_x64.efi to copy because the new version has not yet been installed. In the case of the .efi files, the service always seems to somehow manage to get everything into place but in the case of the fonts and icons (icons shown above), it often does not.
    I'm not sure why this happens because I based this on the service file I found the wiki for keeping the kernel and initramfs synced to the ESP. So I would think it should work for at least the single file cases, if not the directories. Indeed my EFI update service syncs the kernel and initramfsx2 to the ESP flawlessly (up to now) even though the .path unit for that includes 3 triggering conditions and the .service and .path files are set up just the same.
    I've read the manual pages for systemd.{path,service,unit} and couldn't see anything obviously helpful although I'm curious about timer units so I looked at the information on those but I guess they are for rather more sophisticated services than mine. I also looked at the wiki for systemd but it does not say anything about this kind of issue.
    Intuitively, I wondered if there is not a clean way of telling systemd to wait until changes to the path have completed before running the service. Obviously I can think of ways to force the service to wait just by using sleep or something but I am sure that that is not the correct way to do it. So I'm pretty sure there is something wrong about the way I've set these up but I am just not seeing what it is. Any hints would be appreciated!

    I have actually modified the refind path/service units somewhat, but it still works flawlessly for me. I usually wait for 2-5 min after pkg updates so that all the changes are synced to EFISYS before I reboot. There are the ones I use currently:
    refind-efi_copy.path
    [Unit]
    Description=Copy rEFInd files to EFI System Partition
    [Path]
    PathChanged=/usr/lib/refind/refind_x64.efi
    PathChanged=/usr/lib/refind/drivers_x64/ext4_x64.efi
    PathChanged=/usr/lib/refind/drivers_x64/btrfs_x64.efi
    PathChanged=/usr/lib/refind/drivers_x64/reiserfs_x64.efi
    PathChanged=/usr/lib/refind/drivers_x64/iso9660_x64.efi
    PathChanged=/usr/lib/refind/drivers_x64/hfs_x64.efi
    PathChanged=/mnt/Source_Codes_Partition/Source_Codes/My_Files/Bootloader_Config_Files/refind_uefi/refind_uefi.conf
    PathChanged=/mnt/Source_Codes_Partition/Source_Codes/My_Files/Bootloader_Config_Files/refind_uefi/refind_uefi_linux.conf
    PathChanged=/mnt/Source_Codes_Partition/Source_Codes/My_Files/Bootloader_Config_Files/refind_uefi/refind_uefi_linux_boot.conf
    PathChanged=/mnt/Source_Codes_Partition/Source_Codes/My_Files/Bootloader_Config_Files/refind_uefi/refind_uefi_archboot.conf
    Unit=refind-efi_copy.service
    [Install]
    WantedBy=multi-user.target
    refind-efi_copy.service
    [Unit]
    Description=Copy rEFInd files to EFI System Partition
    # Requires=efisys.mount
    [Service]
    Type=oneshot
    ExecStart=/usr/bin/cp -f /usr/lib/refind/refind_x64.efi /efisys/EFI/refind/refind_x64.efi
    ExecStart=/usr/bin/sbsign --key /efisys/EFI/tools/efitools/db.key --cert /efisys/EFI/tools/efitools/db.crt --output /efisys/EFI/refind/refind_x64.efi /usr/lib/refind/refind_x64.efi
    ExecStart=/usr/bin/cp -f /usr/lib/refind/drivers_x64/ext4_x64.efi /efisys/EFI/tools/drivers_x64/ext4_x64.efi
    ExecStart=/usr/bin/sbsign --key /efisys/EFI/tools/efitools/db.key --cert /efisys/EFI/tools/efitools/db.crt --output /efisys/EFI/tools/drivers_x64/ext4_x64.efi /usr/lib/refind/drivers_x64/ext4_x64.efi
    ExecStart=/usr/bin/cp -f /usr/lib/refind/drivers_x64/btrfs_x64.efi /efisys/EFI/tools/drivers_x64/btrfs_x64.efi
    ExecStart=/usr/bin/sbsign --key /efisys/EFI/tools/efitools/db.key --cert /efisys/EFI/tools/efitools/db.crt --output /efisys/EFI/tools/drivers_x64/btrfs_x64.efi /usr/lib/refind/drivers_x64/btrfs_x64.efi
    ExecStart=/usr/bin/cp -f /usr/lib/refind/drivers_x64/reiserfs_x64.efi /efisys/EFI/tools/drivers_x64/reiserfs_x64.efi
    ExecStart=/usr/bin/sbsign --key /efisys/EFI/tools/efitools/db.key --cert /efisys/EFI/tools/efitools/db.crt --output /efisys/EFI/tools/drivers_x64/reiserfs_x64.efi /usr/lib/refind/drivers_x64/reiserfs_x64.efi
    ExecStart=/usr/bin/cp -f /usr/lib/refind/drivers_x64/iso9660_x64.efi /efisys/EFI/tools/drivers_x64/iso9660_x64.efi
    ExecStart=/usr/bin/sbsign --key /efisys/EFI/tools/efitools/db.key --cert /efisys/EFI/tools/efitools/db.crt --output /efisys/EFI/tools/drivers_x64/iso9660_x64.efi /usr/lib/refind/drivers_x64/iso9660_x64.efi
    ExecStart=/usr/bin/cp -f /usr/lib/refind/drivers_x64/hfs_x64.efi /efisys/EFI/tools/drivers_x64/hfs_x64.efi
    ExecStart=/usr/bin/sbsign --key /efisys/EFI/tools/efitools/db.key --cert /efisys/EFI/tools/efitools/db.crt --output /efisys/EFI/tools/drivers_x64/hfs_x64.efi /usr/lib/refind/drivers_x64/hfs_x64.efi
    ExecStart=/usr/bin/cp -f /mnt/Source_Codes_Partition/Source_Codes/My_Files/Bootloader_Config_Files/refind_uefi/refind_uefi.conf /efisys/EFI/refind/refind.conf
    ExecStart=/usr/bin/cp -f /mnt/Source_Codes_Partition/Source_Codes/My_Files/Bootloader_Config_Files/refind_uefi/refind_uefi.conf /efisys/EFI/boot/refind.conf
    ExecStart=/usr/bin/cp -f /mnt/Source_Codes_Partition/Source_Codes/My_Files/Bootloader_Config_Files/refind_uefi/refind_uefi_linux.conf /efisys/EFI/arch/core/refind_linux.conf
    ExecStart=/usr/bin/cp -f /mnt/Source_Codes_Partition/Source_Codes/My_Files/Bootloader_Config_Files/refind_uefi/refind_uefi_linux.conf /efisys/EFI/arch/mainline/refind_linux.conf
    ExecStart=/usr/bin/cp -f /mnt/Source_Codes_Partition/Source_Codes/My_Files/Bootloader_Config_Files/refind_uefi/refind_uefi_linux_boot.conf /boot/refind_linux.conf
    ExecStart=/usr/bin/rm -rf /efisys/EFI/refind/icons
    ExecStart=/usr/bin/cp -rf /usr/share/refind/icons /efisys/EFI/refind/icons
    ExecStart=/usr/bin/rm -rf /efisys/EFI/refind/fonts
    ExecStart=/usr/bin/cp -rf /usr/share/refind/fonts /efisys/EFI/refind/fonts
    Last edited by the.ridikulus.rat (2013-07-11 15:16:18)

  • Loading External SWF using Absolute Path

    Hi,
    I am having trouble loading an external swf on a server using the absolute path. This external swf uses webcam streams and is loaded in the original swf file using the URL request code. I can load other swfs but just not that one. I have set the permission of the external swf to allow write/read/execute. Any help is apprieciated.
    P.S. I have also tried changing the location and name but still doesn't help.
    //Loads the augmented SWF into the main timeline.
    var request:URLRequest = new URLRequest("http://www.reminisce.me/files/jz_AR.swf");
    var loader:Loader = new Loader()
    loader.load(request);
    arHolder.addChild(loader);
    arHolder.x=300;
    arHolder.y=125;
    Thank you for your help in advance.
    -John

    I can´t get the linked swf to run in any browser, are you sure that it compiled right?

Maybe you are looking for

  • Adlibout: error: while applying  AD 12.1.1 upgrade driver

    Hi , O/S Windows 2003 server Apps 11.5.10.2 DB 10.2.04 I have included C:\cygwin\bin to my system path.however when i checked which ar it is showing which ar */usr/bin/ar* contents of the logfile setEnvAdrelink: Error: Cannot open registry key: SOFTW

  • New iPod  Hi-Fi with issue

    Hi, I purchased a new Hi-Fi yesterday and haven't had any luck. It seems extremely easy to use but... I plugged the hi-Fi into ac power and the status light functions accordingly. The remote as well as the volume buttons also cause the status light t

  • Error in Transport... Info provider does not exist

    Hello, I'm getting an error 12 and my transport is getting cancelled due to the following message: Infocube/Infoprovider 100481 does not exist Error R7 791 when handling objects with type R3TR CUBE. I tried looking for a solution. I came across this

  • WRT610N NAS NTFS issue for deleting directory

    Dear all, I got one issue with the WRT610N and the NAS feature. This is really a nightmare. I have been looking everywhere, I found people with the same issue but never find any solution. I am running Vista on a laptop connected to the WRT610N via th

  • Do people auto start with init?

    Hi. I was just wondering whether it is a common practice to auto start an entire stack (e.g. Node Manager, Admin Server(s), Management Server(s)) all via init scripts+chkconfig? I have been doing this for Oracle Application Server, now requested to d