收起左侧

等不了官方,自己动手把三方应用等等加到飞牛桌面!

11
回复
3630
查看
[ 复制链接 ]

3

主题

8

回帖

0

牛值

fnOS系统内测组

2025-1-27 19:54:52 显示全部楼层 阅读模式

[i=s] 本帖最后由 玉尺书生 于 2025-3-19 12:36 编辑 [/i]<br /> <br />

前因

官方已经上线的需求里有一个添加自定义图标,但是我个人认为做歪了,不符合用户需求,就自己动手了

可以实现把自己的网站、应用什么的都加到飞牛桌面上

效果

PixPin_2025-02-21_12-02-04.gif

PixPin_2025-01-27_19-53-10.gif

image.png

第一步:连接飞牛数据库!

如果你直接用sql语句插入数据的话完全不用3到9小步!!!!连上数据库直接插数据就完事儿了

使用root登录飞牛

  1. 切换到数据库用户 su postgres
  2. 直连数据库 psql -U postgres -d appcenter

~~PS:飞牛的数据库账号一些密码可以在这里看到 就是使用psql连上数据库的时候向上翻历史命令,能看到几个用户的初始密码~~

  1. 创建一个用户superme密码我用的同样的 CREATE USER superme password 'superme';
  2. 授予用户访问权限 GRANT CONNECT ON DATABASE appcenter TO superme;
  3. 授予用户所有表的所有权限 GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO superme;
  4. 更改数据库配置文件 /etc/postgresql/15/main/postgresql.conflisten_addresses = '*'
  5. 更改数据库权限配置文件 /etc/postgresql/15/main/pg_hba.conf中增加 host all all 0.0.0.0/0 md5
  6. 重启服务 systemctl restart postgresql
  7. 通过可视化工具连接数据库,我的服务器IP是192.168.188.253 192.168.188.253:5432

第二步:添加亿点点数据进去

以我可爱的dpanel举例

  1. app表里,id自增,改改名、版本号什么的
id app_name name version version_id tags maintainer distributor download_count install_type path install_volume_id data_share_volume_id data_volume_id manual_install is_stop is_uninstall is_beta is_docker min_size service_url source source_id status is_non_manual_stop is_systemd_uint disable_authorization_path created_at updated_at features micro_app native_app
10005 superme.dpanel dpanel 1.0.0 1 Practical Efficiency superme superme 1 /var/apps/superme.dpanel 1 1 1 false false false false false 1,000 thirdparty 999 running false false false 2025-01-26 11:01:16.730 +0800 2025-01-27 11:10:31.829 +0800 false false
  1. app_service表里,app_id是上面表里你那个自增的id,同样自增、改改名什么的,主要记得url改一下,体验完美
id app_id service_name title desc icon type url is_admin created_at updated_at default_url control full_url
7 10005 superme.dpanel.Application dpanel dpanel ui/images/icon_{0}.png url http://192.168.188.253:8807/ true 2025-01-26 11:01:16.731 +0800 2025-01-26 11:13:41.456 +0800 http://192.168.188.253:8807/ {"show":0,"showRoute":0,"auth":0,"port":0,"path":0,"fullUrl":0} https://www.google.com:8807
  1. app_user_group表里,把你的用户数据造一造,随便写写 好记就行,我这个appuser的user_group_id减一、appgroup的user_group_id加一
id user_group_id type created_at
15 10001,006 appgroup 2025-01-26 11:01:16.730 +0800
16 1000992 appuser 2025-01-26 11:01:16.731 +0800
  1. app_user_group_record表里,加上关联数据,看数字进行体会
id app_id user_group_id type created_at
13 10005 1000992 appuser 2025-01-26 11:01:16.731 +0800
14 10005 10001,006 appgroup 2025-01-26 11:01:16.731 +0800

添加完之后,刷新飞牛桌面,就能看到它了,图片我懒得加

图片在这个目录下加

image.png

收藏
送赞 2
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

3

主题

8

回帖

0

牛值

fnOS系统内测组

2025-3-18 11:03:07 楼主 显示全部楼层

[i=s] 本帖最后由 松柏新186062 于 2025-3-25 11:28 编辑 [/i]<br /> <br />

我是写了个shell开机自启动,来处理更新或者重启之后,需要手动编辑数据启动的问题

第一步:写shell

vim /root/auto_start_app.sh

#!/bin/bash

# 定义日志文件路径
LOG_FILE="/root/auto_start_app.log"

# 函数:记录日志
log() {
    local message="$1"
    local timestamp=$(date +"%Y-%m-%d %H:%M:%S")
    echo "[$timestamp] $message" >> "$LOG_FILE"
}

log "60s后将自定义应用改为运行状态"
sleep 60

