mirror of
https://github.com/RubyMetric/chsrc
synced 2025-06-07 18:54:05 +08:00
add ubuntu to packages but not add in chech queue
This commit is contained in:
parent
25401fe3bf
commit
60fdd4932b
25
chsrc.c
25
chsrc.c
@ -77,7 +77,7 @@ pl_ruby_chsrc (char* option)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
pl_ubuntu_chsrc (char* option)
|
os_ubuntu_chsrc (char* option)
|
||||||
{
|
{
|
||||||
int selected = 0;
|
int selected = 0;
|
||||||
for (int i=0;i<sizeof(pl_ruby_sources);i++) {
|
for (int i=0;i<sizeof(pl_ruby_sources);i++) {
|
||||||
@ -86,25 +86,20 @@ pl_ubuntu_chsrc (char* option)
|
|||||||
const char* source_name = pl_ubuntu_sources[selected].mirror->name;
|
const char* source_name = pl_ubuntu_sources[selected].mirror->name;
|
||||||
const char* source_abbr = pl_ubuntu_sources[selected].mirror->abbr;
|
const char* source_abbr = pl_ubuntu_sources[selected].mirror->abbr;
|
||||||
const char* source_url = pl_ubuntu_sources[selected].url;
|
const char* source_url = pl_ubuntu_sources[selected].url;
|
||||||
// #ifdef BEIFEN
|
|
||||||
char* beifen = "cp -rf /etc/apt/sources.list /etc/apt/sources.list.bak";
|
char* beifen = "cp -rf /etc/apt/sources.list /etc/apt/sources.list.bak";
|
||||||
system(beifen);
|
system(beifen);
|
||||||
free(beifen);
|
// free(beifen);
|
||||||
puts("备份文件名: /etc/apt/sources.list.bak");
|
puts("备份文件名: /etc/apt/sources.list.bak");
|
||||||
// #endif
|
const char* current_url = xy_strch(source_url,'/',"\\/");
|
||||||
const char* current_url = xy_strch(source_url,"/","\\/");
|
|
||||||
|
|
||||||
char* cmd = xy_strjoin(xy_strjoin("sed -E \'s/(^[^#]* .*)http[:|\\.|\\/|a-z|A-Z]*\\/ubuntu\\//\\1",current_url),"\\//\'< /etc/apt/sources.list.bak | cat > /etc/apt/sources.list");
|
|
||||||
|
|
||||||
|
char* cmd = xy_strjoin(xy_strjoin("sed -E \'s/(^[^#]* .*)http[:|\\.|\\/|a-z|A-Z]*\\/ubuntu\\//\\1",current_url),"/\'< /etc/apt/sources.list.bak | cat > /etc/apt/sources.list");
|
||||||
system(cmd);
|
system(cmd);
|
||||||
free(cmd);
|
free(cmd);
|
||||||
|
|
||||||
#ifndef BEIFEN
|
|
||||||
char* rm = "rm -rf /etc/apt/source.list.bak";
|
char* rm = "rm -rf /etc/apt/source.list.bak";
|
||||||
system(rm);
|
system(rm);
|
||||||
free(rm);
|
// free(rm);
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
puts("chsrc: 为'ubuntu'命令换源");
|
puts("chsrc: 为'ubuntu'命令换源");
|
||||||
puts(xy_strjoin("chsrc: 感谢镜像提供方:", source_name));
|
puts(xy_strjoin("chsrc: 感谢镜像提供方:", source_name));
|
||||||
@ -124,12 +119,19 @@ static const char const
|
|||||||
*pl_maven[] = {"maven", NULL},
|
*pl_maven[] = {"maven", NULL},
|
||||||
*pl_gradle[] = {"gradel",NULL},
|
*pl_gradle[] = {"gradel",NULL},
|
||||||
*pl_julia[] = {"julia", NULL},
|
*pl_julia[] = {"julia", NULL},
|
||||||
|
|
||||||
|
*os_ubuntu[] = {"ubuntu", NULL, cmdfunc(os_ubuntu_chsrc)},
|
||||||
// Java暂时需要直接指定包管理器
|
// Java暂时需要直接指定包管理器
|
||||||
// pl_java
|
// pl_java
|
||||||
**pl_packagers[] = {
|
**pl_packagers[] = {
|
||||||
pl_ruby, pl_python, pl_nodejs, pl_perl, pl_php, pl_cran,
|
pl_ruby, pl_python, pl_nodejs, pl_perl, pl_php, pl_cran,
|
||||||
pl_rust, pl_go, pl_dotnet, pl_maven, pl_gradle, pl_julia
|
pl_rust, pl_go, pl_dotnet, pl_maven, pl_gradle, pl_julia
|
||||||
|
},
|
||||||
|
**os_packagers[] = {
|
||||||
|
os_ubuntu,
|
||||||
};
|
};
|
||||||
|
// static const char const
|
||||||
|
// *os_ubuntu[] = {"ubuntu", NULL, cmdfunc(os_ubuntu_chsrc)};
|
||||||
#undef cmdfunc
|
#undef cmdfunc
|
||||||
|
|
||||||
static const char const*
|
static const char const*
|
||||||
@ -203,6 +205,7 @@ main (int argc, char const *argv[])
|
|||||||
int k = 0;
|
int k = 0;
|
||||||
const char* alias = packager[k];
|
const char* alias = packager[k];
|
||||||
while (NULL!=alias) {
|
while (NULL!=alias) {
|
||||||
|
// printf("%s matched: %s\n",target, alias);
|
||||||
if (0==strcmp(target, alias)) {
|
if (0==strcmp(target, alias)) {
|
||||||
// printf("matched: %s\n", alias);
|
// printf("matched: %s\n", alias);
|
||||||
matched = 1; break;
|
matched = 1; break;
|
||||||
|
10
helper.h
10
helper.h
@ -43,9 +43,15 @@ xy_strjoin (const char* str1, const char* str2)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//有一个BUG,每一次替换都会加长到最大长度
|
/*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* */
|
||||||
static char*
|
static char*
|
||||||
xy_strch (const char* str, const char src,const char* dest)
|
xy_strch (const char* str, char src,const char* dest)
|
||||||
{
|
{
|
||||||
size_t str_len = strlen(str);
|
size_t str_len = strlen(str);
|
||||||
size_t dest_len = strlen(dest);
|
size_t dest_len = strlen(dest);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user