# 要添加的新行内容
PG_HBA_CONF="/etc/postgresql/15/main/pg_hba.conf"
NEW_LINE="host all all 0.0.0.0/0 md5"

# 判断新行内容是否已经存在
if ! grep -qF "$NEW_LINE" "$PG_HBA_CONF"; then
    # 若不存在,则添加新行内容
    echo "$NEW_LINE" >> "$PG_HBA_CONF"
    log "已在 $PG_HBA_CONF 文件末尾添加内容:$NEW_LINE"

    # 重启postgresql服务
    systemctl restart postgresql

    if [ $? -eq 0 ]; then
        log "postgresql服务已成功重启"
    else
        log "重启postgresql服务失败"
    fi
else
    log "$PG_HBA_CONF 文件中已存在内容:$NEW_LINE,无需重复添加"
fi
DB_USER="superme"
DB_PASSWORD="superme"
DB_HOST="127.0.0.1"
DB_PORT="5432"
DB_NAME="appcenter"

export PGPASSWORD=$DB_PASSWORD

# 创建临时文件
TEMP_FILE=$(mktemp)

# 执行 SQL 语句并将结果输出到临时文件
psql -U $DB_USER -h $DB_HOST -p $DB_PORT -d $DB_NAME <<EOF 2>&1 > $TEMP_FILE
UPDATE public.app
SET status = 'running'
WHERE maintainer = 'superme';
EOF

# 读取临时文件内容
result=$(cat $TEMP_FILE)

# 删除临时文件
rm $TEMP_FILE

# 记录数据库执行结果到日志
log "数据库执行结果:$result"

unset PGPASSWORD

第二步:自启动

crontab -e 最后一行加上

@reboot sh /root/auto_start_app.sh

ctrl + x退出 y保存

3

主题

8

回帖

0

牛值

fnOS系统内测组

2025-1-27 21:31:14 楼主 显示全部楼层
接下来应该官方会做这个功能吧?或者社区谁做个应用,可视化添加

3

主题

8

回帖

0

牛值

fnOS系统内测组

2025-1-27 23:33:04 楼主 显示全部楼层
例子中,图标路径放在这里
/var/apps/superme.dpanel/target/ui/images
可以看看其他应用同级目录的图标

2

主题

4

回帖

0

牛值

江湖小虾

2025-2-14 10:14:45 显示全部楼层
官方能不能出个快捷操作界面,方便添加自定义的第三方应用到桌面
估计是怕管理不住罢,之前提过需求,官方做的很**肋  详情 回复
2025-2-21 12:33

3

主题

8

回帖

0

牛值

fnOS系统内测组

2025-2-21 12:33:47 楼主 显示全部楼层
估计是怕管理不住罢,之前提过需求,官方做的很**肋

2

主题

4

回帖

0

牛值

江湖小虾

2025-3-9 15:44:30 显示全部楼层
重启后需要手动启动,手动启动时会提示不符合系统要求,还是需要在数据库中修改状态字段
[md]启停显示不符合系统要求怎么解决 ![微信图片_20250309154504.png](data/attachment/forum/202503/09/154512mktcnxx5wxlajtxc.png "微信图片_20250309154504.png") [/md]  详情 回复
2025-3-9 15:45

2

主题

4

回帖

0

牛值

江湖小虾

2025-3-9 15:45:41 显示全部楼层

启停显示不符合系统要求怎么解决 微信图片_20250309154504.png

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
[md]我是写了个shell开机自启动 第一步:写shell vim /root/auto_start_app.sh ``` #!/bin/bash DB_USER="superme" DB_PASSWORD="superme" DB_HOST="127.0.0.1" DB_PORT="5432" DB_NAME="appcenter" export PGP  详情 回复
2025-3-18 11:03

1

主题

1

回帖

0

牛值

江湖小虾

2025-3-31 07:20:25 显示全部楼层
那个图标加载不出来,换了好几个路径都试过了,还是一样
放在这两个路径下 一 二 位置就是这样  详情 回复
2025-4-7 19:53

3

主题

8

回帖

0

牛值

fnOS系统内测组

2025-4-7 19:53:32 楼主 显示全部楼层
[quote][size=2][url=forum.php?mod=redirect&goto=findpost&pid=96620&ptid=13521][color=#999999]时序x 发表于 2025-3-31 07:20[/color][/url][/size] 那个图标加载不出来,换了好几个路径都试过了,还是一样[/quote]

放在这两个路径下

image.png

image.png

位置就是这样

image.png

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

0

主题

1

回帖

0

牛值

江湖小虾

2025-5-27 09:40:03 显示全部楼层

大神**

1

主题

1

回帖

0

牛值

江湖小虾

2025-5-28 20:23:55 显示全部楼层
有时间可以做一下这个功能
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则